From 5ba8934c35a1ad0378b09f397ea2f285ceac300a Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 28 五月 2026 13:16:00 +0800
Subject: [PATCH] 修改厂家导入

---
 src/main/java/com/ruoyi/stock/service/impl/ManufacturerServiceImpl.java |   35 ++++++++++++++---
 src/main/java/com/ruoyi/stock/controller/ManufacturerController.java    |   36 ++++++++----------
 src/main/java/com/ruoyi/stock/service/ManufacturerService.java          |    4 +
 3 files changed, 47 insertions(+), 28 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/controller/ManufacturerController.java b/src/main/java/com/ruoyi/stock/controller/ManufacturerController.java
index 4d6fb53..9fd4e3a 100644
--- a/src/main/java/com/ruoyi/stock/controller/ManufacturerController.java
+++ b/src/main/java/com/ruoyi/stock/controller/ManufacturerController.java
@@ -4,7 +4,7 @@
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
-import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.framework.web.domain.R;
 import com.ruoyi.stock.dto.ManufacturerDto;
 import com.ruoyi.stock.execl.ManufacturerExcelDto;
 import com.ruoyi.stock.pojo.Manufacturer;
@@ -43,9 +43,9 @@
     @PostMapping("/add")
     @Log(title = "鍘傚-鏂板", businessType = BusinessType.INSERT)
     @Operation(summary = "鏂板鍘傚")
-    public AjaxResult add(@RequestBody Manufacturer manufacturer) {
+    public R add(@RequestBody Manufacturer manufacturer) {
         manufacturerService.saveManufacturer(manufacturer);
-        return AjaxResult.success();
+        return R.ok();
     }
 
     /**
@@ -56,12 +56,12 @@
     @DeleteMapping("/del")
     @Log(title = "鍘傚-鍒犻櫎", businessType = BusinessType.DELETE)
     @Operation(summary = "鍒犻櫎鍘傚")
-    public AjaxResult delManufacturer(@RequestBody List<Long> ids) {
+    public R delManufacturer(@RequestBody List<Long> ids) {
         if(CollectionUtils.isEmpty(ids)){
-            return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+            return R.fail("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
         }
         manufacturerService.delManufacturer(ids);
-        return AjaxResult.success();
+        return R.ok();
     }
 
     /**
@@ -72,8 +72,8 @@
     @GetMapping("/{id}")
     @Log(title = "鍘傚-璇︽儏", businessType = BusinessType.OTHER)
     @Operation(summary = "鍘傚璇︽儏")
-    public AjaxResult manufacturerDetail(@PathVariable("id") Long id) {
-        return AjaxResult.success(manufacturerService.manufacturerDetail(id));
+    public R manufacturerDetail(@PathVariable("id") Long id) {
+        return R.ok(manufacturerService.manufacturerDetail(id));
     }
 
     /**
@@ -84,9 +84,9 @@
     @PostMapping("/update")
     @Log(title = "鍘傚-淇敼", businessType = BusinessType.UPDATE)
     @Operation(summary = "淇敼鍘傚")
-    public AjaxResult update(@RequestBody Manufacturer manufacturer) {
+    public R update(@RequestBody Manufacturer manufacturer) {
         manufacturerService.manufacturerUpdate(manufacturer);
-        return AjaxResult.success();
+        return R.ok();
     }
 
     /**
@@ -98,8 +98,8 @@
     @GetMapping("/listPage")
     @Log(title = "鍘傚-鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER)
     @Operation(summary = "鍘傚鍒嗛〉鏌ヨ")
-    public AjaxResult manufacturerListPage(Page page, ManufacturerDto manufacturerDto) {
-        return AjaxResult.success(manufacturerService.manufacturerListPage(page, manufacturerDto));
+    public R manufacturerListPage(Page page, ManufacturerDto manufacturerDto) {
+        return R.ok(manufacturerService.manufacturerListPage(page, manufacturerDto));
     }
 
     /**
@@ -132,12 +132,8 @@
     @PostMapping("/import")
     @Log(title = "鍘傚-瀵煎叆", businessType = BusinessType.IMPORT)
     @Operation(summary = "瀵煎叆鍘傚")
-    public AjaxResult importData(MultipartFile file) {
-        Boolean b = manufacturerService.importData(file);
-        if (b) {
-            return AjaxResult.success("瀵煎叆鎴愬姛");
-        }
-        return AjaxResult.error("瀵煎叆澶辫触");
+    public R importData(MultipartFile file) {
+        return manufacturerService.importData(file);
     }
 
     /**
@@ -147,7 +143,7 @@
     @GetMapping("/getOptions")
     @Log(title = "鍘傚-閫夐」鎺ュ彛", businessType = BusinessType.OTHER)
     @Operation(summary = "鑾峰彇鍘傚閫夐」")
-    public AjaxResult getOptions() {
-        return AjaxResult.success(manufacturerService.list());
+    public R getOptions() {
+        return R.ok(manufacturerService.list());
     }
 }
diff --git a/src/main/java/com/ruoyi/stock/service/ManufacturerService.java b/src/main/java/com/ruoyi/stock/service/ManufacturerService.java
index dded3ee..2cd3a15 100644
--- a/src/main/java/com/ruoyi/stock/service/ManufacturerService.java
+++ b/src/main/java/com/ruoyi/stock/service/ManufacturerService.java
@@ -3,6 +3,8 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.framework.web.domain.R;
 import com.ruoyi.stock.dto.ManufacturerDto;
 import com.ruoyi.stock.pojo.Manufacturer;
 import jakarta.servlet.http.HttpServletResponse;
@@ -67,5 +69,5 @@
      * @param file
      * @return
      */
-    Boolean importData(MultipartFile file);
+    R importData(MultipartFile file);
 }
diff --git a/src/main/java/com/ruoyi/stock/service/impl/ManufacturerServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/ManufacturerServiceImpl.java
index db79c2d..55c8a6b 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/ManufacturerServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/ManufacturerServiceImpl.java
@@ -10,6 +10,10 @@
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.project.system.domain.SysUser;
+import com.ruoyi.project.system.mapper.SysUserMapper;
 import com.ruoyi.stock.dto.ManufacturerDto;
 import com.ruoyi.stock.execl.ManufacturerExcelDto;
 import com.ruoyi.stock.mapper.ManufacturerMapper;
@@ -43,6 +47,7 @@
 
     private final StockInventoryMapper stockInventoryMapper;
     private final ManufacturerMapper manufacturerMapper;
+    private final SysUserMapper sysUserMapper;
 
     /**
      * 鍘傚晢鏂板
@@ -53,7 +58,7 @@
         LambdaQueryWrapper<Manufacturer> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(Manufacturer::getName,manufacturer.getName());
         if (baseMapper.selectCount(queryWrapper) > 0) {
-            throw new RuntimeException("渚涘簲鍟嗗凡瀛樺湪");
+            throw new RuntimeException("鍘傚宸插瓨鍦�");
         }
 
         baseMapper.insert(manufacturer);
@@ -109,7 +114,7 @@
     public void manufacturerExport(HttpServletResponse response, ManufacturerDto manufacturerDto) {
         List<ManufacturerExcelDto> list = manufacturerMapper.manufacturerExportList(manufacturerDto);
         ExcelUtil<ManufacturerExcelDto> util = new ExcelUtil<>(ManufacturerExcelDto.class);
-        util.exportExcel(response, list, "鍘傚晢鏁版嵁");
+        util.exportExcel(response, list, "鍘傚鏁版嵁");
     }
 
     /**
@@ -117,23 +122,39 @@
      */
     @Override
     @Transactional
-    public Boolean importData(MultipartFile file) {
+    public R importData(MultipartFile file) {
         try {
             ExcelUtil<ManufacturerExcelDto> util = new ExcelUtil<>(ManufacturerExcelDto.class);
             List<ManufacturerExcelDto> list = util.importExcel(file.getInputStream());
             ArrayList<Manufacturer> manufacturers = new ArrayList<>();
             list.stream().forEach(dto -> {
                 Manufacturer manufacturer = new Manufacturer();
-                BeanUtils.copyProperties(dto,manufacturer);
+                BeanUtils.copyProperties(dto, manufacturer);
                 manufacturer.setMaintainTime(LocalDate.now());
-                manufacturer.setMaintainUserId(SecurityUtils.getLoginUser().getUser().getUserId());
+
+                // 妫�鏌ュ巶瀹跺悕绉版槸鍚﹂噸澶�
+                LambdaQueryWrapper<Manufacturer> queryWrapper = new LambdaQueryWrapper<>();
+                queryWrapper.eq(Manufacturer::getName, manufacturer.getName());
+                if (baseMapper.selectCount(queryWrapper) > 0) {
+                    throw new RuntimeException("鍘傚鍚嶇О宸插瓨鍦�: " + manufacturer.getName());
+                }
+
+                if (StringUtils.isEmpty(dto.getMaintainUserName())) {
+                    manufacturer.setMaintainUserId(SecurityUtils.getLoginUser().getUser().getUserId());
+                } else {
+                    SysUser sysUser = sysUserMapper.selectOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getNickName, dto.getMaintainUserName()));
+                    if (sysUser == null) {
+                        throw new RuntimeException("缁存姢浜轰笉瀛樺湪: " + dto.getMaintainUserName());
+                    }
+                    manufacturer.setMaintainUserId(sysUser.getUserId());
+                }
                 manufacturers.add(manufacturer);
             });
             this.saveOrUpdateBatch(manufacturers);
-            return true;
+            return R.ok("瀵煎叆鎴愬姛");
         } catch (Exception e) {
             log.error("瀵煎叆澶辫触", e);
-            return false;
+            return R.fail("瀵煎叆澶辫触: " + e.getMessage());
         }
     }
 }

--
Gitblit v1.9.3