Bladeren bron

BUG修改

xiao547607 3 jaren geleden
bovenliggende
commit
ce3dbb5d9a

+ 2 - 0
common/src/main/java/com/jpsoft/employment/modules/sys/dao/UserDAO.java

@@ -23,4 +23,6 @@ public interface UserDAO {
     User findByOpenId(String openId);
 
     UserVO getUser(String id);
+
+	List<User> findByRoleAndCompanyId(String roleName,String companyId);
 }

+ 1 - 0
common/src/main/java/com/jpsoft/employment/modules/sys/service/UserService.java

@@ -21,4 +21,5 @@ public interface UserService {
 	boolean hasRole(String userId, String roleName) ;
     User findByOpenId(String openId);
 	UserVO getUser(String id);
+	List<User> findByRoleAndCompanyId(String roleName,String companyId);
 }

+ 5 - 0
common/src/main/java/com/jpsoft/employment/modules/sys/service/impl/UserServiceImpl.java

@@ -90,4 +90,9 @@ public class UserServiceImpl implements UserService {
 	public UserVO getUser(String id) {
 		return userDAO.getUser(id);
 	}
+
+	@Override
+	public List<User> findByRoleAndCompanyId(String roleName,String companyId){
+		return userDAO.findByRoleAndCompanyId(roleName,companyId);
+	}
 }

+ 12 - 0
common/src/main/resources/mapper/sys/User.xml

@@ -151,4 +151,16 @@
             where u.id_=#{0} and u.del_flag=0
             limit 1
     </select>
+    <select id="findByRoleAndCompanyId" resultMap="UserMap">
+        SELECT
+            *
+        FROM
+            sys_user a
+            left join sys_user_role b on a.id_ = b.user_id and b.del_flag = 0
+        WHERE
+            a.del_flag = 0
+            and a.company_id = #{companyId}
+            and b.role_id = #{roleId}
+    </select>
+
 </mapper>

+ 7 - 0
web/src/main/java/com/jpsoft/employment/modules/job/controller/ResumeDeliverController.java

@@ -180,6 +180,13 @@ public class ResumeDeliverController {
                     resumeDeliverRecord.setEntryPosition(entryPosition);
                     resumeDeliverRecord.setEntryDepartment(entryDepartment);
                     resumeDeliverRecord.setJobUserId(jobUser.getId());
+
+                    resumeDeliver.setChatStatus(resumeDeliverRecordDTO.getChatType());
+                    resumeDeliver.setUpdateBy(subject);
+                    resumeDeliver.setUpdateTime(now);
+                    //更改沟通状态
+                    int count = resumeDeliverService.update(resumeDeliver);
+
                 }
 
             }

+ 28 - 0
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/MessageNoticeApiController.java

