Эх сурвалжийг харах

提交新增合同文件校验

chenxiaofei 1 сар өмнө
parent
commit
d156e5c849

+ 20 - 5
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractLogisticsService.java

@@ -1366,13 +1366,25 @@ public class KwcContractLogisticsService {
                     .collect(Collectors.toMap(k->k.getContractId() + "-" + k.getUnitType(), Function.identity(),
                             (x, y) -> x));
         }
+        //查询字典
+        List<SysDictResDto> sysDictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
+        Map<String, SysDictResDto> dictValueAndDictResDtoMap = new HashMap<>();
+        if (CollectionUtils.isNotEmpty(sysDictResDtos)){
+            //字典value映射字典
+            dictValueAndDictResDtoMap = sysDictResDtos.stream()
+                    .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity()));
 
-        return getQueryLogisticDetailResp(logistics, contractUniTypeAndUnitMap, kwcContractLogisticsGoods);
+        }
+
+        return getQueryLogisticDetailResp(logistics, contractUniTypeAndUnitMap, kwcContractLogisticsGoods,dictValueAndDictResDtoMap);
 
     }
 
     @NotNull
-    private QueryLogisticDetailResp getQueryLogisticDetailResp(KwcContractLogistics logistics, Map<String, KwcContractLogisticsUnit> contractUniTypeAndUnitMap, List<KwcContractLogisticsGoods> kwcContractLogisticsGoods) {
+    private QueryLogisticDetailResp getQueryLogisticDetailResp(KwcContractLogistics logistics,
+                                                               Map<String, KwcContractLogisticsUnit> contractUniTypeAndUnitMap,
+                                                               List<KwcContractLogisticsGoods> kwcContractLogisticsGoods,
+                                                               Map<String, SysDictResDto> dictValueAndDictResDtoMap) {
         QueryLogisticDetailResp queryLogisticListResp = new QueryLogisticDetailResp();
         queryLogisticListResp.setId(logistics.getId());
         queryLogisticListResp.setPid(logistics.getContractPid());
@@ -1418,7 +1430,7 @@ public class KwcContractLogisticsService {
                             .distinct()
                     .collect(Collectors.toList()));
             tradeGoodsInfos = kwcContractLogisticsGoods.stream()
-                    .map(x->getTradeGoodsInfo(x, kwpGoodsMap))
+                    .map(x->getTradeGoodsInfo(x, kwpGoodsMap,dictValueAndDictResDtoMap))
                     .collect(Collectors.toList());
         }
 
@@ -1427,11 +1439,14 @@ public class KwcContractLogisticsService {
         return queryLogisticListResp;
     }
 
-    private static QueryLogisticDetailResp.TradeGoodsInfo getTradeGoodsInfo(KwcContractLogisticsGoods x,Map<Long, KwpGoods> kwpGoodsMap) {
+    private static QueryLogisticDetailResp.TradeGoodsInfo getTradeGoodsInfo(KwcContractLogisticsGoods x,
+                                                                            Map<Long, KwpGoods> kwpGoodsMap,
+                                                                            Map<String, SysDictResDto> dictValueAndDictResDtoMap) {
         QueryLogisticDetailResp.TradeGoodsInfo tradeGoodsInfo = new QueryLogisticDetailResp.TradeGoodsInfo();
         tradeGoodsInfo.setGoodsId(x.getGoodsId());
         KwpGoods kwpGoods = kwpGoodsMap.getOrDefault(x.getGoodsId(), new KwpGoods());
-        tradeGoodsInfo.setGoodsName(kwpGoods.getName()+"/"+kwpGoods.getGoodsType()+"/"+kwpGoods.getSpec());
+        SysDictResDto sysDictResDto = dictValueAndDictResDtoMap.getOrDefault(kwpGoods.getGoodsType(), new SysDictResDto());
+        tradeGoodsInfo.setGoodsName(kwpGoods.getName()+"/"+sysDictResDto.getLabel()+"/"+kwpGoods.getSpec());
         tradeGoodsInfo.setAmount(x.getAmount());
         tradeGoodsInfo.setAmountUnit(x.getUnit());
         tradeGoodsInfo.setPrice(x.getPrice());

+ 18 - 4
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java

@@ -1384,6 +1384,17 @@ public class KwcContractTradeService {
 
         }
 
+        //查询字典
+        List<SysDictResDto> sysDictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
+        Map<String, SysDictResDto> dictValueAndDictResDtoMap = new HashMap<>();
+        if (CollectionUtils.isNotEmpty(sysDictResDtos)){
+            //字典value映射字典
+            dictValueAndDictResDtoMap = sysDictResDtos.stream()
+                    .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity()));
+
+         }
+
+
         ContractDetailResp contractDetailResp = new ContractDetailResp();
         contractDetailResp.setId(kwcContractTrade.getId());
         contractDetailResp.setPid(kwcContractTrade.getContractPid());
@@ -1396,8 +1407,9 @@ public class KwcContractTradeService {
         //标地信息
         if (CollectionUtils.isNotEmpty(tradeGoods)){
             Map<Long, KwpGoods> finalGoodsIdAndGoodsMap = goodsIdAndGoodsMap;
+            Map<String, SysDictResDto> finalDictValueAndDictResDtoMap = dictValueAndDictResDtoMap;
             List<ContractDetailResp.TradeGoodsInfo> tradeGoodsInfos = tradeGoods.stream()
-                    .map(t -> getTradeGoodsInfo(t, finalGoodsIdAndGoodsMap))
+                    .map(t -> getTradeGoodsInfo(t, finalGoodsIdAndGoodsMap, finalDictValueAndDictResDtoMap))
                     .collect(Collectors.toList());
             contractDetailResp.setGoodsInfo(tradeGoodsInfos);
         }
@@ -1409,12 +1421,14 @@ public class KwcContractTradeService {
     }
 
 
-    private static ContractDetailResp.TradeGoodsInfo getTradeGoodsInfo(KwcContractTradeGoods t, Map<Long,
-            KwpGoods> finalGoodsIdAndGoodsMap) {
+    private static ContractDetailResp.TradeGoodsInfo getTradeGoodsInfo(KwcContractTradeGoods t,
+                                                                       Map<Long, KwpGoods> finalGoodsIdAndGoodsMap,
+                                                                       Map<String, SysDictResDto> dictValueAndDictResDtoMap) {
         ContractDetailResp.TradeGoodsInfo tradeGoodsInfo = new ContractDetailResp.TradeGoodsInfo();
         tradeGoodsInfo.setGoodsId(t.getGoodsId());
         KwpGoods goods = finalGoodsIdAndGoodsMap.getOrDefault(t.getGoodsId(), new KwpGoods());
-        tradeGoodsInfo.setGoodsName(goods.getName()+"/"+goods.getGoodsType()+"/"+goods.getSpec());
+        SysDictResDto dictResDto = dictValueAndDictResDtoMap.getOrDefault(goods.getGoodsType(), new SysDictResDto());
+        tradeGoodsInfo.setGoodsName(goods.getName()+"/"+dictResDto.getLabel()+"/"+goods.getSpec());
         tradeGoodsInfo.setAmount(t.getAmount());
         tradeGoodsInfo.setPrice(t.getPrice());
         tradeGoodsInfo.setUnit(DictEnum.getLabel(DictTypeEnum.UNIT_TYPE.getType(),t.getUnit()));

+ 13 - 3
sckw-modules/sckw-product/src/main/java/com/sckw/product/service/KwpGoodsService.java

@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 import com.sckw.contract.api.RemoteContractService;
 import com.sckw.contract.api.model.vo.TradeContractGoodsDto;
 import com.sckw.core.common.enums.enums.DictTypeEnum;
@@ -66,6 +67,7 @@ import java.math.RoundingMode;
 import java.time.LocalDateTime;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -1415,20 +1417,28 @@ public class KwpGoodsService {
         if (org.apache.commons.collections4.CollectionUtils.isEmpty(goods)) {
             return new GoodsInfoResp();
         }
+        List<SysDictResDto> dictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
+        Map<String, SysDictResDto> valueAndDictResDtoMap = Maps.newHashMap();
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(dictResDtos)){
+           valueAndDictResDtoMap = dictResDtos.stream()
+                    .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity(), (v1, v2) -> v1));
+        }
         //组装商品参数
+        Map<String, SysDictResDto> finalValueAndDictResDtoMap = valueAndDictResDtoMap;
         List<GoodsInfoResp.GoodsInfo> goodsInfos = goods.stream()
                 .filter(e -> Objects.equals(e.getStatus(), GoodsStatusEnum.PUT_ON_SHELVES.getCode()))
-                .map(KwpGoodsService::getGoodsInfo)
+                .map(x->KwpGoodsService.getGoodsInfo(x, finalValueAndDictResDtoMap))
                 .collect(Collectors.toList());
         GoodsInfoResp goodsInfoResp = new GoodsInfoResp();
         goodsInfoResp.setGoodsInfoRespList(goodsInfos);
         return goodsInfoResp;
     }
 
-    private static GoodsInfoResp.GoodsInfo getGoodsInfo(KwpGoods x) {
+    private static GoodsInfoResp.GoodsInfo getGoodsInfo(KwpGoods x,Map<String, SysDictResDto> valueAndDictResDtoMap ) {
         GoodsInfoResp.GoodsInfo goodsInfo = new GoodsInfoResp.GoodsInfo();
         goodsInfo.setGoodsId(x.getId());
-        goodsInfo.setGoodsName(x.getName()+"/"+x.getGoodsType()+"/"+x.getSpec());
+        SysDictResDto dictResDto = valueAndDictResDtoMap.getOrDefault(x.getGoodsType(), new SysDictResDto());
+        goodsInfo.setGoodsName(x.getName()+"/"+dictResDto.getLabel()+"/"+x.getSpec());
         goodsInfo.setAmountUnit(x.getUnit());
         goodsInfo.setPriceUnit(x.getPriceUnit());
         return goodsInfo;

+ 1 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtWaybillOrderNodeRepository.java

@@ -29,6 +29,7 @@ public class KwtWaybillOrderNodeRepository extends ServiceImpl<KwtWaybillOrderNo
             wrapper.eq(KwtWaybillOrderNode::getWSubtaskId, wSubtaskId);
         }
         wrapper.orderByAsc(KwtWaybillOrderNode::getCreateTime);
+        wrapper.orderByAsc(KwtWaybillOrderNode::getId);
         return this.list(wrapper);
     }
 }

