czh пре 2 година
родитељ
комит
2c60364bcb

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

@@ -13,5 +13,5 @@ import java.util.Map;
 public interface RemoteContractService {
 
 
-    Map<Long, ContractCommonInfoResDto> queryContractCommonInfo(List<Long> contractId);
+    Map<Long, ContractCommonInfoResDto> queryContractBaseInfo(List<Long> contractId);
 }

+ 8 - 3
sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/model/dto/res/ContractCommonInfoResDto.java

@@ -4,6 +4,7 @@ import lombok.Data;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * @author czh
@@ -34,12 +35,16 @@ public class ContractCommonInfoResDto implements Serializable {
     /**
      * 签约方式
      */
-    private String signingWay;
+    private Integer signingWay;
 
     /**
-     * 签约方式code
+     * 签约方式
      */
-    private Integer signingWayCode;
+    private String signingWayName;
 
+    /**
+     * 企业id
+     */
+    private List<EntInfo> entInfoList;
 
 }

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

@@ -0,0 +1,28 @@
+package com.sckw.contract.api.model.dto.res;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * @author czh
+ * @desc 企业信息
+ * @date 2023/7/20
+ */
+@Data
+public class EntInfo implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -3726894338861128957L;
+
+    /**
+     * 企业名
+     */
+    private String entName;
+
+    /**
+     * 企业id
+     */
+    private Long entId;
+}

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

