From 9fcfdf5aef9c75e0b75f6e5b6ec9badb650914dc Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 26 九月 2025 17:58:26 +0800
Subject: [PATCH] 供应商仓库接口修改

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java |   46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java
index 8166fa1..b5d8fb8 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java
@@ -1,5 +1,6 @@
 package com.ruoyi.system.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.core.domain.R;
@@ -9,15 +10,20 @@
 import com.ruoyi.system.dto.TCrmSupplierDTO;
 import com.ruoyi.system.mapper.TCrmSupplierMapper;
 import com.ruoyi.system.model.TCrmSupplier;
+import com.ruoyi.system.model.TCrmSupplierToWarehouse;
 import com.ruoyi.system.query.TCrmSupplierQuery;
 import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.system.service.TCrmSupplierService;
+import com.ruoyi.system.service.TCrmSupplierToWarehouseService;
 import com.ruoyi.system.vo.TCrmSupplierVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -32,11 +38,25 @@
 
     @Autowired
     private ISysUserService sysUserService;
+    @Autowired
+    private TCrmSupplierToWarehouseService crmSupplierToWarehouseService;
 
     @Override
     public PageInfo<TCrmSupplierVO> pageList(TCrmSupplierQuery query) {
         PageInfo<TCrmSupplierVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
         List<TCrmSupplierVO> list = this.baseMapper.pageList(query,pageInfo);
+        if(CollectionUtils.isEmpty(list)){
+            return pageInfo;
+        }
+//        List<String> supplierIds = list.stream().map(TCrmSupplierVO::getId).collect(Collectors.toList());
+//        List<TCrmSupplierToWarehouse> crmSupplierToWarehouses = crmSupplierToWarehouseService.list(Wrappers.lambdaQuery(TCrmSupplierToWarehouse.class)
+//                .eq(TCrmSupplierToWarehouse::getSupplierId, supplierIds));
+//        for (TCrmSupplierVO crmSupplierVO : list) {
+//            List<TCrmSupplierToWarehouse> supplierToWarehouses = crmSupplierToWarehouses.stream().filter(crmSupplierToWarehouse -> crmSupplierToWarehouse.getSupplierId().equals(crmSupplierVO.getId())).collect(Collectors.toList());
+//            if(!CollectionUtils.isEmpty(supplierToWarehouses)){
+//                crmSupplierVO.setWarehouseId(warehouseIds);
+//            }
+//        }
         pageInfo.setRecords(list);
         return pageInfo;
     }
@@ -49,6 +69,18 @@
             return R.fail(dto.getAccount()+"-账号已存在");
         }
         this.save(dto);
+        // 添加供应商和仓库关联关系
+//        TCrmSupplierToWarehouse crmSupplierToWarehouse = new TCrmSupplierToWarehouse();
+//        List<String> warehouseIds = dto.getWarehouseIds();
+//        if(!CollectionUtils.isEmpty(warehouseIds)){
+//            List<TCrmSupplierToWarehouse> crmSupplierToWarehouses = new ArrayList<>();
+//            for (String warehouseId : warehouseIds) {
+//                crmSupplierToWarehouse.setSupplierId(dto.getId());
+//                crmSupplierToWarehouse.setWarehouseId(warehouseId);
+//                crmSupplierToWarehouses.add(crmSupplierToWarehouse);
+//            }
+//            crmSupplierToWarehouseService.saveBatch(crmSupplierToWarehouses);
+//        }
         // 添加账号
         SysUser user = new SysUser();
         user.setUserName(dto.getAccount());
@@ -74,6 +106,20 @@
         }
         SysUser user = sysUserService.selectUserById(dto.getUserId());
         this.updateById(dto);
+//        // 删除供应商和仓库关联关系
+//        crmSupplierToWarehouseService.remove(Wrappers.lambdaQuery(TCrmSupplierToWarehouse.class).eq(TCrmSupplierToWarehouse::getSupplierId, dto.getId()));
+//        // 添加供应商和仓库关联关系
+//        List<String> warehouseIds = dto.getWarehouseIds();
+//        if(!CollectionUtils.isEmpty(warehouseIds)){
+//            List<TCrmSupplierToWarehouse> crmSupplierToWarehouses = new ArrayList<>();
+//            for (String warehouseId : warehouseIds) {
+//                TCrmSupplierToWarehouse crmSupplierToWarehouse = new TCrmSupplierToWarehouse();
+//                crmSupplierToWarehouse.setSupplierId(dto.getId());
+//                crmSupplierToWarehouse.setWarehouseId(warehouseId);
+//                crmSupplierToWarehouses.add(crmSupplierToWarehouse);
+//            }
+//            crmSupplierToWarehouseService.saveBatch(crmSupplierToWarehouses);
+//        }
         if(Objects.nonNull(user)){
             // 修改账号
             user.setPhonenumber(dto.getPhone());

--
Gitblit v1.7.1