Browse Source

BUG修改

xiao547607 4 years ago
parent
commit
cc4a443353

+ 3 - 0
common/src/main/java/com/jpsoft/employment/modules/base/entity/MessageNotice.java

@@ -56,4 +56,7 @@ public class MessageNotice {
     private Boolean isNeedAgree;
     @ApiModelProperty(value = "投递表ID")
     private String deliverId;
+
+    @ApiModelProperty(value = "是否已读")
+    private Boolean isRead;
 }

+ 2 - 0
common/src/main/java/com/jpsoft/employment/modules/job/dao/RecruitmentDAO.java

@@ -44,4 +44,6 @@ public interface RecruitmentDAO {
 	 * @return
 	 */
 	int updateForPublish(@Param("recruitmentId") String recruitmentId,@Param("publishTag") String publishTag,@Param("caller") String caller);
+
+	List<Recruitment> findByCompanyId(String companyId);
 }

+ 2 - 0
common/src/main/java/com/jpsoft/employment/modules/job/entity/Resume.java

@@ -65,6 +65,8 @@ public class Resume {
 
 	@ApiModelProperty(value = "期望工作地点")
 	private String dreamAdd;
+	@ApiModelProperty(value = "期望工作地点翻译")
+	private String dreamAddName;
 
 	@DateTimeFormat(pattern="yyyy-MM-dd")
 	@JsonFormat(pattern = "yyyy-MM-dd",timezone ="GMT+8")

+ 2 - 0
common/src/main/java/com/jpsoft/employment/modules/job/service/RecruitmentService.java

@@ -44,4 +44,6 @@ public interface RecruitmentService {
 	 * @return
 	 */
 	boolean updateForPublish(String recruitmentId,String publishTag,String caller);
+
+	List<Recruitment> findByCompanyId(String companyId);
 }

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

@@ -113,4 +113,9 @@ public class RecruitmentServiceImpl implements RecruitmentService {
 		return num>0;
 	}
 
+	@Override
+	public List<Recruitment> findByCompanyId(String companyId){
+		return recruitmentDAO.findByCompanyId(companyId);
+	}
+
 }

+ 10 - 1
common/src/main/resources/mapper/job/Recruitment.xml

@@ -207,7 +207,7 @@
 				and a.approve_status = #{searchParams.approveStatus}
 			</if>
 			<if test="searchParams.positionList != null">
-				<foreach item="position" collection="positionList"  open="and a.position_ in (" separator="," close=")">
+				<foreach item="position" collection="searchParams.positionList"  open="and a.position_ in (" separator="," close=")">
 					#{position.id}
 				</foreach>
 			</if>
@@ -331,4 +331,13 @@
 		update job_recruitment  set status_=#{publishTag},update_time=now(),update_by=#{caller}   where id_=#{recruitmentId}
 	</update>
 
+	<select id="findByCompanyId" resultMap="RecruitmentMap">
+		SELECT
+			*
+		FROM
+			job_recruitment
+		where del_flag = 0
+			and company_id = #{companyId}
+	</select>
+
 </mapper>

+ 8 - 0
common/src/main/resources/mapper/job/Resume.xml

@@ -167,6 +167,14 @@
 			<if test="searchParams.name != null">
 				and b.real_name like #{searchParams.name}
 			</if>
+			<if test="searchParams.isAuthentication != null">
+				and b.is_authentication = #{searchParams.isAuthentication}
+			</if>
+			<if test="searchParams.recruitmentList != null">
+				<foreach item="recruitment" collection="searchParams.recruitmentList"  open="and a.position_category_id in (" separator="," close=")">
+					#{recruitment.position}
+				</foreach>
+			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 	        ${sort.name} ${sort.order}

+ 88 - 19
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/MessageNoticeApiController.java