@@ -0,0 +1,95 @@
+package com.sckw.contract.dubbo;
+import com.google.common.collect.Lists;
+
+import com.sckw.contract.api.RemoteContractService;
+import com.sckw.contract.api.model.dto.res.ContractCommonInfoResDto;
+import com.sckw.contract.api.model.dto.res.EntInfo;
+import com.sckw.contract.dao.KwcContractLogisticsMapper;
+import com.sckw.contract.dao.KwcContractLogisticsUnitMapper;
+import com.sckw.contract.dao.KwcContractTradeMapper;
+import com.sckw.contract.model.entity.KwcContractLogistics;
+import com.sckw.contract.model.entity.KwcContractLogisticsUnit;
+import com.sckw.contract.model.entity.KwcContractTrade;
+import com.sckw.contract.service.KwcContractLogisticsUnitService;
+import com.sckw.core.model.enums.SigningWayEnum;
+import com.sckw.core.utils.CollectionUtils;
+import org.apache.dubbo.config.annotation.DubboService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@DubboService(group = "design", version = "2.0.0")
+@Service
+public class RemoteContractServiceImpl implements RemoteContractService {
+
+    @Autowired
+    private KwcContractLogisticsMapper kwcContractLogisticsMapper;
+
+    @Autowired
+    private KwcContractLogisticsUnitService kwcContractLogisticsUnitService;
+
+    @Autowired
+    private KwcContractTradeMapper kwcContractTradeMapper;
+
+    @Override
+    public Map<Long, ContractCommonInfoResDto> queryContractBaseInfo(List<Long> contractIds) {
+        HashMap<Long, ContractCommonInfoResDto> map = new HashMap<>();
+        for (Long contractId : contractIds) {
+            KwcContractLogistics kwcContractLogistics = kwcContractLogisticsMapper.selectById(contractId);
+            if (Objects.nonNull(kwcContractLogistics)) {
+                map.put(contractId, fillContractLogistics(kwcContractLogistics));
+                continue;
+            }
+
+            KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(contractId);
+            if (Objects.nonNull(kwcContractTrade)) {
+                map.put(contractId, fillContractTrade(kwcContractTrade));
+            }
+        }
+        return map;
+    }
+
+    private ContractCommonInfoResDto fillContractLogistics(KwcContractLogistics kwcContractLogistics) {
+        ContractCommonInfoResDto contractCommonInfoResDto = new ContractCommonInfoResDto();
+        List<EntInfo> entList = new ArrayList<>();
+        contractCommonInfoResDto.setId(kwcContractLogistics.getId());
+        contractCommonInfoResDto.setContactName(kwcContractLogistics.getName());
+        contractCommonInfoResDto.setContractCode(kwcContractLogistics.getContractNo());
+        contractCommonInfoResDto.setSigningWay(kwcContractLogistics.getSigningWay());
+        contractCommonInfoResDto.setSigningWayName(SigningWayEnum.getName(kwcContractLogistics.getSigningWay()).getName());
+        contractCommonInfoResDto.setEntInfoList(entList);
+        List<KwcContractLogisticsUnit> kwcContractLogisticsUnits = kwcContractLogisticsUnitService.queryByContractId(kwcContractLogistics.getId());
+        if (CollectionUtils.isNotEmpty(kwcContractLogisticsUnits)) {
+            for (KwcContractLogisticsUnit kwcContractLogisticsUnit : kwcContractLogisticsUnits) {
+                EntInfo entInfo = new EntInfo();
+                entInfo.setEntId(kwcContractLogisticsUnit.getEntId());
+                entInfo.setEntName(kwcContractLogisticsUnit.getFirmName());
+                entList.add(entInfo);
+            }
+        }
+        return contractCommonInfoResDto;
+    }
+
+
+    private ContractCommonInfoResDto fillContractTrade(KwcContractTrade kwcContractTrade) {
+        List<EntInfo> entList = new ArrayList<>();
+        ContractCommonInfoResDto contractCommonInfoResDto = new ContractCommonInfoResDto();
+        contractCommonInfoResDto.setId(kwcContractTrade.getId());
+        contractCommonInfoResDto.setContactName(kwcContractTrade.getName());
+        contractCommonInfoResDto.setContractCode(kwcContractTrade.getContractNo());
+        contractCommonInfoResDto.setSigningWay(kwcContractTrade.getSigningWay());
+        contractCommonInfoResDto.setSigningWayName(SigningWayEnum.getName(kwcContractTrade.getSigningWay()).getName());
+        contractCommonInfoResDto.setEntInfoList(entList);
+        List<KwcContractLogisticsUnit> kwcContractLogisticsUnits = kwcContractLogisticsUnitService.queryByContractId(kwcContractTrade.getId());
+        if (CollectionUtils.isNotEmpty(kwcContractLogisticsUnits)) {
+            for (KwcContractLogisticsUnit kwcContractLogisticsUnit : kwcContractLogisticsUnits) {
+                EntInfo entInfo = new EntInfo();
+                entInfo.setEntId(kwcContractLogisticsUnit.getEntId());
+                entInfo.setEntName(kwcContractLogisticsUnit.getFirmName());
+                entList.add(entInfo);
+            }
+        }
+        return contractCommonInfoResDto;
+    }
+}

+ 9 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/model/vo/res/LogisticsGoodsInfoResVo.java

@@ -82,5 +82,14 @@ public class LogisticsGoodsInfoResVo implements Serializable {
      */
     private String lossUnitName;
 
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 商品id
+     */
+    private Long goodsId;
 
 }

+ 3 - 1
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsService.java

@@ -212,7 +212,9 @@ public class KwcContractLogisticsService {
                 logisticsGoodsInfoResVo.setPriceUnit(kwcContractLogisticsGoods.getPriceUnit());
                 logisticsGoodsInfoResVo.setDeficitPrice(kwcContractLogisticsGoods.getDeficitPrice());
                 logisticsGoodsInfoResVo.setDeficitUnit(kwcContractLogisticsGoods.getDeficitUnit());
-                KwpGoods kwpGoods = goodsMap.get(kwcContractLogisticsGoods.getId());
+                logisticsGoodsInfoResVo.setGoodsId(kwcContractLogisticsGoods.getGoodsId());
+                logisticsGoodsInfoResVo.setId(kwcContractLogisticsGoods.getId());
+                KwpGoods kwpGoods = goodsMap.get(kwcContractLogisticsGoods.getGoodsId());
                 if (Objects.nonNull(kwpGoods)) {
                     logisticsGoodsInfoResVo.setGoodsName(kwpGoods.getName());
                 }