xiao547607 4 éve
szülő
commit
bf771e68cc

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

@@ -104,6 +104,10 @@ public class Resume {
 	private String userAddress;
 	@ApiModelProperty(value = "联系方式")
 	private String userTel;
+	@ApiModelProperty(value = "阅读次数")
+	private Integer readingTimes;
+	@ApiModelProperty(value = "收藏次数")
+	private Integer collectionTimes;
 	@ApiModelProperty(value = "工作经历")
 	private List<ResumeWorkExperience> workList;
 	@ApiModelProperty(value = "教育经历")

+ 1 - 2
common/src/main/resources/mapper/job/RecruitmentCollection.xml

@@ -101,8 +101,7 @@
 		limit 1
 	</select>
 	<select id="get" parameterType="string" resultMap="RecruitmentCollectionMap">
-		select 
-id_,create_by,create_time,update_by,update_time,del_flag,company_id,sys_user_id,resume_id		from job_recruitment_collection where id_=#{0}
+		select * from job_recruitment_collection where id_=#{0}
 	</select>
 	<select id="exist" parameterType="string" resultType="int">
 		select count(*) from job_recruitment_collection where id_=#{0}

+ 11 - 1
common/src/main/resources/mapper/job/Resume.xml

@@ -23,6 +23,8 @@
 		<result property="approveStatus" column="approve_status" />
 		<result property="jobStatus" column="job_status" />
 		<result property="resumeUrls" column="resume_urls" />
+		<result property="readingTimes" column="reading_times" />
+		<result property="collectionTimes" column="collection_times" />
 		<!--外联字段-->
 		<result property="userPhoto" column="head_image_url" />
 		<result property="userName" column="real_name" />
@@ -40,7 +42,7 @@
 	<![CDATA[
 		insert into job_resume
 	    (id_,create_by,create_time,update_by,update_time,del_flag,job_user_id,sex_,position_category_id,work_exp,education_,dream_money,dream_add,birthday_,introduction_,status_,approve_status,
-	    job_status,resume_urls)
+	    job_status,resume_urls,reading_times,collection_times)
 		values
 		(
 #{id,jdbcType=VARCHAR}
@@ -62,6 +64,8 @@
 ,#{approveStatus,jdbcType=VARCHAR}
 ,#{jobStatus,jdbcType=VARCHAR}
 ,#{resumeUrls,jdbcType=VARCHAR}
+,#{readingTimes,jdbcType= NUMERIC }
+,#{collectionTimes,jdbcType= NUMERIC }
 		)
 	]]>
 	</insert>
@@ -125,6 +129,12 @@
 			<if test="resumeUrls!=null">
 				resume_urls=#{resumeUrls,jdbcType=VARCHAR},
 			</if>
+			<if test="readingTimes!=null">
+				reading_times=#{readingTimes,jdbcType= NUMERIC },
+			</if>
+			<if test="collectionTimes!=null">
+				collection_times=#{collectionTimes,jdbcType= NUMERIC },
+			</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 4 - 1
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/JobUserApiController.java