@@ -100,6 +100,8 @@ public class MessageNoticeApiController {
     @Autowired
     private CompanyService companyService;
 
+    @Autowired
+    private RecruitmentService recruitmentService;
 
     @PostMapping("messageClassify")
     @ApiOperation(value = "消息分类")
@@ -358,6 +360,32 @@ public class MessageNoticeApiController {
                     resumeDeliverRecord.setStep("同意");
                     resumeDeliverRecord.setRemark("用户同意");
                     resumeDeliverRecordService.insert(resumeDeliverRecord);
+
+                    if("4".equals(chatStatus)){
+                        //邀请入职
+                        JobUser jobUser = jobUserService.get(resumeDeliver.getJobUserId());
+                        Recruitment recruitment = recruitmentService.get(resumeDeliver.getJobRecruitmentId());
+                        //邀请面试
+                        MessageNotice mc = new MessageNotice();
+                        //投递成功 发送站内消息给HR
+                        mc.setId(UUID.randomUUID().toString());
+                        mc.setCreateBy(subject);
+                        mc.setCreateTime(new Date());
+                        mc.setDelFlag(false);
+
+                        mc.setTitle("有用户同意入职");
+                        mc.setContent("用户"+jobUser.getRealName() + "同意入职");
+
+                        mc.setClassify("1");//系统消息
+                        mc.setType("1");
+                        mc.setStatus(true);
+                        mc.setIsNeedAgree(false);
+                        List<User> hrUserList = userService.findByRoleAndCompanyId("40846865-15ec-4de4-983e-054eb47666a4",recruitment.getCompanyId());
+                        if(hrUserList.size() > 0){
+                            mc.setRecipientId(StringUtils.join(hrUserList.toArray(), ","));
+                            messageNoticeService.insert(mc);
+                        }
+                    }
                 }
             }else{
                 if(StringUtils.isNotEmpty(messageNotice.getDeliverId())){

+ 36 - 1
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/ResumeApiController.java

@@ -6,9 +6,11 @@ import com.alipay.api.domain.CompanyInfo;
 import com.github.pagehelper.Page;
 import com.jpsoft.employment.modules.base.entity.City;
 import com.jpsoft.employment.modules.base.entity.Company;
+import com.jpsoft.employment.modules.base.entity.MessageNotice;
 import com.jpsoft.employment.modules.base.entity.ResumeApprove;
 import com.jpsoft.employment.modules.base.service.CityService;
 import com.jpsoft.employment.modules.base.service.CompanyService;
+import com.jpsoft.employment.modules.base.service.MessageNoticeService;
 import com.jpsoft.employment.modules.base.service.ResumeApproveService;
 import com.jpsoft.employment.modules.common.dto.MessageResult;
 import com.jpsoft.employment.modules.common.dto.Sort;
@@ -22,6 +24,7 @@ import com.jpsoft.employment.modules.sys.entity.DataDictionary;
 import com.jpsoft.employment.modules.sys.entity.User;
 import com.jpsoft.employment.modules.sys.service.DataDictionaryService;
 
+import com.jpsoft.employment.modules.sys.service.RoleService;
 import com.jpsoft.employment.modules.sys.service.UserService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -94,6 +97,12 @@ public class ResumeApiController {
     @Autowired
     private RecruitmentCollectionService recruitmentCollectionService;
 
+    @Autowired
+    private MessageNoticeService messageNoticeService;
+
+    @Autowired
+    private RoleService roleService;
+
 
     private Logger logger = LoggerFactory.getLogger(getClass());
 
@@ -137,7 +146,12 @@ public class ResumeApiController {
 
         try {
             JobUser jobUser = jobUserService.get(subject);
-            if("3".equals(jobUser.getIsAuthentication())){
+            if("0".equals(jobUser.getIsAuthentication())){
+                messageResult.setMessage("未实名认证,无法投递简历!");
+                messageResult.setResult(false);
+                messageResult.setCode(400);
+                return messageResult;
+            }else if("3".equals(jobUser.getIsAuthentication())){
                 messageResult.setMessage("实名制未通过,无法投递简历!");
                 messageResult.setResult(false);
                 messageResult.setCode(400);
@@ -194,6 +208,27 @@ public class ResumeApiController {
                     recruitment.setDeliveryTimes(deliveryTimes++);
                     recruitmentService.update(recruitment);
                 }
+
+                MessageNotice mc = new MessageNotice();
+                //投递成功 发送站内消息给HR
+                mc.setId(UUID.randomUUID().toString());
+                mc.setCreateBy(subject);
+                mc.setCreateTime(new Date());
+                mc.setDelFlag(false);
+
+                mc.setTitle("有用户投递简历");
+                mc.setContent("用户"+jobUser.getRealName() + "投递了您的招聘岗位");
+
+                mc.setClassify("1");//系统消息
+                mc.setType("1");
+                mc.setStatus(true);
+                mc.setIsNeedAgree(false);
+                List<User> hrUserList = userService.findByRoleAndCompanyId("40846865-15ec-4de4-983e-054eb47666a4",recruitment.getCompanyId());
+                if(hrUserList.size() > 0){
+                    mc.setRecipientId(StringUtils.join(hrUserList.toArray(), ","));
+                    messageNoticeService.insert(mc);
+                }
+
                 messageResult.setMessage("投递成功");
                 messageResult.setResult(true);
                 messageResult.setCode(200);