Commit 26b38197 authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/develop' into develop

parents b1b8143f e46a2223
......@@ -1247,6 +1247,12 @@ public class DateUtil {
return sdf.format(cal.getTime());
}
/**
* @Description: 增减(月)
* @Author: hgw
* @Date: 2022/8/3 9:17
* @return: java.util.Date
**/
public static Date addMonthByDate(Date date, int mnt) {
Calendar cal = Calendar.getInstance();
if (date != null) {
......@@ -1256,6 +1262,21 @@ public class DateUtil {
return cal.getTime();
}
/**
* @Description: 增减(日)
* @Author: hgw
* @Date: 2022/8/3 9:17
* @return: java.util.Date
**/
public static Date addDayByDate(Date date, int mnt) {
Calendar cal = Calendar.getInstance();
if (date != null) {
cal.setTime(date);
}
cal.add(Calendar.DATE, mnt);
return cal.getTime();
}
/**
* @param mnt 增减日的 值
* @Description: 增减日
......
......@@ -92,6 +92,7 @@ public class InsurancesConstants {
* 项目编码不存在
*/
public static final String DEPT_NO_IS_NOT_EXIST = "项目编码不存在";
/**
* 替换员工项目不存在
*/
......@@ -477,9 +478,9 @@ public class InsurancesConstants {
/**
* 替换项目ID和原有项目ID相同
* 替换项目编码和原编码一致
*/
public static final String DEPT_NO_IDENTICAL = "替换项目ID和原有项目ID相同";
public static final String DEPT_NO_IDENTICAL = "替换项目编码和原编码一致";
/**
* 重复数据
......
......@@ -119,6 +119,43 @@ public class LocalDateUtil {
return flag;
}
/**
* 定时任务判断是否过期专用方法
*
* @author licancan
* @param strDate
* @return {@link boolean}
*/
public static boolean isOverdueDate(String strDate){
boolean flag = false;
//在日期字符串非空时执行
if (!Common.isEmpty(strDate)) {
//这里需要把传进来的日期加上23:59:59,来判断是否过期
strDate = strDate + " 23:59:59";
//今日的开始时间
Date nowDate = new Date();
Date pastDate = null;
//格式化日期
SimpleDateFormat sdf = new SimpleDateFormat(NORM_DATETIME_PATTERN, Locale.CHINA);
try {
//将字符串转为日期格式,如果此处字符串为非合法日期就会抛出异常。
pastDate = sdf.parse(strDate);
//调用Date里面的after方法来做判断
flag = pastDate.after(nowDate);
if (flag) {
System.out.println("该日期晚于今日");
}else {
System.out.println("该日期早于今日");
}
} catch (ParseException e) {
e.printStackTrace();
}
}else {
System.out.println("日期参数不可为空");
}
return flag;
}
/**
* 比较两个时间的早晚
*
......@@ -300,7 +337,6 @@ public class LocalDateUtil {
}
public static void main(String[] args) {
boolean hasOverlap = hasOverlap(parseLocalDate("2022-08-03"), parseLocalDate("2022-08-04"), parseLocalDate("2022-08-03"), parseLocalDate("2022-08-04"));
System.out.println(hasOverlap);
System.out.println(isOverdueDate("2022-08-03"));
}
}
......@@ -29,6 +29,7 @@ import com.yifu.cloud.plus.v1.yifu.insurances.util.BigDecimalUtils;
import com.yifu.cloud.plus.v1.yifu.insurances.util.LocalDateUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.util.ValidityUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.vo.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -52,6 +53,7 @@ import java.util.stream.Collectors;
* @date 2022-07-18 16:20:16
*/
@Service
@Slf4j
public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMapper, TInsuranceDetail> implements TInsuranceDetailService {
@Resource
@Lazy
......@@ -92,7 +94,25 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
*/
@Override
public void updateOverdueByTask() {
//todo
// 获取未过期的所有明细数据
List<TInsuranceDetail> list = this.baseMapper.selectList(Wrappers.<TInsuranceDetail>query().lambda()
.eq(TInsuranceDetail::getIsOverdue, CommonConstants.ZERO_INT)
.eq(TInsuranceDetail::getDeleteFlag, CommonConstants.ZERO_INT)
);
if (CollectionUtils.isNotEmpty(list)){
log.info("定时任务扫描到的未过期数据是:{}条",list.size());
list.stream().forEach(e -> {
if (!LocalDateUtil.isOverdueDate(e.getPolicyEnd().toString())){
e.setIsOverdue(CommonConstants.ONE_INT);
e.setUpdateTime(LocalDateTime.now());
}
});
List<TInsuranceDetail> collect = list.stream().filter(e -> e.getIsOverdue() == CommonConstants.ONE_INT).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(collect)){
log.info("定时任务扫描到的已过期数据是:{}条",collect.size());
this.updateBatchById(collect);
}
}
}
/**
......@@ -2734,7 +2754,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (!BigDecimalUtils.isNullOrZero(actualPremium)){
//变更后为单独结算
if(CommonConstants.ONE_INT == newSettleType){
update(updateWrapper);
//作废旧的数据,生成作废结算信息记录
TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
cancel.setDeptNo(success.getOldDeptNo());
......@@ -2744,6 +2763,11 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancelService.save(cancel);
//推送EKP // TODO: 2022/8/2
TInsuranceSettle byId = tInsuranceSettleService.getById(insuranceDetailId);
//如果已经推送过实际保费,则先作废,再推送新的预估保费和实际保费
if (byId.getIsActualPush() ==1){
}
//新增新的结算数据
TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
newInsuranceSettle.setInsDetailId(insuranceDetailId);
......@@ -2889,7 +2913,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,new BigDecimal("0.00"));
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,null);
update(updateWrapper);
}
//变更为合并结算
if (CommonConstants.ZERO_INT == newSettleType){
......@@ -3533,6 +3556,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
List<DeptChangeCheckParam> successList = new ArrayList<>();
for (int i =0 ;i< deptChangeCheckList.size();i++) {
DeptChangeCheckParam param = deptChangeCheckList.get(i);
//变更后的项目
String newDeptNo = param.getNewDeptNo();
if(StringUtils.isBlank(newDeptNo)){
param.setErrorMessage(InsurancesConstants.DEPT_NO_CHANGE_NOT_EMPTY);
......@@ -3553,7 +3577,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
errorList.add(param);
continue;
}
//所属项目
//项目
String oldDeptNo = param.getOldDeptNo();
if(StringUtils.isBlank(oldDeptNo)){
param.setErrorMessage(InsurancesConstants.DEPT_NO_NOT_EMPTY);
......@@ -3618,7 +3642,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS) {
Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap();
if (MapUtils.isEmpty(data)){
param.setErrorMessage(InsurancesConstants.DEPT_NO_IS_NOT_EXIST);
param.setErrorMessage(InsurancesConstants.DEPT_NO_CHANGE_IS_NOT_EXIST);
errorList.add(param);
continue;
}else {
......
......@@ -68,9 +68,9 @@ public class TDispatchInfoExportVo {
@ExcelProperty("社保公积金类型")
private String typeSub;
@ExcelAttribute(name = "单位名称", maxLength = 50)
@Schema(description = "单位名称")
@ExcelProperty("单位名称")
@ExcelAttribute(name = "客户名称", maxLength = 50)
@Schema(description = "客户名称")
@ExcelProperty("客户名称")
private String belongUnitName;
@ExcelAttribute(name = "项目名称", maxLength = 50)
......@@ -113,6 +113,36 @@ public class TDispatchInfoExportVo {
@ExcelProperty("社保办理状态")
private String socialHandleStatus;
@ExcelAttribute(name = "养老状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "养老办理状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("养老状态" )
private String pensionHandle;
@ExcelAttribute(name = "医疗状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "医疗状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("医疗状态" )
private String medicalHandle;
@ExcelAttribute(name = "失业状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "失业办理状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("失业状态" )
private String unemployHandle;
@ExcelAttribute(name = "工伤状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "工伤状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("工伤状态" )
private String workInjuryHandle;
@ExcelAttribute(name = "生育状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "生育状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("生育状态" )
private String birthHandle;
@ExcelAttribute(name = "大病状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "大病状态:0待办理1办理成功2办理失败3已派减" )
@ExcelProperty("大病状态" )
private String bigailmentHandle;
@ExcelAttribute(name = "公积金办理状态", readConverterExp = "0=待办理,1=办理成功,2=办理失败,3=已派减")
@Schema(description = "公积金办理状态:0 待办理 1办理成功 2 办理失败 3 已派减")
@ExcelProperty("公积金办理状态")
......
......@@ -140,7 +140,7 @@ public class SysBaseSetInfoServiceImpl extends ServiceImpl<SysBaseSetInfoMapper,
// 将上一个无截止月的增加截止月(本次起始月的上一个月)
if (lastBase != null) {
lastBase.setApplyEndDate(DateUtil.addMonthByDate(sysBaseSetInfo.getApplyStartDate(), -1));
lastBase.setApplyEndDate(DateUtil.addDayByDate(sysBaseSetInfo.getApplyStartDate(), -1));
this.updateById(lastBase);
}
this.saveOrUpdateBaseAndFundPro(sysBaseSetInfo);
......
......@@ -117,6 +117,12 @@
<result property="providentHouseholdName" column="PROVIDENT_HOUSEHOLD_NAME"/>
<result property="status" column="STATUS"/>
<result property="socialHandleStatus" column="SOCIAL_HANDLE_STATUS"/>
<result property="pensionHandle" column="PENSION_HANDLE"/>
<result property="medicalHandle" column="MEDICAL_HANDLE"/>
<result property="unemployHandle" column="UNEMPLOY_HANDLE"/>
<result property="workInjuryHandle" column="WORK_INJURY_HANDLE"/>
<result property="birthHandle" column="BIRTH_HANDLE"/>
<result property="bigailmentHandle" column="BIGAILMENT_HANDLE"/>
<result property="fundHandleStatus" column="FUND_HANDLE_STATUS"/>
<result property="createName" column="CREATE_NAME"/>
<result property="organName" column="ORGAN_NAME"/>
......@@ -435,6 +441,12 @@
f.PROVIDENT_HOUSEHOLD_NAME,
a.STATUS,
a.SOCIAL_HANDLE_STATUS,
s.PENSION_HANDLE,
s.MEDICAL_HANDLE,
s.UNEMPLOY_HANDLE,
s.WORK_INJURY_HANDLE,
s.BIGAILMENT_HANDLE,
s.BIGAILMENT_HANDLE,
a.FUND_HANDLE_STATUS,
a.CREATE_NAME,
a.ORGAN_NAME,
......@@ -447,7 +459,7 @@
<include refid="tDispatchInfo_where"/>
</where>
order by a.CREATE_TIME desc
<if test="tSocialFundInfo.limitStart != null">
<if test="tDispatchInfo.limitStart != null">
limit #{tDispatchInfo.limitStart},#{tDispatchInfo.limitEnd}
</if>
</select>
......
......@@ -265,9 +265,9 @@
a.EMP_IDCARD,
a.EMP_TYPE,
a.SETTLE_DOMAIN,
concat(ifnull(a.SETTLE_DOMAIN_CODE,""),if(a.SETTLE_DOMAIN_CODE is null or a.SETTLE_DOMAIN_CODE_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_CODE_FUND,"")) SETTLE_DOMAIN_CODE,
concat(ifnull(a.SETTLE_DOMAIN_NAME,""),if(a.SETTLE_DOMAIN_NAME is null or a.SETTLE_DOMAIN_NAME_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_NAME_FUND,"")) SETTLE_DOMAIN_NAME,
concat(ifnull(a.UNIT_NAME,""),if(a.UNIT_NAME is null or a.UNIT_NAME_FUND is null,"",","),ifnull(a.UNIT_NAME_FUND,"")) UNIT_NAME,
if(a.SETTLE_DOMAIN_CODE = a.SETTLE_DOMAIN_CODE_FUND,a.SETTLE_DOMAIN_CODE,concat(ifnull(a.SETTLE_DOMAIN_CODE,""),if(a.SETTLE_DOMAIN_CODE is null or a.SETTLE_DOMAIN_CODE_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_CODE_FUND,""))) SETTLE_DOMAIN_CODE,
if(a.SETTLE_DOMAIN_NAME = a.SETTLE_DOMAIN_NAME_FUND,a.SETTLE_DOMAIN_NAME,concat(ifnull(a.SETTLE_DOMAIN_NAME,""),if(a.SETTLE_DOMAIN_NAME is null or a.SETTLE_DOMAIN_NAME_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_NAME_FUND,""))) SETTLE_DOMAIN_NAME,
if(a.UNIT_NAME = a.UNIT_NAME_FUND,a.UNIT_NAME,concat(ifnull(a.UNIT_NAME,""),if(a.UNIT_NAME is null or a.UNIT_NAME_FUND is null,"",","),ifnull(a.UNIT_NAME_FUND,""))) UNIT_NAME,
a.UNIT_ID,
a.SETTLE_DOMAIN_FUND,
a.SETTLE_DOMAIN_CODE_FUND,
......@@ -790,9 +790,9 @@
a.EMP_IDCARD,
a.EMP_TYPE,
d.EMP_MOBILE,
concat(ifnull(a.SETTLE_DOMAIN_CODE,""),if(a.SETTLE_DOMAIN_CODE is null or a.SETTLE_DOMAIN_CODE_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_CODE_FUND,"")) SETTLE_DOMAIN_CODE,
concat(ifnull(a.SETTLE_DOMAIN_NAME,""),if(a.SETTLE_DOMAIN_NAME is null or a.SETTLE_DOMAIN_NAME_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_NAME_FUND,"")) SETTLE_DOMAIN_NAME,
concat(ifnull(a.UNIT_NAME,""),if(a.UNIT_NAME is null or a.UNIT_NAME_FUND is null,"",","),ifnull(a.UNIT_NAME_FUND,"")) UNIT_NAME,
if(a.SETTLE_DOMAIN_CODE = a.SETTLE_DOMAIN_CODE_FUND,a.SETTLE_DOMAIN_CODE,concat(ifnull(a.SETTLE_DOMAIN_CODE,""),if(a.SETTLE_DOMAIN_CODE is null or a.SETTLE_DOMAIN_CODE_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_CODE_FUND,""))) SETTLE_DOMAIN_CODE,
if(a.SETTLE_DOMAIN_NAME = a.SETTLE_DOMAIN_NAME_FUND,a.SETTLE_DOMAIN_NAME,concat(ifnull(a.SETTLE_DOMAIN_NAME,""),if(a.SETTLE_DOMAIN_NAME is null or a.SETTLE_DOMAIN_NAME_FUND is null,"",","),ifnull(a.SETTLE_DOMAIN_NAME_FUND,""))) SETTLE_DOMAIN_NAME,
if(a.UNIT_NAME = a.UNIT_NAME_FUND,a.UNIT_NAME,concat(ifnull(a.UNIT_NAME,""),if(a.UNIT_NAME is null or a.UNIT_NAME_FUND is null,"",","),ifnull(a.UNIT_NAME_FUND,""))) UNIT_NAME,
d.ID_CARD_PROVINCE,
d.ID_CARD_CITY,
d.ID_CARD_TOWN,
......
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