@@ -236,6 +236,7 @@ public class JobUserApiController {
                     jobUser.setPassword(passwordEnc);
                     jobUser.setCreateTime(new Date());
                     jobUser.setDelFlag(false);
+                    jobUser.setTel(telephone);
                     jobUser.setHeadImageUrl("http://xpgj.oss-cn-shanghai.aliyuncs.com/xpgj/test/default_avatar.jpg");
                     jobUser.setIsAuthentication("0");
                     jobUser.setOpenId(openId);
@@ -499,7 +500,9 @@ public class JobUserApiController {
             jobUser.setUpdateBy(subject);
 
             jobUser.setIdCard(idCard);
-            jobUser.setHeadImageUrl(positiveUrl+","+reverseUrl);
+            if(StringUtils.isNotEmpty(positiveUrl) && StringUtils.isNotEmpty(reverseUrl) ) {
+                jobUser.setHeadImageUrl(positiveUrl + "," + reverseUrl);
+            }
             jobUser.setRealName(name);
             jobUser.setIsAuthentication("2");//待审核
 

+ 12 - 2
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/MessageNoticeApiController.java

@@ -137,14 +137,24 @@ public class MessageNoticeApiController {
             sortList.add(new Sort("a.create_time","asc"));
 
             Map<String,Object> searchParams = new HashMap<>();
+
             //List<MessageNotice> mnList = messageNoticeService.findByUserIdAndClassify(subject,classifyId);
 
             searchParams.put("recipientIdAndNull",subject);
             searchParams.put("classify",classifyId);
             searchParams.put("status","1");
             searchParams.put("type","1");
-
-            Page<MessageNotice> page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+            Page page = null;
+            if("3".equals(classifyId)){
+                //政策发布
+                page = messageNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+            }else if("1".equals(classifyId)){
+                //1系统消息
+            }else if("2".equals(classifyId)){
+                //2求职信息
+            }else if("4".equals(classifyId)){
+                //4推荐职位
+            }
 
             messageResult.setData(PojoUtils.pageWrapper(page));
             messageResult.setResult(true);

+ 151 - 0
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/RecruitmentApiController.java

@@ -10,7 +10,9 @@ import com.jpsoft.employment.modules.common.dto.Sort;
 import com.jpsoft.employment.modules.common.utils.PojoUtils;
 import com.jpsoft.employment.modules.job.entity.*;
 import com.jpsoft.employment.modules.job.service.*;
+import com.jpsoft.employment.modules.sys.entity.User;
 import com.jpsoft.employment.modules.sys.service.DataDictionaryService;
+import com.jpsoft.employment.modules.sys.service.UserService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -58,6 +60,18 @@ public class RecruitmentApiController {
     @Autowired
     private ResumeDeliverService resumeDeliverService;
 
+    @Autowired
+    private UserCollectionService userCollectionService;
+
+    @Autowired
+    private RecruitmentCollectionService recruitmentCollectionService;
+
+    @Autowired
+    private UserService userService;
+
+    @Autowired
+    private ResumeService resumeService;
+
     @PostMapping("getRecruitmentList")
     @ApiOperation(value = "求职主页")
     @ApiImplicitParams({
@@ -326,4 +340,141 @@ public class RecruitmentApiController {
 
         return msgResult;
     }
+
+    @PostMapping("collectRecruitment")
+    @ApiOperation(value = "收藏岗位")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "recruitmentId", value = "岗位ID", required = true, paramType = "query"),
+            @ApiImplicitParam(name = "status", value = "状态(收藏1,取消0),默认1收藏",  paramType = "query"),
+    })
+    public MessageResult<String> collectRecruitment(
+            String recruitmentId,
+            @RequestParam(value="status",defaultValue="1") String status,
+            String token,
+            @RequestAttribute  String subject) {
+        MessageResult<String> messageResult = new MessageResult<>();
+
+        try {
+            UserCollection uc = userCollectionService.findByUserIdAndRId(subject,recruitmentId);
+            if("1".equals(status)){
+                if(uc == null){
+                    uc = new UserCollection();
+                    uc.setId(UUID.randomUUID().toString());
+                    uc.setCreateBy(subject);
+                    uc.setCreateTime(new Date());
+                    uc.setJobRecruitmentId(recruitmentId);
+                    uc.setJobUserId(subject);
+                    uc.setDelFlag(false);
+
+                    userCollectionService.insert(uc);
+                }else{
+                    uc.setUpdateBy(subject);
+                    uc.setUpdateTime(new Date());
+                    uc.setDelFlag(false);
+
+                    userCollectionService.update(uc);
+                }
+            }else{
+                if(uc != null){
+                    uc.setUpdateBy(subject);
+                    uc.setUpdateTime(new Date());
+                    uc.setDelFlag(true);
+
+                    userCollectionService.update(uc);
+                }
+            }
+
+
+            messageResult.setData("操作成功");
+            messageResult.setResult(true);
+            messageResult.setCode(200);
+        } catch (Exception ex) {
+            log.error(ex.getMessage());
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
+        }
+
+        return messageResult;
+    }
+
+    @PostMapping("collectResumeHR")
+    @ApiOperation(value = "收藏简历HR")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "resumeId", value = "简历ID", required = true, paramType = "query"),
+            @ApiImplicitParam(name = "status", value = "状态(收藏1,取消0),默认1收藏",  paramType = "query"),
+    })
+    public MessageResult<String> collectResumeHR(
+            String resumeId,
+            @RequestParam(value="status",defaultValue="1") String status,
+            String token,
+            @RequestAttribute  String subject) {
+        MessageResult<String> messageResult = new MessageResult<>();
+
+        try {
+            //job_recruitment_collection
+
+            User sysUser = userService.get(subject);
+
+            RecruitmentCollection rc = recruitmentCollectionService.findByUserIdAndCompanyIdAndResumeId(subject,sysUser.getCompanyId(),resumeId);
+            if("1".equals(status)){
+                if(rc == null){
+                    rc = new RecruitmentCollection();
+                    rc.setId(UUID.randomUUID().toString());
+                    rc.setCreateBy(subject);
+                    rc.setCreateTime(new Date());
+                    rc.setCompanyId(sysUser.getCompanyId());
+                    rc.setResumeId(resumeId);
+                    rc.setSysUserId(subject);
+                    rc.setDelFlag(false);
+
+                    recruitmentCollectionService.insert(rc);
+                }else{
+                    rc.setUpdateBy(subject);
+                    rc.setUpdateTime(new Date());
+                    rc.setDelFlag(false);
+                    recruitmentCollectionService.update(rc);
+                }
+
+                //添加收藏次数
+                Resume resume = resumeService.get(resumeId);
+                if(resume != null){
+                    int collectionTimes = resume.getCollectionTimes();
+                    if(collectionTimes < 0){
+                        collectionTimes = 0;
+                    }
+                    resume.setCollectionTimes(collectionTimes++);
+                    resumeService.update(resume);
+                }
+            }else{
+                if(rc != null){
+                    rc.setUpdateBy(subject);
+                    rc.setUpdateTime(new Date());
+                    rc.setDelFlag(true);
+                    recruitmentCollectionService.update(rc);
+
+                    //减少收藏次数
+                    Resume resume = resumeService.get(resumeId);
+                    if(resume != null){
+                        int collectionTimes = resume.getCollectionTimes();
+                        if(collectionTimes < 0){
+                            resume.setCollectionTimes(0);
+                        }else{
+                            resume.setCollectionTimes(collectionTimes--);
+                        }
+                        resumeService.update(resume);
+                    }
+                }
+            }
+
+            messageResult.setData("操作成功");
+            messageResult.setResult(true);
+            messageResult.setCode(200);
+        } catch (Exception ex) {
+            log.error(ex.getMessage());
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
+        }
+
+        return messageResult;
+    }
 }

