Преглед на файлове

Merge remote-tracking branch 'origin/master'

jz.kai преди 4 години
родител
ревизия
8773db5c51
променени са 23 файла, в които са добавени 364 реда и са изтрити 27 реда
  1. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/RecruitmentCollectionDAO.java
  2. 5 2
      common/src/main/java/com/jpsoft/employment/modules/job/dao/RecruitmentDAO.java
  3. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDAO.java
  4. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDeliverDAO.java
  5. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDeliverRecordDAO.java
  6. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeEducationExperienceDAO.java
  7. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeWorkExperienceDAO.java
  8. 3 2
      common/src/main/java/com/jpsoft/employment/modules/job/dao/UserBrowseDAO.java
  9. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/UserBrowseHrDAO.java
  10. 6 2
      common/src/main/java/com/jpsoft/employment/modules/job/dao/UserCollectionDAO.java
  11. 2 1
      common/src/main/java/com/jpsoft/employment/modules/job/dao/WorkCategoryDAO.java
  12. 5 0
      common/src/main/java/com/jpsoft/employment/modules/job/entity/Recruitment.java
  13. 105 0
      common/src/main/java/com/jpsoft/employment/modules/job/entity/RecruitmentVO.java
  14. 1 1
      common/src/main/java/com/jpsoft/employment/modules/job/entity/ResumeDeliver.java
  15. 77 0
      common/src/main/java/com/jpsoft/employment/modules/job/entity/ResumeVO.java
  16. 4 1
      common/src/main/java/com/jpsoft/employment/modules/job/service/UserCollectionService.java
  17. 2 0
      common/src/main/java/com/jpsoft/employment/modules/job/service/impl/UserBrowseServiceImpl.java
  18. 11 0
      common/src/main/java/com/jpsoft/employment/modules/job/service/impl/UserCollectionServiceImpl.java
  19. 9 9
      common/src/main/resources/mapper/job/Recruitment.xml
  20. 39 1
      common/src/main/resources/mapper/job/RecruitmentCollection.xml
  21. 3 0
      common/src/main/resources/mapper/job/ResumeDeliver.xml
  22. 44 1
      common/src/main/resources/mapper/job/UserCollection.xml
  23. 34 0
      web/src/main/java/com/jpsoft/employment/modules/mobile/controller/ResumeApiController.java

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/RecruitmentCollectionDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.RecruitmentCollection;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface RecruitmentCollectionDAO {
@@ -14,5 +15,5 @@ public interface RecruitmentCollectionDAO {
 	RecruitmentCollection get(String id);
 	int delete(String id);
 	List<RecruitmentCollection> list();
-	List<RecruitmentCollection> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<RecruitmentCollection> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 }

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

@@ -1,10 +1,13 @@
 package com.jpsoft.employment.modules.job.dao;
 
 import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.Recruitment;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface RecruitmentDAO {
@@ -14,6 +17,6 @@ public interface RecruitmentDAO {
 	Recruitment get(String id);
 	int delete(String id);
 	List<Recruitment> list();
-	List<Recruitment> search(Map<String,Object> searchParams,List<Sort> sortList);
-	List<Map> foundPageList(Map<String,Object> searchParams,List<Sort> sortList);
+	List<Recruitment> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
+	List<Map> foundPageList(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.Resume;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface ResumeDAO {
@@ -14,6 +15,6 @@ public interface ResumeDAO {
 	Resume get(String id);
 	int delete(String id);
 	List<Resume> list();
-	List<Resume> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<Resume> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 	Resume findByUserId(String userId);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDeliverDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.ResumeDeliver;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface ResumeDeliverDAO {
@@ -14,5 +15,5 @@ public interface ResumeDeliverDAO {
 	ResumeDeliver get(String id);
 	int delete(String id);
 	List<ResumeDeliver> list();
-	List<ResumeDeliver> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<ResumeDeliver> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeDeliverRecordDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.ResumeDeliverRecord;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface ResumeDeliverRecordDAO {
@@ -14,5 +15,5 @@ public interface ResumeDeliverRecordDAO {
 	ResumeDeliverRecord get(String id);
 	int delete(String id);
 	List<ResumeDeliverRecord> list();
-	List<ResumeDeliverRecord> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<ResumeDeliverRecord> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeEducationExperienceDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.ResumeEducationExperience;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface ResumeEducationExperienceDAO {
@@ -14,6 +15,6 @@ public interface ResumeEducationExperienceDAO {
 	ResumeEducationExperience get(String id);
 	int delete(String id);
 	List<ResumeEducationExperience> list();
-	List<ResumeEducationExperience> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<ResumeEducationExperience> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 	List<ResumeEducationExperience> findByResumeId(String resumeId);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/ResumeWorkExperienceDAO.java

@@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.ResumeWorkExperience;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface ResumeWorkExperienceDAO {
@@ -16,6 +17,6 @@ public interface ResumeWorkExperienceDAO {
 	ResumeWorkExperience get(String id);
 	int delete(String id);
 	List<ResumeWorkExperience> list();
-	List<ResumeWorkExperience> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<ResumeWorkExperience> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 	List<ResumeWorkExperience> findByResumeId(String resumeId);
 }

+ 3 - 2
common/src/main/java/com/jpsoft/employment/modules/job/dao/UserBrowseDAO.java

@@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.UserBrowse;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface UserBrowseDAO {
@@ -16,6 +17,6 @@ public interface UserBrowseDAO {
 	UserBrowse get(String id);
 	int delete(String id);
 	List<UserBrowse> list();
-	List<UserBrowse> search(Map<String,Object> searchParams,List<Sort> sortList);
-	List<Recruitment> loadUserBrowses(Map<String,Object> searchParams, List<Sort> sortList);
+	List<UserBrowse> search(Map<String, Object> searchParams, List<Sort> sortList);
+	List<Recruitment> loadUserBrowses(Map<String, Object> searchParams, List<Sort> sortList);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/UserBrowseHrDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.UserBrowseHr;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface UserBrowseHrDAO {
@@ -14,5 +15,5 @@ public interface UserBrowseHrDAO {
 	UserBrowseHr get(String id);
 	int delete(String id);
 	List<UserBrowseHr> list();
-	List<UserBrowseHr> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<UserBrowseHr> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 }

+ 6 - 2
common/src/main/java/com/jpsoft/employment/modules/job/dao/UserCollectionDAO.java

@@ -1,10 +1,13 @@
 package com.jpsoft.employment.modules.job.dao;
 
 import java.util.List;
+
+import com.jpsoft.employment.modules.job.entity.Recruitment;
 import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.UserCollection;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface UserCollectionDAO {
@@ -14,7 +17,8 @@ public interface UserCollectionDAO {
 	UserCollection get(String id);
 	int delete(String id);
 	List<UserCollection> list();
-	List<UserCollection> search(Map<String,Object> searchParams,List<Sort> sortList);
-	UserCollection findByUserIdAndRId(String userId,String recruitmentId);
+	List<UserCollection> search(Map<String, Object> searchParams, List<Sort> sortList);
+	UserCollection findByUserIdAndRId(String userId, String recruitmentId);
 	List<UserCollection> findByUserId(String userId);
+	List<Recruitment> loadUserCollection(Map<String, Object> searchParams, List<Sort> sortList);
 }

+ 2 - 1
common/src/main/java/com/jpsoft/employment/modules/job/dao/WorkCategoryDAO.java

@@ -5,6 +5,7 @@ import org.springframework.stereotype.Repository;
 import com.jpsoft.employment.modules.job.entity.WorkCategory;
 import java.util.Map;
 import com.jpsoft.employment.modules.common.dto.Sort;
+import org.apache.ibatis.annotations.Param;
 
 @Repository
 public interface WorkCategoryDAO {
@@ -14,6 +15,6 @@ public interface WorkCategoryDAO {
 	WorkCategory get(String id);
 	int delete(String id);
 	List<WorkCategory> list();
-	List<WorkCategory> search(Map<String,Object> searchParams,List<Sort> sortList);
+	List<WorkCategory> search(@Param("searchParams") Map<String,Object> searchParams, @Param("sortList")List<Sort> sortList);
 	List<WorkCategory> findListByParentId(String parentId);
 }

+ 5 - 0
common/src/main/java/com/jpsoft/employment/modules/job/entity/Recruitment.java

@@ -21,10 +21,15 @@ public class Recruitment {
         @ApiModelProperty(value = "企业ID ")
     private String companyId;
     private String companyName;
+    private String companyLogo;
+    private String companyScale;
+    private String companyScaleN;
         @ApiModelProperty(value = "标题")
     private String title;
         @ApiModelProperty(value = "招聘所属地区")
     private String area;
+    @ApiModelProperty(value = "招聘所属地区翻译")
+    private String areaN;
         @ApiModelProperty(value = "地址")
     private String address;
         @ApiModelProperty(value = "职位")

+ 105 - 0
common/src/main/java/com/jpsoft/employment/modules/job/entity/RecruitmentVO.java

@@ -0,0 +1,105 @@
+package com.jpsoft.employment.modules.job.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+  描述:job_recruitment的VO
+ */
+@Data
+public class RecruitmentVO {
+
+	@ApiModelProperty(value = "ID")
+	private String id;
+
+	@ApiModelProperty(value = "企业ID")
+	private String companyId;
+
+	@ApiModelProperty(value = "标题")
+	private String title;
+
+	@ApiModelProperty(value = "招聘所属地区")
+	private String area;
+
+	@ApiModelProperty(value = "地址")
+	private String address;
+
+	@ApiModelProperty(value = "职位")
+	private String position;
+
+	@ApiModelProperty(value = "职位名称")
+	private String positionName;
+
+	@ApiModelProperty(value = "职位描述")
+	private String positionMessage;
+
+	@ApiModelProperty(value = "任职要求")
+	private String requirements;
+
+
+	@ApiModelProperty(value = "求职人数")
+	private Integer positionNumber;
+
+	@ApiModelProperty(value = "工作年限")
+	private String workYear;
+
+	@ApiModelProperty(value = "学历要求")
+	private String education;
+
+	@ApiModelProperty(value = "性别要求")
+	private String positionSex;
+
+	@ApiModelProperty(value = "性别要求")
+	private Integer readTimes;
+
+	@ApiModelProperty(value = "薪资")
+	private String wageType;
+
+	@ApiModelProperty(value = "是否面议")
+	private Boolean isDiscussPersonally;
+
+	@ApiModelProperty(value = "联系人")
+	private String contactPerson;
+
+	@ApiModelProperty(value = "联系方式")
+	private String tel;
+
+	@ApiModelProperty(value = "状态(关闭,开启等)")
+	private String status;
+
+	@ApiModelProperty(value = "审批状态")
+	private String approveStatus;
+
+	@ApiModelProperty(value = "阅读次数")
+	private Integer readingTimes;
+
+	@ApiModelProperty(value = "收藏次数")
+	private Integer collectionTimes;
+
+	@ApiModelProperty(value = "投递次数")
+	private Integer deliveryTimes;
+
+	@ApiModelProperty(value = "创建人")
+	private String createBy;
+
+	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+
+	@ApiModelProperty(value = "更新人")
+	private String updateBy;
+
+	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@ApiModelProperty(value = "更新时间")
+	private Date updateTime;
+
+	@ApiModelProperty(value = "是否删除")
+	private Boolean delFlag;
+
+}

+ 1 - 1
common/src/main/java/com/jpsoft/employment/modules/job/entity/ResumeDeliver.java

@@ -51,7 +51,7 @@ public class ResumeDeliver {
 	@ApiModelProperty(value = "投递的招聘信息")
 	private Recruitment jobRecruitment;
 
-	@ApiModelProperty(value = "简历状态(已投递,已查看,邀请面试等)")
+	@ApiModelProperty(value = "废弃")
 	private String status;
 
 	@ApiModelProperty(value = "沟通状态")

+ 77 - 0
common/src/main/java/com/jpsoft/employment/modules/job/entity/ResumeVO.java

@@ -0,0 +1,77 @@
+package com.jpsoft.employment.modules.job.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+  描述:job_resume的VO类
+ */
+@Data
+public class ResumeVO {
+
+	@ApiModelProperty(value = "ID")
+	private String id;
+
+	@ApiModelProperty(value = "创建人")
+	private String createBy;
+
+	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+
+	@ApiModelProperty(value = "更新人")
+	private String updateBy;
+
+	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@ApiModelProperty(value = "更新时间")
+	private Date updateTime;
+
+	@ApiModelProperty(value = "是否删除")
+	private Boolean delFlag;
+
+	@ApiModelProperty(value = "用户ID")
+	private String jobUserId;
+
+	@ApiModelProperty(value = "性别")
+	private String sex;
+
+	@ApiModelProperty(value = "职位分类")
+	private String positionCategoryId;
+
+	@ApiModelProperty(value = "职位分类名称")
+	private String positionCategoryName;
+
+	@ApiModelProperty(value = "工作经验")
+	private String workExp;
+
+	@ApiModelProperty(value = "学历")
+	private String education;
+
+	@ApiModelProperty(value = "期望薪资")
+	private String dreamMoney;
+
+	@ApiModelProperty(value = "期望工作地点")
+	private String dreamAdd;
+
+	@DateTimeFormat(pattern="yyyy-MM-dd")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone ="GMT+8")
+	@ApiModelProperty(value = "出生日期")
+	private Date birthday;
+
+	@ApiModelProperty(value = "个人介绍")
+	private String introduction;
+
+
+	@ApiModelProperty(value = "简历状态(开启,审核,等")
+	private String status;
+
+	@ApiModelProperty(value = "审批状态")
+	private String approveStatus;
+
+}

+ 4 - 1
common/src/main/java/com/jpsoft/employment/modules/job/service/UserCollectionService.java

@@ -2,6 +2,8 @@ package com.jpsoft.employment.modules.job.service;
 
 import java.util.List;
 import java.util.Map;
+
+import com.jpsoft.employment.modules.job.entity.Recruitment;
 import com.jpsoft.employment.modules.job.entity.UserCollection;
 import com.github.pagehelper.Page;
 import com.jpsoft.employment.modules.common.dto.Sort;
@@ -14,6 +16,7 @@ public interface UserCollectionService {
 	int delete(String id);
 	List<UserCollection> list();
 	Page<UserCollection> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
-	UserCollection findByUserIdAndRId(String userId,String recruitmentId);
+	UserCollection findByUserIdAndRId(String userId, String recruitmentId);
 	List<UserCollection> findByUserId(String userId);
+	Page<Recruitment> loadUserCollection(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 }

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

@@ -78,4 +78,6 @@ public class UserBrowseServiceImpl implements UserBrowseService {
 
 		return page;
 	}
+
+
 }

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

@@ -4,6 +4,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 import javax.annotation.Resource;
+
+import com.jpsoft.employment.modules.job.entity.Recruitment;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import com.jpsoft.employment.modules.job.dao.UserCollectionDAO;
@@ -76,4 +78,13 @@ public class UserCollectionServiceImpl implements UserCollectionService {
 	public List<UserCollection> findByUserId(String userId){
 		return userCollectionDAO.findByUserId(userId);
 	}
+
+	@Override
+	public Page<Recruitment> loadUserCollection(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList) {
+		Page<Recruitment> page = PageHelper.startPage(pageNum, pageSize, count).doSelectPage(() -> {
+			userCollectionDAO.loadUserCollection(searchParams, sortList);
+		});
+
+		return page;
+	}
 }

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

@@ -33,6 +33,9 @@
 		<result property="delFlag" column="del_flag" />
 		<result property="workCategoryId" column="work_category_id" />
 	</resultMap>
+	<resultMap id="RecruitmentVOMap" type="com.jpsoft.employment.modules.job.entity.RecruitmentVO" extends="RecruitmentMap">
+		<result property="positionName" column="position_name" />
+	</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.job.entity.Recruitment">
 	<!--
 	<selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
@@ -183,12 +186,6 @@ id_,company_id,title_,area_,address_,position_,position_message,requirements_,po
 			<if test="searchParams.id != null">
 				and ID_ like #{searchParams.id}
 			</if>
-			<if test="searchParams.status != null">
-				and status_ = #{searchParams.status}
-			</if>
-			<if test="searchParams.approveStatus != null">
-				and approve_status = #{searchParams.approveStatus}
-			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 	        ${sort.name} ${sort.order}
@@ -204,18 +201,21 @@ id_,company_id,title_,area_,address_,position_,position_message,requirements_,po
 				jr.address_ AS address,
 				bc.logo_ AS logo,
 				bc.name_ AS name,
-				sdd.name_ AS scaleName,
+				sdda.name_ AS scaleName,
+			    sddb.name_ AS wageTypeN,
 				bci.city_name AS cityName,
 				jwc.name_ AS code
 			FROM
 				job_recruitment AS jr
 			INNER JOIN base_company AS bc
-			INNER JOIN sys_data_dictionary AS sdd
+			INNER JOIN sys_data_dictionary AS sdda
+			INNER JOIN sys_data_dictionary AS sddb
 			INNER JOIN base_city AS bci
 			INNER JOIN job_work_category AS jwc ON jr.company_id = bc.id_
-			AND bc.scale_ = sdd.id_
 			AND jr.area_ = bci.id_
 			AND jr.position_ = jwc.id_
+			AND bc.scale_ = sdda.id_
+			AND jr.wage_type = sddb.id_
 		]]>
 		<where>
 			<if test="searchParams.id != null">

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

@@ -13,7 +13,29 @@
 			<result property="companyId" column="company_id" />
 			<result property="sysUserId" column="sys_user_id" />
 			<result property="resumeId" column="resume_id" />
-			</resultMap>
+	</resultMap>
+
+	<resultMap id="ResumeVOMap" type="com.jpsoft.employment.modules.job.entity.ResumeVO">
+		<id property="id" column="id_" />
+		<result property="createBy" column="create_by" />
+		<result property="createTime" column="create_time" />
+		<result property="updateBy" column="update_by" />
+		<result property="updateTime" column="update_time" />
+		<result property="delFlag" column="del_flag" />
+		<result property="jobUserId" column="job_user_id" />
+		<result property="sex" column="sex_" />
+		<result property="positionCategoryId" column="position_category_id" />
+		<result property="positionCategoryName" column="position_category_name" />
+		<result property="workExp" column="work_exp" />
+		<result property="education" column="education_" />
+		<result property="dreamMoney" column="dream_money" />
+		<result property="dreamAdd" column="dream_add" />
+		<result property="birthday" column="birthday_" />
+		<result property="introduction" column="introduction_" />
+		<result property="status" column="status_" />
+		<result property="approveStatus" column="approve_status" />
+	</resultMap>
+
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.job.entity.RecruitmentCollection">
 	<!--
 	<selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
@@ -93,4 +115,20 @@ id_,create_by,create_time,update_by,update_time,del_flag,company_id,sys_user_id,
 	        ${sort.name} ${sort.order}
 	 	</foreach>
 	</select>
+
+	<select id="pagedLoad" parameterType="hashMap" resultMap="ResumeVOMap">
+		<![CDATA[
+			select r.*,w.name_ position_category_name from job_recruitment_collection  c inner join job_resume  r on c.resume_id=r.id_
+			left join job_work_category w on r.position_category_id=w.id_
+			where c.sys_user_id = #{searchParams.recruiterId}
+		]]>
+		<where>
+			<if test="searchParams.positionName != null">
+				and w.name_ like #{searchParams.positionName}
+			</if>
+		</where>
+		<foreach item="sort" collection="sortList"  open="order by" separator=",">
+			${sort.name} ${sort.order}
+		</foreach>
+	</select>
 </mapper>

+ 3 - 0
common/src/main/resources/mapper/job/ResumeDeliver.xml

@@ -102,6 +102,9 @@ id_,create_by,create_time,update_by,update_time,del_flag,job_user_id,job_resume_
 			<if test="searchParams.name != null">
 				and b.real_name like #{searchParams.name}
 			</if>
+			<if test="searchParams.chatStatus != null">
+				and a.chat_status = #{searchParams.chatStatus}
+			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 	        ${sort.name} ${sort.order}

+ 44 - 1
common/src/main/resources/mapper/job/UserCollection.xml

@@ -12,7 +12,38 @@
 			<result property="delFlag" column="del_flag" />
 			<result property="jobUserId" column="job_user_id" />
 			<result property="jobRecruitmentId" column="job_recruitment_id" />
-			</resultMap>
+	</resultMap>
+
+	<resultMap id="RecruitmentMap" type="com.jpsoft.employment.modules.job.entity.Recruitment">
+		<id property="id" column="id_" />
+		<result property="companyId" column="company_id" />
+		<result property="title" column="title_" />
+		<result property="area" column="area_" />
+		<result property="address" column="address_" />
+		<result property="position" column="position_" />
+		<result property="positionMessage" column="position_message" />
+		<result property="requirements" column="requirements_" />
+		<result property="positionNumber" column="position_number" />
+		<result property="workYear" column="work_year" />
+		<result property="education" column="education_" />
+		<result property="positionSex" column="position_sex" />
+		<result property="readTimes" column="read_times" />
+		<result property="wageType" column="wage_type" />
+		<result property="isDiscussPersonally" column="is_discuss_personally" />
+		<result property="contactPerson" column="contact_person" />
+		<result property="tel" column="tel_" />
+		<result property="status" column="status_" />
+		<result property="approveStatus" column="approve_status" />
+		<result property="readingTimes" column="reading_times" />
+		<result property="collectionTimes" column="collection_times" />
+		<result property="deliveryTimes" column="delivery_times" />
+		<result property="createBy" column="create_by" />
+		<result property="createTime" column="create_time" />
+		<result property="updateBy" column="update_by" />
+		<result property="updateTime" column="update_time" />
+		<result property="delFlag" column="del_flag" />
+	</resultMap>
+
 	<insert id="insert" parameterType="com.jpsoft.employment.modules.job.entity.UserCollection">
 	<!--
 	<selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
@@ -101,4 +132,16 @@
 		where del_flag = 0
 		and job_user_id = #{userId}
 	</select>
+
+	<select id="loadUserCollection" parameterType="hashmap" resultMap="RecruitmentMap">
+		<![CDATA[
+			select j.* from job_user_collection b inner join job_recruitment j on b.job_recruitment_id=j.id_ and j.del_flag=0
+		]]>
+		<where>
+			and job_user_id = #{searchParams.jobUserId}
+		</where>
+		<foreach item="sort" collection="sortList"  open="order by" separator=",">
+			${sort.name} ${sort.order}
+		</foreach>
+	</select>
 </mapper>

+ 34 - 0
web/src/main/java/com/jpsoft/employment/modules/mobile/controller/ResumeApiController.java

@@ -2,8 +2,13 @@ package com.jpsoft.employment.modules.mobile.controller;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+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.ResumeApprove;
+import com.jpsoft.employment.modules.base.service.CityService;
+import com.jpsoft.employment.modules.base.service.CompanyService;
 import com.jpsoft.employment.modules.base.service.ResumeApproveService;
 import com.jpsoft.employment.modules.common.dto.MessageResult;
 import com.jpsoft.employment.modules.common.dto.Sort;
@@ -13,6 +18,7 @@ import com.jpsoft.employment.modules.job.dto.ExpJsonDTO;
 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.service.DataDictionaryService;
 
 import io.swagger.annotations.Api;
@@ -68,6 +74,12 @@ public class ResumeApiController {
     @Autowired
     private ResumeApproveService resumeApproveService;
 
+    @Autowired
+    private CompanyService companyService;
+
+    @Autowired
+    private CityService cityService;
+
 
     private Logger logger = LoggerFactory.getLogger(getClass());
 
@@ -201,6 +213,7 @@ public class ResumeApiController {
             rd.setJobRecruitmentId(recruitmentId);
             rd.setJobUserId(subject);
             rd.setStatus("0");
+            rd.setChatStatus("1");
 
             int inCount = resumeDeliverService.insert(rd);
             if(inCount > 0) {
@@ -278,6 +291,7 @@ public class ResumeApiController {
     @PostMapping("deliveryRecord")
     @ApiOperation(value = "投递记录")
     public MessageResult<Map> deliveryRecord(
+            @RequestParam(value="chatStatus",defaultValue="") String chatStatus,
             @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
             @RequestParam(value="pageSize",defaultValue="10") int pageSize,
             String token,
@@ -291,9 +305,29 @@ public class ResumeApiController {
             List<Sort> sortList = new ArrayList<>();
             sortList.add(new Sort("a.create_time","desc"));
 
+            if(StringUtils.isNotEmpty(chatStatus)) {
+                searchParams.put("chatStatus",chatStatus);
+            }
+
             Page<ResumeDeliver> page = resumeDeliverService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
             for(ResumeDeliver rd : page.getResult()){
                 Recruitment recruitment = recruitmentService.get(rd.getJobRecruitmentId());
+                String wageTypeName = dataDictionaryService.getName(recruitment.getWageType());
+                String workYearName = dataDictionaryService.getName(recruitment.getWorkYear());
+                recruitment.setWageTypeName(wageTypeName);
+                recruitment.setWorkYearName(workYearName);
+                Company ci = companyService.get(recruitment.getCompanyId());
+                if(ci != null){
+                    recruitment.setCompanyName(ci.getName());
+                    recruitment.setCompanyLogo(ci.getLogo());
+                    recruitment.setCompanyScale(ci.getScale());
+                    String scaleN = dataDictionaryService.getName(ci.getScale());
+                    recruitment.setCompanyScaleN(scaleN);
+                }
+                City city = cityService.get(recruitment.getArea());
+                if(city != null){
+                    recruitment.setAreaN(city.getCityName());
+                }
                 rd.setJobRecruitment(recruitment);
             }