From 0d7d874912d0147376826b55667a1deb6547ed91 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 21 五月 2026 15:25:27 +0800
Subject: [PATCH] Merge branch 'dev_New_pro' into dev_宁夏_英泽防锈
---
src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java | 66 ++++++++++++++++++++++++++++++--
1 files changed, 61 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java b/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java
index a929dda..98b3f23 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java
@@ -1,27 +1,39 @@
package com.ruoyi.basic.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.basic.dto.SupplierManageDto;
import com.ruoyi.basic.excel.SupplierManageExcelDto;
import com.ruoyi.basic.mapper.SupplierManageMapper;
-import com.ruoyi.basic.pojo.Customer;
import com.ruoyi.basic.pojo.SupplierManage;
import com.ruoyi.basic.service.ISupplierService;
+import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.project.system.mapper.SysDictDataMapper;
+import com.ruoyi.purchase.mapper.PurchaseLedgerMapper;
+import com.ruoyi.purchase.pojo.PurchaseLedger;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
-import javax.servlet.http.HttpServletResponse;
+import java.time.LocalDate;
+import java.util.ArrayList;
import java.util.List;
@Service
+@RequiredArgsConstructor
public class SupplierServiceImpl extends ServiceImpl<SupplierManageMapper,SupplierManage> implements ISupplierService {
- @Autowired
- private SupplierManageMapper supplierMapper;
+ private final SupplierManageMapper supplierMapper;
+ private final PurchaseLedgerMapper purchaseLedgerMapper;
+ private final SysDictDataMapper sysDictDataMapper;
/**
* 渚涘簲鍟嗘柊澧�
@@ -30,6 +42,11 @@
*/
@Override
public void saveSupplier(SupplierManage supplierManage) {
+ LambdaQueryWrapper<SupplierManage> supplierManageLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ supplierManageLambdaQueryWrapper.eq(SupplierManage::getSupplierName,supplierManage.getSupplierName());
+ if (supplierMapper.selectCount(supplierManageLambdaQueryWrapper) > 0) {
+ throw new RuntimeException("渚涘簲鍟嗗凡瀛樺湪");
+ }
supplierMapper.insert(supplierManage);
}
@@ -40,8 +57,13 @@
*/
@Override
public int delSupplier(List<Integer> ids) {
+ List<PurchaseLedger> purchaseLedgers = purchaseLedgerMapper.selectList(new QueryWrapper<PurchaseLedger>().lambda().in(PurchaseLedger::getSupplierId, ids));
+ if (purchaseLedgers.size() > 0) {
+ throw new RuntimeException("渚涘簲鍟嗗凡瀛樺湪閲囪喘鍚堝悓");
+ }
LambdaQueryWrapper<SupplierManage> delWrapper = new LambdaQueryWrapper<>();
delWrapper.in(SupplierManage::getId, ids);
+
return supplierMapper.delete(delWrapper);
}
@@ -87,4 +109,38 @@
ExcelUtil<SupplierManageExcelDto> util = new ExcelUtil<SupplierManageExcelDto>(SupplierManageExcelDto.class);
util.exportExcel(response, supplierManageList, "渚涘簲鍟嗗鍑�");
}
+
+ @Override
+ public R importData(MultipartFile file) {
+ try {
+ ExcelUtil<SupplierManageExcelDto> util = new ExcelUtil<SupplierManageExcelDto>(SupplierManageExcelDto.class);
+ List<SupplierManageExcelDto> list = util.importExcel(file.getInputStream());
+
+ if (CollectionUtils.isEmpty(list)) {
+ return R.fail("妯℃澘閿欒鎴栧鍏ユ暟鎹负绌�");
+ }
+
+ ArrayList<SupplierManage> supplierManages = new ArrayList<>();
+ list.stream().forEach(dto -> {
+ // 渚涘簲鍟嗙被鍨嬫槸鍚﹀瓨鍦� 锛堢敳涔欎笝涓侊級
+ String supplierType = dto.getSupplierType();
+ if (!supplierType.equals("鐢�") && !supplierType.equals("涔�") && !supplierType.equals("涓�") && !supplierType.equals("涓�")) {
+ throw new RuntimeException("渚涘簲鍟嗙被鍨� " + supplierType + " 涓嶅瓨鍦紒");
+ }
+ SupplierManage supplierManage = new SupplierManage();
+ BeanUtils.copyProperties(dto,supplierManage);
+ supplierManage.setMaintainTime(LocalDate.now());
+ Long userId = SecurityUtils.getLoginUser().getUser().getUserId();
+
+ supplierManage.setMaintainUserId(Integer.parseInt(userId+""));
+ supplierManages.add(supplierManage);
+ });
+
+ this.saveOrUpdateBatch(supplierManages);
+ return R.ok("瀵煎叆鎴愬姛");
+ }catch (Exception e){
+ e.printStackTrace();
+ return R.fail(e.getMessage());
+ }
+ }
}
--
Gitblit v1.9.3