+ 98 - 55
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/ResumeApiController.java

@@ -19,8 +19,10 @@ import com.jpsoft.employment.modules.job.dto.WorkExpDTO;
 import com.jpsoft.employment.modules.job.entity.*;
 import com.jpsoft.employment.modules.job.service.*;
 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.UserService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -83,6 +85,12 @@ public class ResumeApiController {
     @Autowired
     private WorkCategoryService workCategoryService;
 
+    @Autowired
+    private UserService userService;
+
+    @Autowired
+    private UserBrowseHrService userBrowseHrService;
+
 
     private Logger logger = LoggerFactory.getLogger(getClass());
 
@@ -110,61 +118,6 @@ public class ResumeApiController {
         return messageResult;
     }
 
-    @PostMapping("collectResume")
-    @ApiOperation(value = "收藏简历")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "recruitmentId", value = "岗位ID", required = true, paramType = "query"),
-            @ApiImplicitParam(name = "status", value = "状态(收藏1,取消0),默认1收藏",  paramType = "query"),
-    })
-    public MessageResult<String> collectResume(
-            String recruitmentId,
-            @RequestParam(value="status",defaultValue="1") String status,
-            String token,
-            @RequestAttribute  String subject) {
-        MessageResult<String> messageResult = new MessageResult<>();
-
-        try {
-            UserCollection uc = userCollectionService.findByUserIdAndRId(subject,recruitmentId);
-            if("1".equals(status)){
-                if(uc == null){
-                    uc = new UserCollection();
-                    uc.setId(UUID.randomUUID().toString());
-                    uc.setCreateBy(subject);
-                    uc.setCreateTime(new Date());
-                    uc.setJobRecruitmentId(recruitmentId);
-                    uc.setJobUserId(subject);
-                    uc.setDelFlag(false);
-
-                    userCollectionService.insert(uc);
-                }else{
-                    uc.setUpdateBy(subject);
-                    uc.setUpdateTime(new Date());
-                    uc.setDelFlag(false);
-
-                    userCollectionService.update(uc);
-                }
-            }else{
-                if(uc != null){
-                    uc.setUpdateBy(subject);
-                    uc.setUpdateTime(new Date());
-                    uc.setDelFlag(true);
-
-                    userCollectionService.update(uc);
-                }
-            }
-
-
-            messageResult.setData("操作成功");
-            messageResult.setResult(true);
-            messageResult.setCode(200);
-        } catch (Exception ex) {
-            log.error(ex.getMessage());
-            messageResult.setResult(false);
-            messageResult.setMessage(ex.getMessage());
-        }
-
-        return messageResult;
-    }
 
     @PostMapping("deliverResume")
     @ApiOperation(value = "投递简历")
