Commit 6654b1b6 authored by fangxinjiang's avatar fangxinjiang

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

parents 6015c5a4 316f1f1a
......@@ -277,7 +277,7 @@ public class EmployeeRegistrationPreServiceImpl extends ServiceImpl<EmployeeRegi
if (null != oldList && !oldList.isEmpty()) {
for (TEmployeeInsurancePre oldInsurance : oldList) {
// 1:判断是否变更 商险待办 的项目
if (null != map.get(this.getFiveKey(oldInsurance))) {
if (null != map.get(this.getPreOldFiveKey(oldInsurance))) {
oldMap.put(oldInsurance.getId(), oldInsurance);
}
}
......@@ -744,7 +744,17 @@ public class EmployeeRegistrationPreServiceImpl extends ServiceImpl<EmployeeRegi
return isNullToEmpty(insurancePreVo.getBuyStandard()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(insurancePreVo.getInsuranceTypeName()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(insurancePreVo.getInsuranceCompanyName()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(insurancePreVo.getPolicyStart()) + CommonConstants.DOWN_LINE_STRING + isNullToEmpty(insurancePreVo.getPolicyEnd());
+ isNullToEmpty(DateUtil.dateToString(insurancePreVo.getPolicyStart(), DateUtil.ISO_EXPANDED_DATE_FORMAT))
+ DateUtil.dateToString(insurancePreVo.getPolicyEnd(), DateUtil.ISO_EXPANDED_DATE_FORMAT);
}
private String getPreOldFiveKey(TEmployeeInsurancePre insurancePreVo) {
// 1:重复性判断
return isNullToEmpty(insurancePreVo.getBuyStandard()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(insurancePreVo.getInsuranceTypeName()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(insurancePreVo.getInsuranceCompanyName()) + CommonConstants.DOWN_LINE_STRING
+ isNullToEmpty(DateUtil.dateToString(insurancePreVo.getPolicyStart(), DateUtil.ISO_EXPANDED_DATE_FORMAT))
+ DateUtil.dateToString(insurancePreVo.getPolicyEnd(), DateUtil.ISO_EXPANDED_DATE_FORMAT);
}
/**
......@@ -782,12 +792,13 @@ public class EmployeeRegistrationPreServiceImpl extends ServiceImpl<EmployeeRegi
// 商险是否存在判断 type 1 单个接收 2 批量接收
private TEmployeeInsuranceExitCheckVo checkInsuranceExit(TEmployeeInsurancePreVo preVo) {
//查询入职确认信息数据
TEmployeeInsuranceExitCheckVo exitCheckVo = new TEmployeeInsuranceExitCheckVo();
boolean erorFlag = false;
R<TEmployeeInsuranceSelectVo> dataR = insuranceDaprUtil.selectInsurancePreInfoList(preVo);
//查询商险数据
TInsuranceDetail insuranceDetail= null;
R<TEmployeeInsuranceSelectVo> dataInsurR = insuranceDaprUtil.selectInsuranceInfo(preVo);
if (Common.isNotNull(dataInsurR) && Common.isNotNull(dataInsurR.getData().getInsuranceDetail())) {
if (Common.isNotNull(dataInsurR) && Common.isNotNull(dataInsurR.getData())&& Common.isNotNull(dataInsurR.getData().getInsuranceDetail())) {
insuranceDetail = dataInsurR.getData().getInsuranceDetail();
}
//二次确认接收场景
......@@ -836,12 +847,13 @@ public class EmployeeRegistrationPreServiceImpl extends ServiceImpl<EmployeeRegi
} else if (insuranceDetail.getBuyHandleStatus() == CommonConstants.FOUR_INT) {
preVo.setProcessStatus(CommonConstants.FIVE_STRING);
}
//是否地市自购
preVo.setIsAddress(insuranceDetail.getIsAdress());
}
}
}
//组装错误信息
if (erorFlag) {
TEmployeeInsuranceExitCheckVo exitCheckVo = new TEmployeeInsuranceExitCheckVo();
exitCheckVo.setBuyType(preVo.getBuyType());
exitCheckVo.setEmployeeName(preVo.getEmployeeName());
exitCheckVo.setEmpIdcard(preVo.getEmpIdcard());
......@@ -851,10 +863,10 @@ public class EmployeeRegistrationPreServiceImpl extends ServiceImpl<EmployeeRegi
exitCheckVo.setInsuranceCompanyName(preVo.getInsuranceCompanyName());
exitCheckVo.setInsuranceTypeName(preVo.getInsuranceTypeName());
exitCheckVo.setErrorMsg("存在流程中/已完结的商险数据");
return exitCheckVo;
} else {
return null;
}
return exitCheckVo;
}
@Override
......
......@@ -34,6 +34,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.vo.TEmployeePreLogSearchVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.SecurityConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.core.util.DateUtil;
import com.yifu.cloud.plus.v1.yifu.common.core.util.equator.HrEquator;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser;
import com.yifu.cloud.plus.v1.yifu.common.dapr.config.DaprInsurancesProperties;
......@@ -131,6 +132,13 @@ public class TEmployeePreLogServiceImpl extends ServiceImpl<TEmployeePreLogMappe
WriteNullStringAsEmpty, WriteDateUseDateFormat
};
private static final List<String> IGNORE_FIELD = new ArrayList<>();
static {
IGNORE_FIELD.add("joinLeaveDate");
IGNORE_FIELD.add("createTime");
IGNORE_FIELD.add("modelType");
}
@Override
public void saveModifyAndUpdateInsurance(String empPreId, EmployeeRegistrationPre oldInfo
, EmployeeRegistrationPre newInfo, YifuUser user, Map<String, TEmployeeInsurancePre> oldMap) {
......@@ -186,7 +194,7 @@ public class TEmployeePreLogServiceImpl extends ServiceImpl<TEmployeePreLogMappe
if (Common.isNotNull(newInsurance.getId())) {
oldInsurance = oldMap.get(newInsurance.getId());
if (oldInsurance != null) {
differenceInsuranceKey = HrEquator.comparisonValue(oldInsurance, newInsurance);
differenceInsuranceKey = HrEquator.comparisonValueIgnoreField(oldInsurance, newInsurance, IGNORE_FIELD);
}
if (Common.isNotNull(differenceInsuranceKey) || oldInsurance == null) {
detailInsuranceLog = new TEmployeePreLogDetail();
......
......@@ -1388,6 +1388,21 @@ public class DateUtil {
cal.add(Calendar.MONTH, mnt);
return cal.getTime();
}
/**
* @Description: 设置(时)
* @Author: hgw
* @Date: 2022/8/3 9:17
* @return: java.util.Date
**/
public static Date setHourByDate(Date date) {
Calendar cal = Calendar.getInstance();
if (date != null) {
cal.setTime(date);
}
cal.set(Calendar.HOUR_OF_DAY, 0);
return cal.getTime();
}
/**
* @Description: 增减(月),并且设置为1号1点
* @Author: hgw
......
......@@ -567,14 +567,18 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
if (keyMap.get(key) == null) {
keyMap.put(key, CommonConstants.ONE_INT);
} else {
return R.other(CommonConstants.TWO_INT,null,"保险公司、险种、购买标准、保单起、止日期不可同时重复;");
return R.other(CommonConstants.TWO_INT,null,"保险公司、险种、购买标准、保单起/止日期不可同时重复!");
}
insurancePreVo.setEmpIdcard(preVo.getEmpIdcard());
insurancePreVo.setDeptNo(preVo.getDeptNo());
insurancePreVo.setEmpIdcard(registration.getEmpIdcard());
insurancePreVo.setDeptNo(registration.getDeptNo());
//商险是否存在判断
checkVo = checkInsuranceExit(insurancePreVo,preVo.getEmployeeName(),preVo.getEmpIdcard());
if (null != checkVo) {
errorList.add(checkVo);
} else {
if (Common.isEmpty(insurancePreVo.getProcessStatus())) {
insurancePreVo.setProcessStatus(CommonConstants.ZERO_STRING);
}
}
}
if (!errorList.isEmpty()) {
......@@ -676,14 +680,11 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
insurancePreVo.setPolicyEffect(registration.getJoinLeaveDate());
insurancePreVo.setPolicyStart(registration.getJoinLeaveDate());
}
//商险是否存在判断
checkVo = checkInsuranceExit(insurancePreVo, registration.getEmployeeName(), registration.getEmpIdcard());
if (null != checkVo) {
errorList.add(checkVo);
continue;
}
//入职日期需要小于等于保单截止日期
if (registration.getJoinLeaveDate().after(insurancePreVo.getPolicyEnd())) {
//入职日期需要小于保单截止日期
if ((DateUtil.dateToString(registration.getJoinLeaveDate(),DateUtil.ISO_EXPANDED_DATE_FORMAT).
compareTo(DateUtil.dateToString(insurancePreVo.getPolicyEnd(),DateUtil.ISO_EXPANDED_DATE_FORMAT)) >= 0)
|| (DateUtil.dateToString(insurancePreVo.getPolicyStart(),DateUtil.ISO_EXPANDED_DATE_FORMAT).
compareTo(DateUtil.dateToString(insurancePreVo.getPolicyEnd(),DateUtil.ISO_EXPANDED_DATE_FORMAT)) > 0)) {
TEmployeeInsuranceExitCheckVo exitCheckVo = new TEmployeeInsuranceExitCheckVo();
exitCheckVo.setBuyType(insurancePreVo.getBuyType());
exitCheckVo.setEmployeeName(registration.getEmployeeName());
......@@ -693,9 +694,19 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
exitCheckVo.setBuyStandard(insurancePreVo.getBuyStandard());
exitCheckVo.setInsuranceCompanyName(insurancePreVo.getInsuranceCompanyName());
exitCheckVo.setInsuranceTypeName(insurancePreVo.getInsuranceTypeName());
exitCheckVo.setErrorMsg("入职日期需要小于等于保单截止日期!");
exitCheckVo.setErrorMsg("入职日期需要小于保单截止日期/保单开始日期需小于等于保单截止日期");
errorList.add(exitCheckVo);
continue;
}
//商险是否存在判断
checkVo = checkInsuranceExit(insurancePreVo, registration.getEmployeeName(), registration.getEmpIdcard());
if (null != checkVo) {
errorList.add(checkVo);
continue;
} else {
if (Common.isEmpty(insurancePreVo.getProcessStatus())) {
insurancePreVo.setProcessStatus(CommonConstants.ZERO_STRING);
}
}
}
//点击“接收确认”的时候,监测到该人员该项目下已有在项的档案时,再次提醒:该人员已在项,
......
......@@ -41,11 +41,12 @@ public class TEmployeeInsurancePre extends BaseEntity {
@Schema(description = "手机号码")
private String empPhone;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd", timezone = "GMT+08:00")
@Schema(description = "入职日期")
private Date joinLeaveDate;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd", timezone = "GMT+08:00")
@Schema(description = "登记日期")
private Date registTime;
......@@ -70,7 +71,7 @@ public class TEmployeeInsurancePre extends BaseEntity {
@Schema(description = "项目id")
private String deptId;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
@Schema(description = "预计派单时间")
private LocalDateTime expectedCollectionTime;
......@@ -89,15 +90,15 @@ public class TEmployeeInsurancePre extends BaseEntity {
@Schema(description = "购买类型, 1新增、3批增、4替换")
private Integer buyType;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd", timezone = "GMT+08:00")
@Schema(description = "保单开始时间")
private Date policyStart;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd", timezone = "GMT+08:00")
@Schema(description = "保单结束时间")
private Date policyEnd;
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
@JsonFormat(shape= JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd", timezone = "GMT+08:00")
@Schema(description = "预计生效日期")
private Date policyEffect;
......
......@@ -75,9 +75,9 @@ public class TEmployeeInsurancePreExportVo implements Serializable {
/**
* 是否地市自购0是 1 否
*/
@ExcelAttribute(name = "是否地市自购0是 1 否")
@Schema(description = "是否地市自购0是 1 否")
@ExcelProperty("是否地市自购0是 1 否")
@ExcelAttribute(name = "是否地市自购")
@Schema(description = "是否地市自购")
@ExcelProperty("是否地市自购")
private String isAddress;
/**
......
......@@ -348,8 +348,8 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur
}
if (Common.isNotNull(preExit)) {
pre.setId(preExit.getId());
baseMapper.insert(pre);
baseMapper.deleteById(preExit);
baseMapper.insert(pre);
} else {
baseMapper.insert(pre);
//暂时不需要,先注释,后续可能会需要
......@@ -376,14 +376,19 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur
@Override
public TEmployeeInsuranceSelectVo selectInsurancePreInfoList(TEmployeeInsurancePreVo preVo) {
TEmployeeInsuranceSelectVo selectVo = new TEmployeeInsuranceSelectVo();
List<TEmployeeInsurancePre> list = baseMapper.selectList(Wrappers.<TEmployeeInsurancePre>query().lambda()
.eq(TEmployeeInsurancePre::getEmpIdcard, preVo.getEmpIdcard())
.eq(TEmployeeInsurancePre::getBuyStandard, preVo.getBuyStandard())
.eq(TEmployeeInsurancePre::getInsuranceTypeName, preVo.getInsuranceTypeName())
.eq(TEmployeeInsurancePre::getInsuranceCompanyName, preVo.getInsuranceCompanyName())
.eq(TEmployeeInsurancePre::getPolicyStart, preVo.getPolicyStart())
.eq(TEmployeeInsurancePre::getPolicyEnd, preVo.getPolicyEnd())
);
List<TEmployeeInsurancePre> list = new ArrayList<>();
try {
list = baseMapper.selectList(Wrappers.<TEmployeeInsurancePre>query().lambda()
.eq(TEmployeeInsurancePre::getEmpIdcard, preVo.getEmpIdcard())
.eq(TEmployeeInsurancePre::getBuyStandard, preVo.getBuyStandard())
.eq(TEmployeeInsurancePre::getInsuranceTypeName, preVo.getInsuranceTypeName())
.eq(TEmployeeInsurancePre::getInsuranceCompanyName, preVo.getInsuranceCompanyName())
.eq(TEmployeeInsurancePre::getPolicyStart, DateUtil.parseDate(DateUtil.dateToString(preVo.getPolicyStart()), DateUtil.ISO_EXPANDED_DATE_FORMAT))
.eq(TEmployeeInsurancePre::getPolicyEnd, DateUtil.parseDate(DateUtil.dateToString(preVo.getPolicyEnd()), DateUtil.ISO_EXPANDED_DATE_FORMAT))
);
}catch (Exception e){
log.error("执行异常" ,e);
}
selectVo.setInsurancePreList(list);
return selectVo;
}
......
......@@ -8306,7 +8306,10 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
.and(wrapper -> wrapper.eq(TInsuranceDetail::getIsOverdue, CommonConstants.ZERO_INT)
.or().isNull(TInsuranceDetail::getIsOverdue)
)
.eq(TInsuranceDetail::getIsUse, CommonConstants.ZERO_INT)
//在用
.and(wrapper -> wrapper.eq(TInsuranceDetail::getIsUse, CommonConstants.ZERO_INT)
.or().isNull(TInsuranceDetail::getIsUse)
)
.orderByDesc(TInsuranceDetail::getCreateTime)
.last(CommonConstants.LAST_ONE_SQL)
);
......
package com.yifu.cloud.plus.v1.yifu.social.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
......@@ -16,9 +17,11 @@ import java.util.Date;
public class TEmployeeInsuranceWorkDayVo implements Serializable {
@Schema(description = "保单开始日期/预计生效日期")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
private Date registDate;
@Schema(description = "预计派单日期")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
private Date priDisDate;
@Schema(description = "类型 1 前一个工作日 2 后一个工作日")
......
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