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/dal/mysql/quotation/CrmSaleQuotationMapper.java | 30 ++++++++++++++++++++++++++++++
1 files changed, 30 insertions(+), 0 deletions(-)
diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/quotation/CrmSaleQuotationMapper.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/quotation/CrmSaleQuotationMapper.java
index b9177b6..4dbbfbf 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/quotation/CrmSaleQuotationMapper.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/dal/mysql/quotation/CrmSaleQuotationMapper.java
@@ -15,6 +15,7 @@
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
+import java.util.Collection;
import java.util.List;
/**
@@ -59,6 +60,7 @@
.eqIfPresent(CrmSaleQuotationDO::getCustomerId, pageReqVO.getCustomerId())
.eqIfPresent(CrmSaleQuotationDO::getBusinessId, pageReqVO.getBusinessId())
.eqIfPresent(CrmSaleQuotationDO::getStatus, pageReqVO.getStatus())
+ .likeIfPresent(CrmSaleQuotationDO::getBidBondNo, pageReqVO.getBidBondNo())
.orderByDesc(CrmSaleQuotationDO::getId);
// 瀹㈡埛鏉冮檺杩囨护
@@ -92,6 +94,14 @@
return selectList(CrmSaleQuotationDO::getCustomerId, customerId);
}
+ default List<CrmSaleQuotationDO> selectListByCustomerIdAndStatuses(Long customerId,
+ Collection<Integer> statuses) {
+ return selectList(new LambdaQueryWrapperX<CrmSaleQuotationDO>()
+ .eq(CrmSaleQuotationDO::getCustomerId, customerId)
+ .in(CrmSaleQuotationDO::getStatus, statuses)
+ .orderByDesc(CrmSaleQuotationDO::getId));
+ }
+
default List<CrmSaleQuotationDO> selectListByBusinessId(Long businessId) {
return selectList(CrmSaleQuotationDO::getBusinessId, businessId);
}
@@ -117,4 +127,24 @@
.set(CrmSaleQuotationDO::getContractNo, null));
}
+ /**
+ * 缁戝畾鎶曟爣锛沚idBondId 涓� null 鏃惰〃绀鸿В缁�
+ */
+ default void bindBidBond(Long quotationId, Long bidBondId, String bidBondNo) {
+ update(new LambdaUpdateWrapper<CrmSaleQuotationDO>()
+ .eq(CrmSaleQuotationDO::getId, quotationId)
+ .set(CrmSaleQuotationDO::getBidBondId, bidBondId)
+ .set(CrmSaleQuotationDO::getBidBondNo, bidBondNo));
+ }
+
+ /**
+ * 閲嶆柊鎶ヤ环锛氶噸缃负鑽夌骞舵竻绌烘祦绋嬪疄渚�
+ */
+ default void resetToDraft(Long quotationId) {
+ update(new LambdaUpdateWrapper<CrmSaleQuotationDO>()
+ .eq(CrmSaleQuotationDO::getId, quotationId)
+ .set(CrmSaleQuotationDO::getStatus, CrmSaleQuotationStatusEnum.DRAFT.getStatus())
+ .set(CrmSaleQuotationDO::getProcessInstanceId, null));
+ }
+
}
\ No newline at end of file
--
Gitblit v1.9.3