xucaiqin 1 ヶ月 前
コミット
6f352fd91b
21 ファイル変更602 行追加523 行削除
  1. 17 0
      sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/RemoteContractService.java
  2. 20 0
      sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/feign/TradeOrderApi.java
  3. 26 0
      sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/model/TradeOrderPara.java
  4. 47 0
      sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/model/TradeOrderVo.java
  5. 1 1
      sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/EntCacheResDto.java
  6. 1 1
      sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/KwsEnterpriseResDto.java
  7. 3 0
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dao/KwcContractTradeMapper.java
  8. 10 0
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dubbo/RemoteContractServiceImpl.java
  9. 186 164
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java
  10. 26 0
      sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml
  11. 4 0
      sckw-modules/sckw-order/src/main/java/com/sckw/order/dao/KwoTradeOrderMapper.java
  12. 0 4
      sckw-modules/sckw-order/src/main/java/com/sckw/order/dubbo/TradeOrderInfoServiceImpl.java
  13. 26 0
      sckw-modules/sckw-order/src/main/java/com/sckw/order/feign/TradeOrderApiImpl.java
  14. 14 1
      sckw-modules/sckw-order/src/main/java/com/sckw/order/model/dto/TradeOrderListSelectDTO.java
  15. 133 280
      sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTradeOrderService.java
  16. 65 59
      sckw-modules/sckw-order/src/main/resources/mapper/KwoTradeOrderMapper.xml
  17. 5 0
      sckw-modules/sckw-product/src/main/java/com/sckw/product/model/vo/res/GoodsEntInfo.java
  18. 10 7
      sckw-modules/sckw-product/src/main/java/com/sckw/product/service/KwpGoodsService.java
  19. 2 2
      sckw-modules/sckw-system/src/main/java/com/sckw/system/model/pojo/FindPojoParam.java
  20. 2 3
      sckw-modules/sckw-system/src/main/java/com/sckw/system/model/vo/req/EntFindPageReqVo.java
  21. 4 1
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

+ 17 - 0
sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/RemoteContractService.java

@@ -76,6 +76,15 @@ public interface RemoteContractService {
      */
     TradeContractGoodsDto queryTradeContractNew(Long entId, Long goodsId, LocalDateTime time);
 
+    /**
+     * 查询签约的商品
+     *
+     * @param entId
+     * @param time
+     * @return
+     */
+    List<Long> querySignTradeContract(Long entId, LocalDateTime time);
+
     /**
      * 查询物流合同信息
      */
@@ -85,4 +94,12 @@ public interface RemoteContractService {
      * 查询贸易合同信息
      */
     List<ContractTradeOrderInfo> queryContractTradeOrder(ContractTradeOrderDto contractTradeOrderDto);
+
+    /**
+     * 查询合同关联的商品信息
+     *
+     * @param contractId
+     * @return
+     */
+    List<Long> queryTradeContractInfo(Long contractId);
 }

+ 20 - 0
sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/feign/TradeOrderApi.java

@@ -0,0 +1,20 @@
+package com.sckw.order.api.feign;
+
+import com.sckw.order.api.model.TradeOrderPara;
+import com.sckw.order.api.model.TradeOrderVo;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+
+import java.util.List;
+
+/**
+ * @author xucaiqin
+ * @date 2025-12-01 15:26:28
+ */
+@FeignClient(name = "sckw-order-ai", contextId = "tradeOrderApi")
+public interface TradeOrderApi {
+
+    @GetMapping(value = "/trade/order/get")
+    List<TradeOrderVo> queryTradeOrder(TradeOrderPara tradeOrderPara);
+
+}

+ 26 - 0
sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/model/TradeOrderPara.java

@@ -0,0 +1,26 @@
+package com.sckw.order.api.model;
+
+import jakarta.validation.constraints.NotNull;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+@Getter
+@Setter
+@ToString
+public class TradeOrderPara implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 6909518527687999256L;
+    @NotNull(message = "开始时间不能为空")
+    private LocalDateTime startTime;
+    @NotNull(message = "开始时间不能为空")
+    private LocalDateTime endTime;
+
+    private List<Long> entId;
+}

+ 47 - 0
sckw-modules-api/sckw-order-api/src/main/java/com/sckw/order/api/model/TradeOrderVo.java

@@ -0,0 +1,47 @@
+package com.sckw.order.api.model;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Getter
+@Setter
+@ToString
+public class TradeOrderVo implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 6909518527687999256L;
+    private Integer status;
+    private String statusLabel;
+    @JsonProperty("tOrderNo")
+    private String tOrderNo;
+    /**
+     * 采购企业
+     */
+    private String buyEntName;
+    /**
+     * 供应企业
+     */
+    private String sellEntName;
+    private String goodsName;
+    private String goodsType;
+    private String goodsTypeLabel;
+    private BigDecimal unitPrice;
+    private Integer unit;
+    private String unitLabel;
+    private BigDecimal amount;
+    private BigDecimal price;
+    private BigDecimal loadAmount;
+    private BigDecimal unloadAmount;
+    private Integer chargeType;
+    private String chargeTypeLabel;
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime createTime;
+}

+ 1 - 1
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/EntCacheResDto.java

@@ -139,5 +139,5 @@ public class EntCacheResDto implements Serializable {
      * 专属客户经理(用户ID)
      */
     private Long manager;
-
+    private String website;
 }

+ 1 - 1
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/KwsEnterpriseResDto.java

@@ -166,6 +166,6 @@ public class KwsEnterpriseResDto implements Serializable {
      * 主营业务
      */
     private String business;
-
+    private String website;
 
 }

+ 3 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dao/KwcContractTradeMapper.java

@@ -60,6 +60,9 @@ public interface KwcContractTradeMapper extends BaseMapper<KwcContractTrade> {
      * @return
      */
     TradeContractGoodsDto queryNewSignPrice(@Param("entId") Long entId, @Param("goodsId") Long goodsId, @Param("time")LocalDateTime time);
+    List<Long> querySignTradeContract(@Param("entId") Long entId,  @Param("time")LocalDateTime time);
+
+    List<Long> selectByContract(@Param("contractId") Long contractId);
 }
 
 

+ 10 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dubbo/RemoteContractServiceImpl.java

@@ -279,6 +279,11 @@ public class RemoteContractServiceImpl implements RemoteContractService {
         return kwcContractTradeMapper.queryNewSignPrice(entId, goodsId, time);
     }
 
