Commit 242a25da authored by huyuchen's avatar huyuchen

生成收入接口修改

parent 8fcd515a
...@@ -154,6 +154,11 @@ public interface CommonConstants { ...@@ -154,6 +154,11 @@ public interface CommonConstants {
*/ */
int ZERO_INT = 0; int ZERO_INT = 0;
/**
* number 5000
*/
int FIVES_INT = 5000;
/** /**
* number 1 * number 1
*/ */
......
...@@ -1127,7 +1127,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -1127,7 +1127,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
try{ try{
updateInsuranceInfo(detail,settle); updateInsuranceInfo(detail,settle);
}catch (Exception e){ }catch (Exception e){
// todo 异常处理
log.error("收入数据同步处理失败:"+e); log.error("收入数据同步处理失败:"+e);
} }
...@@ -1332,8 +1331,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -1332,8 +1331,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
detail.setIsUse(CommonConstants.ZERO_INT); detail.setIsUse(CommonConstants.ZERO_INT);
detail.setUpdateTime(LocalDateTime.now()); detail.setUpdateTime(LocalDateTime.now());
successList.add(detail); successList.add(detail);
//生成收入数据
createInsuranceInfo(detail);
} }
} }
} }
...@@ -1612,6 +1609,14 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -1612,6 +1609,14 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
//可以改成批量更新 //可以改成批量更新
this.updateById(detail); this.updateById(detail);
detailList.add(detail); detailList.add(detail);
try {
if (detail.getBuyType() != CommonConstants.FOUR_INT) {
//生成收入数据
createInsuranceInfo(detail);
}
}catch (Exception e){
log.error("收入数据同步处理失败:"+e);
}
} }
} }
//操作记录 //操作记录
...@@ -3738,6 +3743,30 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -3738,6 +3743,30 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
.set(TInsuranceDetail :: getUpdateTime,LocalDateTime.now()); .set(TInsuranceDetail :: getUpdateTime,LocalDateTime.now());
//更新项目编码 //更新项目编码
update(updateWrapper); update(updateWrapper);
//更换项目更新收入
TInsuranceDetail income = getOne(lambdaQuery().getWrapper().eq(TInsuranceDetail::getId, success.getId()));
if (Common.isNotNull(income)) {
if (income.getBuyType() != CommonConstants.FOUR_INT) {
//判断是否存在当月的商险收入数据
TIncomeDetail incomeDetail = new TIncomeDetail();
incomeDetail.setSourceId(income.getId());
R<TIncomeDetailReturnVo> detailList = socialDaprUtils.getTIncomeDetailList(incomeDetail);
if (Common.isNotNull(detailList) && detailList.getCode() == CommonConstants.SUCCESS
&& detailList.getData().getDetailList().size() > 0) {
//原项目生成红冲数据
for (TIncomeDetail detail : detailList.getData().getDetailList()) {
TIncomeDetail detail1 = new TIncomeDetail();
BeanCopyUtils.copyProperties(detail,detail1);
detail1.setId(CommonConstants.NULL);
detail1.setRedData(CommonConstants.ONE_STRING);
detail1.setMoney(detail.getMoney().negate());
socialDaprUtils.createTIncomeDetail(detail1);
}
//新项目下生成收入数据
createInsuranceInfo(income);
}
}
}
//商险id //商险id
String insuranceDetailId = success.getId(); String insuranceDetailId = success.getId();
//旧结算信息id //旧结算信息id
...@@ -5938,8 +5967,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -5938,8 +5967,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (Common.isNotNull(settleDomain.getManageServerItem()) && settleDomain.getManageServerItem() if (Common.isNotNull(settleDomain.getManageServerItem()) && settleDomain.getManageServerItem()
.contains(CommonConstants.THREE_STRING)) { .contains(CommonConstants.THREE_STRING)) {
//预估模式 //预估模式
if (CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType())) { if (CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag())) {
if (CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag())) { if (CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType())) {
//预估模式只有按人次和人数收费 //预估模式只有按人次和人数收费
if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) { if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
isSum = 1; isSum = 1;
...@@ -5949,20 +5978,22 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -5949,20 +5978,22 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), settleDomain.getManagementFee().toString(), settleDomain.getManagementType(),
settleDomain.getManagementFee()); settleDomain.getManagementFee());
} }
}
} else {
BigDecimal gMoney = BigDecimal.ZERO;
if (CommonConstants.TWO_STRING.equals(settleDomain.getManagementType())) {
gMoney = settleDomain.getManagementFee();
} else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
gMoney = settleDomain.getManagementFee();
isSum = 2;
} else { } else {
gMoney = BigDecimalUtils.safeMultiply(insuranceDetail.getActualPremium(),settleDomain.getManagementFee()); BigDecimal gMoney = BigDecimal.ZERO;
} if (CommonConstants.TWO_STRING.equals(settleDomain.getManagementType())) {
if (!isExist || isSum ==2) { gMoney = settleDomain.getManagementFee();
createIncomeInsurance(insuranceDetail, settleDomain, CommonConstants.ONE_STRING, } else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), gMoney); gMoney = settleDomain.getManagementFee();
isSum = 2;
} else {
gMoney = BigDecimalUtils.safeMultiply(insuranceDetail.getActualPremium(),
settleDomain.getManagementFee().divide(new BigDecimal("100"),
CommonConstants.THREE_INT, BigDecimal.ROUND_HALF_UP));
}
if (!isExist || isSum == 2) {
createIncomeInsurance(insuranceDetail, settleDomain, CommonConstants.ONE_STRING,
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), gMoney);
}
} }
} }
} }
...@@ -5988,7 +6019,9 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap ...@@ -5988,7 +6019,9 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
money = settleDomain.getRiskFundFee(); money = settleDomain.getRiskFundFee();
isSum = 4; isSum = 4;
} else { } else {
money = BigDecimalUtils.safeMultiply(insuranceDetail.getActualPremium(), settleDomain.getRiskFundFee()); money = BigDecimalUtils.safeMultiply(insuranceDetail.getActualPremium(),
settleDomain.getRiskFundFee().divide(new BigDecimal("100"),
CommonConstants.THREE_INT, BigDecimal.ROUND_HALF_UP));
} }
if (!isExist || isSum == 4) { if (!isExist || isSum == 4) {
createIncomeInsurance(insuranceDetail, settleDomain, CommonConstants.TWO_STRING, createIncomeInsurance(insuranceDetail, settleDomain, CommonConstants.TWO_STRING,
......
...@@ -287,14 +287,4 @@ public class TForecastLibraryController { ...@@ -287,14 +287,4 @@ public class TForecastLibraryController {
public void createForecastFundInfo() { public void createForecastFundInfo() {
tForecastLibraryService.createForecastFundInfo(); tForecastLibraryService.createForecastFundInfo();
} }
@PostMapping("/createFundInfo")
public void createFundInfo() {
tForecastLibraryService.createForecastFundInfo();
}
@PostMapping("/createSocialInfo")
public void createSocialInfo() {
tForecastLibraryService.createForecastInfo();
}
} }
...@@ -341,16 +341,6 @@ public class TPaymentInfoController { ...@@ -341,16 +341,6 @@ public class TPaymentInfoController {
tPaymentInfoService.createPaymentFundInfo(); tPaymentInfoService.createPaymentFundInfo();
} }
@PostMapping("/createFundInfo")
public void createFundInfo() {
tPaymentInfoService.createPaymentFundInfo();
}
@PostMapping("/createSocialInfo")
public void createSocialInfo() {
tPaymentInfoService.createPaymentSocialInfo();
}
/** /**
* @Description: 定时生成缴费库的收入数据 * @Description: 定时生成缴费库的收入数据
* @Author: huyc * @Author: huyc
......
...@@ -55,4 +55,6 @@ public interface TIncomeMapper extends BaseMapper<TIncome> { ...@@ -55,4 +55,6 @@ public interface TIncomeMapper extends BaseMapper<TIncome> {
List<TIncome> getTIncomeList(@Param("tIncome") TIncome tIncome); List<TIncome> getTIncomeList(@Param("tIncome") TIncome tIncome);
void updateIncomeById(@Param("list") List<TIncome> list);
} }
...@@ -4052,27 +4052,29 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T ...@@ -4052,27 +4052,29 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if (Common.isNotNull(settleDomain.getManageServerItem()) && settleDomain.getManageServerItem() if (Common.isNotNull(settleDomain.getManageServerItem()) && settleDomain.getManageServerItem()
.contains(CommonConstants.TWO_STRING)) { .contains(CommonConstants.TWO_STRING)) {
//预估模式 //预估模式
if (CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType())) { if (CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag())) {
if (CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag())) { if (CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType())) {
//预估模式只有按人次和人数收费 //预估模式只有按人次和人数收费
if (!isExist) { if (!isExist) {
createIncomeInsurance(library, settleDomain, CommonConstants.ONE_STRING, createIncomeInsurance(library, settleDomain, CommonConstants.ONE_STRING,
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), settleDomain.getManagementFee().toString(), settleDomain.getManagementType(),
settleDomain.getManagementFee()); settleDomain.getManagementFee());
} }
}
} else {
BigDecimal gMoney = BigDecimal.ZERO;
if (CommonConstants.TWO_STRING.equals(settleDomain.getManagementType())) {
gMoney = settleDomain.getManagementFee();
} else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
gMoney = settleDomain.getManagementFee();
} else { } else {
gMoney = BigDecimalUtils.safeMultiply(library.getSumAll(),settleDomain.getManagementFee()); BigDecimal gMoney = BigDecimal.ZERO;
} if (CommonConstants.TWO_STRING.equals(settleDomain.getManagementType())) {
if (!isExist) { gMoney = settleDomain.getManagementFee();
createIncomeInsurance(library, settleDomain, CommonConstants.ONE_STRING, } else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), gMoney); gMoney = settleDomain.getManagementFee();
} else {
gMoney = BigDecimalUtils.safeMultiply(library.getSumAll(),
settleDomain.getManagementFee().divide(new BigDecimal("100"),
CommonConstants.THREE_INT, BigDecimal.ROUND_HALF_UP));
}
if (!isExist) {
createIncomeInsurance(library, settleDomain, CommonConstants.ONE_STRING,
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(), gMoney);
}
} }
} }
} }
...@@ -4094,7 +4096,9 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T ...@@ -4094,7 +4096,9 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
} else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) { } else if (CommonConstants.THREE_STRING.equals(settleDomain.getManagementType())) {
money = settleDomain.getRiskFundFee(); money = settleDomain.getRiskFundFee();
} else { } else {
money = BigDecimalUtils.safeMultiply(library.getSumAll(), settleDomain.getRiskFundFee()); money = BigDecimalUtils.safeMultiply(library.getSumAll(),
settleDomain.getRiskFundFee().divide(new BigDecimal("100"),
CommonConstants.THREE_INT, BigDecimal.ROUND_HALF_UP));
} }
if (!isExist) { if (!isExist) {
createIncomeInsurance(library, settleDomain, CommonConstants.TWO_STRING, createIncomeInsurance(library, settleDomain, CommonConstants.TWO_STRING,
......
...@@ -279,6 +279,9 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl ...@@ -279,6 +279,9 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl
List<TIncome> list = baseMapper.selectList(Wrappers.<TIncome>query().lambda() List<TIncome> list = baseMapper.selectList(Wrappers.<TIncome>query().lambda()
.eq(TIncome::getSendStatus, CommonConstants.ZERO_STRING)); .eq(TIncome::getSendStatus, CommonConstants.ZERO_STRING));
String sendBack; String sendBack;
Map<String,Integer> map = new HashMap<>();
//收入更新
List<TIncome> updateList = new ArrayList<>();
for (TIncome income : list) { for (TIncome income : list) {
sendBack = this.getSendBack(income); sendBack = this.getSendBack(income);
income.setSendTime(new Date()); income.setSendTime(new Date());
...@@ -286,9 +289,52 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl ...@@ -286,9 +289,52 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl
income.setSendStatus(CommonConstants.ONE_STRING); income.setSendStatus(CommonConstants.ONE_STRING);
income.setSendMonth(DateUtil.addMonth(0)); income.setSendMonth(DateUtil.addMonth(0));
income.setEkpId(sendBack); income.setEkpId(sendBack);
updateList.add(income);
if (updateList.size() >= CommonConstants.FIVES_INT) {
baseMapper.updateIncomeById(updateList);
updateList.clear();
}
} else {
if (map.get(sendBack) > 0) {
int i = map.get(sendBack) + 1;
map.put(sendBack,i);
//单个异常超过十次,保存异常内容
if (i >= 10) {
baseMapper.updateIncomeById(updateList);
for (String key: map.keySet()) {
TSendEkpError error = new TSendEkpError();
error.setCreateTime(new Date());
error.setCreateDay(DateUtil.getThisDay());
error.setType(CommonConstants.FIVE_STRING);
error.setLinkId(income.getId());
error.setTitle(key);
error.setNums(map.get(key));
tSendEkpErrorService.saveError(error);
}
break;
}
TSendEkpError error = new TSendEkpError();
error.setCreateTime(new Date());
error.setCreateDay(DateUtil.getThisDay());
error.setType(CommonConstants.THREE_STRING);
error.setLinkId(income.getId());
error.setTitle(sendBack);
error.setNums(i);
tSendEkpErrorService.saveError(error);
} else {
map.put(sendBack,1);
TSendEkpError error = new TSendEkpError();
error.setCreateTime(new Date());
error.setCreateDay(DateUtil.getThisDay());
error.setType(CommonConstants.THREE_STRING);
error.setLinkId(income.getId());
error.setTitle(sendBack);
error.setNums(1);
tSendEkpErrorService.saveError(error);
}
} }
this.updateById(income);
} }
baseMapper.updateIncomeById(updateList);
} }
/** /**
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
<result property="sendStatus" column="SEND_STATUS"/> <result property="sendStatus" column="SEND_STATUS"/>
<result property="sendTime" column="SEND_TIME"/> <result property="sendTime" column="SEND_TIME"/>
<result property="sendMonth" column="SEND_MONTH"/> <result property="sendMonth" column="SEND_MONTH"/>
<result property="ekpId" column="EKP_ID"/>
</resultMap> </resultMap>
<resultMap id="incomeExportMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.IncomeExportVo"> <resultMap id="incomeExportMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.IncomeExportVo">
<result property="empName" column="EMP_NAME"/> <result property="empName" column="EMP_NAME"/>
...@@ -230,4 +231,42 @@ ...@@ -230,4 +231,42 @@
and <![CDATA[sql]]> and <![CDATA[sql]]>
</if> </if>
</sql> </sql>
<update id="updateIncomeById" parameterType="java.util.List">
update t_income
<trim prefix="set" suffixOverrides=",">
<trim prefix="SEND_STATUS =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.sendStatus!=null">
when ID=#{i.id} then #{i.sendStatus}
</if>
</foreach>
</trim>
<trim prefix="SEND_TIME =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.sendTime!=null">
when ID=#{i.id} then #{i.sendTime}
</if>
</foreach>
</trim>
<trim prefix="SEND_MONTH =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.sendMonth!=null">
when ID=#{i.id} then #{i.sendMonth}
</if>
</foreach>
</trim>
<trim prefix="EKP_ID =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.ekpId!=null">
when ID=#{i.id} then #{i.ekpId}
</if>
</foreach>
</trim>
</trim>
where
<foreach collection="list" separator="or" item="i" index="index" >
ID=#{i.id}
</foreach>
</update>
</mapper> </mapper>
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