Sfoglia il codice sorgente

投递简历接口添加保存岗位跟踪

LiFei 6 anni fa
parent
commit
a23fceca9e

+ 199 - 0
happy-job-module-hpjob/src/main/java/com/jeeplus/modules/api/hpuser/entity/CmPositionTrackAPI.java

@@ -0,0 +1,199 @@
+/**
+ * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
+ */
+package com.jeeplus.modules.api.hpuser.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jeeplus.common.utils.excel.annotation.ExcelField;
+import com.jeeplus.core.persistence.DataEntity;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * 用户投递Entity
+ * @author stephen
+ * @version 2019-10-24
+ */
+public class CmPositionTrackAPI extends DataEntity<CmPositionTrackAPI> {
+
+	private static final long serialVersionUID = 1L;
+	private String memberId;		// 用户
+	private String positionId;		// 岗位
+	private String positionCategory;		// 岗位类型(0:全职 1:兼职 2:入职奖励 3:高薪急聘 4:拼团岗位 5:福利岗位)
+	private Date applyTime;		// 申请时间
+	private String status;		// 状态(0:待处理 1:不合适 2:待面试 3:未面试 4:未录用 5:录用 6:未入职 7:入职 8:离职)
+	private String improperReason;		// 不合适原因
+	private String inteviewIdcardNumber;		// 面试-身份证号
+	private Date interviewTime;		// 面试时间
+	private String inteviewAddress;		// 面试地点(0: 其他 1:企业门口 2:慧博总店 3:劳务公司)
+	private String interviewFromType;		// 前往方式(0:派车接 1:自行前往)
+	private Boolean hasCashback;		// 有无返费(0:无 1:有)
+	private String priceDetail;		// 当日价格详情
+	private String cashbackFee;		// 返费
+	private Date onboardingDate;		// 入职日期
+	private Integer noOnboardingReason;		// 未入职原因
+	private Date outgoingDate;		// 离职日期
+
+
+	public CmPositionTrackAPI() {
+		super();
+		this.setIdType(IDTYPE_AUTO);
+	}
+
+	public CmPositionTrackAPI(String id){
+		super(id);
+	}
+
+	@ExcelField(title="用户", align=2, sort=1)
+	public String getMemberId() {
+		return memberId;
+	}
+
+	public void setMemberId(String memberId) {
+		this.memberId = memberId;
+	}
+	
+	@ExcelField(title="岗位", align=2, sort=2)
+	public String getPositionId() {
+		return positionId;
+	}
+
+	public void setPositionId(String positionId) {
+		this.positionId = positionId;
+	}
+	
+	@ExcelField(title="岗位类型(0:全职 1:兼职 2:入职奖励 3:高薪急聘 4:拼团岗位 5:福利岗位)", align=2, sort=3)
+	public String getPositionCategory() {
+		return positionCategory;
+	}
+
+	public void setPositionCategory(String positionCategory) {
+		this.positionCategory = positionCategory;
+	}
+	
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@NotNull(message="申请时间不能为空")
+	@ExcelField(title="申请时间", align=2, sort=4)
+	public Date getApplyTime() {
+		return applyTime;
+	}
+
+	public void setApplyTime(Date applyTime) {
+		this.applyTime = applyTime;
+	}
+	
+	@ExcelField(title="状态(0:待处理 1:不合适 2:待面试 3:未面试 4:未录用 5:录用 6:未入职 7:入职 8:离职)", align=2, sort=5)
+	public String getStatus() {
+		return status;
+	}
+
+	public void setStatus(String status) {
+		this.status = status;
+	}
+	
+	@ExcelField(title="不合适原因", align=2, sort=6)
+	public String getImproperReason() {
+		return improperReason;
+	}
+
+	public void setImproperReason(String improperReason) {
+		this.improperReason = improperReason;
+	}
+	
+	@ExcelField(title="面试-身份证号", align=2, sort=7)
+	public String getInteviewIdcardNumber() {
+		return inteviewIdcardNumber;
+	}
+
+	public void setInteviewIdcardNumber(String inteviewIdcardNumber) {
+		this.inteviewIdcardNumber = inteviewIdcardNumber;
+	}
+	
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ExcelField(title="面试时间", align=2, sort=8)
+	public Date getInterviewTime() {
+		return interviewTime;
+	}
+
+	public void setInterviewTime(Date interviewTime) {
+		this.interviewTime = interviewTime;
+	}
+	
+	@ExcelField(title="面试地点(0: 其他 1:企业门口 2:慧博总店 3:劳务公司)", align=2, sort=9)
+	public String getInteviewAddress() {
+		return inteviewAddress;
+	}
+
+	public void setInteviewAddress(String inteviewAddress) {
+		this.inteviewAddress = inteviewAddress;
+	}
+	
+	@ExcelField(title="前往方式(0:派车接 1:自行前往)", align=2, sort=10)
+	public String getInterviewFromType() {
+		return interviewFromType;
+	}
+
+	public void setInterviewFromType(String interviewFromType) {
+		this.interviewFromType = interviewFromType;
+	}
+	
+	@ExcelField(title="有无返费(0:无 1:有)", align=2, sort=11)
+	public Boolean getHasCashback() {
+		return hasCashback;
+	}
+
+	public void setHasCashback(Boolean hasCashback) {
+		this.hasCashback = hasCashback;
+	}
+	
+	@ExcelField(title="当日价格详情", align=2, sort=12)
+	public String getPriceDetail() {
+		return priceDetail;
+	}
+
+	public void setPriceDetail(String priceDetail) {
+		this.priceDetail = priceDetail;
+	}
+	
+	@ExcelField(title="返费", align=2, sort=13)
+	public String getCashbackFee() {
+		return cashbackFee;
+	}
+
+	public void setCashbackFee(String cashbackFee) {
+		this.cashbackFee = cashbackFee;
+	}
+	
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ExcelField(title="入职日期", align=2, sort=14)
+	public Date getOnboardingDate() {
+		return onboardingDate;
+	}
+
+	public void setOnboardingDate(Date onboardingDate) {
+		this.onboardingDate = onboardingDate;
+	}
+	
+	@ExcelField(title="未入职原因", align=2, sort=15)
+	public Integer getNoOnboardingReason() {
+		return noOnboardingReason;
+	}
+
+	public void setNoOnboardingReason(Integer noOnboardingReason) {
+		this.noOnboardingReason = noOnboardingReason;
+	}
+	
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ExcelField(title="离职日期", align=2, sort=16)
+	public Date getOutgoingDate() {
+		return outgoingDate;
+	}
+
+	public void setOutgoingDate(Date outgoingDate) {
+		this.outgoingDate = outgoingDate;
+	}
+
+
+	
+}

