|
@@ -92,6 +92,11 @@ public class SalesContractServiceImpl extends ServiceImpl<SalesContractMapper, S
|
|
|
wrapper.orderByDesc("sc", SalesContract::getId);
|
|
|
Page<SalesContractVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
List<SalesContractVo> records = page.getRecords();
|
|
|
+ if(ObjectUtil.isEmpty(records)){
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+ List<Long> salesContractIds = records.stream().map(SalesContract::getId).collect(Collectors.toList());
|
|
|
+
|
|
|
//赋值客户名称
|
|
|
customerService.attributeAssign(records, SalesContractVo::getCustomerId, (item, customer) -> {
|
|
|
item.setCustomerName(customer.getName());
|
|
@@ -100,6 +105,20 @@ public class SalesContractServiceImpl extends ServiceImpl<SalesContractMapper, S
|
|
|
//计算未到账金额(未结清金额)
|
|
|
records.forEach(item -> item.setNotClaimAmount(item.getContractAmount().subtract(item.getClaimAmount())));
|
|
|
|
|
|
+ //赋值销售合同明细生产进度
|
|
|
+ List<SalesContractDetailsVo> salesContractDetailsVos = salesContractDetailsService.getProductionSchedule(
|
|
|
+ IWrapper.<SalesContractDetails>getWrapper()
|
|
|
+ .in("scd", SalesContractDetails::getSalesContractId, salesContractIds)
|
|
|
+ );
|
|
|
+ //赋值销售合同明细产品信息
|
|
|
+ productInfoService.attributeAssign(salesContractDetailsVos, SalesContractDetailsVo::getProductId, (item, productInfo) -> {
|
|
|
+ item.setProductName(productInfo.getName());
|
|
|
+ item.setProductSpec(productInfo.getSpec());
|
|
|
+ });
|
|
|
+ Map<Long, List<SalesContractDetailsVo>> scdMap = salesContractDetailsVos.stream()
|
|
|
+ .collect(Collectors.groupingBy(SalesContractDetails::getSalesContractId));
|
|
|
+ records.forEach(item->item.setContractDetailsList(scdMap.get(item.getId())));
|
|
|
+
|
|
|
return page;
|
|
|
}
|
|
|
|