Bladeren bron

提交新增合同文件校验

chenxiaofei 1 maand geleden
bovenliggende
commit
8f27b6bdf5

+ 9 - 5
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java

@@ -335,6 +335,10 @@ public class KwcContractTradeService {
                 }
             }
         }
+        KwcContractTrade kwcContractTrade = kwcContractTradeRepository.queryByContractNo(baseInfo.getContractCode());
+        if (Objects.nonNull(kwcContractTrade)) {
+            throw new SystemException("合同编号已存在!");
+        }
     }
 
     private static boolean hasDuplicateGoodsId(List<TradeGoodsInfoReqVo> goodsInfo) {
@@ -1135,15 +1139,15 @@ public class KwcContractTradeService {
 
 
         //根据父id查询补充合同id
+        Set<Long> contractIds  = Sets.newHashSet();
         List<KwcContractTrade> kwcContractTrades = kwcContractTradeRepository.queryByPid(req.getPid());
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractTrades)){
-            throw new BusinessException("没有补充合同");
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(kwcContractTrades)){
+            contractIds.addAll( kwcContractTrades.stream()
+                    .map(KwcContractTrade::getId)
+                    .collect(Collectors.toSet()));
         }
 
         //获取合同id
-        Set<Long> contractIds = kwcContractTrades.stream()
-                .map(KwcContractTrade::getId)
-                .collect(Collectors.toSet());
         contractIds.add(req.getPid());
         //查询标的信息
         //根据商品id查询标的信息和主合同

+ 6 - 0
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml

@@ -275,6 +275,12 @@
             and b.unit_type = 1
             and b.id = #{supplyEntId}
         </if>
+        <if test="allEnt != null and allEnt.size() > 0">
+            and a.ent_id in
+            <foreach collection="allEnt" separator="," open="(" close=")" item="item">
+                 #{item}
+            </foreach>
+        </if>
         order by a.create_time desc
     </select>
 </mapper>

+ 1 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtWaybillOrderTrack.java

@@ -68,7 +68,6 @@ public class KwtWaybillOrderTrack implements Serializable {
     private Integer delFlag;
 
     private static final long serialVersionUID = 1L;
-    @TableField(exist = false)
-    private String subBillIdAddressIdKey;
+
 
 }

+ 25 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtWaybillOrderTicketRepository.java

@@ -0,0 +1,25 @@
+package com.sckw.transport.repository;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.transport.dao.KwtWaybillOrderTicketMapper;
+import com.sckw.transport.model.KwtWaybillOrderTicket;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+import java.util.Set;
+
+/**
+ * @author :chenXiaoFei
+ * @version :1.0
+ * @description :
+ * @create :2025-11-17 09:25:00
+ */
+@Repository
+public class KwtWaybillOrderTicketRepository extends ServiceImpl<KwtWaybillOrderTicketMapper, KwtWaybillOrderTicket> {
+    public List<KwtWaybillOrderTicket> queryByAddressIds(Set<Long> addressIds) {
+        return list(Wrappers.<KwtWaybillOrderTicket>lambdaQuery()
+                .eq(KwtWaybillOrderTicket::getDelFlag,0)
+                .in(KwtWaybillOrderTicket::getWAddressId, addressIds)) ;
+    }
+}

+ 19 - 16
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderV1Service.java