@@ -114,9 +114,9 @@ public class MessageNoticeApiController {
 //            政策发布3
 //            推荐职位4--求职者
 //            推荐简历5--HR
-            int classifyNum = 5;
-            for(int i = 1;i<=classifyNum;i++){
-                if(i == 1){
+            String[] classifys = {"1","2","3","4"};
+            for(String classify : classifys){
+                if("1".equals(classify)){
                     Map<String, Object> mnMap = new HashMap<>();
                     MessageNotice mn = messageNoticeService.findTopByUserIdAndClassify(jobUser.getId(),"1");
                     mnMap.put("classify","系统消息");
@@ -125,7 +125,7 @@ public class MessageNoticeApiController {
                     mnMap.put("num",0);
 
                     resultList.add(mnMap);
-                }else if(i == 2){
+                }else if("2".equals(classify)){
                     Map<String, Object> mnMap = new HashMap<>();
                     //job_resume_deliver_content
                     ResumeDeliverContent rdc = resumeDeliverContentService.findTopByUserId(jobUser.getId());
@@ -136,7 +136,7 @@ public class MessageNoticeApiController {
                     mnMap.put("num",0);
 
                     resultList.add(mnMap);
-                }else if(i == 3){
+                }else if("3".equals(classify)){
                     Map<String, Object> mnMap = new HashMap<>();
                     MessageNotice mn = messageNoticeService.findTopByUserIdAndClassify(jobUser.getId(),"3");
                     mnMap.put("classify","政策发布");
@@ -145,7 +145,7 @@ public class MessageNoticeApiController {
                     mnMap.put("num",0);
 
                     resultList.add(mnMap);
-                }else if(i == 4){
+                }else if("4".equals(classify)){
                     Map<String, Object> mnMap = new HashMap<>();
 
                     mnMap.put("classify","推荐职位");
@@ -155,7 +155,6 @@ public class MessageNoticeApiController {
 
                     resultList.add(mnMap);
                 }
-
             }
             messageResult.setData(resultList);
             messageResult.setResult(true);
@@ -202,18 +201,15 @@ public class MessageNoticeApiController {
             searchParams.put("classify",classifyId);
             searchParams.put("status","1");
             searchParams.put("type","1");
-            Page page = null;
-            if("3".equals(classifyId)){
-                //政策发布
-                page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
-            }else if("1".equals(classifyId)){
-                //1系统消息
-                page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
-            }else if("2".equals(classifyId)){
-                //2求职信息
-                page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
-            }else if("4".equals(classifyId)){
-                //4推荐职位 no
+            Page<MessageNotice> page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+            for(MessageNotice mc : page.getResult()){
+                //查询是否已读
+                MessageRead messageRead = messageReadService.findByMIdAndUserId(mc.getId(),subject);
+                if(messageRead == null){
+                    mc.setIsRead(false);
+                }else{
+                    mc.setIsRead(true);
+                }
             }
 
             messageResult.setData(PojoUtils.pageWrapper(page));
@@ -376,4 +372,77 @@ public class MessageNoticeApiController {
 
         return messageResult;
     }
+
+    @PostMapping("messageClassifyHR")
+    @ApiOperation(value = "消息分类")
+    public MessageResult<List> messageClassifyHR(
+            String token,
+            @RequestAttribute  String subject) {
+        MessageResult<List> messageResult = new MessageResult<>();
+        List<Map> resultList = new ArrayList<>();
+        try {
+            JobUser jobUser = jobUserService.get(subject);
+
+            if (jobUser == null) {
+                throw new Exception("未登录!");
+            }
+            //List<DataDictionary> ddList = dataDictionaryService.findByCatalogName("消息分类");
+//            系统消息1
+//            求职消息2
+//            政策发布3
+//            推荐职位4--求职者
+//            推荐简历5--HR
+            String[] classifys = {"1","2","3","5"};
+            for(String classify : classifys){
+                if("1".equals(classify)){
+                    Map<String, Object> mnMap = new HashMap<>();
+                    MessageNotice mn = messageNoticeService.findTopByUserIdAndClassify(jobUser.getId(),"1");
+                    mnMap.put("classify","系统消息");
+                    mnMap.put("classifyId","1");
+                    mnMap.put("newMessage",mn);
+                    mnMap.put("num",0);
+
+                    resultList.add(mnMap);
+                }else if("2".equals(classify)){
+                    Map<String, Object> mnMap = new HashMap<>();
+                    //job_resume_deliver_content
+                    ResumeDeliverContent rdc = resumeDeliverContentService.findTopByUserId(jobUser.getId());
+
+                    mnMap.put("classify","求职消息");
+                    mnMap.put("classifyId","2");
+                    mnMap.put("newMessage",rdc);
+                    mnMap.put("num",0);
+
+                    resultList.add(mnMap);
+                }else if("3".equals(classify)){
+                    Map<String, Object> mnMap = new HashMap<>();
+                    MessageNotice mn = messageNoticeService.findTopByUserIdAndClassify(jobUser.getId(),"3");
+                    mnMap.put("classify","政策发布");
+                    mnMap.put("classifyId","3");
+                    mnMap.put("newMessage",mn);
+                    mnMap.put("num",0);
+
+                    resultList.add(mnMap);
+                }else if("5".equals(classify)){
+                    Map<String, Object> mnMap = new HashMap<>();
+
+                    mnMap.put("classify","推荐简历");
+                    mnMap.put("classifyId","5");
+                    mnMap.put("newMessage","");
+                    mnMap.put("num",0);
+
+                    resultList.add(mnMap);
+                }
+            }
+            messageResult.setData(resultList);
+            messageResult.setResult(true);
+            messageResult.setCode(200);
+        } catch (Exception ex) {
+            log.error(ex.getMessage());
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
+        }
+
+        return messageResult;
+    }
 }

+ 56 - 2
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/ResumeApiController.java

@@ -248,7 +248,7 @@ public class ResumeApiController {
                 resume.setPositionCategoryName(workCategory.getName());
             }
             resume.setUserIsAuthenticationName(dataDictionaryService.findNameByCatalogNameAndValue("实名制状态",resume.getUserIsAuthentication()));
-            resume.setStatusName(dataDictionaryService.getName(resume.getStatus()));
+            resume.setStatusName(dataDictionaryService.findNameByCatalogNameAndValue("简历状态",resume.getStatus()));
 
 
             //教育经验
@@ -323,7 +323,7 @@ public class ResumeApiController {
                 resume.setPositionCategoryName(workCategory.getName());
             }
             resume.setUserIsAuthenticationName(dataDictionaryService.findNameByCatalogNameAndValue("实名制状态",resume.getUserIsAuthentication()));
-            resume.setStatusName(dataDictionaryService.getName(resume.getStatus()));
+            resume.setStatusName(dataDictionaryService.findNameByCatalogNameAndValue("简历状态",resume.getStatus()));
 
             //教育经验
             List<ResumeEducationExperience> rexList = resumeEducationExperienceService.findByResumeId(resume.getId());
@@ -568,6 +568,60 @@ public class ResumeApiController {
         return messageResult;
     }
 
+    @PostMapping("positionResumeList")
+    @ApiOperation(value = "推荐简历")
+    public MessageResult<Map> positionResumeList(
+            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
+            @RequestParam(value="pageSize",defaultValue="10") int pageSize,
+            String token,
+            @RequestAttribute  String subject){
+
+        MessageResult<Map> msgResult = new MessageResult<>();
+
+        Map<String,Object> searchParams = new HashMap<>();
+
+        User sysUser = userService.get(subject);
+
+        List<Recruitment> recruitmentList = recruitmentService.findByCompanyId(sysUser.getCompanyId());
+        if(recruitmentList.size()>0){
+            searchParams.put("recruitmentList", recruitmentList);
+        }
+
+        List<Sort> sortList = new ArrayList<>();
+        sortList.add(new Sort("a.create_time","desc"));
+
+        searchParams.put("status", 1);
+        searchParams.put("approveStatus", 3);
+        searchParams.put("isAuthentication", 1);//实名制状态
+
+        Page<Resume> page = resumeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+        for(Resume resume : page.getResult()){
+            JobUser jobUser = jobUserService.get(resume.getJobUserId());
+            resume.setUserName(jobUser.getRealName());
+            resume.setUserTel(jobUser.getTel());
+            resume.setUserPhoto(jobUser.getHeadImageUrl());
+            resume.setSexName(dataDictionaryService.findNameByCatalogNameAndValue("性别",resume.getSex()));
+            resume.setDreamMoneyName(dataDictionaryService.getName(resume.getDreamMoney()));
+            resume.setWorkExpName(dataDictionaryService.getName(resume.getWorkExp()));
+            resume.setEducationName(dataDictionaryService.getName(resume.getEducation()));
+            resume.setJobStatusName(dataDictionaryService.getName(resume.getJobStatus()));
+            WorkCategory workCategory = workCategoryService.get(resume.getPositionCategoryId());
+            if(workCategory != null) {
+                resume.setPositionCategoryName(workCategory.getName());
+            }
+            City city = cityService.get(Integer.parseInt(resume.getDreamAdd()));
+            if(city != null){
+                resume.setDreamAddName(city.getCityName());
+            }
+            //resume.setUserIsAuthenticationName(dataDictionaryService.findNameByCatalogNameAndValue("实名制状态",resume.getUserIsAuthentication()));
+            //resume.setStatusName(dataDictionaryService.findNameByCatalogNameAndValue("简历状态",resume.getStatus()));
+        }
+        msgResult.setResult(true);
+        msgResult.setData(PojoUtils.pageWrapper(page));
+
+        return msgResult;
+    }
+
     public int updateEducationExp(String resumeId,List<EducationExpDTO> educationExpList,String subject) {
         int updateCount = 0;
         try {