@@ -268,6 +221,7 @@ public class ResumeApiController {
             JobUser jobUser = jobUserService.get(resume.getJobUserId());
             if(jobUser != null) {
                 resume.setUserName(jobUser.getRealName());
+                resume.setUserTel(jobUser.getTel());
             }
             resume.setSexName(dataDictionaryService.findNameByCatalogNameAndValue("性别",resume.getSex()));
             resume.setDreamMoneyName(dataDictionaryService.getName(resume.getDreamMoney()));
@@ -284,6 +238,7 @@ public class ResumeApiController {
                 resume.setUserIsAuthenticationName("未实名");
             resume.setStatusName(dataDictionaryService.getName(resume.getStatus()));
 
+
             //教育经验
             List<ResumeEducationExperience> rexList = resumeEducationExperienceService.findByResumeId(resume.getId());
             //工作经验
@@ -309,6 +264,94 @@ public class ResumeApiController {
         return messageResult;
     }
 
+    @PostMapping("resumeDetail")
+    @ApiOperation(value = "查看简历-详情")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "resumeId", value = "简历ID,不传则默认查当前简历", paramType = "query"),
+    })
+    public MessageResult<Map> resumeDetail(
+            String resumeId,
+            String token,
+            @RequestAttribute  String subject) {
+        MessageResult<Map> messageResult = new MessageResult<>();
+
+        try {
+            Resume resume = null;
+            if(StringUtils.isNotEmpty(resumeId)) {
+                resume = resumeService.get(resumeId);
+            }
+
+            if(resume == null){
+                messageResult.setMessage("简历有误");
+                messageResult.setResult(false);
+                messageResult.setCode(400);
+                return messageResult;
+            }
+
+            //添加简历热度
+            int readingTimes = resume.getReadingTimes();
+            if(readingTimes < 0){
+                readingTimes = 0;
+            }
+            resume.setReadingTimes(readingTimes++);
+            resumeService.update(resume);
+
+            JobUser jobUser = jobUserService.get(resume.getJobUserId());
+            if(jobUser != null) {
+                resume.setUserName(jobUser.getRealName());
+                resume.setUserTel(jobUser.getTel());
+            }
+            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());
+            }
+            if(resume.getUserIsAuthentication() == "1")
+                resume.setUserIsAuthenticationName("已实名");
+            else
+                resume.setUserIsAuthenticationName("未实名");
+            resume.setStatusName(dataDictionaryService.getName(resume.getStatus()));
+
+            //教育经验
+            List<ResumeEducationExperience> rexList = resumeEducationExperienceService.findByResumeId(resume.getId());
+            //工作经验
+            List<ResumeWorkExperience> rweList = resumeWorkExperienceService.findByResumeId(resume.getId());
+
+
+            Map<String, Object> dataMap = new HashMap<String, Object>();
+
+            dataMap.put("resume", resume);
+            dataMap.put("educationExperienceList", rexList);
+            dataMap.put("workExpList", rweList);
+
+
+            //添加浏览记录
+            //User sysUser = userService.get(subject);
+            UserBrowseHr ubh = new UserBrowseHr();
+            ubh.setId(UUID.randomUUID().toString());
+            ubh.setCreateBy(subject);
+            ubh.setCreateTime(new Date());
+            ubh.setDelFlag(false);
+            ubh.setSysUserId(subject);
+            ubh.setJobResumeId(resumeId);
+            userBrowseHrService.insert(ubh);
+
+            messageResult.setData(dataMap);
+            messageResult.setResult(true);
+            messageResult.setCode(200);
+            return messageResult;
+        } catch (Exception ex) {
+            log.error(ex.getMessage());
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
+        }
+
+        return messageResult;
+    }
 
     @PostMapping("deliveryRecord")
     @ApiOperation(value = "投递记录")