+ 17 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtLogisticsConsignmentService.java

@@ -50,6 +50,7 @@ import com.sckw.stream.enums.MessageEnum;
 import com.sckw.stream.model.SckwBusSum;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.EntCacheResDto;
+import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import com.sckw.transport.common.config.MessageUrlConfig;
 import com.sckw.transport.dao.*;
@@ -2279,15 +2280,26 @@ public class KwtLogisticsConsignmentService {
         //查询物流订单合同信息
         Map<Long, KwtLogisticsOrderContract> logOrderIdAndContractMap = getLongKwtLogisticsOrderContractMap(logOrderIdList);
 
+        //查询字典
+        List<SysDictResDto> sysDictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
+        Map<String, SysDictResDto> dictValueAndDictResDtoMap = new HashMap<>();
+        if (CollectionUtils.isNotEmpty(sysDictResDtos)){
+            //字典value映射字典
+            dictValueAndDictResDtoMap = sysDictResDtos.stream()
+                    .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity()));
+
+        }
+
         Map<String, KwtLogisticsOrderUnit> finalLogOrderIdAndUnitTypeKeyAndUnitMap = logOrderIdAndUnitTypeKeyAndUnitMap;
         Map<Long, KwtLogisticsOrderGoods> finalLogIdAndGoodsMap = logIdAndGoodsMap;
         Map<Long, KwpGoods> finalGoodsIdAndGoodsMap = goodsIdAndGoodsMap;
         Map<String, KwtLogisticsOrderAddress> finalLogisticsOrderIdAndUnitTypeKeyAndAddressMap = logisticsOrderIdAndUnitTypeKeyAndAddressMap;
         Map<Long, KwtLogisticsOrderContract> finalLogOrderIdAndContractMap = logOrderIdAndContractMap;
 
