From 64c5103ed52d6c07a3abaaf8cc62a2b5b7b4d249 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期五, 17 四月 2026 13:08:13 +0800
Subject: [PATCH] fix: 其他金额被销售台账引用时,删除做限制提示
---
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductProcessServiceImpl.java | 28 ++++++++++++++++++++++++++++
1 files changed, 28 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductProcessServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductProcessServiceImpl.java
index 556fcb4..ba09b0a 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductProcessServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductProcessServiceImpl.java
@@ -2,11 +2,16 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.sales.mapper.SalesLedgerProductProcessBindMapper;
import com.ruoyi.sales.pojo.SalesLedgerProductProcess;
import com.ruoyi.sales.mapper.SalesLedgerProductProcessMapper;
+import com.ruoyi.sales.pojo.SalesLedgerProductProcessBind;
import com.ruoyi.sales.service.ISalesLedgerProductProcessService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
/**
@@ -20,6 +25,9 @@
@Service
public class SalesLedgerProductProcessServiceImpl extends ServiceImpl<SalesLedgerProductProcessMapper, SalesLedgerProductProcess> implements ISalesLedgerProductProcessService {
+ @Autowired
+ private SalesLedgerProductProcessBindMapper salesLedgerProductProcessBindMapper;
+
@Override
public Page<SalesLedgerProductProcess> salesLedgerProductProcessList(Page<SalesLedgerProductProcess> page, String name) {
LambdaQueryWrapper<SalesLedgerProductProcess> wrapper = new LambdaQueryWrapper<>();
@@ -30,19 +38,39 @@
}
@Override
+ @Transactional(rollbackFor = Exception.class)
public void addProcess(SalesLedgerProductProcess process) {
checkDuplicate(process.getProcessName(), null, process.getProcessName());
this.save(process);
+ if (!StringUtils.hasText(process.getCode())) {
+ process.setCode("P" + process.getId());
+ this.updateById(process);
+ }
}
@Override
+ @Transactional(rollbackFor = Exception.class)
public void updateProcess(SalesLedgerProductProcess process) {
checkDuplicate(process.getProcessName(), process.getId(), process.getProcessName());
this.updateById(process);
}
@Override
+ @Transactional(rollbackFor = Exception.class)
public void deleteProcess(Integer id) {
+ if (id == null) {
+ throw new ServiceException("鍒犻櫎澶辫触,鍒犻櫎鏁版嵁涓嶈兘涓虹┖");
+ }
+ SalesLedgerProductProcess salesLedgerProductProcess = baseMapper.selectById(id);
+ if (salesLedgerProductProcess == null) {
+ throw new ServiceException("鍒犻櫎澶辫触,璇ラ澶栧姞宸ラ渶姹備笉瀛樺湪");
+ }
+ // 鏌ョ湅鏄惁琚紩鐢�
+ Long selectedCount = salesLedgerProductProcessBindMapper.selectCount(new LambdaQueryWrapper<SalesLedgerProductProcessBind>().eq(SalesLedgerProductProcessBind::getSalesLedgerProductProcessId, salesLedgerProductProcess.getId()));
+ if (selectedCount > 0) {
+ throw new ServiceException("鍒犻櫎澶辫触,璇ラ澶栧姞宸ュ凡琚紩鐢�,绂佹鍒犻櫎");
+ }
+
this.removeById(id);
}
--
Gitblit v1.9.3