From 53c0da6e44a01acf9d97bdc7abaf25e5984b92dc Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 13 七月 2026 14:39:57 +0800
Subject: [PATCH] 修改生产核算
---
src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java | 31 +++++++++++++++++++++++++++++++
1 files changed, 31 insertions(+), 0 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 64a2eb3..59fe13e 100644
--- a/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/approve/service/impl/ApprovalInstanceServiceImpl.java
@@ -31,6 +31,9 @@
import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.framework.web.domain.R;
import com.ruoyi.procurementrecord.utils.StockUtils;
+import com.ruoyi.production.mapper.ProductionProductMainMapper;
+import com.ruoyi.production.pojo.ProductionProductMain;
+import com.ruoyi.production.service.ProductionAccountService;
import com.ruoyi.project.system.domain.SysDept;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysDeptMapper;
@@ -94,6 +97,8 @@
private final EnterpriseNewsMapper enterpriseNewsMapper;
private final EnterpriseNewsScopeDeptMapper enterpriseNewsScopeDeptMapper;
private final ApprovalTemplateNodeApproverMapper approvalTemplateNodeApproverMapper;
+ private final ProductionProductMainMapper productionProductMainMapper;
+ private final ProductionAccountService productionAccountService;
@Override
public R listPage(Page<ApprovalInstanceVo> page, ApprovalInstanceDto approvalInstanceDto) {
@@ -550,6 +555,10 @@
}
if (TypeEnums.ENTERPRISE_NEWS_APPROVAL.getCode().equals(businessType)) {
handleNewsApprovalFinished(instance, status);
+ return;
+ }
+ if (TypeEnums.PRODUCTION_REPORT_APPROVAL.getCode().equals(businessType)) {
+ handleProductionReportApprovalFinished(instance, status);
}
}
@@ -691,6 +700,28 @@
shippingInfoMapper.updateById(shippingInfo);
}
+ private void handleProductionReportApprovalFinished(ApprovalInstance instance, String status) {
+ if (instance == null || instance.getBusinessId() == null) {
+ return;
+ }
+ ProductionProductMain productionProductMain = productionProductMainMapper.selectById(instance.getBusinessId());
+ if (productionProductMain == null) {
+ return;
+ }
+
+ if ("APPROVED".equals(status)) {
+ productionProductMain.setAuditStatus(1);
+ } else if ("REJECTED".equals(status)) {
+ productionProductMain.setAuditStatus(2);
+ } else if ("PENDING".equals(status)) {
+ productionProductMain.setAuditStatus(0);
+ } else {
+ return;
+ }
+ productionProductMainMapper.updateById(productionProductMain);
+ productionAccountService.rebuildByProductionProductMainId(productionProductMain.getId());
+ }
+
private List<ApprovalTask> createNodeAndTasks(ApprovalInstance instance, ApprovalTemplateNode templateNode) {
List<ApprovalTemplateNodeApprover> approvers = approvalTemplateNodeApproverMapper.selectList(
new LambdaQueryWrapper<ApprovalTemplateNodeApprover>()
--
Gitblit v1.9.3