|
|
@@ -245,7 +245,8 @@ public class ServiceProjectServiceImpl extends ServiceImpl<ServiceProjectMapper,
|
|
|
}
|
|
|
//检查明细总金额是否超过主表总金额
|
|
|
LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper = new LambdaQueryWrapper();
|
|
|
- itemLambdaQueryWrapper.eq(ServiceProjectItem::getPId, serviceProject.getId()).eq(ServiceProjectItem::getBranch,"N");
|
|
|
+ itemLambdaQueryWrapper.eq(ServiceProjectItem::getPId, serviceProject.getId())
|
|
|
+ .eq(ServiceProjectItem::getBranch,"N");
|
|
|
List<ServiceProjectItem> serviceProjectItems = serviceProjectItemMapper.selectList(itemLambdaQueryWrapper);
|
|
|
//检查金额是否超额
|
|
|
//checkMoney(serviceProject.getId(),serviceProjectItems);
|
|
|
@@ -258,6 +259,22 @@ public class ServiceProjectServiceImpl extends ServiceImpl<ServiceProjectMapper,
|
|
|
serviceProject.setMatMoney(totalMatMoney);
|
|
|
serviceProject.setCostReturn(totalCostReturn);
|
|
|
serviceProject.setSuperaddition(superaddition);
|
|
|
+ //更新未结算的金额
|
|
|
+ LambdaQueryWrapper<ServiceProjectItem> itemBalanceAmountWrapper = new LambdaQueryWrapper();
|
|
|
+ itemBalanceAmountWrapper.eq(ServiceProjectItem::getPId, serviceProject.getId())
|
|
|
+ .eq(ServiceProjectItem::getBranch,"N")
|
|
|
+ .eq(ServiceProjectItem::getStatus, 4);
|
|
|
+ List<ServiceProjectItem> itemBalanceAmount = serviceProjectItemMapper.selectList(itemBalanceAmountWrapper);
|
|
|
+ serviceProject.setBalanceAmount(itemBalanceAmount.stream().map(d -> d.getAmount() == null ? BigDecimal.ZERO : d.getAmount())
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
+ //更新已结算的金额
|
|
|
+ LambdaQueryWrapper<ServiceProjectItem> itemSettlmentAmountWrapper = new LambdaQueryWrapper();
|
|
|
+ itemSettlmentAmountWrapper.eq(ServiceProjectItem::getPId, serviceProject.getId())
|
|
|
+ .eq(ServiceProjectItem::getBranch,"N")
|
|
|
+ .eq(ServiceProjectItem::getStatus, 5);
|
|
|
+ List<ServiceProjectItem> itemSettlmentAmount = serviceProjectItemMapper.selectList(itemSettlmentAmountWrapper);
|
|
|
+ serviceProject.setSettlmentAmount(itemSettlmentAmount.stream().map(item -> item.getAmount() == null ? BigDecimal.ZERO : item.getAmount())
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
serviceProjectMapper.updateById(serviceProject);
|
|
|
}
|
|
|
|