From 317c0053ddb123512f997ef5ada5e30dec60830a Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期一, 03 八月 2026 14:21:54 +0800
Subject: [PATCH] 删除合同的时候同步更新报价的状态

---
 yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java
index 74fae39..88705a1 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java
@@ -19,6 +19,8 @@
 import cn.iocoder.yudao.module.crm.dal.dataobject.contract.CrmContractConfigDO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.contract.CrmContractDO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.contract.CrmContractProductDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.quotation.CrmSaleQuotationDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.quotation.CrmSaleQuotationProductDO;
 import cn.iocoder.yudao.module.crm.dal.mysql.contract.CrmContractMapper;
 import cn.iocoder.yudao.module.crm.dal.mysql.contract.CrmContractProductMapper;
 import cn.iocoder.yudao.module.crm.dal.redis.no.CrmNoRedisDAO;
@@ -33,6 +35,7 @@
 import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService;
 import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO;
 import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionTransferReqBO;
+import cn.iocoder.yudao.module.crm.service.quotation.CrmSaleQuotationService;
 import cn.iocoder.yudao.module.crm.service.receivable.CrmReceivableService;
 import cn.iocoder.yudao.module.erp.api.sale.ErpSaleOrderApi;
 import cn.iocoder.yudao.module.erp.api.sale.dto.ErpSaleOrderCreateReqDTO;
@@ -123,6 +126,9 @@
     private ErpSaleOrderApi saleOrderApi;
     @Resource
     private MdmItemApi mdmItemApi;
+    @Resource
+    @Lazy // 寤惰繜鍔犺浇锛岄伩鍏嶅惊鐜緷璧栵紙quotation 鍐呴儴寮曠敤浜� contractService锛�
+    private CrmSaleQuotationService crmSaleQuotationService;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -274,6 +280,11 @@
 
         // 2.1 鍒犻櫎鍚堝悓
         contractMapper.deleteById(id);
+        // 2.2 鍒犻櫎鍚堝悓鏃讹紝瑙i櫎鍏宠仈鐨勬姤浠峰崟寮曠敤
+        CrmSaleQuotationDO quotation = crmSaleQuotationService.getByContractId(id);
+        if (quotation != null) {
+            crmSaleQuotationService.clearContractReference(quotation.getId());
+        }
         // 2.2 鍒犻櫎鏁版嵁鏉冮檺
         crmPermissionService.deletePermission(CrmBizTypeEnum.CRM_CONTRACT.getType(), id);
 

--
Gitblit v1.9.3