From a82d847bbb39e2417d4c9773ebc4fc51fdb0b8fc Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 10 十一月 2026 13:31:31 +0800
Subject: [PATCH] feat(crm): 完善投标保证金与报价单关联及作废功能
---
yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/quotation/CrmSaleQuotationService.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 1 deletions(-)
diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/quotation/CrmSaleQuotationService.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/quotation/CrmSaleQuotationService.java
index 2f15d35..3870f1d 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/quotation/CrmSaleQuotationService.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/quotation/CrmSaleQuotationService.java
@@ -5,6 +5,7 @@
import cn.iocoder.yudao.module.crm.controller.admin.quotation.vo.CrmSaleQuotationSaveReqVO;
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.dataobject.quotation.CrmSaleQuotationRevisionDO;
import java.util.Collection;
import java.util.List;
@@ -12,7 +13,7 @@
/**
* CRM 閿�鍞姤浠峰崟 Service 鎺ュ彛
*
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
*/
public interface CrmSaleQuotationService {
@@ -46,6 +47,30 @@
* @return 閿�鍞姤浠峰崟
*/
CrmSaleQuotationDO getSaleQuotation(Long id);
+
+ /**
+ * 鎻愪氦閿�鍞姤浠峰崟瀹℃壒
+ *
+ * @param id 缂栧彿
+ * @param processDefinitionKey 娴佺▼瀹氫箟 Key
+ * @param userId 鐢ㄦ埛缂栧彿
+ */
+ void submitSaleQuotation(Long id, String processDefinitionKey, Long userId);
+
+ /**
+ * 鏇存柊閿�鍞姤浠峰崟瀹℃壒缁撴灉
+ *
+ * @param id 缂栧彿
+ * @param bpmResult BPM 瀹℃壒缁撴灉
+ */
+ void updateSaleQuotationAuditStatus(Long id, Integer bpmResult);
+
+ /**
+ * 鑾峰彇閿�鍞姤浠峰鎵瑰彲鐢ㄧ殑娴佺▼瀹氫箟鍒楄〃
+ *
+ * @return 娴佺▼瀹氫箟鍒楄〃
+ */
+ java.util.List<java.util.Map<String, Object>> getSaleQuotationApproveProcessDefinitionList();
/**
* 鑾峰緱閿�鍞姤浠峰崟鍒嗛〉
@@ -97,4 +122,37 @@
*/
Long convertToContract(Long id, Long userId);
+ CrmSaleQuotationDO getByContractId(Long id);
+
+ /**
+ * 娓呴櫎鎶ヤ环鍗曠殑鍚堝悓鍏宠仈锛堝垹闄ゅ悎鍚屾椂璋冪敤锛�
+ *
+ * @param quotationId 鎶ヤ环鍗曠紪鍙�
+ */
+ void clearContractReference(Long quotationId);
+
+ /**
+ * 鎵嬪姩浣滃簾鎶ヤ环鍗�
+ *
+ * @param id 鎶ヤ环鍗曠紪鍙�
+ * @param reason 浣滃簾鍘熷洜
+ */
+ void voidSaleQuotation(Long id, String reason);
+
+ /**
+ * 鑾峰緱鎶ヤ环鍗曠殑杞娴佹按鍒楄〃
+ *
+ * @param quotationId 鎶ヤ环鍗曠紪鍙�
+ * @return 杞娴佹按鍒楄〃
+ */
+ List<CrmSaleQuotationRevisionDO> getSaleQuotationRevisionList(Long quotationId);
+
+ /**
+ * 鑾峰緱瀹㈡埛涓嬪彲缁戝畾鎶曟爣鐨勬姤浠峰崟鍒楄〃锛堣崏绋�/瀹℃壒閫氳繃/瀹℃壒涓嶉�氳繃锛屼笖鏈鍏朵粬鎶曟爣缁戝畾锛�
+ *
+ * @param customerId 瀹㈡埛缂栧彿
+ * @param bidBondId 褰撳墠鎶曟爣缂栧彿锛堢紪杈戞椂鐢ㄤ簬淇濈暀鑷韩宸茬粦瀹氱殑鎶ヤ环鍗曪級
+ * @return 鎶ヤ环鍗曞垪琛�
+ */
+ List<CrmSaleQuotationDO> getBindableQuotationList(Long customerId, Long bidBondId);
}
\ No newline at end of file
--
Gitblit v1.9.3