From 962f78c8383e7c884ddb08c951c15e5ba6eb4cb8 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期五, 23 十月 2026 15:43:33 +0800
Subject: [PATCH] fix: 完善审批流程与业务状态校验
---
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseOrderServiceImpl.java | 22 ++++++++++++++++------
1 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseOrderServiceImpl.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseOrderServiceImpl.java
index 5fc5e15..cf9e52c 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseOrderServiceImpl.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseOrderServiceImpl.java
@@ -242,7 +242,9 @@
approvalConfigApi.validateApprovalEnabledAndGetApprovers(PURCHASE_ORDER_APPROVE_BIZ_TYPE);
// 3. 缃负瀹℃壒涓紝骞舵竻绌轰笂涓�杞鏍镐俊鎭紝閬垮厤椹冲洖鍘熷洜娈嬬暀
- purchaseOrderMapper.submitAndResetAuditInfo(id, ErpPurchaseOrderStatusEnum.PROCESS.getStatus());
+ if (purchaseOrderMapper.submitAndResetAuditInfo(id, ErpPurchaseOrderStatusEnum.PROCESS.getStatus()) != 1) {
+ throw exception(PURCHASE_ORDER_SUBMIT_FAIL_NOT_ALLOWED);
+ }
}
@Override
@@ -267,14 +269,18 @@
if (StrUtil.isBlank(reviewRemark)) {
throw exception(PURCHASE_ORDER_AUDIT_REJECT_REASON_REQUIRED);
}
- purchaseOrderMapper.auditPurchaseOrder(id, ErpPurchaseOrderStatusEnum.REJECT.getStatus(),
- userId, getUserNickname(userId), reviewRemark);
+ if (purchaseOrderMapper.auditPurchaseOrder(id, ErpPurchaseOrderStatusEnum.REJECT.getStatus(),
+ userId, getUserNickname(userId), reviewRemark) != 1) {
+ throw exception(PURCHASE_ORDER_AUDIT_FAIL_NOT_PROCESS);
+ }
return;
}
// 3. 瀹℃牳閫氳繃
- purchaseOrderMapper.auditPurchaseOrder(id, ErpPurchaseOrderStatusEnum.APPROVE.getStatus(),
- userId, getUserNickname(userId), reviewRemark);
+ if (purchaseOrderMapper.auditPurchaseOrder(id, ErpPurchaseOrderStatusEnum.APPROVE.getStatus(),
+ userId, getUserNickname(userId), reviewRemark) != 1) {
+ throw exception(PURCHASE_ORDER_AUDIT_FAIL_NOT_PROCESS);
+ }
}
/**
@@ -404,9 +410,13 @@
return;
}
purchaseOrders.forEach(purchaseOrder -> {
- if (ErpAuditStatus.APPROVE.getStatus().equals(purchaseOrder.getStatus())) {
+ if (ErpPurchaseOrderStatusEnum.APPROVE.getStatus().equals(purchaseOrder.getStatus())) {
throw exception(PURCHASE_ORDER_DELETE_FAIL_APPROVE, purchaseOrder.getNo());
}
+ // 瀹℃壒涓姝㈠垹闄わ紝闇�鍏堢敱瀹℃壒浜恒�屽鏍镐笉閫氳繃銆嶉��鍥�
+ if (ErpPurchaseOrderStatusEnum.PROCESS.getStatus().equals(purchaseOrder.getStatus())) {
+ throw exception(PURCHASE_ORDER_UPDATE_FAIL_PROCESS, purchaseOrder.getNo());
+ }
});
// 2. 閬嶅巻鍒犻櫎
--
Gitblit v1.9.3