fix: 82968 打包管理--字段和逻辑变动

This commit is contained in:
2024-03-25 11:17:26 +08:00
parent 95229a29df
commit f7da3211e7
@@ -346,6 +346,18 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
//是否还能再添加来款
isAdd(receivableAmount,paidAmount, payPaymentRecord.getAmountReceived());
break;
// 打包项目
case PayIncomeContractCommon.PROJECT_TYPE8:
PayPackCompany payPackCompany = payPackCompanyService.getById(payPaymentRecord.getProjectId());
if(Objects.isNull(payPackCompany)){
throw new JeroBootException("项目不存在,不可提交!");
}
receivableAmount = payPackCompany.getReceivableAmount();//应收
paidAmount = payPackCompany.getPaidAmount();//实收
//是否还能再添加来款
isAdd(receivableAmount,paidAmount, payPaymentRecord.getAmountReceived());
break;
default:break;
}
@@ -1157,6 +1169,29 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
//标协证书
case PayIncomeContractCommon.PROJECT_TYPE6:
throw new JeroBootException("标协证书类型不可编辑!");
// 打包项目
case PayIncomeContractCommon.PROJECT_TYPE8:
PayPackCompany payPackCompany = payPackCompanyService.getById(payPaymentRecord.getProjectId());
receivableAmount = payPackCompany.getReceivableAmount();//应收
paidAmount=payPackCompany.getPaidAmount().subtract(oldRecord.getAmountReceived()).setScale(2, BigDecimal.ROUND_HALF_UP);//实收-上次来款
noTaxAmount=payPackCompany.getPaidNoTaxAmount().subtract(oldRecord.getNoTaxAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);//实收-上次来款
tax=payPackCompany.getPaidTax().subtract(oldRecord.getTax()).setScale(2, BigDecimal.ROUND_HALF_UP);//实收-上次来款
//是否还能再添加来款
isAdd(receivableAmount,paidAmount, payPaymentRecord.getAmountReceived());
newPaidAmount =addPaidAmount(paidAmount,payPaymentRecord.getAmountReceived());//累加实收
inAccount = getInAccount(receivableAmount, newPaidAmount);//到账状态
tax = addPaidAmount(tax,payPaymentRecord.getTax());
noTaxAmount = addPaidAmount(noTaxAmount,payPaymentRecord.getNoTaxAmount());
payPackCompany.setPaidTax(tax);
payPackCompany.setPaidNoTaxAmount(noTaxAmount);
//更新主列表
payPackCompany.setPaidAmount(newPaidAmount);
payPackCompany.setInAccount(inAccount);
payPackCompanyService.updateById(payPackCompany);
break;
default:break;
}
payPaymentRecordMapper.updateById(payPaymentRecord);