From da78c6cd6cfa63c09fc8b41c18af6f06393847aa Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期一, 26 一月 2026 15:53:53 +0800
Subject: [PATCH] yys 修改采购审核模块
---
src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java | 68 ++++++++++++++++++++++++++--------
1 files changed, 52 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
index 48a3e9f..4e41219 100644
--- a/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
+++ b/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.approve.mapper.ApproveNodeMapper;
@@ -26,6 +27,7 @@
import com.ruoyi.project.system.service.ISysNoticeService;
import com.ruoyi.sales.mapper.CommonFileMapper;
import com.ruoyi.sales.pojo.CommonFile;
+import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
@@ -63,6 +65,7 @@
private final ApproveProcessMapper approveProcessMapper;
private final TempFileServiceImpl tempFileService;
private final CommonFileMapper commonFileMapper;
+ private final CommonFileServiceImpl commonFileService;
private final ISysNoticeService sysNoticeService;
@Override
@@ -126,7 +129,6 @@
sysNoticeService.simpleNoticeByUser(approveProcessType(approveProcessVO.getApproveType()),
approveID + "娴佺▼缂栧彿鐨勫鎵归渶瑕佹偍瀹℃牳!!!!!",
Arrays.asList(Long.valueOf(id)),
- approveProcessVO.getApproveDeptId(),
"/collaborativeApproval/approvalProcess?approveType=" + approveProcessVO.getApproveType() + "&approveId=" + approveID);
}
@@ -153,19 +155,58 @@
return approveProcessIPage;
}
- @Override
- public void delApprove(Long[] ids) {
- ApproveProcess approveProcess;
+ public void delByIds(List<Long> ids) {
for (Long approveId : ids) {
// 閫昏緫鍒犻櫎瀹℃壒娴佺▼
update(new UpdateWrapper<ApproveProcess>()
.lambda()
.set(ApproveProcess::getApproveDelete, 1)
- .eq(ApproveProcess::getApproveId, approveId));
+ .eq(ApproveProcess::getId, approveId));
+ // 鍒犻櫎瀵瑰簲鐨勯檮浠�
+ commonFileService.deleteByBusinessId(approveId, FileNameType.ApproveProcess.getValue());
+ ApproveProcess approveProcess = approveProcessMapper.selectById(approveId);
// 鍒犻櫎瀹℃壒鑺傜偣
- approveNodeService.delApproveNodeByApproveId(approveId);
+ approveNodeService.delApproveNodeByApproveId(approveProcess.getApproveId());
+
+ // 鍙煡鏈�鏂颁竴鏉″鎵规祦绋�
+ ApproveProcess latestProcess = approveProcessMapper.selectOne(
+ new LambdaQueryWrapper<ApproveProcess>()
+ .eq(ApproveProcess::getApproveId, approveId)
+ .orderByDesc(ApproveProcess::getCreateTime)
+ .last("LIMIT 1"));
+
+ if (latestProcess == null) {
+ continue;
+ }
+
+
+ // 鍒犻櫎瀵瑰簲鐨勬秷鎭�氱煡
+ sysNoticeService.remove(new LambdaQueryWrapper<SysNotice>()
+ .eq(SysNotice::getNoticeTitle, approveProcessType(latestProcess.getApproveType()))
+ .eq(SysNotice::getSenderId, latestProcess.getApproveUser())
+ .apply("CAST(notice_content AS CHAR) LIKE CONCAT('%', {0}, '%')", latestProcess.getApproveId()));
+ }
+
+ }
+
+ @Override
+ public void delApprove(List<Long> ids) {
+ for (Long approveId : ids) {
+ ApproveProcess approveProcess = approveProcessMapper.selectOne(new LambdaQueryWrapper<ApproveProcess>()
+ .eq(ApproveProcess::getApproveId, approveId)
+ .eq(ApproveProcess::getApproveDelete, 0)
+ .last("LIMIT 1"));
+ // 閫昏緫鍒犻櫎瀹℃壒娴佺▼
+ update(new UpdateWrapper<ApproveProcess>()
+ .lambda()
+ .set(ApproveProcess::getApproveDelete, 1)
+ .eq(ApproveProcess::getApproveId, approveId));
+ // 鍒犻櫎瀵瑰簲鐨勯檮浠�
+ commonFileService.deleteByBusinessId(approveProcess.getId(), FileNameType.ApproveProcess.getValue());
+ // 鍒犻櫎瀹℃壒鑺傜偣
+ approveNodeService.delApproveNodeByApproveId(approveId.toString());
// 鍙煡鏈�鏂颁竴鏉″鎵规祦绋�
ApproveProcess latestProcess = approveProcessMapper.selectOne(
@@ -189,12 +230,9 @@
@Override
public ApproveProcess getApproveById(String id) {
- LambdaQueryWrapper<ApproveProcess> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(ApproveProcess::getApproveId, id);
- queryWrapper.eq(ApproveProcess::getApproveDelete, 0);
- queryWrapper.eq(ApproveProcess::getTenantId, SecurityUtils.getLoginUser().getTenantId());
- queryWrapper.last("limit 1");
- ApproveProcess one = getOne(queryWrapper);
+ ApproveProcess one = approveProcessMapper.selectList(Wrappers.<ApproveProcess>lambdaQuery()
+ .eq(ApproveProcess::getApproveId,id)
+ .eq(ApproveProcess::getApproveDelete,0)).get(0);
one.setCommonFileList(commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>()
.eq(CommonFile::getCommonId, one.getId())
.eq(CommonFile::getType, FileNameType.ApproveProcess.getValue())));
@@ -232,7 +270,7 @@
LambdaQueryWrapper<ApproveNode> approveNodeLambdaQueryWrapper = new LambdaQueryWrapper<>();
approveNodeLambdaQueryWrapper.eq(ApproveNode::getApproveProcessId, approveProcess.getApproveId())
.eq(ApproveNode::getDeleteFlag, 0)
- .eq(ApproveNode::getTenantId, SecurityUtils.getLoginUser().getTenantId())
+// .eq(ApproveNode::getTenantId, SecurityUtils.getLoginUser().getTenantId())
.orderByAsc(ApproveNode::getApproveNodeOrder);
approveNodeMapper.delete(approveNodeLambdaQueryWrapper);
approveNodeService.initApproveNodes(approveGetAndUpdateVo.getApproveUserIds(), approveProcess.getApproveId(), approveProcess.getTenantId());
@@ -241,7 +279,6 @@
sysNoticeService.simpleNoticeByUser(approveProcessType(approveProcess.getApproveType()),
approveProcess.getApproveId() + "娴佺▼缂栧彿鐨勫鎵归渶瑕佹偍瀹℃牳!!!!!",
Arrays.asList(Long.valueOf(id)),
- approveProcess.getApproveDeptId(),
"/collaborativeApproval/approvalProcess?approveType=" + approveProcess.getApproveType() + "&approveId=" + approveProcess.getApproveId());
}
@@ -273,7 +310,7 @@
LambdaQueryWrapper<ApproveNode> approveNodeLambdaQueryWrapper = new LambdaQueryWrapper<>();
approveNodeLambdaQueryWrapper.eq(ApproveNode::getApproveProcessId, approve.getApproveId())
.eq(ApproveNode::getDeleteFlag, 0)
- .eq(ApproveNode::getTenantId, SecurityUtils.getLoginUser().getTenantId())
+// .eq(ApproveNode::getTenantId, SecurityUtils.getLoginUser().getTenantId())
.orderByAsc(ApproveNode::getApproveNodeOrder);
approveNodeMapper.delete(approveNodeLambdaQueryWrapper);
approveNodeService.initApproveNodes(approveGetAndUpdateVo.getApproveUserIds(), approve.getApproveId(), approve.getTenantId());
@@ -300,7 +337,6 @@
sysNoticeService.simpleNoticeByUser(approveProcessType(approve.getApproveType()),
approve.getApproveId() + "娴佺▼缂栧彿鐨勫鎵归渶瑕佹偍瀹℃牳!!!!!",
Arrays.asList(Long.valueOf(id)),
- approve.getApproveDeptId(),
"/collaborativeApproval/approvalProcess?approveType=" + approve.getApproveType() + "&approveId=" + approve.getApproveId());
}
--
Gitblit v1.9.3