From 228b4fe942f70ee4dbe28ffd451bfd854c648c85 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 02 七月 2026 17:09:32 +0800
Subject: [PATCH] Merge branch 'dev_New_pro' of http://114.132.189.42:9002/r/product-inventory-management-after into dev_New_pro
---
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java | 36 +++++++++++++++++-------------------
1 files changed, 17 insertions(+), 19 deletions(-)
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 4f08f69..f0d1129 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -22,10 +22,11 @@
import com.ruoyi.basic.pojo.ProductModel;
import com.ruoyi.basic.pojo.SupplierManage;
import com.ruoyi.basic.utils.FileUtil;
-import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.enums.ApprovalStatusEnum;
import com.ruoyi.common.enums.ReviewStatusEnum;
import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
+import com.ruoyi.common.enums.TypeEnums;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -173,23 +174,10 @@
// 瀹為檯鍚堝悓閲戦濮嬬粓绛変簬鍚堝悓閲戦
purchaseLedger.setNetContractAmount(purchaseLedger.getContractAmount());
// 3. 鏂板鎴栨洿鏂颁富琛�
- if (purchaseLedger.getId() == null) {
- if (!StringUtils.hasText(purchaseLedger.getPurchaseContractNumber())) {
- purchaseLedger.setPurchaseContractNumber(generatePurchaseContractNo(purchaseLedger.getEntryDate()));
- }
- purchaseLedgerMapper.insert(purchaseLedger);
- } else {
- // 鍒犻櫎閲囪喘瀹℃牳锛岄噸鏂版彁浜�
- ApproveProcess one = approveProcessService.getOne(new LambdaQueryWrapper<ApproveProcess>()
- .eq(ApproveProcess::getApproveType, 5)
- .eq(ApproveProcess::getApproveReason, purchaseLedger.getPurchaseContractNumber())
- .eq(ApproveProcess::getApproveDelete, 0)
- .last("limit 1"));
- if (one != null) {
- approveProcessService.delByIds(Collections.singletonList(one.getId()));
- }
- purchaseLedgerMapper.updateById(purchaseLedger);
+ if (purchaseLedger.getId() == null && !StringUtils.hasText(purchaseLedger.getPurchaseContractNumber())) {
+ purchaseLedger.setPurchaseContractNumber(generatePurchaseContractNo(purchaseLedger.getEntryDate()));
}
+ this.saveOrUpdate(purchaseLedger);
// 4. 澶勭悊瀛愯〃鏁版嵁
List<SalesLedgerProduct> productList = purchaseLedgerDto.getProductData();
@@ -197,7 +185,17 @@
handleSalesLedgerProducts(purchaseLedger.getId(), productList, purchaseLedgerDto.getType());
}
// 6.閲囪喘瀹℃牳鏂板锛涘鎵圭鐞嗘湭閰嶇疆閲囪喘瀹℃壒浜烘椂锛屽鎵规湇鍔′細鑷姩缃负瀹℃壒閫氳繃銆�
- addApproveByPurchase(loginUser, purchaseLedger);
+ //鏌ヨ褰撳墠閲囪喘鍚堝悓鍙锋槸鍚﹀凡娣诲姞瀹℃壒锛屽鏋滄湁涓斾笉鏄┏鍥炵姸鎬侊紝鍒欎笉閲嶅娣诲姞
+ ApprovalInstance oldApprovalInstance = approvalInstanceService.getOne(Wrappers.<ApprovalInstance>lambdaQuery()
+ .eq(ApprovalInstance::getDeleted, 0)
+ .eq(ApprovalInstance::getBusinessType, TypeEnums.PURCHASE_APPROVAL.getCode())
+ .eq(ApprovalInstance::getBusinessId, purchaseLedger.getId())
+ .ne(ApprovalInstance::getStatus,"REJECTED")
+ .last("limit 1")
+ );
+ if(Objects.isNull(oldApprovalInstance)){
+ addApproveByPurchase(loginUser, purchaseLedger);
+ }
// 5. 杩佺Щ涓存椂鏂囦欢鍒版寮忕洰褰�
fileUtil.saveStorageAttachment(ApplicationTypeEnum.FILE, RecordTypeEnum.PURCHASE_LEDGER, purchaseLedger.getId(), purchaseLedgerDto.getStorageBlobDTOS());
return 1;
@@ -1054,7 +1052,7 @@
return resultDto;
}
- public void addApproveByPurchase(LoginUser loginUser,PurchaseLedger purchaseLedger) throws Exception {
+ public void addApproveByPurchase(LoginUser loginUser,PurchaseLedger purchaseLedger) {
if (loginUser == null) {
return;
}
--
Gitblit v1.9.3