From 092a98a583c4fe822a3eb4c4dac086f84b16189c Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 26 九月 2025 17:58:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmSupplierServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 50 insertions(+), 1 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 5448866..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,22 +1,29 @@
 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;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
 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>
@@ -31,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;
     }
@@ -48,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());
@@ -73,12 +106,28 @@
         }
         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());
             user.setUserName(dto.getAccount());
             user.setNickName(dto.getSupplierName());
-            user.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
+            if(StringUtils.isNotEmpty(dto.getPassword())){
+                user.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
+            }
             sysUserService.updateUser(user);
         }
         return R.ok();

--
Gitblit v1.7.1