+        Map<String, SysDictResDto> finalDictValueAndDictResDtoMap = dictValueAndDictResDtoMap;
         List<LogisticsOrderResp> resps = records.stream()
                 .map(x ->getLogisticsOrderResp(x, finalLogOrderIdAndUnitTypeKeyAndUnitMap, finalLogIdAndGoodsMap
-                        , finalGoodsIdAndGoodsMap, finalLogisticsOrderIdAndUnitTypeKeyAndAddressMap, finalLogOrderIdAndContractMap))
+                        , finalGoodsIdAndGoodsMap, finalLogisticsOrderIdAndUnitTypeKeyAndAddressMap, finalLogOrderIdAndContractMap, finalDictValueAndDictResDtoMap))
                 .collect(Collectors.toList());
         if(org.apache.commons.lang3.StringUtils.isNotBlank(req.getConsignCompanyId())){
             resps = resps.stream()
@@ -2405,7 +2417,8 @@ public class KwtLogisticsConsignmentService {
                                                             Map<Long, KwtLogisticsOrderGoods> finalLogIdAndGoodsMap,
                                                             Map<Long, KwpGoods> finalGoodsIdAndGoodsMap,
                                                             Map<String, KwtLogisticsOrderAddress> finalLogisticsOrderIdAndUnitTypeKeyAndAddressMap,
-                                                            Map<Long, KwtLogisticsOrderContract> finalLogOrderIdAndContractMap) {
+                                                            Map<Long, KwtLogisticsOrderContract> finalLogOrderIdAndContractMap,
+                                                            Map<String, SysDictResDto> dictValueAndDictResDtoMap) {
         LogisticsOrderResp logisticsOrderResp = new LogisticsOrderResp();
         logisticsOrderResp.setLogisticsOrderId(String.valueOf(kwtLogisticsOrder.getId()));
         logisticsOrderResp.setLogisticsOrderNo(kwtLogisticsOrder.getLOrderNo());
@@ -2423,7 +2436,8 @@ public class KwtLogisticsConsignmentService {
         KwpGoods kwpGoods = finalGoodsIdAndGoodsMap.get(goods.getGoodsId());
         if (Objects.nonNull(kwpGoods)){
             logisticsOrderResp.setGoodsId(String.valueOf(goods.getGoodsId()));
-            logisticsOrderResp.setGoodsName(kwpGoods.getName()+"/"+kwpGoods.getGoodsType()+"/"+kwpGoods.getSpec());
+            SysDictResDto dictResDto = dictValueAndDictResDtoMap.getOrDefault(kwpGoods.getGoodsType(), new SysDictResDto());
+            logisticsOrderResp.setGoodsName(kwpGoods.getName()+"/"+dictResDto.getLabel()+"/"+kwpGoods.getSpec());
         }
         logisticsOrderResp.setTransportPrice(Objects.nonNull(kwtLogisticsOrder.getPrice()) ? kwtLogisticsOrder.getPrice().setScale(2,
                 RoundingMode.HALF_UP).toPlainString() : "0.00");

+ 18 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderV1Service.java

@@ -3029,12 +3029,25 @@ public class KwtWaybillOrderV1Service {
                              Function.identity(), (k1,
                                                                                                                                                         k2) -> k1));
         }
+        //查询字典
+        List<SysDictResDto> sysDictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
+        Map<String, SysDictResDto> dictValueAndDictResDtoMap = new HashMap<>();
+        if (CollectionUtils.isNotEmpty(sysDictResDtos)){
+            //字典value映射字典
+            dictValueAndDictResDtoMap = sysDictResDtos.stream()
+                    .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity()));
+
+        }
+
         Map<String, KwtWaybillOrderAddress> finalSubOrderIdAddressTypeKeyAndAddressMap = subOrderIdAddressTypeKeyAndAddressMap;
         Map<Long, KwtLogisticsOrderGoods> finalLogOrderIdAndGoodsIdMap = logOrderIdAndGoodsIdMap;
         Map<Long, KwtLogisticsOrder> finalLogIdAndOrderMap = logIdAndOrderMap;
