yonge 4 年之前
父節點
當前提交
05e131cebe

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/EmployeeInfoDao.java

@@ -1,9 +1,10 @@
 package com.ym.mec.biz.dal.dao;
 
+import com.ym.mec.biz.dal.dto.EmployeeInfoDto;
 import com.ym.mec.biz.dal.entity.EmployeeInfo;
 import com.ym.mec.common.dal.BaseDAO;
 
 public interface EmployeeInfoDao extends BaseDAO<Long, EmployeeInfo> {
 
-	
+	EmployeeInfoDto queryDetail(Long id);
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/EmployeeVisitDao.java

@@ -0,0 +1,11 @@
+package com.ym.mec.biz.dal.dao;
+
+import java.util.List;
+
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.biz.dal.entity.EmployeeVisit;
+
+public interface EmployeeVisitDao extends BaseDAO<Long, EmployeeVisit> {
+
+	List<EmployeeVisit> queryByEmployeeInfoId(Long employeeInfoId);
+}

+ 20 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/EmployeeInfoDto.java

@@ -0,0 +1,20 @@
+package com.ym.mec.biz.dal.dto;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import com.ym.mec.biz.dal.entity.EmployeeInfo;
+import com.ym.mec.biz.dal.entity.EmployeeVisit;
+
+public class EmployeeInfoDto extends EmployeeInfo {
+
+	private List<EmployeeVisit> employeeVisitList = new ArrayList<EmployeeVisit>();
+
+	public List<EmployeeVisit> getEmployeeVisitList() {
+		return employeeVisitList;
+	}
+
+	public void setEmployeeVisitList(List<EmployeeVisit> employeeVisitList) {
+		this.employeeVisitList = employeeVisitList;
+	}
+}

+ 55 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/EmployeeInfo.java

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
 
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
+import com.ym.mec.biz.dal.enums.JobNatureEnum;
 import com.ym.mec.biz.dal.enums.JobTypeEnum;
 import com.ym.mec.biz.dal.enums.StaffStatusEnum;
 
@@ -56,6 +57,9 @@ public class EmployeeInfo {
 
 	@ApiModelProperty(value = "声部", required = false)
 	private String subjectIdList;
+
+	@ApiModelProperty(value = "入职声部", required = false)
+	private String jobSubjectIdList;
 	
 	private String subjectName;
 
@@ -91,6 +95,9 @@ public class EmployeeInfo {
 	@ApiModelProperty(value = "离职日期", required = false)
 	private java.util.Date resignationDate;
 
+	@ApiModelProperty(value = "离职原因", required = false)
+	private String resignationReason;
+
 	@ApiModelProperty(value = "操作人编号", required = false)
 	private Integer operatorId;
 	
@@ -98,6 +105,14 @@ public class EmployeeInfo {
 
 	@ApiModelProperty(value = "信息来源", required = false)
 	private String sourceFrom;
+	
+	@ApiModelProperty(value = "岗位类别", required = false)
+	private JobTypeEnum jobType;
+	
+	@ApiModelProperty(value = "意向合作方式", required = false)
+	private JobNatureEnum jobNature;
+	
+	private String hrbp;
 
 	/**  */
 	private java.util.Date createTime;
@@ -361,6 +376,46 @@ public class EmployeeInfo {
 		this.operatorName = operatorName;
 	}
 
+	public String getJobSubjectIdList() {
+		return jobSubjectIdList;
+	}
+
+	public void setJobSubjectIdList(String jobSubjectIdList) {
+		this.jobSubjectIdList = jobSubjectIdList;
+	}
+
+	public String getResignationReason() {
+		return resignationReason;
+	}
+
+	public void setResignationReason(String resignationReason) {
+		this.resignationReason = resignationReason;
+	}
+
+	public JobTypeEnum getJobType() {
+		return jobType;
+	}
+
+	public void setJobType(JobTypeEnum jobType) {
+		this.jobType = jobType;
+	}
+
+	public JobNatureEnum getJobNature() {
+		return jobNature;
+	}
+
+	public void setJobNature(JobNatureEnum jobNature) {
+		this.jobNature = jobNature;
+	}
+
+	public String getHrbp() {
+		return hrbp;
+	}
+
+	public void setHrbp(String hrbp) {
+		this.hrbp = hrbp;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 81 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/EmployeeVisit.java

@@ -0,0 +1,81 @@
+package com.ym.mec.biz.dal.entity;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+/**
+ * 对应数据库表(employee_visit):
+ */
+public class EmployeeVisit {
+
+	/**  */
+	private Long id;
+	
+	/**  */
+	private Long employeeInfoId;
+	
+	/** 回访人 */
+	private Integer operatorId;
+	
+	/** 回访内容 */
+	private String content;
+	
+	/** 下次回访时间 */
+	private java.util.Date nextVisitDate;
+	
+	/**  */
+	private java.util.Date createTime;
+	
+	public void setId(Long id){
+		this.id = id;
+	}
+	
+	public Long getId(){
+		return this.id;
+	}
+			
+	public void setEmployeeInfoId(Long employeeInfoId){
+		this.employeeInfoId = employeeInfoId;
+	}
+	
+	public Long getEmployeeInfoId(){
+		return this.employeeInfoId;
+	}
+			
+	public void setOperatorId(Integer operatorId){
+		this.operatorId = operatorId;
+	}
+	
+	public Integer getOperatorId(){
+		return this.operatorId;
+	}
+			
+	public void setContent(String content){
+		this.content = content;
+	}
+	
+	public String getContent(){
+		return this.content;
+	}
+			
+	public void setNextVisitDate(java.util.Date nextVisitDate){
+		this.nextVisitDate = nextVisitDate;
+	}
+	
+	public java.util.Date getNextVisitDate(){
+		return this.nextVisitDate;
+	}
+			
+	public void setCreateTime(java.util.Date createTime){
+		this.createTime = createTime;
+	}
+	
+	public java.util.Date getCreateTime(){
+		return this.createTime;
+	}
+			
+	@Override
+	public String toString() {
+		return ToStringBuilder.reflectionToString(this);
+	}
+
+}

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/EmployeeInfoService.java

@@ -1,8 +1,10 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.EmployeeInfoDto;
 import com.ym.mec.biz.dal.entity.EmployeeInfo;
 import com.ym.mec.common.service.BaseService;
 
 public interface EmployeeInfoService extends BaseService<Long, EmployeeInfo> {
 
+	EmployeeInfoDto queryDetail(Long id);
 }

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/EmployeeVisitService.java

@@ -0,0 +1,8 @@
+package com.ym.mec.biz.service;
+
+import com.ym.mec.biz.dal.entity.EmployeeVisit;
+import com.ym.mec.common.service.BaseService;
+
+public interface EmployeeVisitService extends BaseService<Long, EmployeeVisit> {
+
+}

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeInfoServiceImpl.java

@@ -4,6 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.ym.mec.biz.dal.dao.EmployeeInfoDao;
+import com.ym.mec.biz.dal.dto.EmployeeInfoDto;
 import com.ym.mec.biz.dal.entity.EmployeeInfo;
 import com.ym.mec.biz.service.EmployeeInfoService;
 import com.ym.mec.common.dal.BaseDAO;
@@ -19,5 +20,10 @@ public class EmployeeInfoServiceImpl extends BaseServiceImpl<Long, EmployeeInfo>
 	public BaseDAO<Long, EmployeeInfo> getDAO() {
 		return employeeInfoDao;
 	}
+
+	@Override
+	public EmployeeInfoDto queryDetail(Long id) {
+		return employeeInfoDao.queryDetail(id);
+	}
 	
 }

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeVisitServiceImpl.java

@@ -0,0 +1,23 @@
+package com.ym.mec.biz.service.impl;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.ym.mec.biz.dal.dao.EmployeeVisitDao;
+import com.ym.mec.biz.dal.entity.EmployeeVisit;
+import com.ym.mec.biz.service.EmployeeVisitService;
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
+
+@Service
+public class EmployeeVisitServiceImpl extends BaseServiceImpl<Long, EmployeeVisit>  implements EmployeeVisitService {
+	
+	@Autowired
+	private EmployeeVisitDao employeeVisitDao;
+
+	@Override
+	public BaseDAO<Long, EmployeeVisit> getDAO() {
+		return employeeVisitDao;
+	}
+	
+}

+ 35 - 4
mec-biz/src/main/resources/config/mybatis/EmployeeInfoMapper.xml

@@ -19,6 +19,7 @@
 		<result column="intention_city_" property="intentionCity" />
 		<result column="educational_background_" property="educationalBackground" />
 		<result column="subject_id_list_" property="subjectIdList" />
+		<result column="job_subject_id_list_" property="jobSubjectIdList" />
 		<result column="assessment_result_" property="assessmentResult" />
 		<result column="other_comment_" property="otherComment" />
 		<result column="entry_date_" property="entryDate" />
@@ -28,20 +29,35 @@
 		<result column="bank_card_no_" property="bankCardNo" />
 		<result column="bank_address_" property="bankAddress" />
 		<result column="resignation_date_" property="resignationDate" />
+		<result column="resignation_reason_" property="resignationReason" />
 		<result column="organ_id_" property="organId" />
 		<result column="operator_id_" property="operatorId" />
 		<result column="source_from_" property="sourceFrom" />
+		<result column="job_type_" property="jobType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
+		<result column="job_nature_" property="jobNature" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
+		<result column="hrbp_" property="hrbp" />
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="organName" property="organName" />
 		<result column="subjectName" property="subjectName" />
 		<result column="operatorName" property="operatorName" />
 	</resultMap>
+	
+	<resultMap type="com.ym.mec.biz.dal.dto.EmployeeInfoDto" id="EmployeeInfoDto" extends="EmployeeInfo">
+		
+        <collection property="employeeVisitList"
+                     select="com.ym.mec.biz.dal.dao.EmployeeVisitDao.queryByEmployeeInfoId"
+                     column="id_" />
+        
+	</resultMap>
 
 	<!-- 根据主键查询一条记录 -->
 	<select id="get" resultMap="EmployeeInfo">
-		SELECT * FROM
-		employee_info WHERE id_ = #{id}
+		SELECT * FROM employee_info WHERE id_ = #{id}
+	</select>
+	
+	<select id="queryDetail" resultMap="EmployeeInfoDto">
+		SELECT * FROM employee_info WHERE id_ = #{id}
 	</select>
 
 	<!-- 全查询 -->
@@ -56,8 +72,8 @@
 		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
 			AS ID FROM DUAL </selectKey> -->
 		INSERT INTO employee_info
-		(id_,real_name_,mobile_no_,wechat_no_,id_card_,age_,gender_,birthdate_,emergency_contact_name_,emergency_contact_relation_,emergency_contact_phone_,live_city_,intention_city_,educational_background_,subject_id_list_,assessment_result_,other_comment_,entry_date_,organ_id_,position_,status_,is_probation_period_,bank_card_no_,bank_address_,resignation_date_,operator_id_,source_from_,create_time_,update_time_)
-		VALUES(#{id},#{realName},#{mobileNo},#{wechatNo},#{idCard},#{age},#{gender},#{birthdate},#{emergencyContactName},#{emergencyContactRelation},#{emergencyContactPhone},#{liveCity},#{intentionCity},#{educationalBackground},#{subjectIdList},#{assessmentResult},#{otherComment},#{entryDate},#{organId},#{position,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{isProbationPeriod},#{bankCardNo},#{bankAddress},#{resignationDate},#{operatorId},#{sourceFrom},#{createTime},#{updateTime})
+		(id_,real_name_,mobile_no_,wechat_no_,id_card_,age_,gender_,birthdate_,emergency_contact_name_,emergency_contact_relation_,emergency_contact_phone_,live_city_,intention_city_,educational_background_,subject_id_list_,assessment_result_,other_comment_,entry_date_,organ_id_,position_,status_,is_probation_period_,bank_card_no_,bank_address_,resignation_date_,operator_id_,source_from_,create_time_,update_time_,job_subject_id_list_,resignation_reason_,job_type_,job_nature_,hrbp_)
+		VALUES(#{id},#{realName},#{mobileNo},#{wechatNo},#{idCard},#{age},#{gender},#{birthdate},#{emergencyContactName},#{emergencyContactRelation},#{emergencyContactPhone},#{liveCity},#{intentionCity},#{educationalBackground},#{subjectIdList},#{assessmentResult},#{otherComment},#{entryDate},#{organId},#{position,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{isProbationPeriod},#{bankCardNo},#{bankAddress},#{resignationDate},#{operatorId},#{sourceFrom},#{createTime},#{updateTime},#{jobSubjectIdList},#{resignationReason},#{jobType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{jobNature,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{hrbp})
 	</insert>
 
 	<!-- 根据主键查询一条记录 -->
@@ -108,6 +124,21 @@
 			<if test="operatorId != null">
 				operator_id_ = #{operatorId},
 			</if>
+			<if test="jobSubjectIdList != null">
+				job_subject_id_list_ = #{jobSubjectIdList},
+			</if>
+			<if test="resignationReason != null">
+				resignation_reason_ = #{resignationReason},
+			</if>
+			<if test="jobType != null">
+				job_type_ = #{jobType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+			</if>
+			<if test="jobNature != null">
+				job_nature_ = #{jobNature,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+			</if>
+			<if test="hrbp != null">
+				hrbp_ = #{hrbp},
+			</if>
 				source_from_ = #{sourceFrom}
 		</set>
 		WHERE id_ = #{id}

+ 82 - 0
mec-biz/src/main/resources/config/mybatis/EmployeeVisitMapper.xml

@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!-- 这个文件是自动生成的。 不要修改此文件。所有改动将在下次重新自动生成时丢失。 -->
+<mapper namespace="com.ym.mec.biz.dal.dao.EmployeeVisitDao">
+
+	<resultMap type="com.ym.mec.biz.dal.entity.EmployeeVisit" id="EmployeeVisit">
+		<result column="id_" property="id" />
+		<result column="employee_info_id_" property="employeeInfoId" />
+		<result column="operator_id_" property="operatorId" />
+		<result column="content_" property="content" />
+		<result column="next_visit_date_" property="nextVisitDate" />
+		<result column="create_time_" property="createTime" />
+	</resultMap>
+
+	<!-- 根据主键查询一条记录 -->
+	<select id="get" resultMap="EmployeeVisit">
+		SELECT * FROM
+		employee_visit WHERE id_ = #{id}
+	</select>
+
+	<!-- 全查询 -->
+	<select id="findAll" resultMap="EmployeeVisit">
+		SELECT * FROM employee_visit
+		ORDER BY id_
+	</select>
+
+	<!-- 向数据库增加一条记录 -->
+	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.EmployeeVisit"
+		useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
+			AS ID FROM DUAL </selectKey> -->
+		INSERT INTO employee_visit
+		(id_,employee_info_id_,operator_id_,content_,next_visit_date_,create_time_)
+		VALUES(#{id},#{employeeInfoId},#{operatorId},#{content},#{nextVisitDate},#{createTime})
+	</insert>
+
+	<!-- 根据主键查询一条记录 -->
+	<update id="update" parameterType="com.ym.mec.biz.dal.entity.EmployeeVisit">
+		UPDATE employee_visit
+		<set>
+			<if test="operatorId != null">
+				operator_id_ = #{operatorId},
+			</if>
+			<if test="nextVisitDate != null">
+				next_visit_date_ = #{nextVisitDate},
+			</if>
+			<if test="employeeInfoId != null">
+				employee_info_id_ = #{employeeInfoId},
+			</if>
+			<if test="id != null">
+				id_ = #{id},
+			</if>
+			<if test="content != null">
+				content_ = #{content},
+			</if>
+			<if test="createTime != null">
+				create_time_ = #{createTime},
+			</if>
+		</set>
+		WHERE id_ = #{id}
+	</update>
+
+	<!-- 根据主键删除一条记录 -->
+	<delete id="delete">
+		DELETE FROM employee_visit WHERE id_ = #{id}
+	</delete>
+
+	<!-- 分页查询 -->
+	<select id="queryPage" resultMap="EmployeeVisit" parameterType="map">
+		SELECT * FROM employee_visit ORDER BY id_
+		<include refid="global.limit" />
+	</select>
+
+	<!-- 查询当前表的总记录数 -->
+	<select id="queryCount" resultType="int">
+		SELECT COUNT(*) FROM employee_visit
+	</select>
+	
+	<select id="queryByEmployeeInfoId" resultMap="EmployeeVisit">
+		SELECT * FROM employee_visit WHERE employee_info_id_ = #{employeeInfoId}
+	</select>
+</mapper>

+ 27 - 0
mec-web/src/main/java/com/ym/mec/web/controller/EmployeeInfoController.java

@@ -16,8 +16,10 @@ import org.springframework.web.bind.annotation.RestController;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.entity.EmployeeInfo;
+import com.ym.mec.biz.dal.entity.EmployeeVisit;
 import com.ym.mec.biz.dal.page.EmployeeInfoQueryInfo;
 import com.ym.mec.biz.service.EmployeeInfoService;
+import com.ym.mec.biz.service.EmployeeVisitService;
 import com.ym.mec.common.controller.BaseController;
 
 @RequestMapping("employeeInfo")
@@ -28,6 +30,9 @@ public class EmployeeInfoController extends BaseController {
     @Autowired
     private EmployeeInfoService employeeInfoService;
     
+    @Autowired
+    private EmployeeVisitService employeeVisitService;
+    
 	@Autowired
 	private SysUserFeignService sysUserFeignService;
 
@@ -70,4 +75,26 @@ public class EmployeeInfoController extends BaseController {
         return succeed(employeeInfoService.queryPage(queryInfo));
     }
 
+    @ApiOperation(value = "查询员工信息")
+    @GetMapping("/queryDetail")
+    @PreAuthorize("@pcs.hasPermissions('employeeInfo/queryDetail')")
+    public Object queryDetail(Long id) {
+        return succeed(employeeInfoService.queryDetail(id));
+    }
+
+    @ApiOperation(value = "新增回访记录")
+    @PostMapping("/insertVisit")
+    @PreAuthorize("@pcs.hasPermissions('employeeInfo/insertVisit')")
+    public Object insertVisit(@RequestBody EmployeeVisit employeeVisit) {
+    	SysUser sysUser = sysUserFeignService.queryUserInfo();
+		if (sysUser == null) {
+			return failed("用户信息获取失败");
+		}
+		employeeVisit.setOperatorId(sysUser.getId());
+    	Date date = new Date();
+    	employeeVisit.setCreateTime(date);
+    	employeeVisitService.insert(employeeVisit);
+        return succeed();
+    }
+
 }