From 8eeaa57003ac24e053a648d695de1b8da2a22763 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期一, 24 八月 2026 10:05:37 +0800
Subject: [PATCH] 投标移除"供应商必须已准入"校验。供应商已停用,无法参与投标。
---
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/enums/ErrorCodeConstants.java | 1 +
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/supplier/SrmSupplierServiceImpl.java | 5 +++++
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderBidServiceImpl.java | 16 +++++++++++-----
3 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/enums/ErrorCodeConstants.java b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/enums/ErrorCodeConstants.java
index fcfe101..3c112d2 100644
--- a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/enums/ErrorCodeConstants.java
+++ b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/enums/ErrorCodeConstants.java
@@ -13,6 +13,7 @@
ErrorCode SUPPLIER_CODE_EXISTS = new ErrorCode(1_040_100_001, "渚涘簲鍟嗙紪鐮佸凡瀛樺湪");
ErrorCode SUPPLIER_EXISTS_REFERENCE = new ErrorCode(1_040_100_002, "渚涘簲鍟嗚涓氬姟寮曠敤锛屾棤娉曞垹闄�");
ErrorCode SUPPLIER_CONTACT_NOT_EXISTS = new ErrorCode(1_040_100_003, "渚涘簲鍟嗚仈绯讳汉涓嶅瓨鍦�");
+ ErrorCode SUPPLIER_NOT_ENABLE = new ErrorCode(1_040_100_004, "渚涘簲鍟嗗凡鍋滅敤锛屾棤娉曞弬涓庢姇鏍�");
// ========== 渚涘簲鍟嗗噯鍏� 1_040_200_000 ==========
ErrorCode APPLY_NOT_EXISTS = new ErrorCode(1_040_200_000, "鍑嗗叆鐢宠涓嶅瓨鍦�");
diff --git a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/supplier/SrmSupplierServiceImpl.java b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/supplier/SrmSupplierServiceImpl.java
index c9d5858..6c4c50f 100644
--- a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/supplier/SrmSupplierServiceImpl.java
+++ b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/supplier/SrmSupplierServiceImpl.java
@@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.srm.service.supplier;
import cn.hutool.core.collection.CollUtil;
+import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -110,6 +111,10 @@
@Override
public List<SrmSupplierDO> getSupplierAllList() {
return supplierMapper.selectList(new LambdaQueryWrapperX<SrmSupplierDO>()
+ // 杩囨护鍋滅敤渚涘簲鍟嗭紝淇濈暀鏈缃姸鎬佷笌鍚敤鐘舵�佺殑妗f渚涘簲鍟嗭紙浠呯敤浜庢嫑鎶曟爣鍦烘櫙锛�
+ .and(w -> w.isNull(SrmSupplierDO::getStatus)
+ .or()
+ .ne(SrmSupplierDO::getStatus, CommonStatusEnum.DISABLE.getStatus()))
.orderByAsc(SrmSupplierDO::getId));
}
diff --git a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderBidServiceImpl.java b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderBidServiceImpl.java
index 6410946..4dd6b76 100644
--- a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderBidServiceImpl.java
+++ b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderBidServiceImpl.java
@@ -1,12 +1,14 @@
package cn.iocoder.yudao.module.srm.service.tender;
+import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.srm.controller.admin.tender.vo.SrmSupplierQuoteSaveReqVO;
import cn.iocoder.yudao.module.srm.controller.admin.tender.vo.SrmTenderBidSaveReqVO;
+import cn.iocoder.yudao.module.srm.dal.dataobject.SrmSupplierDO;
import cn.iocoder.yudao.module.srm.dal.dataobject.SrmSupplierQuoteDO;
import cn.iocoder.yudao.module.srm.dal.dataobject.SrmTenderBidDO;
import cn.iocoder.yudao.module.srm.dal.dataobject.SrmTenderProjectDO;
-import cn.iocoder.yudao.module.srm.dal.mysql.SrmSupplierApplyMapper;
+import cn.iocoder.yudao.module.srm.dal.mysql.SrmSupplierMapper;
import cn.iocoder.yudao.module.srm.dal.mysql.SrmSupplierQuoteMapper;
import cn.iocoder.yudao.module.srm.dal.mysql.SrmTenderBidMapper;
import cn.iocoder.yudao.module.srm.dal.mysql.SrmTenderProjectMapper;
@@ -43,7 +45,7 @@
private SrmTenderProjectMapper tenderProjectMapper;
@Resource
- private SrmSupplierApplyMapper supplierApplyMapper;
+ private SrmSupplierMapper supplierMapper;
// ========== 鎶曟爣绠$悊 ==========
@@ -58,9 +60,13 @@
if (project.getEndTime() != null && LocalDateTime.now().isAfter(project.getEndTime())) {
throw ServiceExceptionUtil.exception(ErrorCodeConstants.TENDER_END_TIME_PASSED);
}
- // 鏍¢獙渚涘簲鍟嗘槸鍚﹀凡閫氳繃鍑嗗叆瀹℃壒
- if (!supplierApplyMapper.existsApprovedBySupplierId(createReqVO.getSupplierId())) {
- throw ServiceExceptionUtil.exception(ErrorCodeConstants.BID_SUPPLIER_NOT_APPROVED);
+ // 鏍¢獙鎶曟爣渚涘簲鍟嗗瓨鍦ㄤ笖鏈仠鐢紙鍑嗗叆鐘舵�佷笉闄愬埗鎶曟爣锛屼腑鏍囩敓鎴愰噰璐鍗曟椂鑷姩鍑嗗叆锛�
+ SrmSupplierDO supplier = supplierMapper.selectById(createReqVO.getSupplierId());
+ if (supplier == null) {
+ throw ServiceExceptionUtil.exception(ErrorCodeConstants.SUPPLIER_NOT_EXISTS);
+ }
+ if (CommonStatusEnum.isDisable(supplier.getStatus())) {
+ throw ServiceExceptionUtil.exception(ErrorCodeConstants.SUPPLIER_NOT_ENABLE, supplier.getName());
}
// 鏍¢獙鎶曟爣缂栧彿鏄惁閲嶅
if (tenderBidMapper.existsByBidNo(createReqVO.getBidNo())) {
--
Gitblit v1.9.3