From 3ce8c1cfbf2b0a577c8fbb155128dc85c3857606 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 16 六月 2026 13:47:34 +0800
Subject: [PATCH] fix(approval): 修复审批实例创建中的业务ID和模板查询问题
---
src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java | 9 +++++++--
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java | 9 +++++++--
src/main/java/com/ruoyi/sales/service/impl/SalesQuotationServiceImpl.java | 18 ++++++++++++++----
src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java | 2 +-
4 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java
index 2a4f52a..b3654ba 100644
--- a/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java
@@ -565,7 +565,7 @@
private void handleShippingApprovalFinished(ApprovalInstance instance, String status) {
ShippingInfo shippingInfo = shippingInfoMapper.selectOne(
new LambdaQueryWrapper<ShippingInfo>()
- .eq(ShippingInfo::getId, instance.getTitle())
+ .eq(ShippingInfo::getId, instance.getBusinessId())
.orderByDesc(ShippingInfo::getCreateTime)
.last("limit 1")
);
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index 6008e69..e423400 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -621,8 +621,13 @@
return;
}
ApprovalInstanceDto approvalInstance = new ApprovalInstanceDto();
- approvalInstance.setTemplateId(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,5L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getId());
- approvalInstance.setTemplateName(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,5L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getTemplateName());
+ ApprovalTemplate purchaseTemplate = approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>()
+ .eq(ApprovalTemplate::getBusinessType, 5L)
+ .eq(ApprovalTemplate::getDeleted, 0)
+ .orderByDesc(ApprovalTemplate::getId)
+ .last("LIMIT 1"));
+ approvalInstance.setTemplateId(purchaseTemplate.getId());
+ approvalInstance.setTemplateName(purchaseTemplate.getTemplateName());
approvalInstance.setBusinessId(purchaseLedger.getId());
approvalInstance.setBusinessType(5L);
approvalInstance.setCurrentLevel(1);
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesQuotationServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesQuotationServiceImpl.java
index 5e31cfa..ceeed16 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesQuotationServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesQuotationServiceImpl.java
@@ -105,8 +105,13 @@
salesQuotationProductService.saveBatch(products);
// 鎶ヤ环瀹℃壒
ApprovalInstanceDto approvalInstance = new ApprovalInstanceDto();
- approvalInstance.setTemplateId(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getId());
- approvalInstance.setTemplateName(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getTemplateName());
+ ApprovalTemplate quotationTemplate = approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>()
+ .eq(ApprovalTemplate::getBusinessType, 6L)
+ .eq(ApprovalTemplate::getDeleted, 0)
+ .orderByDesc(ApprovalTemplate::getId)
+ .last("LIMIT 1"));
+ approvalInstance.setTemplateId(quotationTemplate.getId());
+ approvalInstance.setTemplateName(quotationTemplate.getTemplateName());
approvalInstance.setBusinessId(salesQuotation.getId());
approvalInstance.setBusinessType(6L);
approvalInstance.setCurrentLevel(1);
@@ -151,8 +156,13 @@
approvalInstanceService.lambdaUpdate().set(ApprovalInstance::getStatus,"REJECTED").eq(ApprovalInstance::getBusinessId,salesQuotation.getId()).eq(ApprovalInstance::getBusinessType,6L).update();
ApprovalInstanceDto approvalInstance = new ApprovalInstanceDto();
- approvalInstance.setTemplateId(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getId());
- approvalInstance.setTemplateName(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getTemplateName());
+ ApprovalTemplate reSubmitTemplate = approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>()
+ .eq(ApprovalTemplate::getBusinessType, 6L)
+ .eq(ApprovalTemplate::getDeleted, 0)
+ .orderByDesc(ApprovalTemplate::getId)
+ .last("LIMIT 1"));
+ approvalInstance.setTemplateId(reSubmitTemplate.getId());
+ approvalInstance.setTemplateName(reSubmitTemplate.getTemplateName());
approvalInstance.setBusinessId(salesQuotation.getId());
approvalInstance.setBusinessType(6L);
approvalInstance.setCurrentLevel(1);
diff --git a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
index 15b56ea..721abad 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
@@ -180,8 +180,13 @@
boolean save = this.add(req);
// 鍙戣揣瀹℃壒
ApprovalInstanceDto approvalInstance = new ApprovalInstanceDto();
- approvalInstance.setTemplateId(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getId());
- approvalInstance.setTemplateName(approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>().eq(ApprovalTemplate::getBusinessType,6L).orderByDesc(ApprovalTemplate::getId).last("LIMIT 1")).getTemplateName());
+ ApprovalTemplate shippingTemplate = approvalTemplateMapper.selectOne(new LambdaQueryWrapper<ApprovalTemplate>()
+ .eq(ApprovalTemplate::getBusinessType, 7L)
+ .eq(ApprovalTemplate::getDeleted, 0)
+ .orderByDesc(ApprovalTemplate::getId)
+ .last("LIMIT 1"));
+ approvalInstance.setTemplateId(shippingTemplate.getId());
+ approvalInstance.setTemplateName(shippingTemplate.getTemplateName());
approvalInstance.setBusinessId(req.getId());
approvalInstance.setBusinessType(7L);
approvalInstance.setCurrentLevel(1);
--
Gitblit v1.9.3