@@ -124,6 +124,7 @@ public class KwtWaybillOrderV1Service {
     private final KwtLogisticsOrderGoodsRepository kwtLogisticsOrderGoodsRepository;
     private final KwtWaybillOrderSubtaskRepository kwtWaybillOrderSubtaskRepository;
     private final KwtLogisticsOrderRepository kwtLogisticsOrderRepository;
+    private final KwtWaybillOrderTicketRepository  kwtWaybillOrderTicketRepository;
     @Resource
     private StreamBridge streamBridge;
     @DubboReference(version = "1.0.0", group = "design", check = false)
@@ -2155,10 +2156,11 @@ public class KwtWaybillOrderV1Service {
                         .peek(a -> a.setWOrderIdAddressTypeKey(a.getWOrderId() + CommonConstants.UNDERSCORE + a.getAddressType()))
                         .collect(Collectors.toMap(KwtWaybillOrderAddress::getWOrderIdAddressTypeKey, Function.identity(), (k1, k2) -> k1));
                 //查询运单状态信息
-                List<KwtWaybillOrderTrack> tracks =  kwtWaybillOrderTrackRepository.queryByAddressIds(addressIds);
+                //List<KwtWaybillOrderTrack> tracks =  kwtWaybillOrderTrackRepository.queryByAddressIds(addressIds);
+                List<KwtWaybillOrderTicket> tracks = kwtWaybillOrderTicketRepository.queryByAddressIds(addressIds);
                 //地址id映射运单状态
-                Map<Long, KwtWaybillOrderTrack> addressIdAndTrackMap = tracks.stream()
-                        .collect(Collectors.toMap(KwtWaybillOrderTrack::getWAddressId, Function.identity(), (k1, k2) -> k1));
+                Map<Long, KwtWaybillOrderTicket> addressIdAndTrackMap = tracks.stream()
+                        .collect(Collectors.toMap(KwtWaybillOrderTicket::getWAddressId, Function.identity(), (k1, k2) -> k1));
                 RTruckRouteVo rTruckRouteVo = new RTruckRouteVo();
                 rTruckRouteVo.setTruckId(waybillOrder.getTruckId());
                 rTruckRouteVo.setTruckNo(waybillOrder.getTruckNo());
@@ -2171,7 +2173,7 @@ public class KwtWaybillOrderV1Service {
                 AtomicReference<Date> startTime = new AtomicReference<>();
                 AtomicReference<Date> unloadingTime = new AtomicReference<>();
                 addressList.forEach(a->{
-                    KwtWaybillOrderTrack kwtWaybillOrderTrack = addressIdAndTrackMap.get(a.getId());
+                    KwtWaybillOrderTicket kwtWaybillOrderTrack = addressIdAndTrackMap.get(a.getId());
                     if (Objects.equals(a.getAddressType(), AddressTypeEnum.SHIPMENT.getCode())){
                         startTime.set(kwtWaybillOrderTrack.getOperateTime());
                     }
@@ -2980,7 +2982,7 @@ public class KwtWaybillOrderV1Service {
         }
 
         // 查询运单相关的装卸货时间信息
-        Map<String, KwtWaybillOrderTrack> subBillIdAddressIdKeyAndOrderTrackMap = getStringKwtWaybillOrderTrackMap(addressIds);
+        Map<String, KwtWaybillOrderTicket> subBillIdAddressIdKeyAndOrderTrackMap = getStringKwtWaybillOrderTrackMap(addressIds);
 
         //更具物流订单查询商品
         List<KwtLogisticsOrderGoods> logisticsOrderGoods =
@@ -3031,16 +3033,17 @@ public class KwtWaybillOrderV1Service {
     }
 
     @NotNull
-    private Map<String, KwtWaybillOrderTrack> getStringKwtWaybillOrderTrackMap(Set<Long> addressIds) {
-        List<KwtWaybillOrderTrack> kwtWaybillOrderTracks = Lists.newArrayList();
+    private Map<String, KwtWaybillOrderTicket> getStringKwtWaybillOrderTrackMap(Set<Long> addressIds) {
+        List<KwtWaybillOrderTicket> kwtWaybillOrderTracks = Lists.newArrayList();
         if (CollectionUtils.isNotEmpty(addressIds)){
-             kwtWaybillOrderTracks = kwtWaybillOrderTrackRepository.queryByAddressIds(addressIds);
+            // kwtWaybillOrderTracks = kwtWaybillOrderTrackRepository.queryByAddressIds(addressIds);
+             kwtWaybillOrderTracks = kwtWaybillOrderTicketRepository.queryByAddressIds(addressIds);
         }
-        Map<String, KwtWaybillOrderTrack> subBillIdAddressIdKeyAndOrderTrackMap = Maps.newHashMap();
+        Map<String, KwtWaybillOrderTicket> subBillIdAddressIdKeyAndOrderTrackMap = Maps.newHashMap();
         if (CollectionUtils.isNotEmpty(kwtWaybillOrderTracks)){
             subBillIdAddressIdKeyAndOrderTrackMap =
-                    kwtWaybillOrderTracks.stream().peek(x->x.setSubBillIdAddressIdKey(x.getWSubtaskId()+"-"+x.getWAddressId()))
-                            .collect(Collectors.toMap(KwtWaybillOrderTrack::getSubBillIdAddressIdKey,
+                    kwtWaybillOrderTracks.stream()
+                            .collect(Collectors.toMap(x -> x.getWSubtaskId() + "-" + x.getWAddressId(),
                                     Function.identity(), (k1, k2) -> k1));
         }
         return subBillIdAddressIdKeyAndOrderTrackMap;
@@ -3095,7 +3098,7 @@ public class KwtWaybillOrderV1Service {
     @NotNull
     private static WaybillOrderResp getWaybillOrderResp(KwtWaybillOrderSubtask record, Map<Long, KwtWaybillOrder> finalWaybillOrderIdAndBillOrderMap,
                                                         Map<String, KwtLogisticsOrderUnit> finalLogOrderIdUnitTypeKeyAndUnitMap, Map<Long, KwtLogisticsOrderGoods> finalLogOrderIdAndGoodsIdMap, Map<Long, KwpGoods> kwpGoodsMap
-            , Map<String, KwtWaybillOrderAddress> finalSubOrderIdAddressTypeKeyAndAddressMap, Map<String, KwtWaybillOrderTrack> finalSubBillIdAddressIdKeyAndOrderTrackMap) {
+            , Map<String, KwtWaybillOrderAddress> finalSubOrderIdAddressTypeKeyAndAddressMap, Map<String, KwtWaybillOrderTicket> finalSubBillIdAddressIdKeyAndOrderTrackMap) {
         WaybillOrderResp waybillOrderResp = new WaybillOrderResp();
         KwtWaybillOrder billOrder = finalWaybillOrderIdAndBillOrderMap.getOrDefault(record.getWOrderId(),
                 new KwtWaybillOrder());
@@ -3133,14 +3136,14 @@ public class KwtWaybillOrderV1Service {
                 new KwtWaybillOrderAddress());
         waybillOrderResp.setUnloadingAddress(unloadingAdd.getDetailAddress());
 
-        KwtWaybillOrderTrack loadTrack =
+        KwtWaybillOrderTicket loadTrack =
                 finalSubBillIdAddressIdKeyAndOrderTrackMap.getOrDefault(record.getId() + "-" + loadingAdd.getId(),
-                new KwtWaybillOrderTrack());
+                new KwtWaybillOrderTicket());
 
         waybillOrderResp.setAcceptTime(DateUtils.format(record.getCreateTime(),DateUtils.DATE_TIME_PATTERN));
-        KwtWaybillOrderTrack unloadTrack =
+        KwtWaybillOrderTicket unloadTrack =
                 finalSubBillIdAddressIdKeyAndOrderTrackMap.getOrDefault(record.getId() + "-" + loadingAdd.getId(),
-                        new KwtWaybillOrderTrack());
+                        new KwtWaybillOrderTicket());
         waybillOrderResp.setLoadingTime(DateUtils.format(loadTrack.getOperateTime(),DateUtils.DATE_TIME_PATTERN));
         waybillOrderResp.setOffsiteTime(DateUtils.format(unloadTrack.getOperateTime(),DateUtils.DATE_TIME_PATTERN));
         waybillOrderResp.setStatus(String.valueOf(record.getStatus()));