update 当确收收入的金额=待确收金额时,后一个阶段的确收日期 覆盖 预计到账日期字段。

This commit is contained in:
lijiarao
2024-02-26 10:31:20 +08:00
parent 485793a8ad
commit 6abc1d32af
2 changed files with 31 additions and 1 deletions
@@ -1,7 +1,10 @@
package com.jero.payment.service.impl;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.enums.PaymentStatusEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.config.StaticConfig;
import com.jero.contract.common.PayIncomeContractCommon;
@@ -30,6 +33,7 @@ import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -76,12 +80,20 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
private void updateConfirmAmount(PayConfirmPaymentRecord payConfirmPaymentRecord) {
String projectId = payConfirmPaymentRecord.getProjectId();
String projectType = payConfirmPaymentRecord.getProjectType();
//查询最新的记录
LambdaQueryWrapper<PayConfirmPaymentRecord> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PayConfirmPaymentRecord::getProjectId,projectId);
wrapper.orderByDesc(PayConfirmPaymentRecord::getCreateTime);
wrapper.last("limit 1");
PayConfirmPaymentRecord lastData = baseMapper.selectOne(wrapper);
Date paymentDate = lastData.getPaymentDate();
//获得金额的和
PayConfirmPaymentRecord confirmPaymentRecord = baseMapper.selectOneByProjectIdAndProjectType(projectId, projectType);
BigDecimal confirmAmount = confirmPaymentRecord.getAmountReceived();
BigDecimal noTaxAmount = confirmPaymentRecord.getNoTaxAmount();
BigDecimal tax = confirmPaymentRecord.getTax();
Integer affirmIncome;
Integer affirmIncome = null;
switch (projectType){
// 普通项目
@@ -97,6 +109,10 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
payCommonProject.setConfirmNoTaxAmount(noTaxAmount);
affirmIncome = getAffirmIncome(payCommonProject.getReceivableAmount(), confirmAmount);
payCommonProject.setAffirmIncome(affirmIncome);
//如果确收收入的金额=待确收金额时,当前填入的确收日期 覆盖 预计到账日期字段
if (Integer.valueOf(1).equals(affirmIncome)){
payCommonProject.setEstimatedArrivalDate(DateUtil.formatDate(paymentDate));
}
payCommonProjectMapper.updateById(payCommonProject);
break;
@@ -112,6 +128,10 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
payWorking.setConfirmNoTaxAmount(noTaxAmount);
affirmIncome = getAffirmIncome(payWorking.getReceivableAmount(), confirmAmount);
payWorking.setAffirmIncome(affirmIncome);
//如果确收收入的金额=待确收金额时,当前填入的确收日期 覆盖 预计到账日期字段
if (Integer.valueOf(1).equals(affirmIncome)){
payWorking.setEstimatedArrivalDate(DateUtil.formatDate(paymentDate));
}
payWorkingGroupSubItemMapper.updateById(payWorking);
break;
@@ -128,6 +148,10 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
meeting.setConfirmNoTaxAmount(noTaxAmount);
affirmIncome = getAffirmIncome(meeting.getAmountReceivable(), confirmAmount);
meeting.setAffirmIncome(affirmIncome);
//如果确收收入的金额=待确收金额时,当前填入的确收日期 覆盖 预计到账日期字段
if (Integer.valueOf(1).equals(affirmIncome)){
meeting.setEstimatedArrivalDate(paymentDate);
}
payMeetingSituationMapper.updateById(meeting);
break;
@@ -144,6 +168,10 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
member.setConfirmNoTaxAmount(noTaxAmount);
affirmIncome = getAffirmIncome(member.getAmountReceivable(), confirmAmount);
member.setAffirmIncome(affirmIncome);
//如果确收收入的金额=待确收金额时,当前填入的确收日期 覆盖 预计到账日期字段
if (Integer.valueOf(1).equals(affirmIncome)){
member.setEstimatedArrivalDate(DateUtil.formatDate(paymentDate));
}
payMemberProjectSubitemMapper.updateById(member);
break;
@@ -276,6 +276,7 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
* 删除
* @param payPaymentRecord
*/
@Override
public void delete(PayPaymentRecord payPaymentRecord){
if(!PaymentStatusEnum.REJECTED.getCode().equals(payPaymentRecord.getPaymentStatus())){
throw new JeroBootException("只有拒绝的才可删除");
@@ -290,6 +291,7 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
* 编辑
* @param payPaymentRecord
*/
@Override
public void edit(PayPaymentRecord payPaymentRecord){
if(!PaymentStatusEnum.REJECTED.getCode().equals(payPaymentRecord.getPaymentStatus())){
throw new JeroBootException("只有拒绝的才可编辑");