Ver código fonte

提交全图监控

chenxiaofei 1 mês atrás
pai
commit
7ffd5a2b7c

+ 4 - 0
sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/model/dto/res/ContractTradeOrderInfo.java

@@ -153,4 +153,8 @@ public class ContractTradeOrderInfo implements Serializable {
      */
 
     private String salesmanPhone;
+    /**
+     * 签约价格
+     */
+    private BigDecimal signPrice;
 }

+ 22 - 8
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java

@@ -1840,20 +1840,32 @@ public class KwcContractTradeService {
         List<KwcContractTradeUnit> tradeUnits = kwcContractTradeUnitRepository.queryByEntIdAndUnitType(contractTradeOrderDto.getEntId(),
                 contractTradeOrderDto.getEntType());
         if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits)){
-            return Collections.emptyList();
+            return  List.of();
         }
-        Map<String, KwcContractTradeUnit> conTractTradeUnitMap =
-                tradeUnits.stream().collect(Collectors.toMap(x -> x.getContractId() +
-                        "_" + x.getUnitType(), Function.identity(),
-                (x, y) -> x));
         Set<Long> contractIds =
                 tradeUnits.stream().map(KwcContractTradeUnit::getContractId).collect(Collectors.toSet());
+
+        List<KwcContractTradeUnit> tradeUnits1 = kwcContractTradeUnitRepository.queryByContractIds(contractIds);
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits1)){
+            return List.of();
+        }
+        Map<String, KwcContractTradeUnit> conTractTradeUnitMap =
+                tradeUnits1.stream().collect(Collectors.toMap(x -> x.getContractId() +
+                                "_" + x.getUnitType(), Function.identity(),
+                        (x, y) -> x));
+        contractIds= tradeUnits1.stream()
+                .filter(x -> Objects.equals(x.getEntId(), LoginUserHolder.getEntId()) && Objects.equals(x.getUnitType(),
+                        2))
+                .map(KwcContractTradeUnit::getContractId)
+                .collect(Collectors.toSet());
         //查询商品信息
         List<KwcContractTradeGoods> kwcContractGoods = kwcContractTradeGoodsRepository.queryByContractIdsAndGoodsId(contractIds,
                 contractTradeOrderDto.getGoodsId());
         if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractGoods)){
             return Collections.emptyList();
         }
+        Map<Long, KwcContractTradeGoods> contractGoodsMap = kwcContractGoods.stream()
+                .collect(Collectors.toMap(KwcContractTradeGoods::getContractId,Function.identity(),(x,y)->x));
         //只查询已签约的
         Set<Long> contractIdList = kwcContractGoods.stream()
                 .filter(x->Objects.equals(x.getStatus(), ContractStatusEnum.SIGNED.getCode()))
@@ -1865,7 +1877,7 @@ public class KwcContractTradeService {
             return Collections.emptyList();
         }
         return kwcContractTrades.stream()
-                .map(x-> getContractTradeOrderInfo(x, conTractTradeUnitMap,contractTradeOrderDto.getEntType()))
+                .map(x-> getContractTradeOrderInfo(x, conTractTradeUnitMap,contractTradeOrderDto.getEntType(),contractGoodsMap))
                 .collect(Collectors.toList());
     }
     private static void checkParam(Long contractTradeOrderDto, Long contractTradeOrderDto1, Integer contractTradeOrderDto2) {
@@ -1881,7 +1893,7 @@ public class KwcContractTradeService {
     }
     @NotNull
     private static ContractTradeOrderInfo getContractTradeOrderInfo(KwcContractTrade c, Map<String,
-            KwcContractTradeUnit> conTractTradeUnitMap,Integer entType) {
+            KwcContractTradeUnit> conTractTradeUnitMap,Integer entType, Map<Long, KwcContractTradeGoods> contractGoodsMap) {
         ContractTradeOrderInfo contractTradeOrderInfo = new ContractTradeOrderInfo();
         contractTradeOrderInfo.setId(c.getId());
         KwcContractTradeUnit unit = conTractTradeUnitMap.getOrDefault(c.getId() + "_" + entType,
@@ -1893,7 +1905,7 @@ public class KwcContractTradeService {
         contractTradeOrderInfo.setTrading(c.getTrading());
         contractTradeOrderInfo.setStartTime(c.getStartTime());
         contractTradeOrderInfo.setEndTime(c.getEndTime());
-        contractTradeOrderInfo.setAmount(c.getAmount());
+        contractTradeOrderInfo.setAmount(Objects.isNull(c.getAmount()) ? new BigDecimal("-1") : c.getAmount());
         contractTradeOrderInfo.setPerformedAmount(c.getPerformedAmount());
         contractTradeOrderInfo.setSigningUrl(c.getSigningUrl());
         contractTradeOrderInfo.setSignedUrl(c.getSignedUrl());
@@ -1912,6 +1924,8 @@ public class KwcContractTradeService {
         contractTradeOrderInfo.setUnloadWay(c.getUnloadWay());
         contractTradeOrderInfo.setSalesmanId(c.getSalesmanId());
         contractTradeOrderInfo.setSalesmanPhone(c.getSalesmanPhone());
+        KwcContractTradeGoods kwcContractTradeGoods = contractGoodsMap.getOrDefault(c.getId(), new KwcContractTradeGoods());
+        contractTradeOrderInfo.setSignPrice(Objects.nonNull(kwcContractTradeGoods.getPrice())?kwcContractTradeGoods.getPrice():new BigDecimal("-1"));
         return contractTradeOrderInfo;
     }