Browse Source

合同查询接口修改

chenxiaofei 6 hours ago
parent
commit
0ceedb75b3

+ 21 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/operateService/KwcContractTradeService.java

@@ -2559,6 +2559,27 @@ public class KwcContractTradeService {
     public List<ContractTradeOrderInfo> queryContractTradeOrder(ContractTradeOrderDto contractTradeOrderDto) {
         log.info("开始查询贸易合同订单,请求参数:{}", JSON.toJSONString(contractTradeOrderDto));
 
+        // 供应商登录时,忽略前端传入的企业ID和企业类型,使用登录信息中的企业信息
+        if (Objects.equals(LoginUserHolder.getEntTypes(), CooperateTypeEnum.SUPPLIER.getCode())) {
+            contractTradeOrderDto.setEntId(LoginUserHolder.getEntId());
+            contractTradeOrderDto.setEntType(LoginUserHolder.getEntTypes());
+            log.debug("供应商登录,使用登录企业ID[{}]和企业类型[{}]进行查询",
+                    contractTradeOrderDto.getEntId(), contractTradeOrderDto.getEntType());
+        } else if (Objects.equals(LoginUserHolder.getEntTypes(), CooperateTypeEnum.PURCHASER.getCode())) {
+            // 采购商登录时,企业ID从商品表获取,忽略前端传入的企业ID
+            if (Objects.isNull(contractTradeOrderDto.getGoodsId())) {
+                throw new BusinessException("商品id不能为空!");
+            }
+            KwpGoods kwpGoods = goodsInfoService.getGoodsById(contractTradeOrderDto.getGoodsId());
+            if (Objects.isNull(kwpGoods) || Objects.isNull(kwpGoods.getEntId())) {
+                throw new BusinessException("商品不存在或商品企业信息缺失!");
+            }
+            contractTradeOrderDto.setEntId(kwpGoods.getEntId());
+            contractTradeOrderDto.setEntType(CooperateTypeEnum.SUPPLIER.getCode());
+            log.debug("采购商登录,使用商品[{}]关联企业ID[{}]进行查询",
+                    contractTradeOrderDto.getGoodsId(), contractTradeOrderDto.getEntId());
+        }
+
         // 1. 参数校验:确保商品ID、企业ID和企业类型不为空
         checkParam(contractTradeOrderDto.getGoodsId(), contractTradeOrderDto.getEntId(), contractTradeOrderDto.getEntType());