+        Map<String, SysDictResDto> finalDictValueAndDictResDtoMap = dictValueAndDictResDtoMap;
         List<WaybillOrderResp> resps = records.stream()
                 .map(record -> getWaybillOrderResp(record, waybillOrderIdAndBillOrderMap,
-                        logOrderIdUnitTypeKeyAndUnitMap, finalLogOrderIdAndGoodsIdMap, kwpGoodsMap, finalSubOrderIdAddressTypeKeyAndAddressMap, subBillIdAddressIdKeyAndOrderTrackMap, finalLogIdAndOrderMap))
+                        logOrderIdUnitTypeKeyAndUnitMap, finalLogOrderIdAndGoodsIdMap,
+                        kwpGoodsMap, finalSubOrderIdAddressTypeKeyAndAddressMap, subBillIdAddressIdKeyAndOrderTrackMap,
+                        finalLogIdAndOrderMap, finalDictValueAndDictResDtoMap))
                 .collect(Collectors.toList());
 
         return PageDataResult.of(page,resps);
@@ -3206,7 +3219,8 @@ public class KwtWaybillOrderV1Service {
                                                         Map<Long, KwpGoods> kwpGoodsMap,
                                                         Map<String, KwtWaybillOrderAddress> finalSubOrderIdAddressTypeKeyAndAddressMap,
                                                         Map<String, KwtWaybillOrderTicket> finalSubBillIdAddressIdKeyAndOrderTrackMap,
-                                                        Map<Long, KwtLogisticsOrder> finalLogIdAndOrderMap) {
+                                                        Map<Long, KwtLogisticsOrder> finalLogIdAndOrderMap,
+                                                        Map<String, SysDictResDto> dictValueAndDictResDtoMap) {
         WaybillOrderResp waybillOrderResp = new WaybillOrderResp();
         KwtWaybillOrder billOrder = finalWaybillOrderIdAndBillOrderMap.getOrDefault(record.getWOrderId(),
                 new KwtWaybillOrder());
@@ -3233,7 +3247,8 @@ public class KwtWaybillOrderV1Service {
                 new KwtLogisticsOrderGoods());
         KwpGoods kwpGoods = kwpGoodsMap.get(goods.getGoodsId());
         if (Objects.nonNull(kwpGoods)){
-            waybillOrderResp.setGoodsName(kwpGoods.getName()+"/"+kwpGoods.getGoodsType()+"/"+kwpGoods.getSpec());
+            SysDictResDto sysDictResDto = dictValueAndDictResDtoMap.getOrDefault(kwpGoods.getGoodsType(), new SysDictResDto());
+            waybillOrderResp.setGoodsName(kwpGoods.getName()+"/"+sysDictResDto.getLabel()+"/"+kwpGoods.getSpec());
         }
         waybillOrderResp.setTaskNum(Objects.nonNull(billOrder.getEntrustAmount()) ?
                 billOrder.getEntrustAmount().setScale(2, RoundingMode.HALF_UP).toPlainString() : "0.00");