Commit eb5a9506 authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/MVP1.7.7' into MVP1.7.7

parents 0a7f3f51 5d40d68d
...@@ -158,7 +158,7 @@ public class PreUploadEmpImportTwoVo implements Serializable { ...@@ -158,7 +158,7 @@ public class PreUploadEmpImportTwoVo implements Serializable {
@ExcelAttribute(name = "是否有职业资格证书", isDataId = true, readConverterExp = "0=是,1=否") @ExcelAttribute(name = "是否有职业资格证书", isDataId = true, readConverterExp = "0=是,1=否")
private String haveQualification; private String haveQualification;
// 1.9.7: 职业资格信息 // 1.9.7: 职业资格信息
@ExcelAttribute(name = "申报年度", isDate = true, dateFormat = "yyyy", maxLength = 32) @ExcelAttribute(name = "申报年度", isDate = true, dateFormat = "yyyy", maxLength = 6)
private String declareYear; private String declareYear;
@ExcelAttribute(name = "职业资格名称", isDataId = true, dataType = ExcelAttributeConstants.QUALIFICATION_TYPE, maxLength = 32) @ExcelAttribute(name = "职业资格名称", isDataId = true, dataType = ExcelAttributeConstants.QUALIFICATION_TYPE, maxLength = 32)
private String qualificationType; private String qualificationType;
...@@ -246,25 +246,23 @@ public class PreUploadEmpImportTwoVo implements Serializable { ...@@ -246,25 +246,23 @@ public class PreUploadEmpImportTwoVo implements Serializable {
@ExcelAttribute(name = "结束工作日期-值") @ExcelAttribute(name = "结束工作日期-值")
private LocalDateTime endDateValue; private LocalDateTime endDateValue;
@ExcelAttribute(name = "与本人关系") @ExcelAttribute(name = "与本人关系-值")
private String relationshipSelfValue; private String relationshipSelfValue;
@ExcelAttribute(name = "申报年度") @ExcelAttribute(name = "职业资格名称-值")
private String declareYearValue;
@ExcelAttribute(name = "职业资格名称")
private String qualificationTypeValue; private String qualificationTypeValue;
@ExcelAttribute(name = "是否曾被认定为工伤") @ExcelAttribute(name = "是否曾被认定为工伤-值")
private String injuryIdentificationValue; private String injuryIdentificationValue;
@ExcelAttribute(name = "是否有职业病") @ExcelAttribute(name = "是否有职业病-值")
private String occupationalDiseaseFlagValue; private String occupationalDiseaseFlagValue;
@ExcelAttribute(name = "是否有传染性疾病") @ExcelAttribute(name = "是否有传染性疾病-值")
private String infectiousDiseaseFlagValue; private String infectiousDiseaseFlagValue;
@ExcelAttribute(name = "是否被劳动能力鉴定委员会鉴定为具有伤残等级") @ExcelAttribute(name = "是否被劳动能力鉴定委员会鉴定为具有伤残等级-值")
private String disabilityFlagValue; private String disabilityFlagValue;
@ExcelAttribute(name = "伤残等级") @ExcelAttribute(name = "伤残等级-值")
private String disabilityLevelValue; private String disabilityLevelValue;
@ExcelAttribute(name = "是否从事过井下、高空、高温、特别繁重体力劳动以及有毒有害工种") @ExcelAttribute(name = "是否从事过井下、高空、高温、特别繁重体力劳动以及有毒有害工种-值")
private String otherFlagValue; private String otherFlagValue;
// 字典值结束 // 字典值结束
......
...@@ -3450,6 +3450,14 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3450,6 +3450,14 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
if ("bankName".equals(shuName) && bankMap.get(shuValue) == null) { if ("bankName".equals(shuName) && bankMap.get(shuValue) == null) {
errorFormat.append(attr.name()).append("_不符合财务要求,请查薪资配置;"); errorFormat.append(attr.name()).append("_不符合财务要求,请查薪资配置;");
} }
// 1.9.7 : 校验年份不可为未来年份
if ("declareYear".equals(shuName) && Common.isNotNull(shuValue)){
shuValue = shuValue.replaceAll("\\..*", "");
if(shuValue.length() == 4 && (Integer.parseInt(shuValue) > DateUtil.getYearOfInt(new Date()))){
errorFormat.append(attr.name()).append("_不可为未来年份;");
}
}
fieldType = field.getType(); fieldType = field.getType();
if (Common.isNotNull(fieldType)) { if (Common.isNotNull(fieldType)) {
DiyExcelImportUtil.setFields(field, shuValue, fieldType, detail); DiyExcelImportUtil.setFields(field, shuValue, fieldType, detail);
...@@ -3524,6 +3532,11 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3524,6 +3532,11 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
if (Common.isNotNull(detail.getTel())) { if (Common.isNotNull(detail.getTel())) {
mobileList.add(detail.getTel()); mobileList.add(detail.getTel());
} }
// 1.9.7 手机号真实性校验加 :手机号码(家庭成员)
if (Common.isNotNull(detail.getContractTel())) {
mobileList.add(detail.getContractTel());
}
// 1.9.7 新增必填校验 // 1.9.7 新增必填校验
// 1.9.7 工作经历必填校验 // 1.9.7 工作经历必填校验
if ("否".equals(detail.getIsFirstWork())) { if ("否".equals(detail.getIsFirstWork())) {
...@@ -3540,7 +3553,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3540,7 +3553,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
} }
// 1.9.7 职业资格信息必填校验 // 1.9.7 职业资格信息必填校验
if ("是".equals(detail.getHaveQualification())) { if ("是".equals(detail.getHaveQualification())) {
if(Common.isEmpty(detail.getDeclareYear())|| Common.isEmpty(detail.getQualificationType())){ if(Common.isEmpty(detail.getDeclareYear()) || Common.isEmpty(detail.getQualificationType())){
errorMust.append("是否有职业资格证书为【是】时,申报年度、职业资格名称同时必填!"); errorMust.append("是否有职业资格证书为【是】时,申报年度、职业资格名称同时必填!");
} }
} }
...@@ -3567,7 +3580,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3567,7 +3580,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
} }
} }
} else { } else {
errorMust.append("是否曾被认定为工伤,是否有职业病、是否有传染性疾病、是否被劳动能力鉴定委员会鉴定为具有伤残等级 必须同时必填!"); errorMust.append("是否曾被认定为工伤,是否有职业病、是否有传染性疾病、是否被劳动能力鉴定委员会鉴定为具有伤残等级、是否从事过井下、高空、高温、特别繁重体力劳动以及有毒有害工种 必须同时必填!");
} }
} }
...@@ -3678,6 +3691,17 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3678,6 +3691,17 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
errorCheck.append("手机号码(紧急联系人)").append("未校验;"); errorCheck.append("手机号码(紧急联系人)").append("未校验;");
} }
} }
// 1.9.7: 手机号码(家庭成员)校验
if (Common.isNotNull(info.getContractTel())) {
resultB = phoneMap.get(info.getContractTel());
if (resultB != null) {
if (Boolean.FALSE.equals(resultB)) {
errorCheck.append("手机号码(家庭成员)").append("校验不通过;");
}
} else {
errorCheck.append("手机号码(家庭成员)").append("未校验;");
}
}
if (errorCheck.length() > 0) { if (errorCheck.length() > 0) {
info.setErrorInfo(info.getErrorInfo() + "校验未通过:" + errorCheck); info.setErrorInfo(info.getErrorInfo() + "校验未通过:" + errorCheck);
allTrue = false; allTrue = false;
...@@ -3954,6 +3978,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3954,6 +3978,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
workRecord.setCreateName(user.getNickname()); workRecord.setCreateName(user.getNickname());
workRecord.setCreateTime(LocalDateTime.now()); workRecord.setCreateTime(LocalDateTime.now());
workRecord.setWorkingStatus(CommonConstants.ONE_STRING); workRecord.setWorkingStatus(CommonConstants.ONE_STRING);
workRecord.setDeleteFlag(CommonConstants.NOT_DELETE_FLAG);
workRecordList.add(workRecord); workRecordList.add(workRecord);
} }
...@@ -3982,9 +4007,9 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -3982,9 +4007,9 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
qualificationRecord.setEmpId(saveEmp.getId()); qualificationRecord.setEmpId(saveEmp.getId());
qualificationRecord.setEmpCode(saveEmp.getEmpCode()); qualificationRecord.setEmpCode(saveEmp.getEmpCode());
qualificationRecord.setEmpIdcard(saveEmp.getEmpIdcard()); qualificationRecord.setEmpIdcard(saveEmp.getEmpIdcard());
qualificationRecord.setDeclareYear(excel.getDeclareYearValue()); qualificationRecord.setDeclareYear(excel.getDeclareYear());
qualificationRecord.setQualificationType(excel.getQualificationTypeValue()); qualificationRecord.setQualificationType(excel.getQualificationTypeValue());
qualificationRecord.setDeleteFlag(CommonConstants.NOT_DELETE_FLAG);
qualificationRecord.setCreateBy(user.getId()); qualificationRecord.setCreateBy(user.getId());
qualificationRecord.setCreateName(user.getNickname()); qualificationRecord.setCreateName(user.getNickname());
qualificationRecord.setCreateTime(LocalDateTime.now()); qualificationRecord.setCreateTime(LocalDateTime.now());
...@@ -4021,6 +4046,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T ...@@ -4021,6 +4046,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
disabilityRecord.setCreateBy(user.getId()); disabilityRecord.setCreateBy(user.getId());
disabilityRecord.setCreateName(user.getNickname()); disabilityRecord.setCreateName(user.getNickname());
disabilityRecord.setCreateTime(LocalDateTime.now()); disabilityRecord.setCreateTime(LocalDateTime.now());
disabilityRecord.setDeleteFlag(CommonConstants.NOT_DELETE_FLAG);
disabilityRecordList.add(disabilityRecord); disabilityRecordList.add(disabilityRecord);
} }
......
...@@ -3,7 +3,6 @@ package com.yifu.cloud.plus.v1.csp.vo; ...@@ -3,7 +3,6 @@ package com.yifu.cloud.plus.v1.csp.vo;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute; import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.RowIndex;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
...@@ -18,7 +17,7 @@ import java.util.Date; ...@@ -18,7 +17,7 @@ import java.util.Date;
*/ */
@Data @Data
@ColumnWidth(12) @ColumnWidth(12)
public class EmployeeRegistrationExportVo extends RowIndex implements Serializable { public class EmployeeRegistrationExportVo implements Serializable {
@ExcelAttribute(name = "员工姓名") @ExcelAttribute(name = "员工姓名")
@Schema(description = "员工姓名") @Schema(description = "员工姓名")
......
...@@ -3,7 +3,6 @@ package com.yifu.cloud.plus.v1.csp.vo; ...@@ -3,7 +3,6 @@ package com.yifu.cloud.plus.v1.csp.vo;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute; import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.RowIndex;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
...@@ -18,7 +17,7 @@ import java.util.Date; ...@@ -18,7 +17,7 @@ import java.util.Date;
*/ */
@Data @Data
@ColumnWidth(12) @ColumnWidth(12)
public class EmployeeRegistrationHrExportVo extends RowIndex implements Serializable { public class EmployeeRegistrationHrExportVo implements Serializable {
@ExcelAttribute(name = "项目编码") @ExcelAttribute(name = "项目编码")
@Schema(description = "项目编码") @Schema(description = "项目编码")
......
...@@ -7,7 +7,6 @@ import io.swagger.v3.oas.annotations.media.Schema; ...@@ -7,7 +7,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
...@@ -56,12 +55,12 @@ public class EmployeeRegistrationSearchVo extends EmployeeRegistration { ...@@ -56,12 +55,12 @@ public class EmployeeRegistrationSearchVo extends EmployeeRegistration {
//开始时间(查询专用) //开始时间(查询专用)
@Schema(description = "入离职开始时间") @Schema(description = "入离职开始时间")
@TableField(exist = false) @TableField(exist = false)
private Date joinTimeStart; private LocalDateTime joinTimeStart;
//截止时间(查询专用) //截止时间(查询专用)
@Schema(description = "入离职截止时间") @Schema(description = "入离职截止时间")
@TableField(exist = false) @TableField(exist = false)
private Date joinTimeEnd; private LocalDateTime joinTimeEnd;
@Schema(description = "就职岗位数组") @Schema(description = "就职岗位数组")
@TableField(exist = false) @TableField(exist = false)
...@@ -71,4 +70,8 @@ public class EmployeeRegistrationSearchVo extends EmployeeRegistration { ...@@ -71,4 +70,8 @@ public class EmployeeRegistrationSearchVo extends EmployeeRegistration {
@TableField(exist = false) @TableField(exist = false)
private List<String> statusList; private List<String> statusList;
@Schema(description = "登记类型数组")
@TableField(exist = false)
private List<String> typeList;
} }
...@@ -62,9 +62,9 @@ public class EmployeeRegistrationVo extends RowIndex implements Serializable { ...@@ -62,9 +62,9 @@ public class EmployeeRegistrationVo extends RowIndex implements Serializable {
/** /**
* 反馈类型 1入职 2离职 * 反馈类型 1入职 2离职
*/ */
@ExcelAttribute(name = "反馈类型", readConverterExp = "1=入职,2=离职") @ExcelAttribute(name = "登记类型", readConverterExp = "1=入职,2=离职")
@Schema(description = "反馈类型") @Schema(description = "登记类型")
@ExcelProperty("反馈类型") @ExcelProperty("登记类型")
private String feedbackType; private String feedbackType;
/** /**
......
...@@ -444,16 +444,16 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -444,16 +444,16 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
if (sendUser != null) { if (sendUser != null) {
RestTemplate restTemplate = new RestTemplate(); RestTemplate restTemplate = new RestTemplate();
Map<String, Object> requestMap = new HashMap<>(); Map<String, Object> requestMap = new HashMap<>();
// String authUrl = null; String authUrl = null;
Map<String, Object> textcard = new HashMap<>(); Map<String, Object> textcard = new HashMap<>();
// authUrl = String.format(SecurityConstants.WX_GET_MESSAGE_AUTH_URL, wxConfig.getCorpid(), wxConfig.getDomainName()+"/auth/oauth/wxLogin", "01"+registration.getId()); authUrl = String.format(SecurityConstants.WX_GET_MESSAGE_AUTH_URL, wxConfig.getCorpid(), wxConfig.getDomainName()+"/auth/oauth/wxLogin", "01"+registration.getId());
StringBuilder description = new StringBuilder(); StringBuilder description = new StringBuilder();
String title = ""; String title = "";
if (CommonConstants.ONE_STRING.equals(type) || CommonConstants.TWO_STRING.equals(type)) { if (CommonConstants.ONE_STRING.equals(type) || CommonConstants.TWO_STRING.equals(type)) {
title = "人员入职提醒"; title = "人员入职提醒";
description.append(CommonConstants.ONE_STRING.equals(type) ? "入职日期:":"离职日期:") description.append(CommonConstants.ONE_STRING.equals(type) ? "入职日期:":"离职日期:")
.append(registration.getJoinLeaveDate()).append("<br>"); .append(DateUtil.dateToString(registration.getJoinLeaveDate(),DateUtil.ISO_EXPANDED_DATE_FORMAT)).append("<br>");
description.append("项目名称:").append(registration.getDeptName()).append("<br>"); description.append("项目名称:").append(registration.getDeptName()).append("<br>");
description.append("项目编码:").append(registration.getDeptNo()).append("<br>"); description.append("项目编码:").append(registration.getDeptNo()).append("<br>");
description.append("员工姓名:").append(registration.getEmployeeName()).append("<br>"); description.append("员工姓名:").append(registration.getEmployeeName()).append("<br>");
...@@ -467,7 +467,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -467,7 +467,7 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
description.append("离职人数:").append(registration.getOutNum()).append("<br>"); description.append("离职人数:").append(registration.getOutNum()).append("<br>");
} }
textcard.put("title", title); textcard.put("title", title);
// textcard.put("url", authUrl); textcard.put("url", authUrl);
textcard.put("description", description.toString()); textcard.put("description", description.toString());
requestMap.put("touser", sendUser); requestMap.put("touser", sendUser);
requestMap.put("agentid", wxConfig.getAgentid()); requestMap.put("agentid", wxConfig.getAgentid());
......
...@@ -100,15 +100,18 @@ ...@@ -100,15 +100,18 @@
<if test="employeeRegistration.empPhone != null and employeeRegistration.empPhone.trim() != ''"> <if test="employeeRegistration.empPhone != null and employeeRegistration.empPhone.trim() != ''">
AND a.emp_phone like CONCAT(#{employeeRegistration.empPhone},'%') AND a.emp_phone like CONCAT(#{employeeRegistration.empPhone},'%')
</if> </if>
<if test="employeeRegistration.postList != null"> <if test="employeeRegistration.postList != null and employeeRegistration.postList.size() > 0 ">
AND a.position in AND a.position in
<foreach item="item" index="index" collection="employeeRegistration.postList" open="(" separator="," close=")"> <foreach item="item" index="index" collection="employeeRegistration.postList" open="(" separator="," close=")">
'${item}' '${item}'
</foreach> </foreach>
</if> </if>
<if test="employeeRegistration.feedbackType != null and employeeRegistration.feedbackType.trim() != ''"> <if test="employeeRegistration.typeList != null and employeeRegistration.typeList.size() > 0 ">
AND a.feedback_type = #{employeeRegistration.feedbackType} AND a.feedback_type in
</if> <foreach item="item" index="index" collection="employeeRegistration.typeList" open="(" separator="," close=")">
'${item}'
</foreach>
</if>
<if test="employeeRegistration.createTimeStart != null"> <if test="employeeRegistration.createTimeStart != null">
AND a.CREATE_TIME <![CDATA[ >= ]]> #{employeeRegistration.createTimeStart} AND a.CREATE_TIME <![CDATA[ >= ]]> #{employeeRegistration.createTimeStart}
</if> </if>
...@@ -124,7 +127,7 @@ ...@@ -124,7 +127,7 @@
<if test="employeeRegistration.joinLeaveDate != null"> <if test="employeeRegistration.joinLeaveDate != null">
AND a.join_leave_date = #{employeeRegistration.joinLeaveDate} AND a.join_leave_date = #{employeeRegistration.joinLeaveDate}
</if> </if>
<if test="employeeRegistration.statusList != null"> <if test="employeeRegistration.statusList != null and employeeRegistration.statusList.size() > 0 ">
AND a.process_status in AND a.process_status in
<foreach item="item" index="index" collection="employeeRegistration.statusList" open="(" separator="," close=")"> <foreach item="item" index="index" collection="employeeRegistration.statusList" open="(" separator="," close=")">
'${item}' '${item}'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment