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 ++++++++++++++++++++++++++++-------
1 files changed, 28 insertions(+), 7 deletions(-)
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