Commit d3b8657b authored by huyuchen's avatar huyuchen

huych-入职登记商险待办提交

parent fdb6f20d
...@@ -580,11 +580,6 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -580,11 +580,6 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
insurancePreVo.setProcessStatus(CommonConstants.ZERO_STRING); insurancePreVo.setProcessStatus(CommonConstants.ZERO_STRING);
} }
} }
// //特殊场景如果针对新增,如果入职日期大于等于预计生效时间 那预计生效和保单开始时间就取入职日期
// if (insurancePreVo.getBuyType() == 1 && DateUtil.dateToString(registration.getJoinLeaveDate()).compareTo(DateUtil.dateToString(insurancePreVo.getExpectedCollectionTime()))>0) {
// insurancePreVo.setPolicyStart(registration.getJoinLeaveDate());
// insurancePreVo.setExpectedCollectionTime(registration.getJoinLeaveDate());
// }
} }
if (!errorList.isEmpty()) { if (!errorList.isEmpty()) {
return R.other(CommonConstants.TWO_INT,null,errorList); return R.other(CommonConstants.TWO_INT,null,errorList);
...@@ -671,6 +666,9 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -671,6 +666,9 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
TEmployeeInsuranceWorkDayVo dayVo = new TEmployeeInsuranceWorkDayVo(); TEmployeeInsuranceWorkDayVo dayVo = new TEmployeeInsuranceWorkDayVo();
dayVo.setType(CommonConstants.TWO_STRING); dayVo.setType(CommonConstants.TWO_STRING);
dayVo.setRegistDate(registration.getJoinLeaveDate()); dayVo.setRegistDate(registration.getJoinLeaveDate());
if (insurancePreVo.getBuyType() ==1) {
dayVo.setAddOrBatch(CommonConstants.ONE_STRING);
}
dataR = socialDaprUtils.getBeforeOrAfterWorkDay(dayVo); dataR = socialDaprUtils.getBeforeOrAfterWorkDay(dayVo);
if (Common.isNotNull(dataR) && Common.isNotNull(dataR.getData()) if (Common.isNotNull(dataR) && Common.isNotNull(dataR.getData())
&& Common.isNotNull(dataR.getData().getRegistDate()) && Common.isNotNull(dataR.getData().getRegistDate())
...@@ -685,11 +683,6 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr ...@@ -685,11 +683,6 @@ public class EmployeeRegistrationServiceImpl extends ServiceImpl<EmployeeRegistr
insurancePreVo.setPolicyEffect(registration.getJoinLeaveDate()); insurancePreVo.setPolicyEffect(registration.getJoinLeaveDate());
insurancePreVo.setPolicyStart(registration.getJoinLeaveDate()); insurancePreVo.setPolicyStart(registration.getJoinLeaveDate());
} }
// //特殊场景如果针对新增,如果入职日期大于等于预计生效时间 那预计生效和保单开始时间就取入职日期
// if (insurancePreVo.getBuyType() == 1 && DateUtil.dateToString(registration.getJoinLeaveDate()).compareTo(DateUtil.dateToString(insurancePreVo.getExpectedCollectionTime()))>0) {
// insurancePreVo.setPolicyStart(registration.getJoinLeaveDate());
// insurancePreVo.setExpectedCollectionTime(registration.getJoinLeaveDate());
// }
//入职日期需要小于保单截止日期 //入职日期需要小于保单截止日期
if ((DateUtil.dateToString(registration.getJoinLeaveDate(),DateUtil.ISO_EXPANDED_DATE_FORMAT). if ((DateUtil.dateToString(registration.getJoinLeaveDate(),DateUtil.ISO_EXPANDED_DATE_FORMAT).
compareTo(DateUtil.dateToString(insurancePreVo.getPolicyEnd(),DateUtil.ISO_EXPANDED_DATE_FORMAT)) > 0) compareTo(DateUtil.dateToString(insurancePreVo.getPolicyEnd(),DateUtil.ISO_EXPANDED_DATE_FORMAT)) > 0)
......
...@@ -330,29 +330,30 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur ...@@ -330,29 +330,30 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur
List<TEmployeeInsurancePreVo> employeeInsurancePreVos = registrationPreVo.getEmployeeInsurancePreVos(); List<TEmployeeInsurancePreVo> employeeInsurancePreVos = registrationPreVo.getEmployeeInsurancePreVos();
TEmployeeInsurancePre preExit; TEmployeeInsurancePre preExit;
if (null != employeeInsurancePreVos && !employeeInsurancePreVos.isEmpty()) { if (null != employeeInsurancePreVos && !employeeInsurancePreVos.isEmpty()) {
for (TEmployeeInsurancePreVo preVo : employeeInsurancePreVos) { try {
//判断是否存在商险待购买信息 for (TEmployeeInsurancePreVo preVo : employeeInsurancePreVos) {
preExit = baseMapper.selectOne(Wrappers.<TEmployeeInsurancePre>query().lambda() //判断是否存在商险待购买信息
.eq(TEmployeeInsurancePre::getRegisterId, preVo.getRegisterId()) preExit = baseMapper.selectOne(Wrappers.<TEmployeeInsurancePre>query().lambda()
.eq(TEmployeeInsurancePre::getEmpIdcard, preVo.getEmpIdcard()) .eq(TEmployeeInsurancePre::getRegisterId, preVo.getRegisterId())
.eq(TEmployeeInsurancePre::getBuyStandard, preVo.getBuyStandard()) .eq(TEmployeeInsurancePre::getEmpIdcard, preVo.getEmpIdcard())
.eq(TEmployeeInsurancePre::getInsuranceTypeName, preVo.getInsuranceTypeName()) .eq(TEmployeeInsurancePre::getBuyStandard, preVo.getBuyStandard())
.eq(TEmployeeInsurancePre::getInsuranceCompanyName, preVo.getInsuranceCompanyName()) .eq(TEmployeeInsurancePre::getInsuranceTypeName, preVo.getInsuranceTypeName())
.eq(TEmployeeInsurancePre::getPolicyStart, preVo.getPolicyStart()) .eq(TEmployeeInsurancePre::getInsuranceCompanyName, preVo.getInsuranceCompanyName())
.eq(TEmployeeInsurancePre::getPolicyEnd, preVo.getPolicyEnd()) .eq(TEmployeeInsurancePre::getPolicyStart, DateUtil.parseDate(DateUtil.dateToString(preVo.getPolicyStart()), DateUtil.ISO_EXPANDED_DATE_FORMAT))
.last(CommonConstants.LAST_ONE_SQL)); .eq(TEmployeeInsurancePre::getPolicyEnd, DateUtil.parseDate(DateUtil.dateToString(preVo.getPolicyEnd()), DateUtil.ISO_EXPANDED_DATE_FORMAT))
TEmployeeInsurancePre pre = new TEmployeeInsurancePre(); .last(CommonConstants.LAST_ONE_SQL));
BeanUtils.copyProperties(preVo, pre); TEmployeeInsurancePre pre = new TEmployeeInsurancePre();
if (Common.isNotNull(preVo.getExpectedCollectionTime())) { BeanUtils.copyProperties(preVo, pre);
pre.setExpectedCollectionTime(LocalDateTimeUtils.dateToLocalDateTime(preVo.getExpectedCollectionTime())); if (Common.isNotNull(preVo.getExpectedCollectionTime())) {
} pre.setExpectedCollectionTime(LocalDateTimeUtils.dateToLocalDateTime(preVo.getExpectedCollectionTime()));
if (Common.isNotNull(preExit)) { }
pre.setId(preExit.getId()); if (Common.isNotNull(preExit)) {
baseMapper.deleteById(preExit); pre.setId(preExit.getId());
baseMapper.insert(pre); baseMapper.deleteById(preExit);
} else { baseMapper.insert(pre);
baseMapper.insert(pre); } else {
//暂时不需要,先注释,后续可能会需要 baseMapper.insert(pre);
//暂时不需要,先注释,后续可能会需要
// if (Common.isNotNull(pre.getExpectedCollectionTime())) { // if (Common.isNotNull(pre.getExpectedCollectionTime())) {
// // 事务提交后触发调度 // // 事务提交后触发调度
// TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() { // TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
...@@ -367,7 +368,11 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur ...@@ -367,7 +368,11 @@ public class TEmployeeInsurancePreServiceImpl extends ServiceImpl<TEmployeeInsur
// } // }
// }); // });
// } // }
}
} }
}catch (Exception e){
log.error("执行异常" ,e);
return null;
} }
} }
return true; return true;
......
...@@ -27,4 +27,7 @@ public class TEmployeeInsuranceWorkDayVo implements Serializable { ...@@ -27,4 +27,7 @@ public class TEmployeeInsuranceWorkDayVo implements Serializable {
@Schema(description = "类型 1 前一个工作日 2 后一个工作日") @Schema(description = "类型 1 前一个工作日 2 后一个工作日")
private String type; private String type;
@Schema(description = "类型 1 新增 2 其他")
private String addOrBatch;
} }
...@@ -310,9 +310,13 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo ...@@ -310,9 +310,13 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
holidayMap.put(h.getDate(),h.getDay()); holidayMap.put(h.getDate(),h.getDay());
} }
} else { } else {
vo.setPriDisDate(vo.getPriDisDate()); vo.setPriDisDate(vo.getRegistDate());
return vo; return vo;
} }
LocalDate preRegistDate = vo.getRegistDate().toInstant()
.atZone(java.time.ZoneId.systemDefault())
.toLocalDate();
//查找入职日期的前一个工作日 //查找入职日期的前一个工作日
TEmployeeInsuranceWorkDayVo newVo = new TEmployeeInsuranceWorkDayVo(); TEmployeeInsuranceWorkDayVo newVo = new TEmployeeInsuranceWorkDayVo();
newVo.setRegistDate(DateUtil.addDayByDate(vo.getRegistDate(), CommonConstants.ONE_INT_NEGATE)); newVo.setRegistDate(DateUtil.addDayByDate(vo.getRegistDate(), CommonConstants.ONE_INT_NEGATE));
...@@ -331,8 +335,18 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo ...@@ -331,8 +335,18 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
// 如果日期前一个工作日日期小于等于今天 // 如果日期前一个工作日日期小于等于今天
if (currentTime.isBefore(LocalTime.of(15, 20)) || currentTime.equals(LocalTime.of(15, 20))) { if (currentTime.isBefore(LocalTime.of(15, 20)) || currentTime.equals(LocalTime.of(15, 20))) {
// 如果当前时间在15:20之前 // 如果当前时间在15:20之前
vo.setPriDisDate(LocalDateTimeUtils.convertLDToDate(today)); //判断当前时间是否为非工作日,如果是的话,预派时间需要为下个工作日
vo.setRegistDate(DateUtil.addDayByDate(vo.getPriDisDate(), CommonConstants.ONE_INT)); if (null != holidayMap.get(LocalDateTimeUtils.convertLDToDate(today))) {
TEmployeeInsuranceWorkDayVo newVoUnWork = new TEmployeeInsuranceWorkDayVo();
newVoUnWork.setRegistDate(LocalDateTimeUtils.convertLDToDate(today));
newVoUnWork.setType(CommonConstants.TWO_STRING);
getWorkDay(holidayMap, newVoUnWork);
vo.setPriDisDate(newVoUnWork.getRegistDate());
vo.setRegistDate(DateUtil.addDayByDate(vo.getPriDisDate(), CommonConstants.ONE_INT));
} else {
vo.setPriDisDate(LocalDateTimeUtils.convertLDToDate(today));
vo.setRegistDate(DateUtil.addDayByDate(vo.getPriDisDate(), CommonConstants.ONE_INT));
}
} else { } else {
// 如果当前时间在15:20之后 // 如果当前时间在15:20之后
TEmployeeInsuranceWorkDayVo afterVo = new TEmployeeInsuranceWorkDayVo(); TEmployeeInsuranceWorkDayVo afterVo = new TEmployeeInsuranceWorkDayVo();
...@@ -349,6 +363,12 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo ...@@ -349,6 +363,12 @@ public class THolidayInfoServiceImpl extends ServiceImpl<THolidayInfoMapper, THo
//预计生效日期 //预计生效日期
vo.setRegistDate(DateUtil.addDayByDate(newVo.getRegistDate(), CommonConstants.ONE_INT)); vo.setRegistDate(DateUtil.addDayByDate(newVo.getRegistDate(), CommonConstants.ONE_INT));
} }
if (Common.isNotNull(vo.getAddOrBatch()) && CommonConstants.ONE_STRING.equals(vo.getAddOrBatch())
&& vo.getRegistDate().toInstant().atZone(java.time.ZoneId.systemDefault())
.toLocalDate().isBefore(preRegistDate)) {
//针对新增如果保单开始日期小于入职日期那么保单开始日期等于入职日期
vo.setRegistDate(LocalDateTimeUtils.convertLDToDate(preRegistDate));
}
return vo; return vo;
} }
......
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