From d9aac64d061758c77af5ecccce740df43167024e Mon Sep 17 00:00:00 2001 From: liyong <18434998025@163.com> Date: 星期六, 12 七月 2025 13:30:43 +0800 Subject: [PATCH] 基础数据--- 删除做限制,已经引用的无法删除 --- src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 4 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 3fb77dd..020a9cd 100644 --- a/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java +++ b/src/main/java/com/ruoyi/basic/service/impl/SupplierServiceImpl.java @@ -1,5 +1,7 @@ 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.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -9,11 +11,19 @@ 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 com.ruoyi.framework.web.domain.AjaxResult; +import com.ruoyi.purchase.mapper.PurchaseLedgerMapper; +import com.ruoyi.purchase.pojo.PurchaseLedger; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; 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 @@ -21,6 +31,8 @@ @Autowired private SupplierManageMapper supplierMapper; + @Autowired + private PurchaseLedgerMapper purchaseLedgerMapper; /** * 渚涘簲鍟嗘柊澧� @@ -29,17 +41,29 @@ */ @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); } /** * 渚涘簲鍟嗗垹闄� - * @param id + * @param ids * @return */ @Override - public int delSupplier(Integer id) { - return supplierMapper.deleteById(id); + 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); } /** @@ -58,7 +82,7 @@ * @return */ @Override - public int supplierManage(SupplierManage supplierManage) { + public int supplierUpdate(SupplierManage supplierManage) { return supplierMapper.updateById(supplierManage); } @@ -84,4 +108,29 @@ ExcelUtil<SupplierManageExcelDto> util = new ExcelUtil<SupplierManageExcelDto>(SupplierManageExcelDto.class); util.exportExcel(response, supplierManageList, "渚涘簲鍟嗗鍑�"); } + + @Override + public Boolean importData(MultipartFile file) { + + try { + ExcelUtil<SupplierManageExcelDto> util = new ExcelUtil<SupplierManageExcelDto>(SupplierManageExcelDto.class); + List<SupplierManageExcelDto> list = util.importExcel(file.getInputStream()); + ArrayList<SupplierManage> supplierManages = new ArrayList<>(); + list.stream().forEach(dto -> { + 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 true; + }catch (Exception e){ + e.printStackTrace(); + } + return false; + } } -- Gitblit v1.9.3