+    @Override
+    public List<Long> querySignTradeContract(Long entId, LocalDateTime time) {
+        return kwcContractTradeMapper.querySignTradeContract(entId, time);
+    }
+
     @Override
     public List<ContractLogisticsOrderResDto> queryContractLogisticsOrder(LogisticsOrderDto logisticsOrderDto) {
         log.info("查询物流合同请求:{}", JSON.toJSONString(logisticsOrderDto));
@@ -293,6 +298,11 @@ public class RemoteContractServiceImpl implements RemoteContractService {
         return kwcContractTradeService.queryContractTradeOrder(contractTradeOrderDto);
     }
 
+    @Override
+    public List<Long> queryTradeContractInfo(Long contractId) {
+        return kwcContractTradeService.queryTradeContractInfo(contractId);
+    }
+
 
     private ContractCommonInfoResDto fillContractLogistics(KwcContractLogistics kwcContractLogistics) {
         ContractCommonInfoResDto contractCommonInfoResDto = new ContractCommonInfoResDto();

+ 186 - 164
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java

@@ -40,7 +40,6 @@ import com.sckw.core.web.response.result.PageDataResult;
 import com.sckw.excel.utils.ExcelUtil;
 import com.sckw.order.api.dubbo.TradeOrderInfoService;
 import com.sckw.order.api.model.ContractSignCompletedParam;
-import com.sckw.order.api.model.OrderDetailVo;
 import com.sckw.order.api.model.TradeOrderContractVo;
 import com.sckw.product.api.dubbo.GoodsInfoService;
 import com.sckw.product.api.model.KwpGoods;
@@ -48,7 +47,10 @@ import com.sckw.stream.enums.MessageEnum;
 import com.sckw.stream.model.UserInfo;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.RemoteUserService;
-import com.sckw.system.api.model.dto.res.*;
+import com.sckw.system.api.model.dto.res.EntCacheResDto;
+import com.sckw.system.api.model.dto.res.EntTypeResDto;
+import com.sckw.system.api.model.dto.res.SysDictResDto;
+import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import com.sckw.transport.api.dubbo.TransportRemoteService;
 import com.sckw.transport.api.model.vo.RWaybillSubOrderVo;
 import jakarta.servlet.http.HttpServletResponse;
@@ -119,35 +121,51 @@ public class KwcContractTradeService {
     @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
     private TransportRemoteService transportRemoteService;
 
-    /**销售合同*/
+    /**
+     * 销售合同
+     */
     @Value(value = "${jumpUrl.saleSendContract}")
     private String saleSendContract;
 
-    /**采购合同*/
+    /**
+     * 采购合同
+     */
     @Value(value = "${jumpUrl.purchaseSendContract}")
     private String purchaseSendContract;
 
-    /**托运合同*/
+    /**
+     * 托运合同
+     */
     @Value(value = "${jumpUrl.consignmentSendContract}")
     private String consignmentSendContract;
 
-    /**承运合同*/
+    /**
+     * 承运合同
+     */
     @Value(value = "${jumpUrl.acceptanceSendContract}")
     private String acceptanceSendContract;
 
-    /**app销售合同*/
+    /**
+     * app销售合同
+     */
     @Value(value = "${jumpUrl.appSaleSendContract}")
     private String appSaleSendContract;
 
-    /**app采购合同*/
+    /**
+     * app采购合同
+     */
     @Value(value = "${jumpUrl.appPurchaseSendContract}")
     private String appPurchaseSendContract;
 
-    /**app托运合同*/
+    /**
+     * app托运合同
+     */
     @Value(value = "${jumpUrl.appConsignmentSendContract}")
     private String appConsignmentSendContract;
 
-    /**app承运合同*/
+    /**
+     * app承运合同
+     */
     @Value(value = "${jumpUrl.appAcceptanceSendContract}")
     private String appAcceptanceSendContract;
 
@@ -183,8 +201,8 @@ public class KwcContractTradeService {
      * @author: czh
      * @date: 2023/7/18
      */
-    private List<QueryListResVo> getQueryListResVos(List<QueryListResDto> queryListResDtos,Map<Long,
-            List<KwcContractTradeGoods>> contractIdGoodsIdKeyAndGoodsMap,Map<String, KwcContractTradeUnit> contractUnitTypeKeyAndUnitMap ) {
+    private List<QueryListResVo> getQueryListResVos(List<QueryListResDto> queryListResDtos, Map<Long,
+            List<KwcContractTradeGoods>> contractIdGoodsIdKeyAndGoodsMap, Map<String, KwcContractTradeUnit> contractUnitTypeKeyAndUnitMap) {
         Map<Long, UserCacheResDto> longUserCacheResDtoMap = new HashMap<>(8);
         List<Long> initiateByList = queryListResDtos.stream().map(QueryListResDto::getInitiateBy).toList();
         if (CollectionUtils.isNotEmpty(initiateByList)) {
@@ -201,9 +219,9 @@ public class KwcContractTradeService {
                 queryListResVo.setProvideEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
                 queryListResVo.setPurchaseEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
             }
-            if(Objects.equals(queryListResDto.getUnitType(),EntTypeEnum.SUPPLIER.getCode())){
+            if (Objects.equals(queryListResDto.getUnitType(), EntTypeEnum.SUPPLIER.getCode())) {
                 queryListResVo.setProvideEntId(String.valueOf(queryListResDto.getProvideEntId()));
-            }else if(Objects.equals(queryListResDto.getUnitType(),EntTypeEnum.PURCHASER.getCode())){
+            } else if (Objects.equals(queryListResDto.getUnitType(), EntTypeEnum.PURCHASER.getCode())) {
                 queryListResVo.setPurchaseEntId(String.valueOf(queryListResDto.getPurchaseEntId()));
             }
 
@@ -212,7 +230,7 @@ public class KwcContractTradeService {
                 queryListResVo.setInitiateName(userCacheResDto.getName());
                 queryListResVo.setInitiateEntName(Objects.isNull(userCacheResDto.getEntInfo()) ? "" : userCacheResDto.getEntInfo().getFirmName());
             }
-            if (MapUtils.isNotEmpty(contractUnitTypeKeyAndUnitMap)){
+            if (MapUtils.isNotEmpty(contractUnitTypeKeyAndUnitMap)) {
                 KwcContractTradeUnit kwcContractTradeUnit =
                         contractUnitTypeKeyAndUnitMap.getOrDefault(queryListResDto.getId() + "-" + EntTypeEnum.SUPPLIER.getCode()
                                 , new KwcContractTradeUnit());
@@ -235,9 +253,9 @@ public class KwcContractTradeService {
             queryListResVo.setAmount(queryListResDto.getAmount());
             queryListResVo.setPerformedAmount(queryListResDto.getPerformedAmount());
             BigDecimal performedAmountMoney = BigDecimal.ZERO;
-            if(MapUtils.isNotEmpty(contractIdGoodsIdKeyAndGoodsMap)) {
+            if (MapUtils.isNotEmpty(contractIdGoodsIdKeyAndGoodsMap)) {
                 List<KwcContractTradeGoods> contractTradeGoods = contractIdGoodsIdKeyAndGoodsMap.get(queryListResDto.getId());
-                if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(contractTradeGoods)){
+                if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(contractTradeGoods)) {
                     for (KwcContractTradeGoods goods : contractTradeGoods) {
                         BigDecimal performedAmount = goods.getPerformedAmount() != null ? goods.getPerformedAmount() : BigDecimal.ZERO;
                         BigDecimal price = goods.getPrice() != null ? goods.getPrice() : BigDecimal.ZERO;
@@ -245,11 +263,11 @@ public class KwcContractTradeService {
                     }
                 }
             }
-            queryListResVo.setPerformedAmountMoney( performedAmountMoney);
-            if(Objects.nonNull(queryListResVo.getEndTime())) {
+            queryListResVo.setPerformedAmountMoney(performedAmountMoney);
+            if (Objects.nonNull(queryListResVo.getEndTime())) {
                 queryListResVo.setEndTime(DateUtils.getStartOfDay(queryListResVo.getEndTime()));
                 String endDate = DateUtils.format(queryListResVo.getEndTime(), DateUtils.DATE_PATTERN);
-                if (org.apache.commons.lang3.StringUtils.equals(endDate,"9999-12-30")){
+                if (org.apache.commons.lang3.StringUtils.equals(endDate, "9999-12-30")) {
                     queryListResVo.setEndTime(null);
                 }
             }
@@ -278,9 +296,9 @@ public class KwcContractTradeService {
         kwcContractTrade.setId(contactId);
         EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(LoginUserHolder.getEntId());
         if (Objects.nonNull(entCacheResDto) && StringUtils.isNotBlank(entCacheResDto.getEntTypes())) {
-            if (org.apache.commons.lang3.StringUtils.equals(entCacheResDto.getEntTypes(), String.valueOf(EntTypeEnum.SUPPLIER.getCode()))){
+            if (org.apache.commons.lang3.StringUtils.equals(entCacheResDto.getEntTypes(), String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
                 kwcContractTrade.setStatus(ContractStatusEnum.WAIT_APPROVE.getCode());
-            }else if (org.apache.commons.lang3.StringUtils.equals(entCacheResDto.getEntTypes(), String.valueOf(EntTypeEnum.PURCHASER.getCode()))){
+            } else if (org.apache.commons.lang3.StringUtils.equals(entCacheResDto.getEntTypes(), String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
                 kwcContractTrade.setStatus(ContractStatusEnum.SUBMIT.getCode());
             }
         }
@@ -291,7 +309,7 @@ public class KwcContractTradeService {
         }
 
         //保存交易合同商品信息
-        kwcContractTradeGoodsService.saveContractTradeGoods(contactId, goodsInfoList,baseInfo.getStartTime(),baseInfo.getEndTime());
+        kwcContractTradeGoodsService.saveContractTradeGoods(contactId, goodsInfoList, baseInfo.getStartTime(), baseInfo.getEndTime());
 
         //存单位信息
         kwcContractTradeUnitService.saveContractTradeUnit(contactId, baseInfo);
@@ -379,7 +397,7 @@ public class KwcContractTradeService {
         kwcContractTrade.setStartTime(baseInfo.getStartTime());
         if (Objects.nonNull(baseInfo.getEndTime())) {
             kwcContractTrade.setEndTime(DateUtils.getEndOfDay(baseInfo.getEndTime()));
-        }else {
+        } else {
             LocalDate localDate = LocalDate.of(9999, 12, 30);
             Date date1 = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
             kwcContractTrade.setEndTime(DateUtils.getEndOfDay(date1));
@@ -553,7 +571,7 @@ public class KwcContractTradeService {
             }
             fileList.add(JSON.toJSONString(jsonArray));
         }
-        
+
         contractTradeDetailResVo.setContractFile(fileList.stream().filter(StringUtils::isNotBlank).toList());
 
         //流程记录
@@ -673,12 +691,11 @@ public class KwcContractTradeService {
                     purchaseSendContract,
                     appPurchaseSendContract);
         } catch (Exception e) {
-           log.error("合同签约流程已发起消息出错:", e);
+            log.error("合同签约流程已发起消息出错:", e);
         }
     }
 
 
-
     /**
      * @param id 合同id
      * @desc: 更新合同为发起
@@ -741,9 +758,9 @@ public class KwcContractTradeService {
                 }
             }
         }
-        if (Objects.nonNull(entTypeResDto) && Objects.equals(entTypeResDto.getType(), EntTypeEnum.SUPPLIER.getCode())){
+        if (Objects.nonNull(entTypeResDto) && Objects.equals(entTypeResDto.getType(), EntTypeEnum.SUPPLIER.getCode())) {
             kwcContractTrade.setStatus(ContractStatusEnum.WAIT_APPROVE.getCode());
-        }else if (Objects.nonNull(entTypeResDto) && Objects.equals(entTypeResDto.getType(), EntTypeEnum.PURCHASER.getCode())){
+        } else if (Objects.nonNull(entTypeResDto) && Objects.equals(entTypeResDto.getType(), EntTypeEnum.PURCHASER.getCode())) {
             kwcContractTrade.setStatus(ContractStatusEnum.SUBMIT.getCode());
         }
         kwcContractTrade.setAmount(amountTotal);
@@ -906,7 +923,7 @@ public class KwcContractTradeService {
             throw new SystemException(HttpStatus.SUCCESS_CODE, "暂无数据,请确认!");
         }
 
-        List<QueryListResVo> list = getQueryListResVos(queryListResDtos,null,null);
+        List<QueryListResVo> list = getQueryListResVos(queryListResDtos, null, null);
         List<TradeListExport> dataList = BeanUtils.copyToList(list, TradeListExport.class);
         ExcelUtil.downData(response, TradeListExport.class, dataList);
     }
@@ -927,7 +944,7 @@ public class KwcContractTradeService {
         if (CollectionUtils.isEmpty(queryListResDtos)) {
             return Collections.emptyList();
         }
-        return getQueryListResVos(queryListResDtos,null,null);
+        return getQueryListResVos(queryListResDtos, null, null);
     }
 
 
@@ -1023,7 +1040,7 @@ public class KwcContractTradeService {
             authEntIdList.addAll(ids);
         }
 
-        List<QueryListResDto> queryListResDtos = kwcContractTradeMapper.queryTradeList(reqVo,authEntIdList);
+        List<QueryListResDto> queryListResDtos = kwcContractTradeMapper.queryTradeList(reqVo, authEntIdList);
         if (CollectionUtils.isEmpty(queryListResDtos)) {
             return PageHelperUtil.getPageResult(new PageInfo<>());
         }
@@ -1090,7 +1107,7 @@ public class KwcContractTradeService {
             authEntIdList.addAll(ids);
         }
 
-        List<QueryListResDto> queryListResDtoList = kwcContractTradeMapper.queryTradeList(reqVo,authEntIdList);
+        List<QueryListResDto> queryListResDtoList = kwcContractTradeMapper.queryTradeList(reqVo, authEntIdList);
         if (CollectionUtils.isNotEmpty(queryListResDtoList)) {
             Map<Integer, List<QueryListResDto>> collect = queryListResDtoList.stream().collect(Collectors.groupingBy(QueryListResDto::getStatus));
             for (FindListGroupResVo findListGroupResVo : list) {
@@ -1123,7 +1140,7 @@ public class KwcContractTradeService {
             authEntIdList.addAll(ids);
         }
 
-        List<QueryListResDto> queryListResDtos = kwcContractTradeMapper.queryTradeList(reqVo,authEntIdList);
+        List<QueryListResDto> queryListResDtos = kwcContractTradeMapper.queryTradeList(reqVo, authEntIdList);
         if (CollectionUtils.isEmpty(queryListResDtos)) {
             throw new SystemException(HttpStatus.SUCCESS_CODE, "暂无数据,请确认!");
         }
@@ -1153,10 +1170,10 @@ public class KwcContractTradeService {
 
 
         //根据父id查询补充合同id
-        Set<Long> contractIds  = Sets.newHashSet();
+        Set<Long> contractIds = Sets.newHashSet();
         List<KwcContractTrade> kwcContractTrades = kwcContractTradeRepository.queryByPid(req.getPid());
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(kwcContractTrades)){
-            contractIds.addAll( kwcContractTrades.stream()
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(kwcContractTrades)) {
+            contractIds.addAll(kwcContractTrades.stream()
                     .map(KwcContractTrade::getId)
                     .collect(Collectors.toSet()));
         }
@@ -1166,7 +1183,7 @@ public class KwcContractTradeService {
         //查询标的信息
         //根据商品id查询标的信息和主合同
         List<KwcContractTradeGoods> kwcContractTradeGoods =
-                kwcContractTradeGoodsRepository.queryByConTractIdsGoodsIds(contractIds,goodsIds);
+                kwcContractTradeGoodsRepository.queryByConTractIdsGoodsIds(contractIds, goodsIds);
         //商品id映射商品信息(排除主合同查看是否存在补充合同的商品信息)
         Map<Long, KwcContractTradeGoods> goodsIdAndGoodsMap = kwcContractTradeGoods.stream()
                 .filter(x -> !Objects.equals(x.getContractId(), req.getPid()))
@@ -1174,24 +1191,24 @@ public class KwcContractTradeService {
         //过滤主合同查看的标信息 , 合同id商品id组成唯一key映射商品信息
         Map<String, KwcContractTradeGoods> contractTradeKeyAndGoodsMap =
                 kwcContractTradeGoods.stream().filter(x -> Objects.equals(x.getContractId(), req.getPid()))
-                .peek(x -> x.setContractIdGoodsIdKey(x.getContractId() + "-" + x.getGoodsId()))
-                .collect(Collectors.toMap(KwcContractTradeGoods::getContractIdGoodsIdKey, Function.identity(), (x, y) -> x));
+                        .peek(x -> x.setContractIdGoodsIdKey(x.getContractId() + "-" + x.getGoodsId()))
+                        .collect(Collectors.toMap(KwcContractTradeGoods::getContractIdGoodsIdKey, Function.identity(), (x, y) -> x));
 
         //商品id映射交易商品信息
         List<KwcContractTradeGoods> saveOrUpdateTradeGoods = Lists.newArrayList();
         req.getGoodsInfo().forEach(g -> {
             KwcContractTradeGoods tradeGoods = goodsIdAndGoodsMap.get(g.getGoodsId());
-            if (Objects.isNull(tradeGoods)){
+            if (Objects.isNull(tradeGoods)) {
                 //作为新增对象
-                buildTradeGoods(req, g, contractTradeKeyAndGoodsMap, saveOrUpdateTradeGoods,contactId);
+                buildTradeGoods(req, g, contractTradeKeyAndGoodsMap, saveOrUpdateTradeGoods, contactId);
 
-            }else {
+            } else {
                 //如果不为空判断时间是否重叠 存在则报错
                 if (g.getEffectiveStartTime().after(tradeGoods.getStartTime()) && g.getEffectiveStartTime().before(tradeGoods.getEndTime())
-                        || (g.getEffectiveEntTime().after(tradeGoods.getStartTime()) && g.getEffectiveEntTime().before(tradeGoods.getEndTime()))){
-                    throw new BusinessException("商品:"+g.getGoodsName() +"时间重叠,只有先结束之前的补充合同,才能进行创建;");
+                        || (g.getEffectiveEntTime().after(tradeGoods.getStartTime()) && g.getEffectiveEntTime().before(tradeGoods.getEndTime()))) {
+                    throw new BusinessException("商品:" + g.getGoodsName() + "时间重叠,只有先结束之前的补充合同,才能进行创建;");
                 }
-                buildTradeGoods(req, g, contractTradeKeyAndGoodsMap, saveOrUpdateTradeGoods,contactId);
+                buildTradeGoods(req, g, contractTradeKeyAndGoodsMap, saveOrUpdateTradeGoods, contactId);
             }
         });
 
@@ -1200,7 +1217,7 @@ public class KwcContractTradeService {
 
     private static void buildTradeGoods(SupplyContractTradeReq req, SupplyContractTradeReq.TradeGoodsInfo g,
                                         Map<String, KwcContractTradeGoods> contractTradeKeyAndGoodsMap,
-                                        List<KwcContractTradeGoods> saveTradeGoods,long contactId) {
+                                        List<KwcContractTradeGoods> saveTradeGoods, long contactId) {
         Long userId = LoginUserHolder.getUserId();
         Date date = new Date();
         KwcContractTradeGoods saveSupplyTradeGoods = new KwcContractTradeGoods();
@@ -1223,7 +1240,7 @@ public class KwcContractTradeService {
 
         KwcContractTradeGoods tradeGoodsData =
                 contractTradeKeyAndGoodsMap.get(req.getPid() + "-" + g.getGoodsId());
-        if (Objects.nonNull(tradeGoodsData)){
+        if (Objects.nonNull(tradeGoodsData)) {
             KwcContractTradeGoods mainTradeGoods = new KwcContractTradeGoods();
             mainTradeGoods.setId(tradeGoodsData.getId());
             mainTradeGoods.setPrice(g.getPrice());
@@ -1233,7 +1250,7 @@ public class KwcContractTradeService {
         saveTradeGoods.add(saveSupplyTradeGoods);
     }
 
-    private void saveTradeContract(SupplyContractTradeReq req,long contactId) {
+    private void saveTradeContract(SupplyContractTradeReq req, long contactId) {
         SupplyContractTradeReq.TradeBaseInfo baseInfo = req.getBaseInfo();
         List<SupplyContractTradeReq.TradeGoodsInfo> goodsInfo = req.getGoodsInfo();
         Date date = new Date();
@@ -1282,27 +1299,27 @@ public class KwcContractTradeService {
     }
 
     private static void checkParams(SupplyContractTradeReq req) {
-        if (hasDuplicateGoodsIds(req.getGoodsInfo())){
-            throw new BusinessException( "标信息有重复");
+        if (hasDuplicateGoodsIds(req.getGoodsInfo())) {
+            throw new BusinessException("标信息有重复");
         }
         //判断时间大小
         boolean startTimeBefore = req.getGoodsInfo().stream()
                 .filter(t -> Objects.nonNull(t.getEffectiveStartTime()) && Objects.nonNull(req.getBaseInfo().getStartTime()))
                 .anyMatch(t -> t.getEffectiveStartTime().before(req.getBaseInfo().getStartTime()));
         if (startTimeBefore) {
-            throw new BusinessException( "标信息开始时间不能早于合同开始时间");
+            throw new BusinessException("标信息开始时间不能早于合同开始时间");
         }
         boolean endTimeAfter = req.getGoodsInfo().stream()
                 .filter(t -> Objects.nonNull(t.getEffectiveEntTime()) && Objects.nonNull(req.getBaseInfo().getEndTime()))
                 .anyMatch(t -> t.getEffectiveEntTime().after(req.getBaseInfo().getEndTime()));
-        if (endTimeAfter){
-            throw new BusinessException( "标信息结束时间不能晚于合同结束时间");
+        if (endTimeAfter) {
+            throw new BusinessException("标信息结束时间不能晚于合同结束时间");
         }
         boolean b = req.getGoodsInfo().stream()
                 .filter(t -> Objects.nonNull(t.getEffectiveEntTime()) && Objects.nonNull(t.getEffectiveStartTime()))
                 .anyMatch(t -> t.getEffectiveEntTime().before(t.getEffectiveStartTime()));
-        if (b){
-            throw new BusinessException( "标信息结束时间不能早于开始时间");
+        if (b) {
+            throw new BusinessException("标信息结束时间不能早于开始时间");
         }
     }
 
@@ -1341,22 +1358,22 @@ public class KwcContractTradeService {
         }
         //签约 (状态由带签约或者待审核变成签约)
         if (Objects.equals(req.getStatus(), ContractStatusEnum.SIGNED.getCode()) &&
-                Arrays.asList(ContractStatusEnum.SUBMIT.getCode(), ContractStatusEnum.WAIT_APPROVE.getCode(),ContractStatusEnum.CANNEL.getCode())
+                Arrays.asList(ContractStatusEnum.SUBMIT.getCode(), ContractStatusEnum.WAIT_APPROVE.getCode(), ContractStatusEnum.CANNEL.getCode())
                         .contains(kwcContractTrade.getStatus())) {
             updateKwcContractTrade.setStatus(ContractStatusEnum.SIGNED.getCode());
             updateKwcContractTrade.setSignTime(new Date());
         }
         //手动完结 (如果不传状态就表示手动完结) 如果当前状态是待签约或者待签约 那么变为作废
-        if (Objects.equals(req.getStatus(),ContractStatusEnum.CANNEL.getCode()) && Arrays.asList(ContractStatusEnum.WAIT_APPROVE.getCode(),
-                ContractStatusEnum.SUBMIT.getCode()).contains(kwcContractTrade.getStatus())){
+        if (Objects.equals(req.getStatus(), ContractStatusEnum.CANNEL.getCode()) && Arrays.asList(ContractStatusEnum.WAIT_APPROVE.getCode(),
+                ContractStatusEnum.SUBMIT.getCode()).contains(kwcContractTrade.getStatus())) {
             updateKwcContractTrade.setStatus(ContractStatusEnum.CANNEL.getCode());
         }
         //手动完结 如果当前的状态是已经签约,订单变成已完结
-        if (Objects.equals(req.getStatus(),ContractStatusEnum.CANNEL.getCode()) && Objects.equals(kwcContractTrade.getStatus(),
-                ContractStatusEnum.SIGNED.getCode())){
+        if (Objects.equals(req.getStatus(), ContractStatusEnum.CANNEL.getCode()) && Objects.equals(kwcContractTrade.getStatus(),
+                ContractStatusEnum.SIGNED.getCode())) {
             updateKwcContractTrade.setStatus(ContractStatusEnum.COMPLETE.getCode());
         }
-       return kwcContractTradeRepository.updateByContractId(updateKwcContractTrade);
+        return kwcContractTradeRepository.updateByContractId(updateKwcContractTrade);
 
     }
 
@@ -1369,7 +1386,7 @@ public class KwcContractTradeService {
         }
         //根据订单号查询交易企业信息
         List<KwcContractTradeUnit> tradeUnits = kwcContractTradeUnitRepository.queryByContractId(kwcContractTrade.getId());
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits)) {
             return new ContractDetailResp();
         }
         //安装合同id和单位类型组合成key映射公司对象
@@ -1381,17 +1398,17 @@ public class KwcContractTradeService {
         //查询商品合同
         List<KwcContractTradeGoods> tradeGoods = kwcContractTradeGoodsRepository.queryByContractId(kwcContractTrade.getId());
         List<Long> goodsIds = Lists.newArrayList();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeGoods)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeGoods)) {
             //获取商品id
-             goodsIds = tradeGoods.stream()
+            goodsIds = tradeGoods.stream()
                     .map(KwcContractTradeGoods::getGoodsId)
-                     .distinct()
+                    .distinct()
                     .collect(Collectors.toList());
 
         }
         //查询商品 商品id映射商品
         Map<Long, KwpGoods> goodsIdAndGoodsMap = Maps.newHashMap();
-        if (CollectionUtils.isNotEmpty(goodsIds)){
+        if (CollectionUtils.isNotEmpty(goodsIds)) {
             goodsIdAndGoodsMap = goodsInfoService.getGoodsByIds(goodsIds);
 
         }
@@ -1399,12 +1416,12 @@ public class KwcContractTradeService {
         //查询字典
         List<SysDictResDto> sysDictResDtos = remoteSystemService.queryDictByType(DictTypeEnum.PRODUCT_NAME_TYPE.getType());
         Map<String, SysDictResDto> dictValueAndDictResDtoMap = new HashMap<>();
-        if (CollectionUtils.isNotEmpty(sysDictResDtos)){
+        if (CollectionUtils.isNotEmpty(sysDictResDtos)) {
             //字典value映射字典
             dictValueAndDictResDtoMap = sysDictResDtos.stream()
                     .collect(Collectors.toMap(SysDictResDto::getValue, Function.identity()));
 
-         }
+        }
 
 
         ContractDetailResp contractDetailResp = new ContractDetailResp();
@@ -1417,7 +1434,7 @@ public class KwcContractTradeService {
         contractDetailResp.setContractFile(kwcContractTrade.getSigningUrl());
 
         //标地信息
-        if (CollectionUtils.isNotEmpty(tradeGoods)){
+        if (CollectionUtils.isNotEmpty(tradeGoods)) {
             Map<Long, KwpGoods> finalGoodsIdAndGoodsMap = goodsIdAndGoodsMap;
             Map<String, SysDictResDto> finalDictValueAndDictResDtoMap = dictValueAndDictResDtoMap;
             List<ContractDetailResp.TradeGoodsInfo> tradeGoodsInfos = tradeGoods.stream()
@@ -1440,10 +1457,10 @@ public class KwcContractTradeService {
         tradeGoodsInfo.setGoodsId(t.getGoodsId());
         KwpGoods goods = finalGoodsIdAndGoodsMap.getOrDefault(t.getGoodsId(), new KwpGoods());
         SysDictResDto dictResDto = dictValueAndDictResDtoMap.getOrDefault(goods.getGoodsType(), new SysDictResDto());
-        tradeGoodsInfo.setGoodsName(goods.getName()+"/"+dictResDto.getLabel()+"/"+goods.getSpec());
+        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()));
+        tradeGoodsInfo.setUnit(DictEnum.getLabel(DictTypeEnum.UNIT_TYPE.getType(), t.getUnit()));
         tradeGoodsInfo.setEffectiveStartTime(t.getStartTime());
         tradeGoodsInfo.setEffectiveEntTime(t.getEndTime());
         return tradeGoodsInfo;
@@ -1466,10 +1483,10 @@ public class KwcContractTradeService {
         tradeBaseInfo.setContractName(kwcContractTrade.getName());
         tradeBaseInfo.setContractStatus(String.valueOf(kwcContractTrade.getStatus()));
         tradeBaseInfo.setContractStatusDesc(ContractStatusEnum.getNameByCode(kwcContractTrade.getStatus()));
-        if (Objects.nonNull(kwcContractTrade.getEndTime())){
+        if (Objects.nonNull(kwcContractTrade.getEndTime())) {
             tradeBaseInfo.setEndTime(kwcContractTrade.getEndTime());
             String endDate = DateUtils.format(kwcContractTrade.getEndTime(), DateUtils.DATE_PATTERN);
-            if (org.apache.commons.lang3.StringUtils.equals(endDate,"9999-12-30")){
+            if (org.apache.commons.lang3.StringUtils.equals(endDate, "9999-12-30")) {
                 tradeBaseInfo.setEndTime(null);
             }
         }
@@ -1492,12 +1509,12 @@ public class KwcContractTradeService {
         return tradeBaseInfo;
     }
 
-    public  List<QueryListResVo> queryTradeListByPage(QueryTradeReq req) {
+    public List<QueryListResVo> queryTradeListByPage(QueryTradeReq req) {
 
         Long entId;
-        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getEntId())){
-            entId =Long.valueOf(req.getEntId());
-        }else {
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getEntId())) {
+            entId = Long.valueOf(req.getEntId());
+        } else {
             entId = LoginUserHolder.getEntId();
         }
         Set<Long> entIds = Sets.newHashSet();
@@ -1510,15 +1527,15 @@ public class KwcContractTradeService {
             entIds.add(Long.valueOf(req.getSupplyEntId()));
         }
         Set<Long> contractIds = null;
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(entIds)){
-           List<KwcContractTradeUnit> units = kwcContractTradeUnitRepository.queryByEntIds(entIds);
-           if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)){
-              contractIds = units.stream()
-                      .map(KwcContractTradeUnit::getContractId)
-                      .collect(Collectors.toSet());
-           }
-        }
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(contractIds)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(entIds)) {
+            List<KwcContractTradeUnit> units = kwcContractTradeUnitRepository.queryByEntIds(entIds);
+            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)) {
+                contractIds = units.stream()
+                        .map(KwcContractTradeUnit::getContractId)
+                        .collect(Collectors.toSet());
+            }
+        }
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(contractIds)) {
             return Collections.emptyList();
         }
         PageHelper.startPage(req.getPageNum(), req.getPageSize());
@@ -1528,50 +1545,50 @@ public class KwcContractTradeService {
                 req.getContractName(),
                 req.getSupplementCode(),
                 contractIds, req.getStatus(), req.getPageNum(), req.getPageSize());
-       // List<KwcContractTrade> records = page.getRecords();
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(records)){
+        // List<KwcContractTrade> records = page.getRecords();
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(records)) {
             return Collections.emptyList();
         }
         entIds.addAll(records.stream().map(KwcContractTrade::getEntId).collect(Collectors.toSet()));
         List<EntTypeResDto> ents = remoteSystemService.queryEntTypeByIds(entIds);
-        Map<Long, EntTypeResDto> entIdAndEntMap = Maps.newHashMap() ;
-        if (CollectionUtils.isNotEmpty(ents)){
+        Map<Long, EntTypeResDto> entIdAndEntMap = Maps.newHashMap();
+        if (CollectionUtils.isNotEmpty(ents)) {
             entIdAndEntMap =
                     ents.stream().collect(Collectors.toMap(EntTypeResDto::getEntId, Function.identity(), (v1, v2) -> v1));
         }
         //如果登录方是采购方,创建方是提供方,那么采购方只能看到已经签约的合同
         EntTypeResDto entTypeResDto = entIdAndEntMap.getOrDefault(entId, new EntTypeResDto());
         //如果登录方是采购商,创建方是供应方,那么采购商只能看到已经签约的合同
-        List<KwcContractTrade> contractTrades  = Lists.newArrayList();
-        List<KwcContractTrade> contractTrades1  = Lists.newArrayList();
-        if (entTypeResDto.getType().equals(EntTypeEnum.PURCHASER.getCode())){
+        List<KwcContractTrade> contractTrades = Lists.newArrayList();
+        List<KwcContractTrade> contractTrades1 = Lists.newArrayList();
+        if (entTypeResDto.getType().equals(EntTypeEnum.PURCHASER.getCode())) {
             List<Integer> statusList = Arrays.asList(ContractStatusEnum.SIGNED.getCode(), ContractStatusEnum.COMPLETE.getCode());
             Map<Long, EntTypeResDto> finalEntIdAndEntMap1 = entIdAndEntMap;
 
             records.forEach(record -> {
                 EntTypeResDto orDefault = finalEntIdAndEntMap1.getOrDefault(record.getEntId(), new EntTypeResDto());
-                if (Objects.equals(orDefault.getType(),EntTypeEnum.SUPPLIER.getCode()) && statusList.contains(record.getStatus())){
+                if (Objects.equals(orDefault.getType(), EntTypeEnum.SUPPLIER.getCode()) && statusList.contains(record.getStatus())) {
                     contractTrades.add(record);
-                }else if (Objects.equals(orDefault.getType(),EntTypeEnum.PURCHASER.getCode())) {
+                } else if (Objects.equals(orDefault.getType(), EntTypeEnum.PURCHASER.getCode())) {
                     contractTrades1.add(record);
                 }
             });
         }
         //如果登录方是供应方,创建方是采购方,那么供应方不能看到已作废的 合同
-        if (entTypeResDto.getType().equals(EntTypeEnum.SUPPLIER.getCode())){
+        if (entTypeResDto.getType().equals(EntTypeEnum.SUPPLIER.getCode())) {
             Map<Long, EntTypeResDto> finalEntIdAndEntMap = entIdAndEntMap;
             records.forEach(record -> {
-                        EntTypeResDto orDefault = finalEntIdAndEntMap.getOrDefault(record.getEntId(), new EntTypeResDto());
-                        if (Objects.equals(orDefault.getType(),EntTypeEnum.PURCHASER.getCode()) && !Objects.equals(record.getStatus(),ContractStatusEnum.CANNEL.getCode())){
-                            contractTrades.add(record);
-                        }else if (Objects.equals(orDefault.getType(),EntTypeEnum.SUPPLIER.getCode())){
-                            contractTrades1.add(record);
-                        }
+                EntTypeResDto orDefault = finalEntIdAndEntMap.getOrDefault(record.getEntId(), new EntTypeResDto());
+                if (Objects.equals(orDefault.getType(), EntTypeEnum.PURCHASER.getCode()) && !Objects.equals(record.getStatus(), ContractStatusEnum.CANNEL.getCode())) {
+                    contractTrades.add(record);
+                } else if (Objects.equals(orDefault.getType(), EntTypeEnum.SUPPLIER.getCode())) {
+                    contractTrades1.add(record);
+                }
             });
         }
         contractTrades.addAll(contractTrades1);
         records = contractTrades;
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(records)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(records)) {
             return Collections.emptyList();
         }
 
@@ -1580,18 +1597,18 @@ public class KwcContractTradeService {
         Set<Long> contractPids = records.stream().map(KwcContractTrade::getContractPid).collect(Collectors.toSet());
         //根据父id查询父合同信息
         Map<Long, KwcContractTrade> pidIdAndTradeMap = Maps.newHashMap();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(contractPids)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(contractPids)) {
             List<KwcContractTrade> contractPidList = kwcContractTradeRepository.queryByContractIds(contractPids);
 
             pidIdAndTradeMap =
                     contractPidList.stream().collect(Collectors.toMap(KwcContractTrade::getId
-                    , Function.identity(), (v1, v2) -> v1));
+                            , Function.identity(), (v1, v2) -> v1));
         }
 
         //查询公司信息
         List<KwcContractTradeUnit> tradeUnits = kwcContractTradeUnitRepository.queryByContractIds(tradeContractIds);
         Map<String, KwcContractTradeUnit> contractUnitTypeKeyAndUnitMap = Maps.newHashMap();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeUnits)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeUnits)) {
             contractUnitTypeKeyAndUnitMap = tradeUnits.stream()
                     .peek(x -> x.setContractIdUniTypeKey(x.getContractId() + "-" + x.getUnitType()))
                     .collect(Collectors.toMap(KwcContractTradeUnit::getContractIdUniTypeKey, Function.identity(), (v1
@@ -1606,7 +1623,7 @@ public class KwcContractTradeService {
         List<TradeOrderContractVo> tradeOrderContractVos = tradeOrderInfoService.queryByTradeContactIds(tradeContractIds);
         Map<Long, RWaybillSubOrderVo> tradeOrderIdAndWaybillMap = Maps.newHashMap();
         Map<Long, TradeOrderContractVo> contractIdAndContractMap = Maps.newHashMap();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeOrderContractVos)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeOrderContractVos)) {
             contractIdAndContractMap = tradeOrderContractVos.stream()
                     .collect(Collectors.toMap(TradeOrderContractVo::getContractId, Function.identity(), (v1, v2) -> v1));
             //贸易订单id
@@ -1615,7 +1632,7 @@ public class KwcContractTradeService {
                     .collect(Collectors.toSet());
             //通过贸易订单id查询物流运单
             List<RWaybillSubOrderVo> rWaybillSubOrderVos = transportRemoteService.queryWaybillOrderByTradeOrderIds(tradeOrderIds);
-            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(rWaybillSubOrderVos)){
+            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(rWaybillSubOrderVos)) {
                 tradeOrderIdAndWaybillMap = rWaybillSubOrderVos.stream()
                         .collect(Collectors.toMap(RWaybillSubOrderVo::getTradeId, Function.identity(), (k1, k2) -> k1));
             }
@@ -1623,8 +1640,8 @@ public class KwcContractTradeService {
         //根据合同id查询合同商品
         List<KwcContractTradeGoods> tradeGoods = kwcContractTradeGoodsRepository.queryByContractIds(tradeContractIds);
         Map<Long, KwcContractTradeGoods> goodsIdAndGoodsMap = Maps.newHashMap();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeGoods)){
-            goodsIdAndGoodsMap = tradeGoods.stream().collect(Collectors.toMap(KwcContractTradeGoods::getGoodsId,Function.identity(), (v1, v2) -> v1));
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(tradeGoods)) {
+            goodsIdAndGoodsMap = tradeGoods.stream().collect(Collectors.toMap(KwcContractTradeGoods::getGoodsId, Function.identity(), (v1, v2) -> v1));
         }
 
         Map<Long, KwcContractTrade> finalPidIdAndTradeMap = pidIdAndTradeMap;
@@ -1636,15 +1653,15 @@ public class KwcContractTradeService {
                 .map(t -> getQueryListResVo(t, finalContractUnitTypeKeyAndUnitMap, finalPidIdAndTradeMap, longUserCacheResDtoMap,
                         finalTradeOrderIdAndWaybillMap, finalContractIdAndContractMap, finalGoodsIdAndGoodsMap))
                 .collect(Collectors.toList());
-        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getPurchaseEntId())){
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getPurchaseEntId())) {
             queryListResVos = queryListResVos.stream()
-                    .filter(x-> org.apache.commons.lang3.StringUtils.equals(x.getPurchaseEntId(), req.getPurchaseEntId()))
+                    .filter(x -> org.apache.commons.lang3.StringUtils.equals(x.getPurchaseEntId(), req.getPurchaseEntId()))
                     .collect(Collectors.toList());
         }
 
-        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getSupplyEntId())){
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(req.getSupplyEntId())) {
             queryListResVos = queryListResVos.stream()
-                    .filter(x-> org.apache.commons.lang3.StringUtils.equals(x.getProvideEntId(), req.getSupplyEntId()))
+                    .filter(x -> org.apache.commons.lang3.StringUtils.equals(x.getProvideEntId(), req.getSupplyEntId()))
                     .collect(Collectors.toList());
         }
         return queryListResVos;
@@ -1669,14 +1686,14 @@ public class KwcContractTradeService {
         queryListResVo.setPurchaseEntName(purchaseEnt.getFirmName());
         KwcContractTradeUnit provideEnt =
                 finalContractUnitTypeKeyAndUnitMap.getOrDefault(t.getId() + "-" + CooperateTypeEnum.SUPPLIER.getCode(),
-                new KwcContractTradeUnit());
+                        new KwcContractTradeUnit());
         queryListResVo.setProvideEntId(String.valueOf(provideEnt.getEntId()));
         queryListResVo.setProvideEntName(provideEnt.getFirmName());
         //queryListResVo.setCheckedEntName();
         queryListResVo.setContractNo(t.getContractNo());
         queryListResVo.setContractName(t.getName());
         queryListResVo.setSigningWay(String.valueOf(t.getSigningWay()));
-        queryListResVo.setSigningWayName(DictEnum.getLabel(DictTypeEnum.SIGNING_TYPE.getType(),String.valueOf(t.getSigningWay())));
+        queryListResVo.setSigningWayName(DictEnum.getLabel(DictTypeEnum.SIGNING_TYPE.getType(), String.valueOf(t.getSigningWay())));
         queryListResVo.setUnloadWay(String.valueOf(t.getUnloadWay()));
         queryListResVo.setUnloadWayName(DictEnum.getLabel(DictTypeEnum.LOAD_UNLOAD_WAY.getType(),
                 String.valueOf(t.getUnloadWay())));
@@ -1686,17 +1703,17 @@ public class KwcContractTradeService {
         List<RWaybillSubOrderVo.BillSubOrder> subOrders = subOrderVo.getSubOrders();
         BigDecimal unloadQty = BigDecimal.ZERO;
         BigDecimal performedAmountMoney = BigDecimal.ZERO;
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(subOrders)){
-            if (Objects.equals(t.getUnloadWay(),Integer.parseInt(DictEnum.LOAD_UNLOAD_WAY_1.getValue()))){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(subOrders)) {
+            if (Objects.equals(t.getUnloadWay(), Integer.parseInt(DictEnum.LOAD_UNLOAD_WAY_1.getValue()))) {
                 unloadQty = subOrders.stream()
-                        .filter(x->Arrays.asList(CarWaybillV1Enum.COMPLETION_LOADING.getCode(),CarWaybillV1Enum.WAIT_UNLOADING.getCode())
+                        .filter(x -> Arrays.asList(CarWaybillV1Enum.COMPLETION_LOADING.getCode(), CarWaybillV1Enum.WAIT_UNLOADING.getCode())
                                 .contains(x.getStatus()))
                         .map(RWaybillSubOrderVo.BillSubOrder::getLoadAmount)
                         .filter(Objects::nonNull)
                         .reduce(BigDecimal.ZERO, BigDecimal::add);
-            }else {
+            } else {
                 unloadQty = subOrders.stream()
-                        .filter(x->Objects.equals(x.getStatus(),CarWaybillV1Enum.WAIT_UNLOADING.getCode()))
+                        .filter(x -> Objects.equals(x.getStatus(), CarWaybillV1Enum.WAIT_UNLOADING.getCode()))
                         .map(RWaybillSubOrderVo.BillSubOrder::getUnloadAmount)
                         .filter(Objects::nonNull)
                         .reduce(BigDecimal.ZERO, BigDecimal::add);
@@ -1720,15 +1737,15 @@ public class KwcContractTradeService {
         UserCacheResDto userCacheResDto = longUserCacheResDtoMap.getOrDefault(t.getCreateBy(), new UserCacheResDto());
         queryListResVo.setInitiatorId(t.getCreateBy());
         queryListResVo.setInitiateName(userCacheResDto.getName());
-        if (Objects.nonNull(userCacheResDto.getEntInfo())){
+        if (Objects.nonNull(userCacheResDto.getEntInfo())) {
             queryListResVo.setInitiateEntName(userCacheResDto.getEntInfo().getFirmName());
         }
         queryListResVo.setCreateTime(t.getCreateTime());
         queryListResVo.setStartTime(t.getStartTime());
-        if (Objects.nonNull(t.getStartTime())){
+        if (Objects.nonNull(t.getStartTime())) {
             queryListResVo.setEndTime(t.getEndTime());
             String endDate = DateUtils.format(t.getEndTime(), DateUtils.DATE_PATTERN);
-            if (org.apache.commons.lang3.StringUtils.equals(endDate,"9999-12-30")){
+            if (org.apache.commons.lang3.StringUtils.equals(endDate, "9999-12-30")) {
                 queryListResVo.setEndTime(null);
             }
         }
@@ -1740,7 +1757,7 @@ public class KwcContractTradeService {
 
 
     public List<ContractLogisticsOrderResDto> queryContractLogisticsOrder(LogisticsOrderDto logisticsOrderDto) {
-        log.info("查询物流合同请求:{}",JSON.toJSONString( logisticsOrderDto));
+        log.info("查询物流合同请求:{}", JSON.toJSONString(logisticsOrderDto));
 
         if (Objects.isNull(logisticsOrderDto.getGoodsId())) {
             throw new BusinessException("商品id不能为空!");
@@ -1751,7 +1768,7 @@ public class KwcContractTradeService {
         //通过托运企业查询物流公司
         List<KwcContractLogisticsUnit> contractLogistics =
                 kwcContractLogisticsUnitRepository.queryByEntId(logisticsOrderDto.getEntId());
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(contractLogistics)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(contractLogistics)) {
             return Collections.emptyList();
         }
         //物流订单合id
@@ -1763,7 +1780,7 @@ public class KwcContractTradeService {
                 logisticsOrderDto.getGoodsId());
         Map<Long, KwcContractLogisticsGoods> contractLogisticsGoodsMap = Maps.newHashMap();
 
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(kwcContractLogisticsGoods)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(kwcContractLogisticsGoods)) {
             contractLogisticsGoodsMap = kwcContractLogisticsGoods.stream()
                     .collect(Collectors.toMap(KwcContractLogisticsGoods::getContractId,
                             Function.identity(), (x, y) -> x));
@@ -1774,26 +1791,26 @@ public class KwcContractTradeService {
 
         //查询物流订单
         List<KwcContractLogistics> logistics = contractLogisticsRepository.queryByLogisticContractIds(logTradeContractIds);
-        if (CollectionUtils.isEmpty( logistics)){
+        if (CollectionUtils.isEmpty(logistics)) {
             return Collections.emptyList();
         }
         Date date = new Date();
         logistics = logistics.stream()
                 .filter(log -> Objects.nonNull(log.getStartTime()) && Objects.nonNull(log.getEndTime()))
-                .filter(log -> Objects.equals(log.getStatus(),ContractStatusEnum.SIGNED.getCode())
-                && log.getStartTime().before(date) &&  log.getEndTime().after( date))
+                .filter(log -> Objects.equals(log.getStatus(), ContractStatusEnum.SIGNED.getCode())
+                        && log.getStartTime().before(date) && log.getEndTime().after(date))
                 .collect(Collectors.toList());
-        if (CollectionUtils.isEmpty(logistics)){
+        if (CollectionUtils.isEmpty(logistics)) {
             return Collections.emptyList();
         }
         //查询企业
         List<KwcContractLogisticsUnit> units = kwcContractLogisticsUnitRepository.queryByContractIds(logTradeContractIds);
         //物流订单和类型组成唯一key
         Map<String, KwcContractLogisticsUnit> contractLogisticsMap = Maps.newHashMap();
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)) {
             contractLogisticsMap = units.stream()
-                            .collect(Collectors.toMap(c -> c.getContractId() + "_" + c.getUnitType(),
-                                    Function.identity(), (x, y) -> x));
+                    .collect(Collectors.toMap(c -> c.getContractId() + "_" + c.getUnitType(),
+                            Function.identity(), (x, y) -> x));
         }
         Map<String, KwcContractLogisticsUnit> finalContractLogisticsMap = contractLogisticsMap;
         Map<Long, KwcContractLogisticsGoods> finalContractLogisticsGoodsMap = contractLogisticsGoodsMap;
@@ -1832,42 +1849,42 @@ public class KwcContractTradeService {
     }
 
 
-
     public List<ContractTradeOrderInfo> queryContractTradeOrder(ContractTradeOrderDto contractTradeOrderDto) {
         log.info("查询贸易合同订单,请求:{}", JSON.toJSONString(contractTradeOrderDto));
         checkParam(contractTradeOrderDto.getGoodsId(), contractTradeOrderDto.getEntId(), contractTradeOrderDto.getEntType());
         //查询贸易合同企业信息
         List<KwcContractTradeUnit> tradeUnits = kwcContractTradeUnitRepository.queryByEntIdAndUnitType(contractTradeOrderDto.getEntId(),
                 contractTradeOrderDto.getEntType());
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(tradeUnits)) {
             return Collections.emptyList();
         }
         Map<String, KwcContractTradeUnit> conTractTradeUnitMap =
                 tradeUnits.stream().collect(Collectors.toMap(x -> x.getContractId() +
-                        "_" + x.getUnitType(), Function.identity(),
-                (x, y) -> x));
+                                "_" + x.getUnitType(), Function.identity(),
+                        (x, y) -> x));
         Set<Long> contractIds =
                 tradeUnits.stream().map(KwcContractTradeUnit::getContractId).collect(Collectors.toSet());
         //查询商品信息
         List<KwcContractTradeGoods> kwcContractGoods = kwcContractTradeGoodsRepository.queryByContractIdsAndGoodsId(contractIds,
                 contractTradeOrderDto.getGoodsId());
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractGoods)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractGoods)) {
             return Collections.emptyList();
         }
         //只查询已签约的
         Set<Long> contractIdList = kwcContractGoods.stream()
-                .filter(x->Objects.equals(x.getStatus(), ContractStatusEnum.SIGNED.getCode()))
+                .filter(x -> Objects.equals(x.getStatus(), ContractStatusEnum.SIGNED.getCode()))
                 .map(KwcContractTradeGoods::getContractId)
                 .collect(Collectors.toSet());
         //查询贸易合同
         List<KwcContractTrade> kwcContractTrades = kwcContractTradeRepository.findByContractIds(contractIdList);
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractTrades)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractTrades)) {
             return Collections.emptyList();
         }
         return kwcContractTrades.stream()
-                .map(x-> getContractTradeOrderInfo(x, conTractTradeUnitMap,contractTradeOrderDto.getEntType()))
+                .map(x -> getContractTradeOrderInfo(x, conTractTradeUnitMap, contractTradeOrderDto.getEntType()))
                 .collect(Collectors.toList());
     }
+
     private static void checkParam(Long contractTradeOrderDto, Long contractTradeOrderDto1, Integer contractTradeOrderDto2) {
         if (Objects.isNull(contractTradeOrderDto)) {
             throw new BusinessException("商品id不能为空!");
@@ -1879,9 +1896,10 @@ public class KwcContractTradeService {
             throw new BusinessException("企业类型不能为空!");
         }
     }
+
     @NotNull
     private static ContractTradeOrderInfo getContractTradeOrderInfo(KwcContractTrade c, Map<String,
-            KwcContractTradeUnit> conTractTradeUnitMap,Integer entType) {
+            KwcContractTradeUnit> conTractTradeUnitMap, Integer entType) {
         ContractTradeOrderInfo contractTradeOrderInfo = new ContractTradeOrderInfo();
         contractTradeOrderInfo.setId(c.getId());
         KwcContractTradeUnit unit = conTractTradeUnitMap.getOrDefault(c.getId() + "_" + entType,
@@ -1924,9 +1942,9 @@ public class KwcContractTradeService {
         ContractStatusCountResp contractStatusCountResp = new ContractStatusCountResp();
         contractStatusCountResp.setTotalNum("0");
         Long entId;
-        if (Objects.nonNull(req.getEntId())){
-            entId =req.getEntId();
-        }else {
+        if (Objects.nonNull(req.getEntId())) {
+            entId = req.getEntId();
+        } else {
             entId = LoginUserHolder.getEntId();
         }
         Set<Long> entIds = Sets.newHashSet();
@@ -1939,14 +1957,14 @@ public class KwcContractTradeService {
             entIds.add(Long.valueOf(req.getSupplyEntId()));
         }
         Set<Long> contractIds = null;
-        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(entIds)){
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(entIds)) {
             List<KwcContractTradeUnit> units = kwcContractTradeUnitRepository.queryByEntIds(entIds);
-            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)){
+            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(units)) {
                 contractIds = units.stream().map(KwcContractTradeUnit::getContractId).collect(Collectors.toSet());
             }
         }
         if (org.apache.commons.collections4.CollectionUtils.isEmpty(contractIds)
-                && !org.apache.commons.lang3.StringUtils.isAllBlank(req.getPurchaseEntId(),req.getSupplyEntId())){
+                && !org.apache.commons.lang3.StringUtils.isAllBlank(req.getPurchaseEntId(), req.getSupplyEntId())) {
             Map<Integer, List<KwcContractTrade>> statusAndLogOrdersMap = new HashMap<>();
             List<ContractStatusCountResp.ContractStatusCount> statusCounts = statusEnums.stream()
                     .map(x -> getContractStatusCount(x, statusAndLogOrdersMap))
@@ -1961,9 +1979,9 @@ public class KwcContractTradeService {
                 req.getSupplementCode(),
                 contractIds, req.getStatus(), 0, 0);
 
-       // List<KwcContractTrade> kwcContractTrades = kwcContractTradeRepository.queryTradeListByPageList(LoginUserHolder.getEntId());
+        // List<KwcContractTrade> kwcContractTrades = kwcContractTradeRepository.queryTradeListByPageList(LoginUserHolder.getEntId());
 
-        if (CollectionUtils.isEmpty(kwcContractTrades)){
+        if (CollectionUtils.isEmpty(kwcContractTrades)) {
             Map<Integer, List<KwcContractTrade>> statusAndLogOrdersMap = new HashMap<>();
             List<ContractStatusCountResp.ContractStatusCount> statusCounts = statusEnums.stream()
                     .map(x -> getContractStatusCount(x, statusAndLogOrdersMap))
@@ -1973,45 +1991,45 @@ public class KwcContractTradeService {
         }
         entIds.addAll(kwcContractTrades.stream().map(KwcContractTrade::getEntId).collect(Collectors.toSet()));
         List<EntTypeResDto> ents = remoteSystemService.queryEntTypeByIds(entIds);
-        Map<Long, EntTypeResDto> entIdAndEntMap = Maps.newHashMap() ;
-        if (CollectionUtils.isNotEmpty(ents)){
+        Map<Long, EntTypeResDto> entIdAndEntMap = Maps.newHashMap();
+        if (CollectionUtils.isNotEmpty(ents)) {
             entIdAndEntMap =
                     ents.stream().collect(Collectors.toMap(EntTypeResDto::getEntId, Function.identity(), (v1, v2) -> v1));
         }
         //如果登录方是采购方,创建方是提供方,那么采购方只能看到已经签约的合同
         EntTypeResDto entTypeResDto = entIdAndEntMap.getOrDefault(entId, new EntTypeResDto());
         //如果登录方是采购商,创建方是供应方,那么采购商只能看到已经签约的合同
-        List<KwcContractTrade> contractTrades  = Lists.newArrayList();
-        List<KwcContractTrade> contractTrades1  = Lists.newArrayList();
-        if (entTypeResDto.getType().equals(EntTypeEnum.PURCHASER.getCode())){
+        List<KwcContractTrade> contractTrades = Lists.newArrayList();
+        List<KwcContractTrade> contractTrades1 = Lists.newArrayList();
+        if (entTypeResDto.getType().equals(EntTypeEnum.PURCHASER.getCode())) {
 
             List<Integer> statusList = Arrays.asList(ContractStatusEnum.SIGNED.getCode(), ContractStatusEnum.COMPLETE.getCode());
             Map<Long, EntTypeResDto> finalEntIdAndEntMap1 = entIdAndEntMap;
 
             kwcContractTrades.forEach(record -> {
                 EntTypeResDto orDefault = finalEntIdAndEntMap1.getOrDefault(record.getEntId(), new EntTypeResDto());
-                if (Objects.equals(orDefault.getType(),EntTypeEnum.SUPPLIER.getCode()) && statusList.contains(record.getStatus())){
+                if (Objects.equals(orDefault.getType(), EntTypeEnum.SUPPLIER.getCode()) && statusList.contains(record.getStatus())) {
                     contractTrades.add(record);
-                }else if (Objects.equals(orDefault.getType(),EntTypeEnum.PURCHASER.getCode())){
+                } else if (Objects.equals(orDefault.getType(), EntTypeEnum.PURCHASER.getCode())) {
                     contractTrades1.add(record);
                 }
             });
         }
         //如果登录方是供应方,创建方是采购方,那么供应方不能看到已作废的 合同
-        if (entTypeResDto.getType().equals(EntTypeEnum.SUPPLIER.getCode())){
+        if (entTypeResDto.getType().equals(EntTypeEnum.SUPPLIER.getCode())) {
             Map<Long, EntTypeResDto> finalEntIdAndEntMap = entIdAndEntMap;
             kwcContractTrades.forEach(record -> {
                 EntTypeResDto orDefault = finalEntIdAndEntMap.getOrDefault(record.getEntId(), new EntTypeResDto());
-                if (Objects.equals(orDefault.getType(),EntTypeEnum.PURCHASER.getCode()) && !Objects.equals(record.getStatus(),ContractStatusEnum.CANNEL.getCode())){
+                if (Objects.equals(orDefault.getType(), EntTypeEnum.PURCHASER.getCode()) && !Objects.equals(record.getStatus(), ContractStatusEnum.CANNEL.getCode())) {
                     contractTrades.add(record);
-                }else if (Objects.equals(orDefault.getType(),EntTypeEnum.SUPPLIER.getCode())){
+                } else if (Objects.equals(orDefault.getType(), EntTypeEnum.SUPPLIER.getCode())) {
                     contractTrades1.add(record);
                 }
             });
         }
         contractTrades.addAll(contractTrades1);
         kwcContractTrades = contractTrades;
-        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractTrades)){
+        if (org.apache.commons.collections4.CollectionUtils.isEmpty(kwcContractTrades)) {
             Map<Integer, List<KwcContractTrade>> statusAndLogOrdersMap = new HashMap<>();
             List<ContractStatusCountResp.ContractStatusCount> statusCounts = statusEnums.stream()
                     .map(x -> getContractStatusCount(x, statusAndLogOrdersMap))
@@ -2040,4 +2058,8 @@ public class KwcContractTradeService {
         contractStatusCount.setOrderNum(String.valueOf(finalStatusAndLogOrdersMap1.getOrDefault(x.getCode(), new ArrayList<>()).size()));
         return contractStatusCount;
     }
-}
+
+    public List<Long> queryTradeContractInfo(Long contractId) {
+        return kwcContractTradeMapper.selectByContract(contractId);
+    }
+}

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

@@ -301,4 +301,30 @@
             limit 1
         </where>
     </select>
+    <select id="querySignTradeContract" resultType="java.lang.Long">
+        select distinct b.goods_id
+        from kwc_contract_trade a
+                 left join kwc_contract_trade_goods b on a.id = b.contract_id and b.del_flag = 0
+                 left join kwc_contract_trade_unit c on a.id = c.contract_id and c.del_flag = 0
+        <where>
+            a.del_flag = 0
+              and a.status = 0
+              and c.unit_type = 2
+              and a.start_time &lt; #{time}
+              and (a.end_time &gt; #{time} OR a.end_time IS NULL)
+              and c.ent_id = #{entId}
+            order by a.create_time desc
+        </where>
+    </select>
+
+    <select id="selectByContract" resultType="java.lang.Long">
+        select distinct b.goods_id
+        from kwc_contract_trade a
+        left join kwc_contract_trade_goods b on a.id = b.contract_id and b.del_flag = 0
+        <where>
+            a.del_flag = 0
+            and a.status = 0
+            and a.id = #{contractId}
+        </where>
+    </select>
 </mapper>

+ 4 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/dao/KwoTradeOrderMapper.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.sckw.core.model.vo.TableTop;
 import com.sckw.order.api.model.OrderSaleVo;
 import com.sckw.order.api.model.TradeOrderCountStatisticsDTO;
+import com.sckw.order.api.model.TradeOrderPara;
+import com.sckw.order.api.model.TradeOrderVo;
 import com.sckw.order.model.KwoTradeOrder;
 import com.sckw.order.model.dto.*;
 import com.sckw.order.model.vo.res.TradeOrderAppStatisticVO;
@@ -146,4 +148,6 @@ public interface KwoTradeOrderMapper extends BaseMapper<KwoTradeOrder> {
     List<Long> selectGoodsId(@Param("entId") Long entId);
 
     List<OrderSaleVo> querySaleOrder(@Param("start") LocalDateTime start, @Param("end") LocalDateTime end);
+
+    List<TradeOrderVo> selectData(@Param("para")TradeOrderPara para);
 }

+ 0 - 4
sckw-modules/sckw-order/src/main/java/com/sckw/order/dubbo/TradeOrderInfoServiceImpl.java

@@ -32,10 +32,6 @@ import org.springframework.transaction.annotation.Transactional;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.time.LocalDateTime;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.Set;
 import java.util.*;
 import java.util.stream.Collectors;
 

+ 26 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/feign/TradeOrderApiImpl.java

@@ -0,0 +1,26 @@
+package com.sckw.order.feign;
+
+import com.sckw.order.api.feign.TradeOrderApi;
+import com.sckw.order.api.model.TradeOrderPara;
+import com.sckw.order.api.model.TradeOrderVo;
+import com.sckw.order.serivce.KwoTradeOrderService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @author xucaiqin
+ * @date 2025-12-01 15:26:28
+ */
+@RestController
+@RequiredArgsConstructor
+public class TradeOrderApiImpl implements TradeOrderApi {
+    private final KwoTradeOrderService kwoTradeOrderService;
+
+
+    @Override
+    public List<TradeOrderVo> queryTradeOrder(TradeOrderPara tradeOrderPara) {
+        return kwoTradeOrderService.queryOrder(tradeOrderPara);
+    }
+}

+ 14 - 1
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/dto/TradeOrderListSelectDTO.java

@@ -1,5 +1,6 @@
 package com.sckw.order.model.dto;
 
+import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
@@ -33,6 +34,9 @@ public class TradeOrderListSelectDTO {
      * 是否主账号(0是/1否)
      */
     private Integer isMain;
+    //是否平台管理员
+    private Boolean manager;
+    private List<Long> entList;
 
     /**
      * 订单类型(1采购订单、2销售订单)
@@ -102,4 +106,13 @@ public class TradeOrderListSelectDTO {
      * 订单状态
      */
     private Integer status;
-}
+
+    @Schema(description = "供应单位")
+    private Long saleEntId;
+
+    @Schema(description = "采购单位")
+    private Long buyEntId;
+
+    @Schema(description = "承运单位")
+    private Long transportEntId;
+}

+ 133 - 280
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTradeOrderService.java

@@ -34,15 +34,17 @@ import com.sckw.core.web.response.HttpResult;
 import com.sckw.manage.api.RemoteManageService;
 import com.sckw.manage.api.model.dto.res.FindEntCooperateResVo;
 import com.sckw.mongo.model.SckwTradeOrder;
-import com.sckw.order.api.model.OrderSaleVo;
-import com.sckw.order.api.model.TradeOrderCountStatisticsDTO;
-import com.sckw.order.api.model.TradeOrderSettlePara;
+import com.sckw.order.api.model.*;
 import com.sckw.order.dao.KwoTradeOrderMapper;
 import com.sckw.order.enums.ContractStatusEnum;
 import com.sckw.order.enums.*;
 import com.sckw.order.model.*;
 import com.sckw.order.model.dto.*;
+import com.sckw.order.model.vo.req.ContractInfo;
 import com.sckw.order.model.vo.req.*;
+import com.sckw.order.model.vo.res.GoodsInfoDetailRes;
+import com.sckw.order.model.vo.res.OrderDetailRes;
+import com.sckw.order.model.vo.res.UnitInfoDetailRes;
 import com.sckw.order.model.vo.res.*;
 import com.sckw.payment.api.dubbo.PayCenterDubboService;
 import com.sckw.payment.api.dubbo.PaymentDubboService;
@@ -147,12 +149,7 @@ public class KwoTradeOrderService {
      */
     public void addPurchaseOrderDraft(PurchaseOrderDraftParam param) {
         KwoTradeOrder order = BeanUtil.copyProperties(param, KwoTradeOrder.class);
-        order.setEntId(LoginUserHolder.getEntId())
-                .setTOrderNo(getOrderNo())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setUnit(Objects.nonNull(param.getGoodsInfo()) ? param.getGoodsInfo().getUnit() : null)
-                .setSource(OrderSourceEnum.PURCHASE.getType()).setStatus(OrderStatusEnum.SAVED.getCode());
+        order.setEntId(LoginUserHolder.getEntId()).setTOrderNo(getOrderNo()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setUnit(Objects.nonNull(param.getGoodsInfo()) ? param.getGoodsInfo().getUnit() : null).setSource(OrderSourceEnum.PURCHASE.getType()).setStatus(OrderStatusEnum.SAVED.getCode());
         kwoTradeOrderMapper.insert(order);
         addOtherOrderInfo(order, BeanUtil.copyProperties(param, ValetOrderParam.class), false, true);
     }
@@ -170,15 +167,7 @@ public class KwoTradeOrderService {
         Long id = tradeOrder.getId();
         String tOrderNo = tradeOrder.getTOrderNo();
         SckwTradeOrder order = new SckwTradeOrder();
-        order.setFirmName(LoginUserHolder.getEntName())
-                .setCreateByName(LoginUserHolder.getUserName())
-                .setUpdateByName(LoginUserHolder.getUserName())
-                .setTOrderId(id)
-                .setAssociateStatement(0)
-                .setPrice(Objects.isNull(tradeOrder.getPrice()) ? null : tradeOrder.getPrice().doubleValue())
-                .setAmount(Objects.isNull(tradeOrder.getAmount()) ? null : tradeOrder.getAmount().doubleValue())
-                .setEntrustAmount(Objects.isNull(tradeOrder.getEntrustAmount()) ? null : tradeOrder.getEntrustAmount().doubleValue())
-                .setActualAmount(Objects.isNull(tradeOrder.getActualAmount()) ? null : tradeOrder.getActualAmount().doubleValue());
+        order.setFirmName(LoginUserHolder.getEntName()).setCreateByName(LoginUserHolder.getUserName()).setUpdateByName(LoginUserHolder.getUserName()).setTOrderId(id).setAssociateStatement(0).setPrice(Objects.isNull(tradeOrder.getPrice()) ? null : tradeOrder.getPrice().doubleValue()).setAmount(Objects.isNull(tradeOrder.getAmount()) ? null : tradeOrder.getAmount().doubleValue()).setEntrustAmount(Objects.isNull(tradeOrder.getEntrustAmount()) ? null : tradeOrder.getEntrustAmount().doubleValue()).setActualAmount(Objects.isNull(tradeOrder.getActualAmount()) ? null : tradeOrder.getActualAmount().doubleValue());
 
         BeanUtil.copyProperties(tradeOrder, order);
 
@@ -188,9 +177,7 @@ public class KwoTradeOrderService {
         KwoTradeOrderGoods goods = BeanUtil.copyProperties(goodsInfo, KwoTradeOrderGoods.class);
         if (Objects.nonNull(goods) && Objects.nonNull(goods.getGoodsId())) {
             GoodsDetail goodsDetail = goodsInfoService.getDetailById(goods.getGoodsId());
-            if (Objects.isNull(goodsDetail)
-                    || !Objects.equals(goodsDetail.getStatus(), 1)
-                    || Objects.equals(goodsDetail.getDelFlag(), Global.YES)) {
+            if (Objects.isNull(goodsDetail) || !Objects.equals(goodsDetail.getStatus(), 1) || Objects.equals(goodsDetail.getDelFlag(), Global.YES)) {
                 throw new BusinessException("商品不存在或已下架!");
             }
             goods.setTOrderId(id).setTOrderNo(tOrderNo).setGoodsType(goodsDetail.getGoodsType());
@@ -212,9 +199,7 @@ public class KwoTradeOrderService {
             }
 
             //订单关联商品信息
-            order.setGoodsId(goodsDetail.getId()).setUnit(goodsDetail.getUnit()).setUnitPrice(goods.getUnitPrice().doubleValue())
-                    .setGoodsName(goodsDetail.getName()).setGoodsType(goodsDetail.getGoodsType()).setGoodsCode(goodsDetail.getCode())
-                    .setGoodsTaxRate(goodsDetail.getTaxRate()).setGoodsSpec(goodsDetail.getSpec()).setGoodsThumb(goodsDetail.getThumb());
+            order.setGoodsId(goodsDetail.getId()).setUnit(goodsDetail.getUnit()).setUnitPrice(goods.getUnitPrice().doubleValue()).setGoodsName(goodsDetail.getName()).setGoodsType(goodsDetail.getGoodsType()).setGoodsCode(goodsDetail.getCode()).setGoodsTaxRate(goodsDetail.getTaxRate()).setGoodsSpec(goodsDetail.getSpec()).setGoodsThumb(goodsDetail.getThumb());
         }
         if (Objects.isNull(order.getUnitPrice())) {
             order.setUnitPrice(BigDecimal.ZERO.doubleValue());
@@ -236,11 +221,9 @@ public class KwoTradeOrderService {
                 unit.setTOrderId(id).setTOrderNo(tOrderNo).setTopEntId(ent.getId());
                 list.add(unit);
                 if (Objects.equals(e.getUnitType(), OrderUnitTypeEnum.PURCHASE.getType())) {
-                    order.setProcureEntId(e.getEntId()).setProcureTopEntId(unit.getTopEntId()).setProcureFirmName(e.getFirmName())
-                            .setProcureContacts(e.getContacts()).setProcurePhone(e.getPhone()).setProcureContactsId(e.getContactsId());
+                    order.setProcureEntId(e.getEntId()).setProcureTopEntId(unit.getTopEntId()).setProcureFirmName(e.getFirmName()).setProcureContacts(e.getContacts()).setProcurePhone(e.getPhone()).setProcureContactsId(e.getContactsId());
                 } else {
-                    order.setSupplyEntId(e.getEntId()).setSupplyTopEntId(unit.getTopEntId()).setSupplyFirmName(e.getFirmName())
-                            .setSupplyContacts(e.getContacts()).setSupplyPhone(e.getPhone()).setSupplyContactsId(e.getContactsId());
+                    order.setSupplyEntId(e.getEntId()).setSupplyTopEntId(unit.getTopEntId()).setSupplyFirmName(e.getFirmName()).setSupplyContacts(e.getContacts()).setSupplyPhone(e.getPhone()).setSupplyContactsId(e.getContactsId());
                 }
             });
             kwoTradeOrderUnitService.insertBatch(list);
@@ -291,21 +274,16 @@ public class KwoTradeOrderService {
                 //todo MongoDB如何存多个地址信息?
                 if (Objects.equals(address.getAddressType(), OrderAddressTypeEnum.LOAD.getType())) {
                     address.setSort(loadSort.getAndIncrement());
-                    order.setLoadName(e.getName()).setLoadType(e.getType()).setLoadContacts(e.getContacts())
-                            .setLoadPhone(e.getPhone()).setLoadCityCode(String.valueOf(e.getCityCode())).setLoadCityName(e.getCityName())
-                            .setLoadDetailAddress(e.getDetailAddress()).setLoadLat(e.getLat()).setLoadLng(e.getLng());
+                    order.setLoadName(e.getName()).setLoadType(e.getType()).setLoadContacts(e.getContacts()).setLoadPhone(e.getPhone()).setLoadCityCode(String.valueOf(e.getCityCode())).setLoadCityName(e.getCityName()).setLoadDetailAddress(e.getDetailAddress()).setLoadLat(e.getLat()).setLoadLng(e.getLng());
                 } else {
                     address.setSort(unloadSort.getAndIncrement());
-                    order.setUnloadName(e.getName()).setUnloadType(e.getType()).setUnloadContacts(e.getContacts())
-                            .setUnloadPhone(e.getPhone()).setUnloadCityCode(String.valueOf(e.getCityCode())).setUnloadCityName(e.getCityName())
-                            .setUnloadDetailAddress(e.getDetailAddress()).setUnloadLat(e.getLat()).setUnloadLng(e.getLng());
+                    order.setUnloadName(e.getName()).setUnloadType(e.getType()).setUnloadContacts(e.getContacts()).setUnloadPhone(e.getPhone()).setUnloadCityCode(String.valueOf(e.getCityCode())).setUnloadCityName(e.getCityName()).setUnloadDetailAddress(e.getDetailAddress()).setUnloadLat(e.getLat()).setUnloadLng(e.getLng());
                 }
                 //地址信息
                 Long addressId = kwoTradeOrderAddressService.add(address);
                 //分配量信息
                 KwoTradeOrderAmount orderAmount = new KwoTradeOrderAmount();
-                orderAmount.setTOrderId(id).setAmount(e.getAmount())
-                        .setTAddressId(addressId);
+                orderAmount.setTOrderId(id).setAmount(e.getAmount()).setTAddressId(addressId);
                 tradeOrderAmountService.add(orderAmount);
             });
         }
@@ -357,12 +335,7 @@ public class KwoTradeOrderService {
      */
     public void addValetOrderDraft(ValetOrderDraftParam param) {
         KwoTradeOrder order = BeanUtil.copyProperties(param, KwoTradeOrder.class);
-        order.setEntId(LoginUserHolder.getEntId())
-                .setTOrderNo(getOrderNo())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setUnit(Objects.nonNull(param.getGoodsInfo()) ? param.getGoodsInfo().getUnit() : null)
-                .setSource(OrderSourceEnum.SALE.getType()).setStatus(OrderStatusEnum.SAVED.getCode());
+        order.setEntId(LoginUserHolder.getEntId()).setTOrderNo(getOrderNo()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setUnit(Objects.nonNull(param.getGoodsInfo()) ? param.getGoodsInfo().getUnit() : null).setSource(OrderSourceEnum.SALE.getType()).setStatus(OrderStatusEnum.SAVED.getCode());
         kwoTradeOrderMapper.insert(order);
         addOtherOrderInfo(order, BeanUtil.copyProperties(param, ValetOrderParam.class), false, true);
     }
@@ -381,17 +354,10 @@ public class KwoTradeOrderService {
         }
         OrderCheckDTO orderCheck = BeanUtil.copyProperties(param, OrderCheckDTO.class);
         getTopEnt(orderCheck, param.getUnitInfo());
-        orderCheck.setGoodsId(goodsInfo.getGoodsId()).setUnitPrice(goodsInfo.getUnitPrice())
-                .setOrderSource(OrderSourceEnum.PURCHASE.getType());
+        orderCheck.setGoodsId(goodsInfo.getGoodsId()).setUnitPrice(goodsInfo.getUnitPrice()).setOrderSource(OrderSourceEnum.PURCHASE.getType());
         orderCheck(orderCheck, false);
         KwoTradeOrder order = BeanUtil.copyProperties(param, KwoTradeOrder.class);
-        order.setEntId(LoginUserHolder.getEntId())
-                .setTOrderNo(getOrderNo())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setUnit(param.getGoodsInfo().getUnit())
-                .setSource(OrderSourceEnum.PURCHASE.getType())
-                .setStatus(OrderStatusEnum.WAIT_ACCEPTED.getCode());
+        order.setEntId(LoginUserHolder.getEntId()).setTOrderNo(getOrderNo()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setUnit(param.getGoodsInfo().getUnit()).setSource(OrderSourceEnum.PURCHASE.getType()).setStatus(OrderStatusEnum.WAIT_ACCEPTED.getCode());
         kwoTradeOrderMapper.insert(order);
         //扣减库存
         HttpResult updateResult = goodsInfoService.updateGoodsAmount(param.getGoodsInfo().getGoodsId(), param.getAmount());
@@ -466,10 +432,7 @@ public class KwoTradeOrderService {
         urls.put(ClientTypeEnum.pc.getValue(), pcUrl);
         urls.put(ClientTypeEnum.app.getValue(), appUrl);
         SckwMessage msg = new SckwMessage(msgEnum);
-        msg.setParams(params)
-                .setMsgUrls(urls)
-                .setUserInfos(userInfos)
-                .setCreateBy(LoginUserHolder.getUserId());
+        msg.setParams(params).setMsgUrls(urls).setUserInfos(userInfos).setCreateBy(LoginUserHolder.getUserId());
         log.info("有新的提醒消息:{}", JSON.toJSONString(msg));
         streamBridge.send("sckw-message", JSON.toJSONString(msg));
     }
@@ -532,11 +495,9 @@ public class KwoTradeOrderService {
             }
             List<FindEntCooperateResVo> entCooperate;
             if (OrderSourceEnum.PURCHASE.getType().equals(param.getOrderSource())) {
-                entCooperate = remoteManageService.findEntCooperate(param.getProcureEntId()
-                        , param.getSupplyEntId(), CooperateTypeEnum.SUPPLIER.getCode());
+                entCooperate = remoteManageService.findEntCooperate(param.getProcureEntId(), param.getSupplyEntId(), CooperateTypeEnum.SUPPLIER.getCode());
             } else {
-                entCooperate = remoteManageService.findEntCooperate(param.getSupplyEntId()
-                        , param.getProcureEntId(), CooperateTypeEnum.PURCHASER.getCode());
+                entCooperate = remoteManageService.findEntCooperate(param.getSupplyEntId(), param.getProcureEntId(), CooperateTypeEnum.PURCHASER.getCode());
             }
             if (CollectionUtils.isEmpty(entCooperate)) {
                 throw new BusinessException("供采双方企业无合作关系!");
@@ -578,19 +539,13 @@ public class KwoTradeOrderService {
     public void addValetOrderSubmit(ValetOrderParam param) {
         OrderCheckDTO orderCheck = BeanUtil.copyProperties(param, OrderCheckDTO.class);
         getTopEnt(orderCheck, param.getUnitInfo());
-        orderCheck.setGoodsId(param.getGoodsInfo().getGoodsId()).setUnitPrice(param.getGoodsInfo().getUnitPrice())
-                .setOrderSource(OrderSourceEnum.SALE.getType());
+        orderCheck.setGoodsId(param.getGoodsInfo().getGoodsId()).setUnitPrice(param.getGoodsInfo().getUnitPrice()).setOrderSource(OrderSourceEnum.SALE.getType());
         orderCheck(orderCheck, false);
         ContractInfo contract = param.getContractInfo();
         contractCheck(contract);
         param.setContractInfo(contract);
         KwoTradeOrder order = BeanUtil.copyProperties(param, KwoTradeOrder.class);
-        order.setEntId(LoginUserHolder.getEntId())
-                .setTOrderNo(getOrderNo())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setUnit(param.getGoodsInfo().getUnit())
-                .setSource(OrderSourceEnum.SALE.getType());
+        order.setEntId(LoginUserHolder.getEntId()).setTOrderNo(getOrderNo()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setUnit(param.getGoodsInfo().getUnit()).setSource(OrderSourceEnum.SALE.getType());
         String contractStatus = contract.getContractStatus();
         if (Objects.equals(contractStatus, ContractStatusEnum.WAIT_SIGNED.getCode())) {
             order.setStatus(OrderStatusEnum.WAIT_SIGNED.getCode());
@@ -607,8 +562,7 @@ public class KwoTradeOrderService {
         }
         //冻结金额
         if (param.getTrading().startsWith("1")) {
-            HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(),
-                    ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
+            HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(), ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
             if (!Objects.equals(HttpStatus.SUCCESS_CODE, freezeResult.getCode())) {
                 throw new BusinessException(freezeResult.getMsg());
             }
@@ -714,11 +668,7 @@ public class KwoTradeOrderService {
         if (Objects.isNull(order)) {
             throw new BusinessException("不存在该订单!");
         }
-        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(
-                List.of(DictTypeEnum.TRADE_TYPE.getType(), DictTypeEnum.PICKUP_TYPE.getType(),
-                        DictTypeEnum.DELIVERY_TYPE.getType(), DictTypeEnum.TORDER_SOURCE.getType(), DictTypeEnum.TORDER_STATUS.getType(),
-                        DictTypeEnum.PRODUCT_NAME_TYPE.getType(), DictTypeEnum.UNIT_TYPE.getType(), DictTypeEnum.TAX_RATE.getType(),
-                        DictTypeEnum.TORDER_UNIT_TYPE.getType(), DictTypeEnum.TORDER_ADDRESS_TYPE.getType(), DictTypeEnum.ADDRESS_TYPE.getType(), DictTypeEnum.CONSIGNMENT_WAY.getType(), DictTypeEnum.CHARGING_TYPE.getType()));
+        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.TRADE_TYPE.getType(), DictTypeEnum.PICKUP_TYPE.getType(), DictTypeEnum.DELIVERY_TYPE.getType(), DictTypeEnum.TORDER_SOURCE.getType(), DictTypeEnum.TORDER_STATUS.getType(), DictTypeEnum.PRODUCT_NAME_TYPE.getType(), DictTypeEnum.UNIT_TYPE.getType(), DictTypeEnum.TAX_RATE.getType(), DictTypeEnum.TORDER_UNIT_TYPE.getType(), DictTypeEnum.TORDER_ADDRESS_TYPE.getType(), DictTypeEnum.ADDRESS_TYPE.getType(), DictTypeEnum.CONSIGNMENT_WAY.getType(), DictTypeEnum.CHARGING_TYPE.getType()));
         Map<String, String> tradeMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         Map<String, String> pickupMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         Map<String, String> deleveryMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
@@ -753,16 +703,7 @@ public class KwoTradeOrderService {
         OrderDetailRes detail = BeanUtil.copyProperties(order, OrderDetailRes.class);
         UserCacheResDto createUser = remoteSystemService.queryUserCacheById(detail.getCreateBy());
         EntCacheResDto ent = remoteSystemService.queryEntCacheById(detail.getEntId());
-        detail.setFirmName(Objects.isNull(ent) ? null : ent.getFirmName())
-                .setCreateByName(Objects.isNull(createUser) ? null : createUser.getName())
-                .setTradingLabel(CollUtil.isNotEmpty(tradeMap) ? tradeMap.get(detail.getTrading()) : null)
-                .setPickupTypeLabel(CollUtil.isNotEmpty(pickupMap) ? pickupMap.get(detail.getPickupType()) : null)
-                .setDeliveryTypeLabel(CollUtil.isNotEmpty(deleveryMap) ? deleveryMap.get(detail.getDeliveryType()) : null)
-                .setSourceLabel(CollUtil.isNotEmpty(sourceMap) ? sourceMap.get(detail.getSource()) : null)
-                .setStatusLabel(CollUtil.isNotEmpty(statusMap) ? statusMap.get(String.valueOf(detail.getStatus())) : null)
-                .setChargeTypeLabel(CollUtil.isNotEmpty(chargeTypeMap) ? chargeTypeMap.get(String.valueOf(detail.getChargeType())) : null)
-                .setConsignmentWayLabel(CollUtil.isNotEmpty(consignmentWayMap) ? consignmentWayMap.get(String.valueOf(detail.getConsignmentWay())) : null)
-        ;
+        detail.setFirmName(Objects.isNull(ent) ? null : ent.getFirmName()).setCreateByName(Objects.isNull(createUser) ? null : createUser.getName()).setTradingLabel(CollUtil.isNotEmpty(tradeMap) ? tradeMap.get(detail.getTrading()) : null).setPickupTypeLabel(CollUtil.isNotEmpty(pickupMap) ? pickupMap.get(detail.getPickupType()) : null).setDeliveryTypeLabel(CollUtil.isNotEmpty(deleveryMap) ? deleveryMap.get(detail.getDeliveryType()) : null).setSourceLabel(CollUtil.isNotEmpty(sourceMap) ? sourceMap.get(detail.getSource()) : null).setStatusLabel(CollUtil.isNotEmpty(statusMap) ? statusMap.get(String.valueOf(detail.getStatus())) : null).setChargeTypeLabel(CollUtil.isNotEmpty(chargeTypeMap) ? chargeTypeMap.get(String.valueOf(detail.getChargeType())) : null).setConsignmentWayLabel(CollUtil.isNotEmpty(consignmentWayMap) ? consignmentWayMap.get(String.valueOf(detail.getConsignmentWay())) : null);
         if (Objects.equals(detail.getChargeType(), 1)) {//按装货量
             detail.setDealAmount(detail.getLoadAmount());
         } else {
@@ -775,16 +716,7 @@ public class KwoTradeOrderService {
             if (Objects.nonNull(goods)) {
                 EntCacheResDto entCache = remoteSystemService.queryEntCacheById(goods.getEntId());
                 GoodsInfoDetailRes goodsDetail = new GoodsInfoDetailRes();
-                goodsDetail.setGoodsTypeLabel(CollUtil.isNotEmpty(prodcutNameMap) ? prodcutNameMap.get(goods.getGoodsType()) : null)
-                        .setUnitLabel(CollUtil.isNotEmpty(unitMap) ? unitMap.get(goods.getUnit()) : null)
-                        .setTaxRateLabel(CollUtil.isNotEmpty(taxRateMap) ? taxRateMap.get(goods.getTaxRate()) : null)
-                        .setGoodsAmount(goods.getAmount())
-                        .setGoodsId(goods.getId()).setCode(goods.getCode()).setName(goods.getName())
-                        .setGoodsType(goods.getGoodsType()).setTaxRate(goods.getTaxRate()).setSpec(goods.getSpec())
-                        .setUnit(goods.getUnit()).setPriceRangeId(orderGoods.getPriceRangeId()).setUnitPrice(orderGoods.getUnitPrice())
-                        .setSkuId(orderGoods.getSkuId()).setCollectionUnitId(goods.getEntId()).setGoodsThumb(goods.getThumb())
-                        .setPrepaidLimit(goods.getPrepaidLimit()).setAdvancePrice(goods.getAdvancePrice())
-                        .setCollectionUnit(Objects.isNull(entCache) ? null : entCache.getFirmName());
+                goodsDetail.setGoodsTypeLabel(CollUtil.isNotEmpty(prodcutNameMap) ? prodcutNameMap.get(goods.getGoodsType()) : null).setUnitLabel(CollUtil.isNotEmpty(unitMap) ? unitMap.get(goods.getUnit()) : null).setTaxRateLabel(CollUtil.isNotEmpty(taxRateMap) ? taxRateMap.get(goods.getTaxRate()) : null).setGoodsAmount(goods.getAmount()).setGoodsId(goods.getId()).setCode(goods.getCode()).setName(goods.getName()).setGoodsType(goods.getGoodsType()).setTaxRate(goods.getTaxRate()).setSpec(goods.getSpec()).setUnit(goods.getUnit()).setPriceRangeId(orderGoods.getPriceRangeId()).setUnitPrice(orderGoods.getUnitPrice()).setSkuId(orderGoods.getSkuId()).setCollectionUnitId(goods.getEntId()).setGoodsThumb(goods.getThumb()).setPrepaidLimit(goods.getPrepaidLimit()).setAdvancePrice(goods.getAdvancePrice()).setCollectionUnit(Objects.isNull(entCache) ? null : entCache.getFirmName());
                 detail.setGoodsInfo(goodsDetail);
                 if (Objects.equals(detail.getChargeType(), 1)) {//按装货量
                     detail.setDealMoney(NumberUtil.mul(orderGoods.getUnitPrice(), detail.getLoadAmount()));
@@ -858,11 +790,10 @@ public class KwoTradeOrderService {
                 contractInfo.setContractId(d.getContractId());
                 contractInfo.setContractNo(d.getContractNo());
                 Optional.ofNullable(contractMap.get(d.getContractId())).ifPresent(c -> {
-                            contractInfo.setContractName(c.getContactName());
-                            contractInfo.setContractSigningWay(c.getSigningWayName());
-                            contractInfo.setContractStatus(c.getStatusName());
-                        }
-                );
+                    contractInfo.setContractName(c.getContactName());
+                    contractInfo.setContractSigningWay(c.getSigningWayName());
+                    contractInfo.setContractStatus(c.getStatusName());
+                });
                 return contractInfo;
             }).collect(Collectors.toList());
             detail.setContractInfoList(collect);
@@ -899,15 +830,13 @@ public class KwoTradeOrderService {
         }
         String source = order.getSource();
         Integer status = order.getStatus();
-        if ((!Objects.equals(status, OrderStatusEnum.SAVED.getCode()) && !Objects.equals(status, OrderStatusEnum.RETURNED.getCode()))
-                && Objects.equals(source, OrderSourceEnum.PURCHASE.getType())) {
+        if ((!Objects.equals(status, OrderStatusEnum.SAVED.getCode()) && !Objects.equals(status, OrderStatusEnum.RETURNED.getCode())) && Objects.equals(source, OrderSourceEnum.PURCHASE.getType())) {
             throw new BusinessException("采购下单只能修改已保存及已退回状态的订单!");
         }
         if (Objects.equals(source, OrderSourceEnum.SALE.getType()) && !Objects.equals(status, OrderStatusEnum.SAVED.getCode())) {
             throw new BusinessException("代客下单只能修改已保存状态的订单!");
         }
-        if (!Objects.equals(0, order.getStatus())
-                && kwoTradeOrderUnitService.entMatch(param.getId(), LoginUserHolder.getEntId(), source)) {
+        if (!Objects.equals(0, order.getStatus()) && kwoTradeOrderUnitService.entMatch(param.getId(), LoginUserHolder.getEntId(), source)) {
             throw new BusinessException("无权限修改此订单!");
         }
         OrderCheckDTO orderCheck = new OrderCheckDTO();
@@ -930,8 +859,7 @@ public class KwoTradeOrderService {
             }
             orderCheck = BeanUtil.copyProperties(param, OrderCheckDTO.class);
             getTopEnt(orderCheck, param.getUnitInfo());
-            orderCheck.setGoodsId(param.getGoodsInfo().getGoodsId()).setUnitPrice(param.getGoodsInfo().getUnitPrice())
-                    .setOrderSource(source);
+            orderCheck.setGoodsId(param.getGoodsInfo().getGoodsId()).setUnitPrice(param.getGoodsInfo().getUnitPrice()).setOrderSource(source);
             orderCheck(orderCheck, false);
             //扣减库存
             HttpResult updateResult = goodsInfoService.updateGoodsAmount(param.getGoodsInfo().getGoodsId(), param.getAmount());
@@ -940,31 +868,15 @@ public class KwoTradeOrderService {
             }
             //代客下单冻结金额
             if (Objects.equals(source, OrderSourceEnum.SALE.getType()) && param.getTrading().startsWith("1")) {
-                HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(),
-                        ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
+                HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(), ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
                 if (!Objects.equals(HttpStatus.SUCCESS_CODE, freezeResult.getCode())) {
                     throw new BusinessException(freezeResult.getMsg());
                 }
             }
         }
-        order.setAmount(param.getAmount()).setUnit(Objects.isNull(param.getGoodsInfo()) ? null : param.getGoodsInfo().getUnit())
-                .setPrice(param.getPrice()).setTrading(param.getTrading()).setPickupType(param.getPickupType())
-                .setDeliveryType(param.getDeliveryType())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setRemark(param.getRemark());
+        order.setAmount(param.getAmount()).setUnit(Objects.isNull(param.getGoodsInfo()) ? null : param.getGoodsInfo().getUnit()).setPrice(param.getPrice()).setTrading(param.getTrading()).setPickupType(param.getPickupType()).setDeliveryType(param.getDeliveryType()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setRemark(param.getRemark());
         LambdaUpdateWrapper<KwoTradeOrder> wrapper = new LambdaUpdateWrapper<>();
-        wrapper.set(KwoTradeOrder::getAmount, order.getAmount())
-                .set(KwoTradeOrder::getUnit, order.getUnit())
-                .set(KwoTradeOrder::getPrice, order.getPrice())
-                .set(KwoTradeOrder::getTrading, order.getTrading())
-                .set(KwoTradeOrder::getPickupType, order.getPickupType())
-                .set(KwoTradeOrder::getDeliveryType, order.getDeliveryType())
-                .set(KwoTradeOrder::getStartTime, order.getStartTime())
-                .set(KwoTradeOrder::getEndTime, order.getEndTime())
-                .set(KwoTradeOrder::getRemark, order.getRemark())
-                .set(KwoTradeOrder::getStatus, order.getStatus())
-                .eq(KwoTradeOrder::getId, order.getId());
+        wrapper.set(KwoTradeOrder::getAmount, order.getAmount()).set(KwoTradeOrder::getUnit, order.getUnit()).set(KwoTradeOrder::getPrice, order.getPrice()).set(KwoTradeOrder::getTrading, order.getTrading()).set(KwoTradeOrder::getPickupType, order.getPickupType()).set(KwoTradeOrder::getDeliveryType, order.getDeliveryType()).set(KwoTradeOrder::getStartTime, order.getStartTime()).set(KwoTradeOrder::getEndTime, order.getEndTime()).set(KwoTradeOrder::getRemark, order.getRemark()).set(KwoTradeOrder::getStatus, order.getStatus()).eq(KwoTradeOrder::getId, order.getId());
         kwoTradeOrderMapper.update(null, wrapper);
         ValetOrderParam valetOrderParam = BeanUtil.copyProperties(param, ValetOrderParam.class);
 
@@ -1097,8 +1009,7 @@ public class KwoTradeOrderService {
     public void acceptanceOrder(AcceptanceOrderParam param) {
         BigDecimal amount = param.getAmount();
         List<UpdateAddressAmountParam> addressAmountParams = param.getAddressAmountParams();
-        BigDecimal totalLoadAmount = addressAmountParams.stream()
-                .map(UpdateAddressAmountParam::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+        BigDecimal totalLoadAmount = addressAmountParams.stream().map(UpdateAddressAmountParam::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
         if (amount.compareTo(totalLoadAmount) != 0) {
             throw new BusinessException("分配卸货量总量与订单总量不相符!");
         }
@@ -1107,8 +1018,7 @@ public class KwoTradeOrderService {
         if (unloadCount > 0) {
             throw new BusinessException("装货地址类型信息有误!");
         }
-        BigDecimal totalUnLoadAmount = loadAddressInfoDto.stream()
-                .map(AddressInfoDto::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+        BigDecimal totalUnLoadAmount = loadAddressInfoDto.stream().map(AddressInfoDto::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
         if (amount.compareTo(totalUnLoadAmount) != 0) {
             throw new BusinessException("分配装货量总量与订单总量不相符!");
         }
@@ -1131,8 +1041,7 @@ public class KwoTradeOrderService {
         }
         List<KwoTradeOrderUnit> units = kwoTradeOrderUnitService.getByOrderId(order.getId());
         Long saleUnitId = param.getSaleUnitParam().getId();
-        KwoTradeOrderUnit saleUnit = units.stream().filter(e -> Objects.equals(e.getId(), saleUnitId) &&
-                Objects.equals(e.getUnitType(), OrderUnitTypeEnum.SALE.getType())).findFirst().orElse(null);
+        KwoTradeOrderUnit saleUnit = units.stream().filter(e -> Objects.equals(e.getId(), saleUnitId) && Objects.equals(e.getUnitType(), OrderUnitTypeEnum.SALE.getType())).findFirst().orElse(null);
         if (Objects.isNull(saleUnit)) {
             throw new BusinessException("我方单位信息异常!");
         }
@@ -1157,8 +1066,7 @@ public class KwoTradeOrderService {
         orderCheck(orderCheck, true);
         //冻结金额
         if (param.getTrading().startsWith("1")) {
-            HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(),
-                    ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
+            HttpResult freezeResult = paymentDubboService.freezeMoney(orderCheck.getProcureTopEntId(), ChannelEnum.getByTrading(param.getTrading()), orderCheck.getSupplyTopEntId(), param.getPrice(), order.getId());
             if (!Objects.equals(HttpStatus.SUCCESS_CODE, freezeResult.getCode())) {
                 throw new BusinessException(freezeResult.getMsg());
             }
@@ -1175,8 +1083,7 @@ public class KwoTradeOrderService {
         } else {
             throw new BusinessException("Invalid contract status");
         }
-        order.setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()));
+        order.setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()));
         kwoTradeOrderMapper.updateById(order);
         //更新商品价格
         kwoTradeOrderGoodsService.updateUnitPrice(param.getId(), param.getUnitPrice());
@@ -1185,8 +1092,7 @@ public class KwoTradeOrderService {
             kwoTradeOrderUnitService.updateById(saleUnit);
         }
         //更新装货地址信息
-        List<Long> oldLoadAddressIds = kwoTradeOrderAddressService.getByOrderIdAndType(param.getId(), OrderAddressTypeEnum.LOAD.getType())
-                .stream().map(KwoTradeOrderAddress::getId).toList();
+        List<Long> oldLoadAddressIds = kwoTradeOrderAddressService.getByOrderIdAndType(param.getId(), OrderAddressTypeEnum.LOAD.getType()).stream().map(KwoTradeOrderAddress::getId).toList();
         if (CollUtil.isNotEmpty(oldLoadAddressIds)) {
             kwoTradeOrderAddressService.delByIds(oldLoadAddressIds);
             tradeOrderAmountService.delByOrderIdAndAddressIds(param.getId(), oldLoadAddressIds);
@@ -1194,14 +1100,12 @@ public class KwoTradeOrderService {
         AtomicInteger loadSort = new AtomicInteger(0);
         loadAddressInfoDto.forEach(e -> {
             KwoTradeOrderAddress address = BeanUtil.copyProperties(e, KwoTradeOrderAddress.class);
-            address.setTOrderId(param.getId()).setTOrderNo(order.getTOrderNo())
-                    .setSort(loadSort.getAndIncrement());
+            address.setTOrderId(param.getId()).setTOrderNo(order.getTOrderNo()).setSort(loadSort.getAndIncrement());
             //地址信息
             Long addressId = kwoTradeOrderAddressService.add(address);
             //分配量信息
             KwoTradeOrderAmount orderAmount = new KwoTradeOrderAmount();
-            orderAmount.setTOrderId(param.getId()).setAmount(e.getAmount())
-                    .setTAddressId(addressId);
+            orderAmount.setTOrderId(param.getId()).setAmount(e.getAmount()).setTAddressId(addressId);
             tradeOrderAmountService.add(orderAmount);
         });
         //更新卸货地址分配量信息
@@ -1223,20 +1127,7 @@ public class KwoTradeOrderService {
         }
         //更新mongodb
         SckwTradeOrder updateParam = BeanUtil.copyProperties(param, SckwTradeOrder.class);
-        updateParam.setTOrderId(param.getId())
-                .setStatus(order.getStatus())
-                .setStartTime(DateUtils.localDateToDateStart(param.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(param.getEndTime()))
-                .setPrice(order.getPrice().doubleValue())
-                .setAmount(order.getAmount().doubleValue())
-                .setUnitPrice(param.getUnitPrice().doubleValue())
-                .setContractId(contractInfo.getContractId())
-                .setContractNo(contractInfo.getContractNo())
-                .setContractName(contractInfo.getContractName())
-                .setContractSigningWay(contractInfo.getContractSigningWay())
-                .setUpdateBy(LoginUserHolder.getUserId())
-                .setUpdateByName(LoginUserHolder.getUserName())
-                .setUpdateTime(new Date());
+        updateParam.setTOrderId(param.getId()).setStatus(order.getStatus()).setStartTime(DateUtils.localDateToDateStart(param.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(param.getEndTime())).setPrice(order.getPrice().doubleValue()).setAmount(order.getAmount().doubleValue()).setUnitPrice(param.getUnitPrice().doubleValue()).setContractId(contractInfo.getContractId()).setContractNo(contractInfo.getContractNo()).setContractName(contractInfo.getContractName()).setContractSigningWay(contractInfo.getContractSigningWay()).setUpdateBy(LoginUserHolder.getUserId()).setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
         saveMongoDb(3, updateParam);
 
     }
@@ -1273,8 +1164,7 @@ public class KwoTradeOrderService {
         }
         //mongodb更新订单状态
         SckwTradeOrder updateParam = new SckwTradeOrder();
-        updateParam.setTOrderId(order.getId()).setStatus(order.getStatus()).setUpdateBy(LoginUserHolder.getUserId())
-                .setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
+        updateParam.setTOrderId(order.getId()).setStatus(order.getStatus()).setUpdateBy(LoginUserHolder.getUserId()).setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
         saveMongoDb(3, updateParam);
         //发送提醒消息
         List<KwoTradeOrderUnit> units = kwoTradeOrderUnitService.getByOrderId(order.getId());
@@ -1292,8 +1182,7 @@ public class KwoTradeOrderService {
     private void rejectOrderSendMsg(List<KwoTradeOrderUnit> units, KwoTradeOrder order) {
         Map<String, Object> map = CollectionUtils.createHashMap();
         map.put("orderNo", order.getTOrderNo());
-        Map<String, KwoTradeOrderUnit> unitMap = units.stream().collect
-                (Collectors.toMap(KwoTradeOrderUnit::getUnitType, Function.identity()));
+        Map<String, KwoTradeOrderUnit> unitMap = units.stream().collect(Collectors.toMap(KwoTradeOrderUnit::getUnitType, Function.identity()));
         KwoTradeOrderUnit purchase = unitMap.get(OrderUnitTypeEnum.PURCHASE.getType());
         KwoTradeOrderUnit supply = unitMap.get(OrderUnitTypeEnum.SALE.getType());
         //给供应企业联系人发消息
@@ -1389,8 +1278,7 @@ public class KwoTradeOrderService {
             remoteContractService.updatePerformed(contract.getContractId(), actualAmount);
             //mongodb更新订单状态
             SckwTradeOrder updateParam = new SckwTradeOrder();
-            updateParam.setTOrderId(order.getId()).setActualAmount(order.getActualAmount().doubleValue()).setStatus(order.getStatus())
-                    .setUpdateBy(LoginUserHolder.getUserId()).setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
+            updateParam.setTOrderId(order.getId()).setActualAmount(order.getActualAmount().doubleValue()).setStatus(order.getStatus()).setUpdateBy(LoginUserHolder.getUserId()).setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
             saveMongoDb(3, updateParam);
         } finally {
             RedissonUtils.unlock(lockKey);
@@ -1416,8 +1304,7 @@ public class KwoTradeOrderService {
         }
         //排除草稿状态权限匹配
         List<Long> filterIds = list.stream().filter(e -> !(Objects.equals(e.getStatus(), 0))).map(KwoTradeOrder::getId).toList();
-        if (CollUtil.isNotEmpty(filterIds) &&
-                kwoTradeOrderUnitService.entBatchMatch(filterIds, LoginUserHolder.getEntId(), String.valueOf(param.getOrderType()))) {
+        if (CollUtil.isNotEmpty(filterIds) && kwoTradeOrderUnitService.entBatchMatch(filterIds, LoginUserHolder.getEntId(), String.valueOf(param.getOrderType()))) {
             throw new BusinessException("无订单操作权限!");
         }
         LambdaUpdateWrapper<KwoTradeOrder> updateWrapper = new LambdaUpdateWrapper<>();
@@ -1431,8 +1318,7 @@ public class KwoTradeOrderService {
         //更新mongodb
         ids.forEach(id -> {
             SckwTradeOrder updateParam = new SckwTradeOrder();
-            updateParam.setTOrderId(id).setDelFlag(Global.YES).setUpdateBy(LoginUserHolder.getUserId())
-                    .setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
+            updateParam.setTOrderId(id).setDelFlag(Global.YES).setUpdateBy(LoginUserHolder.getUserId()).setUpdateByName(LoginUserHolder.getUserName()).setUpdateTime(new Date());
             saveMongoDb(3, updateParam);
         });
 
@@ -1473,8 +1359,7 @@ public class KwoTradeOrderService {
      */
     public List<KwoTradeOrder> getWaitSignByIds(List<Long> tOrderIds) {
         LambdaQueryWrapper<KwoTradeOrder> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwoTradeOrder::getStatus, OrderStatusEnum.WAIT_SIGNED.getCode())
-                .in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getDelFlag, Global.NO);
+        wrapper.eq(KwoTradeOrder::getStatus, OrderStatusEnum.WAIT_SIGNED.getCode()).in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getDelFlag, Global.NO);
         List<KwoTradeOrder> list = kwoTradeOrderMapper.selectList(wrapper);
         return CollUtil.emptyIfNull(list);
     }
@@ -1489,9 +1374,7 @@ public class KwoTradeOrderService {
      */
     public void contractCompletedUpdate(List<Long> tOrderIds, Long updateBy) {
         LambdaUpdateWrapper<KwoTradeOrder> wrapper = new LambdaUpdateWrapper<>();
-        wrapper.in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getStatus, OrderStatusEnum.WAIT_SIGNED.getCode())
-                .eq(KwoTradeOrder::getDelFlag, Global.NO).set(KwoTradeOrder::getUpdateBy, updateBy)
-                .set(KwoTradeOrder::getStatus, OrderStatusEnum.EXECUTING.getCode());
+        wrapper.in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getStatus, OrderStatusEnum.WAIT_SIGNED.getCode()).eq(KwoTradeOrder::getDelFlag, Global.NO).set(KwoTradeOrder::getUpdateBy, updateBy).set(KwoTradeOrder::getStatus, OrderStatusEnum.EXECUTING.getCode());
         kwoTradeOrderMapper.update(null, wrapper);
     }
 
@@ -1516,8 +1399,7 @@ public class KwoTradeOrderService {
             return res;
         }
         //装卸货地址类型分组获取装卸货cityCodes
-        Map<String, List<Integer>> map = addressList.stream().collect(Collectors.
-                groupingBy(KwoTradeOrderAddress::getAddressType, Collectors.mapping(KwoTradeOrderAddress::getCityCode, Collectors.toList())));
+        Map<String, List<Integer>> map = addressList.stream().collect(Collectors.groupingBy(KwoTradeOrderAddress::getAddressType, Collectors.mapping(KwoTradeOrderAddress::getCityCode, Collectors.toList())));
         //装货地址下拉列表树
         List<AreaTreeFrontResDto> loadTree = remoteSystemService.queryAreaTreeFrontByCodeList(map.get(OrderAddressTypeEnum.LOAD.getType()));
         //卸货地址下拉列表树
@@ -1535,8 +1417,7 @@ public class KwoTradeOrderService {
      */
     public List<KwoTradeOrder> associateEnt(Collection<Long> tOrderIds) {
         LambdaQueryWrapper<KwoTradeOrder> wrapper = new LambdaQueryWrapper<>();
-        wrapper.in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getDelFlag, Global.NO)
-                .in(KwoTradeOrder::getStatus, 1, 2, 3, 4);
+        wrapper.in(KwoTradeOrder::getId, tOrderIds).eq(KwoTradeOrder::getDelFlag, Global.NO).in(KwoTradeOrder::getStatus, 1, 2, 3, 4);
         List<KwoTradeOrder> list = kwoTradeOrderMapper.selectList(wrapper);
         return CollUtil.emptyIfNull(list);
     }
@@ -1646,10 +1527,7 @@ public class KwoTradeOrderService {
                 unloadDetailAddressList.add(e.getCityName() + e.getDetailAddress());
             }
         });
-        res.setLoadNameList(loadNameList)
-                .setLoadDetailAddressList(loadDetailAddressList)
-                .setUnloadNameList(unloadNameList)
-                .setUnloadDetailAddressList(unloadDetailAddressList);
+        res.setLoadNameList(loadNameList).setLoadDetailAddressList(loadDetailAddressList).setUnloadNameList(unloadNameList).setUnloadDetailAddressList(unloadDetailAddressList);
         return res;
     }
 
@@ -1692,22 +1570,15 @@ public class KwoTradeOrderService {
         Map<Long, UserCacheResDto> userMap = remoteSystemService.queryUserCacheMapByIds(createByIds);
         Map<Long, KwpGoods> goodsMap = goodsInfoService.getGoodsByIds(goodIdList);
         Map<Long, ContractCommonInfoResDto> contractMap = remoteContractService.queryContractBaseInfo(contracIdList);
-        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(
-                DictTypeEnum.TORDER_STATUS.getType(), DictTypeEnum.TRADE_TYPE.getType(), DictTypeEnum.DELIVERY_TYPE.getType(),
-                DictTypeEnum.PICKUP_TYPE.getType(), DictTypeEnum.TORDER_SOURCE.getType()));
+        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.TORDER_STATUS.getType(), DictTypeEnum.TRADE_TYPE.getType(), DictTypeEnum.DELIVERY_TYPE.getType(), DictTypeEnum.PICKUP_TYPE.getType(), DictTypeEnum.TORDER_SOURCE.getType()));
         Map<String, SysDictResDto> unitType = remoteSystemService.queryDictMapByType(DictTypeEnum.UNIT_TYPE.getType());
         Map<String, String> statusMap, tradeMap, deliveryMap, pickupMap, sourceMap;
         if (CollUtil.isNotEmpty(dict)) {
-            statusMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_STATUS.getType())) ?
-                    dict.get(DictTypeEnum.TORDER_STATUS.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            tradeMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TRADE_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.TRADE_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            deliveryMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.DELIVERY_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.DELIVERY_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            pickupMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.PICKUP_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.PICKUP_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            sourceMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_SOURCE.getType())) ?
-                    dict.get(DictTypeEnum.TORDER_SOURCE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            statusMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_STATUS.getType())) ? dict.get(DictTypeEnum.TORDER_STATUS.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            tradeMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TRADE_TYPE.getType())) ? dict.get(DictTypeEnum.TRADE_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            deliveryMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.DELIVERY_TYPE.getType())) ? dict.get(DictTypeEnum.DELIVERY_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            pickupMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.PICKUP_TYPE.getType())) ? dict.get(DictTypeEnum.PICKUP_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            sourceMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_SOURCE.getType())) ? dict.get(DictTypeEnum.TORDER_SOURCE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
         } else {
             statusMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
             tradeMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
@@ -1761,10 +1632,8 @@ public class KwoTradeOrderService {
                     .setEntrustAmount(setScale(e.getEntrustAmount()))
                     .setActualAmount(setScale(e.getActualAmount()))
                     .setCreateByName(Objects.isNull(userCache) ? null : userCache.getName())
-                    .setLoadName(loadName)
-                    .setLoadAddress(loadAddress)
-                    .setUnloadName(unloadName)
-                    .setUnloadAddress(unloadAddress);
+                    .setLoadName(loadName).setLoadAddress(loadAddress)
+                    .setUnloadName(unloadName).setUnloadAddress(unloadAddress);
             result.add(vo);
         });
         return PageHelperUtil.getPageResult(new PageInfo<>(result), list, pageSize);
@@ -1780,26 +1649,23 @@ public class KwoTradeOrderService {
     public TradeOrderListSelectDTO buildSelectParam(TradeOrderListStatisticParam params) {
         TradeOrderListSelectDTO dto = BeanUtil.copyProperties(params, TradeOrderListSelectDTO.class);
         dto.setEntId(LoginUserHolder.getEntId())
-                .setUserId(LoginUserHolder.getUserId())
+                .setManager(LoginUserHolder.isManager())
+                .setEntList(LoginUserHolder.getChildEntList())
                 .setIsMain(LoginUserHolder.getIsMain());
         //装卸货地址
         String loadCode = params.getShippingAddressCode();
         if (StringUtils.isNotBlank(loadCode) && Objects.nonNull(params.getShippingAddressLevel())) {
             switch (params.getShippingAddressLevel()) {
-                case 1 -> dto.setLoadAddressCode(
-                        loadCode.substring(0, 2).trim());
-                case 2 -> dto.setLoadAddressCode(
-                        loadCode.substring(0, 4).trim());
+                case 1 -> dto.setLoadAddressCode(loadCode.substring(0, 2).trim());
+                case 2 -> dto.setLoadAddressCode(loadCode.substring(0, 4).trim());
                 case 3 -> dto.setLoadAddressCode(loadCode);
             }
         }
         String unloadCode = params.getUnloadingAddressCode();
         if (StringUtils.isNotBlank(unloadCode) && Objects.nonNull(params.getUnloadingAddressLevel())) {
             switch (params.getUnloadingAddressLevel()) {
-                case 1 -> dto.setUnloadAddressCode(
-                        unloadCode.substring(0, 2).trim());
-                case 2 -> dto.setUnloadAddressCode(
-                        unloadCode.substring(0, 4).trim());
+                case 1 -> dto.setUnloadAddressCode(unloadCode.substring(0, 2).trim());
+                case 2 -> dto.setUnloadAddressCode(unloadCode.substring(0, 4).trim());
                 case 3 -> dto.setUnloadAddressCode(unloadCode);
             }
         }
@@ -1858,8 +1724,7 @@ public class KwoTradeOrderService {
         List<TableTop> tableTops = kwoTradeOrderMapper.tradeOrderStatistic(dto, dto.getGoodIds(), LoginUserHolder.getAuthUserIdList());
         Map<Integer, Integer> map = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         if (CollUtil.isNotEmpty(tableTops)) {
-            map = tableTops.stream().collect(Collectors.toMap
-                    (TableTop::getValue, TableTop::getTotal, (k1, k2) -> k2));
+            map = tableTops.stream().collect(Collectors.toMap(TableTop::getValue, TableTop::getTotal, (k1, k2) -> k2));
         }
         List<TableTop> list = new ArrayList<>();
         int count = 0;
@@ -1889,16 +1754,13 @@ public class KwoTradeOrderService {
      */
     public List<TradeOrderAppStatisticVO> appStatistic(TradeOrderAppStatisticParam params) {
         TradeOrderAppStatisticParamDTO dto = new TradeOrderAppStatisticParamDTO();
-        dto.setOrderType(params.getOrderType())
-                .setIsMain(LoginUserHolder.getIsMain())
-                .setEntId(LoginUserHolder.getEntId());
+        dto.setOrderType(params.getOrderType()).setIsMain(LoginUserHolder.getIsMain()).setEntId(LoginUserHolder.getEntId());
         List<Integer> statuses = Arrays.asList(1, 4, 5, 7);
         List<Long> authUserIds = LoginUserHolder.getAuthUserIdList();
         List<TradeOrderAppStatisticVO> tableTops = kwoTradeOrderMapper.appStatistic(dto, statuses, authUserIds);
         Map<Integer, Integer> map = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         if (CollUtil.isNotEmpty(tableTops)) {
-            map = tableTops.stream().collect(Collectors.toMap
-                    (TradeOrderAppStatisticVO::getValue, TradeOrderAppStatisticVO::getTotal, (k1, k2) -> k2));
+            map = tableTops.stream().collect(Collectors.toMap(TradeOrderAppStatisticVO::getValue, TradeOrderAppStatisticVO::getTotal, (k1, k2) -> k2));
         }
         List<TradeOrderAppStatisticVO> statistics = new ArrayList<>();
         for (Integer e : statuses) {
@@ -1930,21 +1792,14 @@ public class KwoTradeOrderService {
         if (CollUtil.isEmpty(orders)) {
             return Collections.emptyList();
         }
-        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(
-                DictTypeEnum.TORDER_STATUS.getType(), DictTypeEnum.PICKUP_TYPE.getType(), DictTypeEnum.DELIVERY_TYPE.getType(),
-                DictTypeEnum.TORDER_SOURCE.getType(), DictTypeEnum.TRADE_TYPE.getType()));
+        Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.TORDER_STATUS.getType(), DictTypeEnum.PICKUP_TYPE.getType(), DictTypeEnum.DELIVERY_TYPE.getType(), DictTypeEnum.TORDER_SOURCE.getType(), DictTypeEnum.TRADE_TYPE.getType()));
         Map<String, String> statusMap, pickupMap, deliveryMap, sourceMap, tradeMap;
         if (CollUtil.isNotEmpty(dict)) {
-            statusMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_STATUS.getType())) ?
-                    dict.get(DictTypeEnum.TORDER_STATUS.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            pickupMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.PICKUP_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.PICKUP_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            deliveryMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.DELIVERY_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.DELIVERY_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            sourceMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_SOURCE.getType())) ?
-                    dict.get(DictTypeEnum.TORDER_SOURCE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
-            tradeMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TRADE_TYPE.getType())) ?
-                    dict.get(DictTypeEnum.TRADE_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            statusMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_STATUS.getType())) ? dict.get(DictTypeEnum.TORDER_STATUS.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            pickupMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.PICKUP_TYPE.getType())) ? dict.get(DictTypeEnum.PICKUP_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            deliveryMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.DELIVERY_TYPE.getType())) ? dict.get(DictTypeEnum.DELIVERY_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            sourceMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_SOURCE.getType())) ? dict.get(DictTypeEnum.TORDER_SOURCE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            tradeMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TRADE_TYPE.getType())) ? dict.get(DictTypeEnum.TRADE_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
         } else {
             statusMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
             pickupMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
@@ -2002,25 +1857,7 @@ public class KwoTradeOrderService {
             ContractCommonInfoResDto contract = contractMap.get(e.getContractId());
             UserCacheResDto userCache = userMap.get(e.getCreateBy());
             BigDecimal waitEntrustAmount = getWaitEntrustAmount(e.getAmount(), e.getEntrustAmount());
-            vo.setStatus(statusMap.get(String.valueOf(vo.getStatus())))
-                    .setGoodsName(Objects.isNull(goods) ? null : goods.getName())
-                    .setGoodsSpec(Objects.isNull(goods) ? null : goods.getSpec())
-                    .setUnitPrice(String.valueOf(setScale(e.getUnitPrice())))
-                    .setAmount(String.valueOf(setScale(e.getAmount())))
-                    .setPrice(String.valueOf(setScale(e.getPrice())))
-                    .setGoodsTaxRate(Objects.isNull(goods) ? null : goods.getTaxRate())
-                    .setEntrustAmount(String.valueOf(setScale(e.getEntrustAmount())))
-                    .setActualAmount(String.valueOf(setScale(e.getActualAmount())))
-                    .setWaitEntrustAmount(String.valueOf(setScale(waitEntrustAmount)))
-                    .setPickupType(pickupMap.get(e.getPickupType()))
-                    .setDeliveryType(deliveryMap.get(e.getDeliveryType()))
-                    .setSource(sourceMap.get(e.getSource()))
-                    .setTrading(tradeMap.get(e.getTrading()))
-                    .setStartTime(Objects.isNull(e.getStartTime()) ? null : e.getStartTime().toString())
-                    .setEndTime(Objects.isNull(e.getEndTime()) ? null : e.getEndTime().toString())
-                    .setContractSigningWay(Objects.isNull(contract) ? null : contract.getSigningWayName())
-                    .setCreateByName(Objects.isNull(userCache) ? null : userCache.getName())
-                    .setCreateTime(com.sckw.excel.utils.DateUtil.getDateTime(e.getCreateTime()));
+            vo.setStatus(statusMap.get(String.valueOf(vo.getStatus()))).setGoodsName(Objects.isNull(goods) ? null : goods.getName()).setGoodsSpec(Objects.isNull(goods) ? null : goods.getSpec()).setUnitPrice(String.valueOf(setScale(e.getUnitPrice()))).setAmount(String.valueOf(setScale(e.getAmount()))).setPrice(String.valueOf(setScale(e.getPrice()))).setGoodsTaxRate(Objects.isNull(goods) ? null : goods.getTaxRate()).setEntrustAmount(String.valueOf(setScale(e.getEntrustAmount()))).setActualAmount(String.valueOf(setScale(e.getActualAmount()))).setWaitEntrustAmount(String.valueOf(setScale(waitEntrustAmount))).setPickupType(pickupMap.get(e.getPickupType())).setDeliveryType(deliveryMap.get(e.getDeliveryType())).setSource(sourceMap.get(e.getSource())).setTrading(tradeMap.get(e.getTrading())).setStartTime(Objects.isNull(e.getStartTime()) ? null : e.getStartTime().toString()).setEndTime(Objects.isNull(e.getEndTime()) ? null : e.getEndTime().toString()).setContractSigningWay(Objects.isNull(contract) ? null : contract.getSigningWayName()).setCreateByName(Objects.isNull(userCache) ? null : userCache.getName()).setCreateTime(com.sckw.excel.utils.DateUtil.getDateTime(e.getCreateTime()));
             list.add(vo);
         });
         return list;
@@ -2196,10 +2033,7 @@ public class KwoTradeOrderService {
         unitList.forEach(e -> {
             KwoTradeOrderUnit unit = BeanUtil.copyProperties(e, KwoTradeOrderUnit.class);
             unit.setId(new IdWorker(1).nextId());
-            unit.setTOrderId(order.getId())
-                    .setUnitType(e.getUnitType())
-                    .setTOrderNo(order.getTOrderNo())
-                    .setTopEntId(e.getEntId());
+            unit.setTOrderId(order.getId()).setUnitType(e.getUnitType()).setTOrderNo(order.getTOrderNo()).setTopEntId(e.getEntId());
             list.add(unit);
         });
         kwoTradeOrderUnitService.insertBatch(list);
@@ -2239,14 +2073,7 @@ public class KwoTradeOrderService {
         order.setAssociateStatement(0);
         order.setChargeType(tradeContractResDto.getUnloadWay());
         order.setConsignmentWay(tradeContractResDto.getConsignment());
-        order.setEntId(LoginUserHolder.getEntId())
-                .setTOrderNo(getOrderNo())
-                .setAmount(tradeOrderParam.getAmount())
-                .setStartTime(DateUtils.localDateToDateStart(tradeOrderParam.getStartTime()))
-                .setEndTime(DateUtils.localDateToDateEnd(tradeOrderParam.getEndTime()))
-                .setSource(OrderSourceEnum.PURCHASE.getType())
-                .setStatus(TradeOrderStatusEnum.AUDIT.getCode())
-                .setRemark(tradeOrderParam.getRemark());
+        order.setEntId(LoginUserHolder.getEntId()).setTOrderNo(getOrderNo()).setAmount(tradeOrderParam.getAmount()).setStartTime(DateUtils.localDateToDateStart(tradeOrderParam.getStartTime())).setEndTime(DateUtils.localDateToDateEnd(tradeOrderParam.getEndTime())).setSource(OrderSourceEnum.PURCHASE.getType()).setStatus(TradeOrderStatusEnum.AUDIT.getCode()).setRemark(tradeOrderParam.getRemark());
         return tradeContractResDto;
     }
 
@@ -2372,32 +2199,31 @@ public class KwoTradeOrderService {
             if (CollUtil.isNotEmpty(list)) {
                 //Map<Long, ContractCommonInfoResDto> contractMap = remoteContractService.queryContractBaseInfo(list.stream().map(KwoTradeOrderTransport::getContractId).collect(Collectors.toList()));
                 List<LogisticInfo> collect = list.stream().map(d -> {
-                            LogisticInfo logisticInfo = new LogisticInfo();
-                            logisticInfo.setContractId(d.getContractId());
-                            logisticInfo.setContractNo(d.getContractNo());
-                            logisticInfo.setContractName("");
-                            logisticInfo.setAcceptCompanyId(d.getEntId());
-                            logisticInfo.setAcceptContactPhone(d.getPhone());
-                            logisticInfo.setAcceptContacts(d.getContacts());
-                            logisticInfo.setAcceptContactsId(d.getContactsId());
-                            logisticInfo.setAcceptCompany(d.getFirmName());
-                            logisticInfo.setPrice(d.getTransportPrice());
-                            logisticInfo.setPriceType(0L);
-                            logisticInfo.setEndTime(LocalDate.now());
-                            logisticInfo.setStartTime(LocalDate.now());
-                            logisticInfo.setAmount(new BigDecimal("0"));
-                            logisticInfo.setAmountUnit("");
-                            logisticInfo.setLoss(new BigDecimal("0"));
-                            logisticInfo.setPayment(0L);
-                            logisticInfo.setSigningWay(0);
-                            logisticInfo.setLossUnit("");
-                            logisticInfo.setBillingMode("");
-                            logisticInfo.setRemark("");
-                            logisticInfo.setType(0);
-
-                            return logisticInfo;
-                        }
-                ).collect(Collectors.toList());
+                    LogisticInfo logisticInfo = new LogisticInfo();
+                    logisticInfo.setContractId(d.getContractId());
+                    logisticInfo.setContractNo(d.getContractNo());
+                    logisticInfo.setContractName("");
+                    logisticInfo.setAcceptCompanyId(d.getEntId());
+                    logisticInfo.setAcceptContactPhone(d.getPhone());
+                    logisticInfo.setAcceptContacts(d.getContacts());
+                    logisticInfo.setAcceptContactsId(d.getContactsId());
+                    logisticInfo.setAcceptCompany(d.getFirmName());
+                    logisticInfo.setPrice(d.getTransportPrice());
+                    logisticInfo.setPriceType(0L);
+                    logisticInfo.setEndTime(LocalDate.now());
+                    logisticInfo.setStartTime(LocalDate.now());
+                    logisticInfo.setAmount(new BigDecimal("0"));
+                    logisticInfo.setAmountUnit("");
+                    logisticInfo.setLoss(new BigDecimal("0"));
+                    logisticInfo.setPayment(0L);
+                    logisticInfo.setSigningWay(0);
+                    logisticInfo.setLossUnit("");
+                    logisticInfo.setBillingMode("");
+                    logisticInfo.setRemark("");
+                    logisticInfo.setType(0);
+
+                    return logisticInfo;
+                }).collect(Collectors.toList());
                 addLogisticOrderParam.setLogisticInfo(collect);
             }
 
@@ -2506,4 +2332,31 @@ public class KwoTradeOrderService {
 
         kwoTradeOrderMapper.updateById(kwoTradeOrder1);
     }
+
+    public List<TradeOrderVo> queryOrder(TradeOrderPara tradeOrderPara) {
+        List<TradeOrderVo> tradeOrderVos = kwoTradeOrderMapper.selectData(tradeOrderPara);
+        if (CollUtil.isNotEmpty(tradeOrderVos)) {
+            Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.PRODUCT_NAME_TYPE.getType(), DictTypeEnum.UNIT_TYPE.getType(), DictTypeEnum.CHARGING_TYPE.getType()));
+            Map<String, String> statusMap, productNameMap, unitMap, chargeTypeMap;
+            if (CollUtil.isNotEmpty(dict)) {
+                statusMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.TORDER_STATUS.getType())) ? dict.get(DictTypeEnum.TORDER_STATUS.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                productNameMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.PRODUCT_NAME_TYPE.getType())) ? dict.get(DictTypeEnum.PRODUCT_NAME_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                unitMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.UNIT_TYPE.getType())) ? dict.get(DictTypeEnum.UNIT_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                chargeTypeMap = CollUtil.isNotEmpty(dict.get(DictTypeEnum.CHARGING_TYPE.getType())) ? dict.get(DictTypeEnum.CHARGING_TYPE.getType()) : new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            } else {
+                statusMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                productNameMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                unitMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
+                chargeTypeMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
+            }
+            tradeOrderVos.forEach(d -> {
+                d.setStatusLabel(statusMap.get(String.valueOf(d.getStatus())));
+                d.setGoodsTypeLabel(productNameMap.get(d.getGoodsType()));
+                d.setChargeTypeLabel(chargeTypeMap.get(String.valueOf(d.getChargeType())));
+                d.setUnitLabel(unitMap.get(String.valueOf(d.getUnit())));
+            });
+            return tradeOrderVos;
+        }
+        return new ArrayList<>();
+    }
 }

+ 65 - 59
sckw-modules/sckw-order/src/main/resources/mapper/KwoTradeOrderMapper.xml

@@ -82,65 +82,32 @@
         <where>
             a.del_flag = 0
 --          数据权限匹配
-<!--            <choose>-->
-<!--                <when test="entIds == null or entIds.size == 0">-->
-<!--                    <if test="query.isMain == 0">-->
-<!--                        and (-->
-<!--                        <if test="query.orderType == 1">-->
-<!--                            <if test="query.entId != null">-->
-<!--                                    d.top_ent_id = #{query.entId}-->
-<!--                            </if>-->
-<!--                            <if test="authUserIds != null and authUserIds.size() > 0">-->
-<!--                                and d.contacts_id in-->
-<!--                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">-->
-<!--                                    #{authUserId}-->
-<!--                                </foreach>-->
-<!--                                or d.create_by in-->
-<!--                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">-->
-<!--                                    #{authUserId}-->
-<!--                                </foreach>-->
-<!--                            </if>-->
-<!--                        </if>-->
-<!--                        <if test="query.orderType == 2">-->
-<!--                            <if test="query.entId != null">-->
-<!--                                e.top_ent_id = #{query.entId}-->
-<!--                            </if>-->
-<!--                            <if test="authUserIds != null and authUserIds.size() > 0">-->
-<!--                                and e.contacts_id in-->
-<!--                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">-->
-<!--                                    #{authUserId}-->
-<!--                                </foreach>-->
-<!--                                or e.create_by in-->
-<!--                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">-->
-<!--                                    #{authUserId}-->
-<!--                                </foreach>-->
-<!--                            </if>-->
-<!--                        </if>-->
-<!--                        )-->
-<!--                    </if>-->
-<!--                    <if test="query.isMain == 1">-->
-<!--                        and (-->
-<!--                        <if test="query.orderType == 1">-->
-<!--                            <if test="query.entId != null">-->
-<!--                                d.top_ent_id = #{query.entId}-->
-<!--                            </if>-->
-<!--                        </if>-->
-<!--                        <if test="query.orderType == 2">-->
-<!--                            <if test="query.entId != null">-->
-<!--                                e.top_ent_id = #{query.entId}-->
-<!--                            </if>-->
-<!--                        </if>-->
-<!--                        )-->
-<!--                    </if>-->
-<!--                </when>-->
-<!--                <otherwise>-->
-<!--                    and a.ent_id in-->
-<!--                    <foreach collection="entIds" separator="," open="(" close=")" item="item">-->
-<!--                        #{item}-->
-<!--                    </foreach>-->
-<!--                </otherwise>-->
-<!--            </choose>-->
-
+            <choose>
+                <when test="query.manager != null and !query.manager">
+                    <if test="query.isMain == 0">
+                        <if test="query.entList != null and query.entList.size() > 0">
+                            and (
+                                d.top_ent_id in
+                            <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
+                                #{authUserId}
+                            </foreach>
+                            )
+                        </if>
+                    </if>
+                    <if test="query.isMain == 1">
+                        <if test="query.entId != null">
+                            and (d.top_ent_id = #{query.entId}
+                                )
+                        </if>
+                    </if>
+                </when>
+            </choose>
+            <if test="query.buyEntId !=null">
+                and d.ent_id = #{query.buyEntId}
+            </if>
+            <if test="query.saleEntId !=null">
+                and e.ent_id = #{query.saleEntId}
+            </if>
             --           状态匹配
             <if test="query.status != null">
                 and a.status = #{query.status}
@@ -786,4 +753,43 @@
             order by amount desc
         </where>
     </select>
+
+    <select id="selectData" resultType="com.sckw.order.api.model.TradeOrderVo">
+        select a.status,
+               a.t_order_no tOrderNo,
+               d.firm_name  buyEntName,
+               e.firm_name  sellEntName,
+               ktog.goods_name,
+               ktog.unit_price,
+               ktog.unit,
+               ktog.goods_type,
+               a.amount,
+               a.price,
+               a.load_amount,
+               a.unload_amount,
+               a.charge_type,
+               a.create_time
+        FROM kwo_trade_order a
+                 LEFT JOIN kwo_trade_order_unit d ON a.id = d.t_order_id AND d.unit_type = '1' AND d.del_flag = 0
+                 LEFT JOIN kwo_trade_order_unit e ON a.id = e.t_order_id AND e.unit_type = '2' AND e.del_flag = 0
+                 left join kwo_trade_order_goods ktog on a.id = ktog.t_order_id and ktog.del_flag = 0
+        <where>
+            a.del_flag = 0
+            <if test="para.startTime != null and para.endTime != null">
+                and a.create_time between #{para.startTime,jdbcType=TIMESTAMP} and #{para.endTime,jdbcType=TIMESTAMP}
+            </if>
+            <if test="para.entId != null and para.entId.size() > 0">
+                and (
+                    d.ent_id in
+                <foreach collection="para.entId" item="item" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+                or e.ent_id in
+                <foreach collection="para.entId" item="item" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+                )
+            </if>
+        </where>
+    </select>
 </mapper>

+ 5 - 0
sckw-modules/sckw-product/src/main/java/com/sckw/product/model/vo/res/GoodsEntInfo.java

@@ -59,4 +59,9 @@ public class GoodsEntInfo implements Serializable {
      */
     @Schema(description = "详细地址")
     private String detailAddress;
+
+    /**
+     * 官网
+     */
+    private String website;
 }

+ 10 - 7
sckw-modules/sckw-product/src/main/java/com/sckw/product/service/KwpGoodsService.java

@@ -9,7 +9,6 @@ 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;
@@ -67,7 +66,6 @@ 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;
 
 /**
@@ -254,6 +252,7 @@ public class KwpGoodsService {
             goodsEntInfo.setEntAddress(supplyEnt.getCityName() + (StrUtil.isNotEmpty(supplyEnt.getDetailAddress()) ? supplyEnt.getDetailAddress() : ""));
             goodsEntInfo.setContacts(supplyEnt.getLegalName());
             goodsEntInfo.setPhone(supplyEnt.getLegalPhone());
+            goodsEntInfo.setWebsite(supplyEnt.getWebsite());
         }
         UserCacheResDto managerInfo = remoteSystemService.queryUserCacheById(detail.getManager());
         if (Objects.nonNull(managerInfo)) {
@@ -1003,7 +1002,11 @@ public class KwpGoodsService {
                 wrapper.notIn(CollUtil.isNotEmpty(longs), KwpGoods::getId, longs);
             }
         }
-        wrapper.last("order by RAND()");
+        if (Objects.nonNull(params.getContractId())) {
+            List<Long> longs = remoteContractService.queryTradeContractInfo(params.getContractId());
+            wrapper.in(CollUtil.isNotEmpty(longs), KwpGoods::getId, longs);
+        }
+        wrapper.orderByAsc(KwpGoods::getId);
         Page<KwpGoods> kwpGoodsPage = kwpGoodsMapper.selectPage(page, wrapper);
         List<KwpGoods> list = kwpGoodsPage.getRecords();
         if (CollectionUtils.isEmpty(list)) {
@@ -1419,24 +1422,24 @@ public class KwpGoodsService {
         }
         List<String> types = Arrays.asList(DictTypeEnum.PRODUCT_NAME_TYPE.getType(), DictTypeEnum.UNIT_TYPE.getType());
         //组装商品参数
-        Map<String,  Map<String, String>> finalValueAndDictResDtoMap = remoteSystemService.queryDictByType(types);
+        Map<String, Map<String, String>> finalValueAndDictResDtoMap = remoteSystemService.queryDictByType(types);
 
         List<GoodsInfoResp.GoodsInfo> goodsInfos = goods.stream()
                 .filter(e -> Objects.equals(e.getStatus(), GoodsStatusEnum.PUT_ON_SHELVES.getCode()))
-                .map(x->KwpGoodsService.getGoodsInfo(x, finalValueAndDictResDtoMap))
+                .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,Map<String,  Map<String, String>> valueAndDictResDtoMap ) {
+    private static GoodsInfoResp.GoodsInfo getGoodsInfo(KwpGoods x, Map<String, Map<String, String>> valueAndDictResDtoMap) {
         GoodsInfoResp.GoodsInfo goodsInfo = new GoodsInfoResp.GoodsInfo();
         goodsInfo.setGoodsId(x.getId());
 
         Map<String, String> productNameMap = valueAndDictResDtoMap.getOrDefault(DictTypeEnum.PRODUCT_NAME_TYPE.getType(), new HashMap<>());
         String productType = productNameMap.get(x.getGoodsType());
-        goodsInfo.setGoodsName(x.getName()+"/"+productType+"/"+x.getSpec());
+        goodsInfo.setGoodsName(x.getName() + "/" + productType + "/" + x.getSpec());
 
         Map<String, String> unitMap = valueAndDictResDtoMap.getOrDefault(DictTypeEnum.UNIT_TYPE.getType(), new HashMap<>());
         goodsInfo.setAmountUnit(unitMap.get(x.getUnit()));

+ 2 - 2
sckw-modules/sckw-system/src/main/java/com/sckw/system/model/pojo/FindPojoParam.java

@@ -32,12 +32,12 @@ public class FindPojoParam extends PageRequest {
     /**
      * 提交开始时间
      */
-    private Date startTime;
+    private String startTime;
 
     /**
      * 提交开始时间
      */
-    private Date endTime;
+    private String endTime;
     /**
      * 提交开始时间
      */

+ 2 - 3
sckw-modules/sckw-system/src/main/java/com/sckw/system/model/vo/req/EntFindPageReqVo.java

@@ -5,7 +5,6 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.util.Date;
-import java.util.List;
 
 /**
  * @author czh
@@ -68,12 +67,12 @@ public class EntFindPageReqVo extends PageRequest implements Serializable {
     /**
      * 提交开始时间
      */
-    private Date startTime;
+    private String startTime;
 
     /**
      * 提交开始时间
      */
-    private Date endTime;
+    private String endTime;
 
     /**
      * 审核开始时间

+ 4 - 1
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

@@ -286,7 +286,10 @@ public class KwsEnterpriseService {
         if (StringUtils.isNotBlank(reqVo.getEntTypes())) {
             findPojoParam.setTypeList(Arrays.stream(reqVo.getEntTypes().split(Global.COMMA)).map(Integer::parseInt).toList());
         }
-
+        if(StrUtil.isNotEmpty(findPojoParam.getStartTime())&&StrUtil.isNotEmpty(findPojoParam.getEndTime())){
+            findPojoParam.setStartTime(findPojoParam.getStartTime()+" 00:00:00");
+            findPojoParam.setEndTime(findPojoParam.getEndTime()+" 23:59:59");
+        }
         return kwsEnterpriseDao.findPojoAndManager(findPojoParam, authEntIdList);
     }