+ 3 - 0
happy-job-module-hpjob/src/main/java/com/jeeplus/modules/hpuser/mapper/HpApplyPositionMapper.java

@@ -5,6 +5,7 @@ package com.jeeplus.modules.hpuser.mapper;
 
 import com.jeeplus.core.persistence.BaseMapper;
 import com.jeeplus.core.persistence.annotation.MyBatisMapper;
+import com.jeeplus.modules.api.hpuser.entity.CmPositionTrackAPI;
 import com.jeeplus.modules.api.hpuser.entity.HpApplyPositionAPI;
 import com.jeeplus.modules.hpuser.entity.HpApplyPosition;
 import org.apache.ibatis.annotations.Param;
@@ -48,4 +49,6 @@ public interface HpApplyPositionMapper extends BaseMapper<HpApplyPosition> {
 
 
     List<HpApplyPosition> findUserOldList(HpApplyPosition hpApplyPosition);
+
+    void saveCmPositionTrackAPI(CmPositionTrackAPI cmPositionTrackAPI);
 }

+ 46 - 2
happy-job-module-hpjob/src/main/java/com/jeeplus/modules/hpuser/mapper/xml/HpApplyPositionMapper.xml

@@ -521,6 +521,50 @@
 		WHERE user_id = #{0}
 	</update>
 
-
-
+   <!--保存岗位跟踪-->
+	<insert id="saveCmPositionTrackAPI" keyProperty="id" useGeneratedKeys="true" parameterType="CmPositionTrackAPI">
+		INSERT INTO cm_position_track(
+			member_id,
+			position_id,
+			position_category,
+			apply_time,
+			status,
+			improper_reason,
+			inteview_idcard_number,
+			interview_time,
+			inteview_address,
+			interview_from_type,
+			has_cashback,
+			price_detail,
+			cashback_fee,
+			onboarding_date,
+			no_onboarding_reason,
+			outgoing_date,
+			create_date,
+			create_by,
+			update_date,
+			update_by
+		) VALUES (
+			#{memberId},
+			#{positionId},
+			#{positionCategory},
+			#{applyTime},
+			#{status},
+			#{improperReason},
+			#{inteviewIdcardNumber},
+			#{interviewTime},
+			#{inteviewAddress},
+			#{interviewFromType},
+			#{hasCashback},
+			#{priceDetail},
+			#{cashbackFee},
+			#{onboardingDate},
+			#{noOnboardingReason},
+			#{outgoingDate},
+			#{createDate},
+			#{createBy.id},
+			#{updateDate},
+			#{updateBy.id}
+		)
+	</insert>
 </mapper>

+ 17 - 0
happy-job-module-hpjob/src/main/java/com/jeeplus/modules/hpuser/service/HpApplyPositionService.java

@@ -9,6 +9,7 @@ import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.service.CrudService;
 import com.jeeplus.modules.api.dpposition.entity.DpPositionForApplyAPI;
 import com.jeeplus.modules.api.hpposition.entity.*;
+import com.jeeplus.modules.api.hpuser.entity.CmPositionTrackAPI;
 import com.jeeplus.modules.api.hpuser.entity.HpApplyPositionAPI;
 import com.jeeplus.modules.api.utils.MpMemberTaskServiceF;
 import com.jeeplus.modules.dpposition.service.DpPositionService;
@@ -280,6 +281,17 @@ public class HpApplyPositionService extends CrudService<HpApplyPositionMapper, H
                     //日常任务-投递岗位
                     mpMemberTaskServiceF.saveMpMemberTaskDay(hpMember1, "11");
                 }
+                if (Integer.parseInt(positionCategory)<=5) {
+                    //保存岗位跟踪
+                    CmPositionTrackAPI cmPositionTrackAPI=new CmPositionTrackAPI();
+                    cmPositionTrackAPI.setMemberId(memberId);
+                    cmPositionTrackAPI.setPositionId(positionId);
+                    cmPositionTrackAPI.setPositionCategory(positionCategory);
+                    cmPositionTrackAPI.setApplyTime(new Date());
+                    cmPositionTrackAPI.setStatus("0");
+                    saveCmPositionTrackAPI(cmPositionTrackAPI);
+                }
+
                 returnMap.put("hpApplyPosition", hpApplyPositionAPI);
 
             } else {
@@ -291,6 +303,11 @@ public class HpApplyPositionService extends CrudService<HpApplyPositionMapper, H
         return returnMap;
     }
 
+    @Transactional(readOnly = false)
+    public void saveCmPositionTrackAPI(CmPositionTrackAPI cmPositionTrackAPI) {
+        mapper.saveCmPositionTrackAPI(cmPositionTrackAPI);
+    }
+
 
     /**
      * api保存