|
@@ -78,27 +78,30 @@ public class ContractReturnMoneyServiceImpl implements ContractReturnMoneyServic
|
|
|
if(contractReturnMoney.getRelationList() != null && !contractReturnMoney.getRelationList().isEmpty()){
|
|
|
contractInvoiceRelationService.updateAmount(contractReturnMoney.getRelationList());
|
|
|
}
|
|
|
- for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
- Contract contract = contractService.selectByPrimaryKey(list.getContractId());
|
|
|
- if(StringUtils.isNotBlank(contract.getProjectId())) {
|
|
|
- projectService.calcProject(contract.getProjectId());
|
|
|
- projectService.updateProjectAmount(contract.getProjectId(),list.getContractId());
|
|
|
+ if(contractReturnMoney.getRelationList()!=null){
|
|
|
+ for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
+ Contract contract = contractService.selectByPrimaryKey(list.getContractId());
|
|
|
+ if(StringUtils.isNotBlank(contract.getProjectId())) {
|
|
|
+ projectService.calcProject(contract.getProjectId());
|
|
|
+ projectService.updateProjectAmount(contract.getProjectId(),list.getContractId());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
contractInvoiceService.updateAmountStatus(contractReturnMoney.getContractInvoiceId());
|
|
|
contractService.updateAmountStatus(contractReturnMoney.getContractId());
|
|
|
if(!"冲红".equals(contractReturnMoney.getBz())){
|
|
|
BigDecimal sum=BigDecimal.ZERO;
|
|
|
- for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
- sum=sum.add(list.getInvoiceAmount());
|
|
|
- }
|
|
|
- BigDecimal returnAmount=contractReturnMoney.getReturnAmount();
|
|
|
- for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
- //获取主项目和子项目
|
|
|
- contractReturnMoney.setReturnAmount(returnAmount.divide(sum,10, RoundingMode.HALF_UP).multiply(list.getInvoiceAmount()));
|
|
|
- contractReturnMoney.setContractId(list.getContractId());
|
|
|
- contractMessageService.addByReturnMoney(contractReturnMoney);
|
|
|
+ if(contractReturnMoney.getRelationList()!=null){
|
|
|
+ for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
+ sum=sum.add(list.getInvoiceAmount());
|
|
|
+ }
|
|
|
+ BigDecimal returnAmount=contractReturnMoney.getReturnAmount();
|
|
|
+ for(ContractInvoiceRelation list: contractReturnMoney.getRelationList()){
|
|
|
+ //获取主项目和子项目
|
|
|
+ contractReturnMoney.setReturnAmount(returnAmount.divide(sum,10, RoundingMode.HALF_UP).multiply(list.getInvoiceAmount()));
|
|
|
+ contractReturnMoney.setContractId(list.getContractId());
|
|
|
+ contractMessageService.addByReturnMoney(contractReturnMoney);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
return contractReturnMoney.getId();
|