Commit 8b2e4238 authored by fangxinjiang's avatar fangxinjiang

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

parents 7d325dc2 047d2a16
...@@ -92,10 +92,18 @@ public class InsurancesConstants { ...@@ -92,10 +92,18 @@ public class InsurancesConstants {
* 项目编码不存在 * 项目编码不存在
*/ */
public static final String DEPT_NO_IS_NOT_EXIST = "项目编码不存在"; public static final String DEPT_NO_IS_NOT_EXIST = "项目编码不存在";
/**
* 替换员工项目不存在
*/
public static final String REPLACE_DEPT_NO_IS_NOT_EXIST = "替换员工项目不存在";
/** /**
* 未找到项目的结算方式 * 未找到项目的结算方式
*/ */
public static final String PROJECT_NOT_FIND_SETTLE_TYPE = "未找到项目的结算方式"; public static final String PROJECT_NOT_FIND_SETTLE_TYPE = "未找到项目的结算方式";
/**
* 根据替换员工的项目,未找到项目的结算方式
*/
public static final String REPLACE_PROJECT_NOT_FIND_SETTLE_TYPE = "根据替换员工的项目,未找到项目的结算方式";
/** /**
* 替换员工投保记录已存在 * 替换员工投保记录已存在
*/ */
......
...@@ -248,6 +248,7 @@ public class TInsuranceDetail extends BaseEntity { ...@@ -248,6 +248,7 @@ public class TInsuranceDetail extends BaseEntity {
* 是否有效 0有效 1无效 * 是否有效 0有效 1无效
*/ */
@Schema(description = "是否有效 0有效 1无效") @Schema(description = "是否有效 0有效 1无效")
@TableField(updateStrategy = FieldStrategy.IGNORED)
private Integer isEffect; private Integer isEffect;
/** /**
......
package com.yifu.cloud.plus.v1.yifu.insurances.entity; package com.yifu.cloud.plus.v1.yifu.insurances.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data; import lombok.Data;
...@@ -15,8 +17,9 @@ import java.util.Date; ...@@ -15,8 +17,9 @@ import java.util.Date;
@Tag(name = "结算信息作废记录") @Tag(name = "结算信息作废记录")
public class TInsuranceSettleCancel implements Serializable { public class TInsuranceSettleCancel implements Serializable {
/** /**
* * id
*/ */
@TableId(type = IdType.ASSIGN_ID)
private String id; private String id;
/** /**
......
...@@ -237,6 +237,23 @@ public class BigDecimalUtils { ...@@ -237,6 +237,23 @@ public class BigDecimalUtils {
} }
return bigDecimal; return bigDecimal;
} }
/**
* null 默认 为 0
* @Author zhaji
* @Date 2022-08-02
* @param bigDecimal
* @return
**/
public static Boolean isNullOrZero(BigDecimal bigDecimal){
if (null == bigDecimal){
return true;
}
if (bigDecimal.compareTo(BigDecimal.ZERO) == 0){
return true;
}
return false;
}
/** /**
* 对象转为BigDecimal 数据 并四舍五入保留两位小数 * 对象转为BigDecimal 数据 并四舍五入保留两位小数
* @Author fxj * @Author fxj
......
...@@ -100,9 +100,15 @@ public class InsuredParam implements Serializable { ...@@ -100,9 +100,15 @@ public class InsuredParam implements Serializable {
private Integer isOverdue; private Integer isOverdue;
/** /**
* 派单日期 * 派单开始日期
*/ */
@Schema(description = "派单日期") @Schema(description = "派单开始日期")
private String createTime; private String createStartTime;
/**
* 派单结束日期
*/
@Schema(description = "派单结束日期")
private String createEndTime;
} }
...@@ -25,6 +25,7 @@ import com.yifu.cloud.plus.v1.yifu.insurances.entity.*; ...@@ -25,6 +25,7 @@ import com.yifu.cloud.plus.v1.yifu.insurances.entity.*;
import com.yifu.cloud.plus.v1.yifu.insurances.mapper.TInsuranceDetailMapper; import com.yifu.cloud.plus.v1.yifu.insurances.mapper.TInsuranceDetailMapper;
import com.yifu.cloud.plus.v1.yifu.insurances.service.*; import com.yifu.cloud.plus.v1.yifu.insurances.service.*;
import com.yifu.cloud.plus.v1.yifu.insurances.util.BeanCopyUtils; import com.yifu.cloud.plus.v1.yifu.insurances.util.BeanCopyUtils;
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.LocalDateUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.util.ValidityUtil; import com.yifu.cloud.plus.v1.yifu.insurances.util.ValidityUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.vo.*; import com.yifu.cloud.plus.v1.yifu.insurances.vo.*;
...@@ -77,6 +78,10 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -77,6 +78,10 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
@Resource @Resource
private TInsuranceRefundService tInsuranceRefundService; private TInsuranceRefundService tInsuranceRefundService;
@Resource
private TInsuranceSettleCancelService tInsuranceSettleCancelService;
/***********************商险办理********************************/ /***********************商险办理********************************/
/** /**
...@@ -403,6 +408,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -403,6 +408,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
return R.failed(InsurancesConstants.DATA_IS_NOT_EXIST); return R.failed(InsurancesConstants.DATA_IS_NOT_EXIST);
} }
if (byId.getBuyHandleStatus() == CommonConstants.FOUR_INT && byId.getBuyType() != CommonConstants.FOUR_INT){ if (byId.getBuyHandleStatus() == CommonConstants.FOUR_INT && byId.getBuyType() != CommonConstants.FOUR_INT){
//新增、批增的编辑逻辑
// 身份证号位数校验(18 位合法) // 身份证号位数校验(18 位合法)
if (!ValidityUtil.validateIDCard(param.getEmpIdcardNo())){ if (!ValidityUtil.validateIDCard(param.getEmpIdcardNo())){
return R.failed(InsurancesConstants.EMP_IDCARD_NO_NOT_LEGITIMATE); return R.failed(InsurancesConstants.EMP_IDCARD_NO_NOT_LEGITIMATE);
...@@ -554,7 +561,56 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -554,7 +561,56 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
byId.setUpdateBy(user.getId()); byId.setUpdateBy(user.getId());
byId.setUpdateTime(LocalDateTime.now()); byId.setUpdateTime(LocalDateTime.now());
this.updateById(byId); this.updateById(byId);
}else { }else if(byId.getBuyHandleStatus() == CommonConstants.FOUR_INT && byId.getBuyType() == CommonConstants.FOUR_INT){
//替换的编辑逻辑
// 身份证号位数校验(18 位合法)
if (!ValidityUtil.validateIDCard(param.getEmpIdcardNo())){
return R.failed(InsurancesConstants.EMP_IDCARD_NO_NOT_LEGITIMATE);
}
//校验身份合法
/*TCheckIdCard checkIdCard = new TCheckIdCard();
checkIdCard.setName(param.getEmpName());
checkIdCard.setIdCard(param.getEmpIdcardNo());
R<TCheckIdCard> tCheckIdCardR = checkDaprUtil.checkIdCardSingle(checkIdCard);
if (null != tCheckIdCardR && tCheckIdCardR.getCode() == CommonConstants.SUCCESS){
TCheckIdCard data = tCheckIdCardR.getData();
if (CommonConstants.ONE_INT != data.getIsTrue()){
return R.failed(InsurancesConstants.EMP_ID_CARD_NO_NOT_FIT);
}
}*/
TInsuranceReplace one = tInsuranceReplaceService.getOne(Wrappers.<TInsuranceReplace>query().lambda()
.eq(TInsuranceReplace::getToInsuranceDetailId, byId.getId())
.last(CommonConstants.LAST_ONE_SQL));
if (Optional.ofNullable(one).isPresent()){
TInsuranceDetail insuranceDetail = this.getById(one.getFromInsuranceDetailId());
if (Optional.ofNullable(insuranceDetail).isPresent()){
if (insuranceDetail.getIsUse() == CommonConstants.ONE_INT){
return R.failed("员工"+insuranceDetail.getEmpName()+"的投保记录已出险,无法替换");
}
if (insuranceDetail.getIsEffect() == CommonConstants.ONE_INT){
return R.failed("员工"+insuranceDetail.getEmpName()+"的投保记录无效,无法替换");
}
//被替换者无效
insuranceDetail.setIsEffect(CommonConstants.ONE_INT);
this.updateById(insuranceDetail);
//替换记录成功
one.setReplaceStatus(CommonConstants.ONE_INT);
tInsuranceReplaceService.updateById(one);
//替换状态下目前只能编辑姓名、身份证、岗位
//投保状态:待投保
byId.setBuyHandleStatus(CommonConstants.ONE_INT);
byId.setEmpName(param.getEmpName());
byId.setEmpIdcardNo(param.getEmpIdcardNo());
byId.setPost(param.getPost());
byId.setUpdateBy(user.getId());
byId.setUpdateTime(LocalDateTime.now());
this.updateById(byId);
}
}
} else {
return R.failed(InsurancesConstants.EDIT_NOT_ALLOW); return R.failed(InsurancesConstants.EDIT_NOT_ALLOW);
} }
//操作记录 //操作记录
...@@ -680,6 +736,27 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -680,6 +736,27 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listVO.setErrorMessage(InsurancesConstants.REDUCE_ROLLBACK_REDUCE_IS_NOT_ALLOW); listVO.setErrorMessage(InsurancesConstants.REDUCE_ROLLBACK_REDUCE_IS_NOT_ALLOW);
errorList.add(listVO); errorList.add(listVO);
}else{ }else{
//判断是否是替换类型的退回,如果是,需要将被替换者激活,替换者有效状态为空
if(detail.getBuyType() == CommonConstants.FOUR_INT){
//替换者有效状态为空
detail.setIsEffect(null);
TInsuranceReplace one = tInsuranceReplaceService.getOne(Wrappers.<TInsuranceReplace>query().lambda()
.eq(TInsuranceReplace::getToInsuranceDetailId, detail.getId())
.last(CommonConstants.LAST_ONE_SQL));
if (Optional.ofNullable(one).isPresent()){
//替换记录变为失败
one.setReplaceStatus(CommonConstants.ZERO_INT);
tInsuranceReplaceService.updateById(one);
TInsuranceDetail byId = this.getById(one.getFromInsuranceDetailId());
if (Optional.ofNullable(byId).isPresent()){
//被替换者激活
byId.setIsEffect(CommonConstants.ZERO_INT);
this.updateById(byId);
}
}
}
// 记录状态置为「退回」 // 记录状态置为「退回」
detail.setBuyHandleStatus(CommonConstants.FOUR_INT); detail.setBuyHandleStatus(CommonConstants.FOUR_INT);
detail.setUpdateBy(user.getId()); detail.setUpdateBy(user.getId());
...@@ -758,47 +835,87 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -758,47 +835,87 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listVO.setErrorMessage(InsurancesConstants.INSURANCE_BUY_STATUS_NOT_TWO); listVO.setErrorMessage(InsurancesConstants.INSURANCE_BUY_STATUS_NOT_TWO);
errorList.add(listVO); errorList.add(listVO);
}else { }else {
//根据结算类型判断是否需要计算预估保费 //替换类型不参与结算
//预估 if(detail.getBuyType() == CommonConstants.FOUR_INT){
if (detail.getSettleType() == CommonConstants.ZERO_INT){ //记录状态均置为「已投保」
if (CommonConstants.ONE_INT == detail.getBillingType()){ detail.setBuyHandleStatus(CommonConstants.THREE_INT);
// 按月查费率 detail.setSignFlag(CommonConstants.ONE_INT);
// 预估保费 = 费率 * 购买标准 //记录的有效状态,置为「有效」
BigDecimal estimatePremium = new BigDecimal(detail.getBuyStandard()).multiply(detail.getRate()).setScale(2,BigDecimal.ROUND_HALF_UP); detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setEstimatePremium(estimatePremium); detail.setIsOverdue(CommonConstants.ZERO_INT);
if (detail.getBuyType() == CommonConstants.THREE_INT){ detail.setIsUse(CommonConstants.ZERO_INT);
detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT)); successList.add(detail);
}else{
//根据结算类型判断是否需要计算预估保费
//预估
if (detail.getSettleType() == CommonConstants.ZERO_INT){
if (CommonConstants.ONE_INT == detail.getBillingType()){
// 按月查费率
// 预估保费 = 费率 * 购买标准
BigDecimal estimatePremium = new BigDecimal(detail.getBuyStandard()).multiply(detail.getRate()).setScale(2,BigDecimal.ROUND_HALF_UP);
detail.setEstimatePremium(estimatePremium);
if (detail.getBuyType() == CommonConstants.THREE_INT){
detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT));
}
//记录状态均置为「已投保」
detail.setBuyHandleStatus(CommonConstants.THREE_INT);
detail.setSignFlag(CommonConstants.ONE_INT);
//记录的有效状态,置为「有效」
detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setIsOverdue(CommonConstants.ZERO_INT);
detail.setIsUse(CommonConstants.ZERO_INT);
//保费存储
TInsuranceSettle settle = new TInsuranceSettle();
settle.setInsDetailId(detail.getId());
settle.setSettleType(detail.getSettleType());
settle.setSettleHandleStatus(CommonConstants.ONE_STRING);
settle.setEstimatePremium(estimatePremium);
//调完ekp接口才会是1
settle.setIsEstimatePush(CommonConstants.ONE_INT);
settle.setEstimatePushTime(LocalDateTime.now());
settle.setCreateTime(LocalDateTime.now());
tInsuranceSettleService.save(settle);
detail.setDefaultSettleId(settle.getId());
successList.add(detail);
}else {
//按天
//计算起止时间的天数
long day = LocalDateUtil.betweenDay(detail.getPolicyStart().toString(), detail.getPolicyEnd().toString());
//预估保费 = (购买标准 / 365) * 天数
BigDecimal estimatePremium = new BigDecimal(detail.getBuyStandard()).multiply(new BigDecimal(day)).divide(new BigDecimal("365"),CommonConstants.TWO_INT,BigDecimal.ROUND_HALF_UP);
detail.setEstimatePremium(estimatePremium);
if (detail.getBuyType() == CommonConstants.THREE_INT){
detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT));
}
//记录状态均置为「已投保」
detail.setBuyHandleStatus(CommonConstants.THREE_INT);
detail.setSignFlag(CommonConstants.ONE_INT);
//记录的有效状态,置为「有效」
detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setIsOverdue(CommonConstants.ZERO_INT);
detail.setIsUse(CommonConstants.ZERO_INT);
//保费存储
TInsuranceSettle settle = new TInsuranceSettle();
settle.setInsDetailId(detail.getId());
settle.setSettleType(detail.getSettleType());
settle.setSettleHandleStatus(CommonConstants.ONE_STRING);
settle.setEstimatePremium(estimatePremium);
//调完ekp接口才会是1
settle.setIsEstimatePush(CommonConstants.ONE_INT);
settle.setEstimatePushTime(LocalDateTime.now());
settle.setCreateTime(LocalDateTime.now());
tInsuranceSettleService.save(settle);
detail.setDefaultSettleId(settle.getId());
successList.add(detail);
} }
//记录状态均置为「已投保」 }
detail.setBuyHandleStatus(CommonConstants.THREE_INT); //实缴
detail.setSignFlag(CommonConstants.ONE_INT); if(detail.getSettleType() == CommonConstants.ONE_INT){
//记录的有效状态,置为「有效」
detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setIsOverdue(CommonConstants.ZERO_INT);
detail.setIsUse(CommonConstants.ZERO_INT);
//保费存储
TInsuranceSettle settle = new TInsuranceSettle();
settle.setInsDetailId(detail.getId());
settle.setSettleType(detail.getSettleType());
settle.setSettleHandleStatus(CommonConstants.ONE_STRING);
settle.setEstimatePremium(estimatePremium);
//调完ekp接口才会是1
settle.setIsEstimatePush(CommonConstants.ONE_INT);
settle.setEstimatePushTime(LocalDateTime.now());
settle.setCreateTime(LocalDateTime.now());
tInsuranceSettleService.save(settle);
detail.setDefaultSettleId(settle.getId());
successList.add(detail);
}else {
//按天
//计算起止时间的天数
long day = LocalDateUtil.betweenDay(detail.getPolicyStart().toString(), detail.getPolicyEnd().toString());
//预估保费 = (购买标准 / 365) * 天数
BigDecimal estimatePremium = new BigDecimal(detail.getBuyStandard()).multiply(new BigDecimal(day)).divide(new BigDecimal("365"),CommonConstants.TWO_INT,BigDecimal.ROUND_HALF_UP);
detail.setEstimatePremium(estimatePremium);
if (detail.getBuyType() == CommonConstants.THREE_INT){ if (detail.getBuyType() == CommonConstants.THREE_INT){
detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT)); detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT));
} }
...@@ -809,37 +926,9 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -809,37 +926,9 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
detail.setIsEffect(CommonConstants.ZERO_INT); detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setIsOverdue(CommonConstants.ZERO_INT); detail.setIsOverdue(CommonConstants.ZERO_INT);
detail.setIsUse(CommonConstants.ZERO_INT); detail.setIsUse(CommonConstants.ZERO_INT);
//保费存储
TInsuranceSettle settle = new TInsuranceSettle();
settle.setInsDetailId(detail.getId());
settle.setSettleType(detail.getSettleType());
settle.setSettleHandleStatus(CommonConstants.ONE_STRING);
settle.setEstimatePremium(estimatePremium);
//调完ekp接口才会是1
settle.setIsEstimatePush(CommonConstants.ONE_INT);
settle.setEstimatePushTime(LocalDateTime.now());
settle.setCreateTime(LocalDateTime.now());
tInsuranceSettleService.save(settle);
detail.setDefaultSettleId(settle.getId());
successList.add(detail); successList.add(detail);
} }
} }
//实缴
if(detail.getSettleType() == CommonConstants.ONE_INT){
if (detail.getBuyType() == CommonConstants.THREE_INT){
detail.setPolicyEffect(LocalDate.now().plusDays(CommonConstants.ONE_INT));
}
//记录状态均置为「已投保」
detail.setBuyHandleStatus(CommonConstants.THREE_INT);
detail.setSignFlag(CommonConstants.ONE_INT);
//记录的有效状态,置为「有效」
detail.setIsEffect(CommonConstants.ZERO_INT);
detail.setIsOverdue(CommonConstants.ZERO_INT);
detail.setIsUse(CommonConstants.ZERO_INT);
successList.add(detail);
}
} }
} }
} }
...@@ -1808,24 +1897,24 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -1808,24 +1897,24 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
} }
//根据项目编码查询项目是否存在 //根据项目编码查询项目是否存在
R<SetInfoVo> setInfoByCodes = archivesDaprUtil.getSetInfoByCodes(Arrays.asList(param.getDeptNo())); R<SetInfoVo> setInfoByCodes = archivesDaprUtil.getSetInfoByCodes(Arrays.asList(param.getReplaceDeptNo()));
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS) { if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS) {
Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap(); Map<String, ProjectSetInfoVo> data = setInfoByCodes.getData().getProjectSetInfoVoMap();
if (MapUtils.isEmpty(data)){ if (MapUtils.isEmpty(data)){
param.setErrorMessage(InsurancesConstants.DEPT_NO_IS_NOT_EXIST); param.setErrorMessage(InsurancesConstants.REPLACE_DEPT_NO_IS_NOT_EXIST);
listResult.add(param); listResult.add(param);
continue; continue;
}else { }else {
ProjectSetInfoVo projectSetInfoVo = data.get(param.getDeptNo()); ProjectSetInfoVo projectSetInfoVo = data.get(param.getReplaceDeptNo());
if (null == projectSetInfoVo){ if (null == projectSetInfoVo){
param.setErrorMessage(InsurancesConstants.DEPT_NO_IS_NOT_EXIST); param.setErrorMessage(InsurancesConstants.REPLACE_DEPT_NO_IS_NOT_EXIST);
listResult.add(param); listResult.add(param);
continue; continue;
}else { }else {
//结算类型,根据项目编码获取,并冗余到明细记录中 //结算类型,根据项目编码获取,并冗余到明细记录中
String settleType = projectSetInfoVo.getInsuranceSettleType(); String settleType = projectSetInfoVo.getInsuranceSettleType();
if (StringUtils.isEmpty(settleType)){ if (StringUtils.isEmpty(settleType)){
param.setErrorMessage(InsurancesConstants.PROJECT_NOT_FIND_SETTLE_TYPE); param.setErrorMessage(InsurancesConstants.REPLACE_PROJECT_NOT_FIND_SETTLE_TYPE);
listResult.add(param); listResult.add(param);
continue; continue;
}else { }else {
...@@ -2634,90 +2723,202 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -2634,90 +2723,202 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
.set(TInsuranceDetail :: getSettleType,success.getNewSettleType()) .set(TInsuranceDetail :: getSettleType,success.getNewSettleType())
.set(TInsuranceDetail :: getUpdateBy,user.getId()) .set(TInsuranceDetail :: getUpdateBy,user.getId())
.set(TInsuranceDetail :: getUpdateTime,LocalDateTime.now()); .set(TInsuranceDetail :: getUpdateTime,LocalDateTime.now());
String insuranceDetailId = success.getId();
//如果旧项目为合并结算,且新项目也是合并结算,则计算新的预估保费,作废旧的预估保费 //结算信息id
if(CommonConstants.ZERO_INT == oldSettleType && CommonConstants.ZERO_INT == newSettleType){ String defaultSettleId = success.getDefaultSettleId();
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium()); //实际保费
//如果存在则更新,不存在则新建 BigDecimal actualPremium = success.getActualPremium();
if (StringUtils.isNotBlank(success.getDefaultSettleId())){ //如果变更前为单独结算
TInsuranceSettle tInsuranceSettle = tInsuranceSettleService.getById(success.getDefaultSettleId()); if(CommonConstants.ONE_INT == oldSettleType){
//登记了保单保费
tInsuranceSettle.setId(success.getDefaultSettleId()); if (!BigDecimalUtils.isNullOrZero(actualPremium)){
tInsuranceSettle.setSettleType(success.getNewSettleType()); //变更后为单独结算
tInsuranceSettle.setInsDetailId(success.getId()); if(CommonConstants.ONE_INT == newSettleType){
tInsuranceSettle.setEstimatePremium(success.getEstimatePremium()); update(updateWrapper);
tInsuranceSettle.setUpdateTime(LocalDateTime.now()); //作废旧的数据,生成作废结算信息记录
tInsuranceSettleService.updateById(tInsuranceSettle); TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
}else{ cancel.setDeptNo(success.getOldDeptNo());
TInsuranceSettle tInsuranceSettle = new TInsuranceSettle(); cancel.setInsDetailId(success.getId());
tInsuranceSettle.setInsDetailId(success.getId()); cancel.setSettleId(defaultSettleId);
tInsuranceSettle.setSettleType(success.getNewSettleType()); cancel.setCreateUesr(user.getId());
tInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING); cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettle.setEstimatePremium(success.getEstimatePremium()); tInsuranceSettleCancelService.save(cancel);
tInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT); //推送EKP // TODO: 2022/8/2
tInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT); //新增新的结算数据
tInsuranceSettle.setCreateTime(LocalDateTime.now()); TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
tInsuranceSettleService.save(tInsuranceSettle); newInsuranceSettle.setInsDetailId(insuranceDetailId);
//将结算id赋值给保单信息 newInsuranceSettle.setSettleType(newSettleType);
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,tInsuranceSettle.getId()); newInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
newInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
newInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
newInsuranceSettle.setCreateTime(LocalDateTime.now());
newInsuranceSettle.setActualPremium(success.getActualPremium());
tInsuranceSettleService.save(newInsuranceSettle);
//赋值新的预估费用和新的结算信息
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,newInsuranceSettle.getId());
update(updateWrapper);
}
//变更后为合并结算
if(CommonConstants.ZERO_INT == newSettleType){
//作废旧的数据,生成作废结算信息记录
TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
cancel.setDeptNo(success.getOldDeptNo());
cancel.setInsDetailId(success.getId());
cancel.setSettleId(defaultSettleId);
cancel.setCreateUesr(user.getId());
cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancelService.save(cancel);
//推送EKP // TODO: 2022/8/2
//新增新的结算信息
TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
newInsuranceSettle.setInsDetailId(insuranceDetailId);
newInsuranceSettle.setSettleType(newSettleType);
newInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
newInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
newInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
newInsuranceSettle.setCreateTime(LocalDateTime.now());
newInsuranceSettle.setActualPremium(success.getActualPremium());
newInsuranceSettle.setEstimatePremium(success.getEstimatePremium());
//生成新的结算信息
tInsuranceSettleService.save(newInsuranceSettle);
//赋值新的预估费用和新的结算信息
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium());
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,newInsuranceSettle.getId());
update(updateWrapper);
//推送EKP // TODO: 2022/8/2
}
} }
} //未登记保单保费
//如果旧项目为预估,且新的项目为单独结算,则作废旧的预估保费,更新项目信息 if(BigDecimalUtils.isNullOrZero(actualPremium)){
if(CommonConstants.ZERO_INT == oldSettleType && CommonConstants.ONE_INT == newSettleType){ //变更后为单独结算
//更新旧的结算信息 if (CommonConstants.ONE_INT == newSettleType){
if (StringUtils.isNotBlank(success.getDefaultSettleId())){ //变更项目且不做处理
TInsuranceSettle tInsuranceSettle = tInsuranceSettleService.getById(success.getDefaultSettleId()); update(updateWrapper);
tInsuranceSettle.setId(success.getDefaultSettleId()); }
tInsuranceSettle.setSettleType(success.getNewSettleType()); //变更后为合并结算
tInsuranceSettle.setInsDetailId(success.getId()); if (CommonConstants.ZERO_INT == newSettleType){
tInsuranceSettle.setEstimatePremium(new BigDecimal("0")); //生成预估结算信息
tInsuranceSettle.setUpdateTime(LocalDateTime.now()); TInsuranceSettle tInsuranceSettle = new TInsuranceSettle();
tInsuranceSettleService.updateById(tInsuranceSettle); tInsuranceSettle.setInsDetailId(success.getId());
//生成一条作废数据并推送至EKP tInsuranceSettle.setSettleType(success.getNewSettleType());
TInsuranceSettleCancel tInsuranceSettleCancel = new TInsuranceSettleCancel(); tInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
tInsuranceSettleCancel.setInsDetailId(success.getId()); tInsuranceSettle.setEstimatePremium(success.getEstimatePremium());
tInsuranceSettleCancel.setSettleId(success.getDefaultSettleId()); tInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
tInsuranceSettleCancel.setDeptNo(success.getOldDeptNo()); tInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
tInsuranceSettleCancel.setIsCancelPush(CommonConstants.ZERO_INT); tInsuranceSettle.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancel.setCreateUesr(user.getId()); tInsuranceSettleService.save(tInsuranceSettle);
tInsuranceSettleCancel.setCreateTime(LocalDateTime.now()); //将结算id赋值给保单信息,并新增预估费用
}else{ updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium());
//更新预估保费 updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,tInsuranceSettle.getId());
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,new BigDecimal("0")); update(updateWrapper);
//推送结算信息至EKP // TODO: 2022/8/2
}
} }
} }
//如果旧项目为单独结算,且新项目为合并结算,则计算预估保费,作废旧的预估保费 //变更前为合并结算
if(CommonConstants.ONE_INT == oldSettleType && CommonConstants.ZERO_INT == newSettleType){ if(CommonConstants.ZERO_INT == oldSettleType){
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium()); //如果已经登记保费
//更新旧的结算信息 if (!BigDecimalUtils.isNullOrZero(actualPremium)){
if (StringUtils.isNotBlank(success.getDefaultSettleId())){ //变更为单独结算
TInsuranceSettle tInsuranceSettle = tInsuranceSettleService.getById(success.getDefaultSettleId()); if (CommonConstants.ONE_INT == newSettleType){
tInsuranceSettle.setId(success.getDefaultSettleId()); //作废旧的结算信息
tInsuranceSettle.setSettleType(success.getNewSettleType()); TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
tInsuranceSettle.setInsDetailId(success.getId()); cancel.setDeptNo(success.getOldDeptNo());
tInsuranceSettle.setEstimatePremium(success.getEstimatePremium()); cancel.setInsDetailId(success.getId());
tInsuranceSettle.setUpdateTime(LocalDateTime.now()); cancel.setSettleId(defaultSettleId);
tInsuranceSettleService.updateById(tInsuranceSettle); cancel.setCreateUesr(user.getId());
//推送EKP cancel.setCreateTime(LocalDateTime.now());
}else{ tInsuranceSettleCancelService.save(cancel);
TInsuranceSettle tInsuranceSettle = new TInsuranceSettle(); //新增新的结算信息
tInsuranceSettle.setInsDetailId(success.getId()); TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
tInsuranceSettle.setSettleType(success.getNewSettleType()); newInsuranceSettle.setInsDetailId(insuranceDetailId);
tInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING); newInsuranceSettle.setSettleType(newSettleType);
tInsuranceSettle.setEstimatePremium(success.getEstimatePremium()); newInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
tInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT); newInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
tInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT); newInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
tInsuranceSettle.setCreateTime(LocalDateTime.now()); newInsuranceSettle.setCreateTime(LocalDateTime.now());
tInsuranceSettleService.save(tInsuranceSettle); newInsuranceSettle.setActualPremium(success.getActualPremium());
//更新保单信息 tInsuranceSettleService.save(newInsuranceSettle);
updateWrapper.set(TInsuranceDetail::getDefaultSettleId,tInsuranceSettle.getId()); //更新预估费用为0.00
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,new BigDecimal("0.00"));
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,newInsuranceSettle.getId());
update(updateWrapper);
//推送新的结算信息
}
//变更为合并结算
if (CommonConstants.ZERO_INT == newSettleType){
//作废旧的结算信息
TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
cancel.setDeptNo(success.getOldDeptNo());
cancel.setInsDetailId(success.getId());
cancel.setSettleId(defaultSettleId);
cancel.setCreateUesr(user.getId());
cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancelService.save(cancel);
//新增新的结算信息
TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
newInsuranceSettle.setInsDetailId(insuranceDetailId);
newInsuranceSettle.setSettleType(newSettleType);
newInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
newInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
newInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
newInsuranceSettle.setCreateTime(LocalDateTime.now());
newInsuranceSettle.setActualPremium(success.getActualPremium());
tInsuranceSettleService.save(newInsuranceSettle);
//更新预估费用为新的预估费用
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium());
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,newInsuranceSettle.getId());
update(updateWrapper);
//推送新的结算信息 // TODO: 2022/8/2
}
}
//如果没有登记保费
if (BigDecimalUtils.isNullOrZero(actualPremium)){
//变更为单独结算
if (CommonConstants.ONE_INT == newSettleType){
//作废旧的结算信息
TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
cancel.setDeptNo(success.getOldDeptNo());
cancel.setInsDetailId(success.getId());
cancel.setSettleId(defaultSettleId);
cancel.setCreateUesr(user.getId());
cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancelService.save(cancel);
//推送至EKP // TODO: 2022/8/2
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,new BigDecimal("0.00"));
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,null);
update(updateWrapper);
}
//变更为合并结算
if (CommonConstants.ZERO_INT == newSettleType){
//作废旧的结算信息
TInsuranceSettleCancel cancel = new TInsuranceSettleCancel();
cancel.setDeptNo(success.getOldDeptNo());
cancel.setInsDetailId(success.getId());
cancel.setSettleId(defaultSettleId);
cancel.setCreateUesr(user.getId());
cancel.setCreateTime(LocalDateTime.now());
tInsuranceSettleCancelService.save(cancel);
//推送至EKP // TODO: 2022/8/2
TInsuranceSettle newInsuranceSettle = new TInsuranceSettle();
newInsuranceSettle.setInsDetailId(insuranceDetailId);
newInsuranceSettle.setSettleType(newSettleType);
newInsuranceSettle.setIsEstimatePush(CommonConstants.ZERO_INT);
newInsuranceSettle.setIsActualPush(CommonConstants.ZERO_INT);
newInsuranceSettle.setSettleHandleStatus(CommonConstants.ONE_STRING);
newInsuranceSettle.setCreateTime(LocalDateTime.now());
newInsuranceSettle.setActualPremium(success.getActualPremium());
tInsuranceSettleService.save(newInsuranceSettle);
//更新预估费用为新的预估费用
updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium());
updateWrapper.set(TInsuranceDetail :: getDefaultSettleId,newInsuranceSettle.getId());
update(updateWrapper);
//推送新的结算信息 // TODO: 2022/8/2
}
} }
} }
//如果旧项目为单独结算,且新项目也是单独结算,则更新项目编码,并发送至ekp
if(CommonConstants.ONE_INT == oldSettleType && CommonConstants.ONE_INT == newSettleType){
//updateWrapper.set(TInsuranceDetail ::getEstimatePremium,success.getEstimatePremium());
}
update(updateWrapper);
TInsuranceOperate insuranceOperate = new TInsuranceOperate(); TInsuranceOperate insuranceOperate = new TInsuranceOperate();
insuranceOperate.setInsuranceDetailId(success.getId()); insuranceOperate.setInsuranceDetailId(success.getId());
insuranceOperate.setCreateBy(user.getId()); insuranceOperate.setCreateBy(user.getId());
...@@ -3499,7 +3700,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -3499,7 +3700,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (StringUtils.isNotBlank(defaultSettleId)){ if (StringUtils.isNotBlank(defaultSettleId)){
//查询结算状态 //查询结算状态
LambdaQueryWrapper<TInsuranceSettle> insuranceSettleQuery = new LambdaQueryWrapper<>(); LambdaQueryWrapper<TInsuranceSettle> insuranceSettleQuery = new LambdaQueryWrapper<>();
insuranceSettleQuery.eq(TInsuranceSettle :: getInsDetailId,insuranceDetail.getId()); insuranceSettleQuery.eq(TInsuranceSettle :: getId,defaultSettleId);
TInsuranceSettle insuranceSettle = tInsuranceSettleService.getOne(insuranceSettleQuery); TInsuranceSettle insuranceSettle = tInsuranceSettleService.getOne(insuranceSettleQuery);
//当前结算状态为结算中时,不能变更结算项目 //当前结算状态为结算中时,不能变更结算项目
if (CommonConstants.TWO_STRING.equals(insuranceSettle.getSettleHandleStatus())){ if (CommonConstants.TWO_STRING.equals(insuranceSettle.getSettleHandleStatus())){
...@@ -3550,6 +3751,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -3550,6 +3751,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
} }
param.setOldSettleType(insuranceDetail.getSettleType()); param.setOldSettleType(insuranceDetail.getSettleType());
param.setDefaultSettleId(insuranceDetail.getDefaultSettleId()); param.setDefaultSettleId(insuranceDetail.getDefaultSettleId());
param.setActualPremium(insuranceDetail.getActualPremium());
param.setId(insuranceDetail.getId()); param.setId(insuranceDetail.getId());
successList.add(param); successList.add(param);
} }
......
...@@ -334,8 +334,11 @@ ...@@ -334,8 +334,11 @@
<if test="param.isOverdue != null"> <if test="param.isOverdue != null">
and detail.IS_OVERDUE = #{param.isOverdue} and detail.IS_OVERDUE = #{param.isOverdue}
</if> </if>
<if test="param.createTime != null and param.createTime.trim() != ''"> <if test="param.createStartTime != null and param.createStartTime.trim() != ''">
AND detail.CREATE_TIME = concat(#{param.createTime}, ' 00:00:00') AND detail.CREATE_TIME <![CDATA[ >= ]]> concat(#{param.createStartTime}, ' 00:00:00')
</if>
<if test="param.createEndTime != null and param.createEndTime.trim() != ''">
AND detail.CREATE_TIME <![CDATA[ <= ]]> concat(#{param.createEndTime}, ' 23:59:59')
</if> </if>
ORDER BY detail.CREATE_TIME DESC ORDER BY detail.CREATE_TIME DESC
</select> </select>
...@@ -412,8 +415,11 @@ ...@@ -412,8 +415,11 @@
<if test="param.isOverdue != null "> <if test="param.isOverdue != null ">
and detail.IS_OVERDUE = #{param.isOverdue} and detail.IS_OVERDUE = #{param.isOverdue}
</if> </if>
<if test="param.createTime != null and param.createTime.trim() != ''"> <if test="param.createStartTime != null and param.createStartTime.trim() != ''">
AND detail.CREATE_TIME = concat(#{param.createTime}, ' 00:00:00') AND detail.CREATE_TIME <![CDATA[ >= ]]> concat(#{param.createStartTime}, ' 00:00:00')
</if>
<if test="param.createEndTime != null and param.createEndTime.trim() != ''">
AND detail.CREATE_TIME <![CDATA[ <= ]]> concat(#{param.createEndTime}, ' 23:59:59')
</if> </if>
ORDER BY detail.CREATE_TIME DESC ORDER BY detail.CREATE_TIME DESC
</select> </select>
......
...@@ -1143,14 +1143,14 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap ...@@ -1143,14 +1143,14 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
if (socialFund.getUnitProvidengCardinal().compareTo(socialSet.getLowerLimit()) < CommonConstants.ZERO_INT) { if (socialFund.getUnitProvidengCardinal().compareTo(socialSet.getLowerLimit()) < CommonConstants.ZERO_INT) {
socialFund.setUnitProvidengCardinal(socialSet.getLowerLimit()); socialFund.setUnitProvidengCardinal(socialSet.getLowerLimit());
socialFund.setPersonalProvidentCardinal(socialSet.getLowerLimit()); socialFund.setPersonalProvidentCardinal(socialSet.getLowerLimit());
} else if (socialFund.getUnitPensionCardinal().compareTo(socialSet.getUpperLimit()) > CommonConstants.ZERO_INT) { } else if (socialFund.getUnitProvidengCardinal().compareTo(socialSet.getUpperLimit()) > CommonConstants.ZERO_INT) {
socialFund.setUnitProvidengCardinal(socialSet.getUpperLimit()); socialFund.setUnitProvidengCardinal(socialSet.getUpperLimit());
socialFund.setPersonalProvidentCardinal(socialSet.getUpperLimit()); socialFund.setPersonalProvidentCardinal(socialSet.getUpperLimit());
} }
//单边小数点处理逻辑 //单边小数点处理逻辑
if (Common.isNotNull(socialSet.getFundPayPoint())) { if (Common.isNotNull(socialSet.getFundPayPoint())) {
socialFund.setUnitFundSum(Common.formatMoneyForFund(BigDecimalUtils.safeMultiply(socialFund.getUnitProvidengCardinal(), socialFund.getUnitProvidentPer(), BigDecimal.valueOf(CommonConstants.ONE_OF_PERCENT.doubleValue())), Integer.valueOf(socialFund.getFundPayPoint()))); socialFund.setUnitFundSum(Common.formatMoneyForFund(BigDecimalUtils.safeMultiply(socialFund.getUnitProvidengCardinal(), socialFund.getUnitProvidentPer(), BigDecimal.valueOf(CommonConstants.ONE_OF_PERCENT.doubleValue())), Integer.parseInt(socialFund.getFundPayPoint())));
socialFund.setPersonalFundSum(Common.formatMoneyForFund(BigDecimalUtils.safeMultiply(socialFund.getPersonalProvidentCardinal(), socialFund.getPersonalProvidentPer(), BigDecimal.valueOf(CommonConstants.ONE_OF_PERCENT.doubleValue())), Integer.valueOf(socialFund.getFundPayPoint()))); socialFund.setPersonalFundSum(Common.formatMoneyForFund(BigDecimalUtils.safeMultiply(socialFund.getPersonalProvidentCardinal(), socialFund.getPersonalProvidentPer(), BigDecimal.valueOf(CommonConstants.ONE_OF_PERCENT.doubleValue())), Integer.parseInt(socialFund.getFundPayPoint())));
} }
} }
} }
......
...@@ -265,9 +265,9 @@ ...@@ -265,9 +265,9 @@
a.EMP_IDCARD, a.EMP_IDCARD,
a.EMP_TYPE, a.EMP_TYPE,
a.SETTLE_DOMAIN, a.SETTLE_DOMAIN,
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,
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,
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.UNIT_ID,
a.SETTLE_DOMAIN_FUND, a.SETTLE_DOMAIN_FUND,
a.SETTLE_DOMAIN_CODE_FUND, a.SETTLE_DOMAIN_CODE_FUND,
...@@ -418,10 +418,10 @@ ...@@ -418,10 +418,10 @@
AND a.SETTLE_DOMAIN = #{tSocialFundInfo.settleDomain} AND a.SETTLE_DOMAIN = #{tSocialFundInfo.settleDomain}
</if> </if>
<if test="tSocialFundInfo.settleDomainName != null and tSocialFundInfo.settleDomainName.trim() != ''"> <if test="tSocialFundInfo.settleDomainName != null and tSocialFundInfo.settleDomainName.trim() != ''">
AND a.SETTLE_DOMAIN_NAME = #{tSocialFundInfo.settleDomainName} AND (a.SETTLE_DOMAIN_NAME = #{tSocialFundInfo.settleDomainName} or a.SETTLE_DOMAIN_NAME_FUND = #{tSocialFundInfo.settleDomainName})
</if> </if>
<if test="tSocialFundInfo.unitName != null and tSocialFundInfo.unitName.trim() != ''"> <if test="tSocialFundInfo.unitName != null and tSocialFundInfo.unitName.trim() != ''">
AND a.UNIT_NAME = #{tSocialFundInfo.unitName} AND (a.UNIT_NAME = #{tSocialFundInfo.unitName} or a.UNIT_NAME_FUND = #{tSocialFundInfo.unitName})
</if> </if>
<if test="tSocialFundInfo.unitId != null and tSocialFundInfo.unitId.trim() != ''"> <if test="tSocialFundInfo.unitId != null and tSocialFundInfo.unitId.trim() != ''">
AND a.UNIT_ID = #{tSocialFundInfo.unitId} AND a.UNIT_ID = #{tSocialFundInfo.unitId}
...@@ -790,8 +790,9 @@ ...@@ -790,8 +790,9 @@
a.EMP_IDCARD, a.EMP_IDCARD,
a.EMP_TYPE, a.EMP_TYPE,
d.EMP_MOBILE, d.EMP_MOBILE,
a.UNIT_NAME, 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,
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,
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_PROVINCE,
d.ID_CARD_CITY, d.ID_CARD_CITY,
d.ID_CARD_TOWN, 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