From fec1341c1cb8e11cfbe3fa7dfabe447edb72b630 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 27 十月 2026 15:12:43 +0800
Subject: [PATCH] refactor(auth): 移除多个模块中的权限校验注解

---
 yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/controller/admin/tender/SrmTenderBidController.java |   41 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 37 insertions(+), 4 deletions(-)

diff --git a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/controller/admin/tender/SrmTenderBidController.java b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/controller/admin/tender/SrmTenderBidController.java
index 24bdd75..7547ec8 100644
--- a/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/controller/admin/tender/SrmTenderBidController.java
+++ b/yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/controller/admin/tender/SrmTenderBidController.java
@@ -5,6 +5,8 @@
 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
 import cn.iocoder.yudao.module.srm.controller.admin.tender.vo.*;
 import cn.iocoder.yudao.module.srm.dal.dataobject.SrmSupplierDO;
+import cn.iocoder.yudao.module.srm.dal.dataobject.SrmTenderMaterialDO;
+import cn.iocoder.yudao.module.srm.dal.mysql.SrmTenderMaterialMapper;
 import cn.iocoder.yudao.module.srm.service.supplier.SrmSupplierService;
 import cn.iocoder.yudao.module.srm.service.tender.SrmTenderBidService;
 import io.swagger.v3.oas.annotations.Operation;
@@ -16,6 +18,7 @@
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
+import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -34,6 +37,9 @@
     @Resource
     private SrmSupplierService supplierService;
 
+    @Resource
+    private SrmTenderMaterialMapper tenderMaterialMapper;
+
     // ========== 鎶曟爣绠$悊 ==========
 
     @PostMapping("/create")
@@ -45,7 +51,6 @@
 
     @GetMapping("/get")
     @Operation(summary = "鑾峰彇鎶曟爣璇︽儏")
-    @PreAuthorize("@ss.hasPermission('srm:tender-bid:query')")
     public CommonResult<SrmTenderBidRespVO> getBid(@RequestParam("id") Long id) {
         SrmTenderBidRespVO resp = BeanUtils.toBean(tenderBidService.getBid(id), SrmTenderBidRespVO.class);
         enrichSupplierName(resp);
@@ -54,7 +59,6 @@
 
     @GetMapping("/list-by-project")
     @Operation(summary = "鎸夋嫑鏍囬」鐩幏鍙栨姇鏍囧垪琛�")
-    @PreAuthorize("@ss.hasPermission('srm:tender-bid:query')")
     public CommonResult<List<SrmTenderBidRespVO>> getBidListByProject(@RequestParam("tenderProjectId") Long tenderProjectId) {
         List<SrmTenderBidRespVO> list = BeanUtils.toBean(tenderBidService.getBidListByProject(tenderProjectId), SrmTenderBidRespVO.class);
         enrichSupplierNames(list);
@@ -67,6 +71,17 @@
     @PreAuthorize("@ss.hasPermission('srm:tender-bid:update')")
     public CommonResult<Boolean> withdrawBid(@RequestParam("id") Long id) {
         tenderBidService.withdrawBid(id);
+        return success(true);
+    }
+
+    @PutMapping("/update-total")
+    @Operation(summary = "鏇存柊鎶曟爣鎬婚噾棰�")
+    @Parameter(name = "id", description = "鎶曟爣ID", required = true)
+    @Parameter(name = "bidTotalAmount", description = "鎶曟爣鎬婚噾棰濓紙鎶ヤ环鍚堣鑷姩甯﹀嚭鍚庡彲浜哄伐璋冩暣锛�")
+    @PreAuthorize("@ss.hasPermission('srm:tender-bid:update')")
+    public CommonResult<Boolean> updateBidTotal(@RequestParam("id") Long id,
+                                                @RequestParam(value = "bidTotalAmount", required = false) BigDecimal bidTotalAmount) {
+        tenderBidService.updateBidTotal(id, bidTotalAmount);
         return success(true);
     }
 
@@ -89,9 +104,27 @@
 
     @GetMapping("/quote/list-by-bid")
     @Operation(summary = "鎸夋姇鏍囪幏鍙栨姤浠峰垪琛�")
-    @PreAuthorize("@ss.hasPermission('srm:supplier-quote:query')")
     public CommonResult<List<SrmSupplierQuoteRespVO>> getQuoteListByBid(@RequestParam("bidId") Long bidId) {
-        return success(BeanUtils.toBean(tenderBidService.getQuoteList(bidId), SrmSupplierQuoteRespVO.class));
+        List<SrmSupplierQuoteRespVO> list = BeanUtils.toBean(tenderBidService.getQuoteList(bidId), SrmSupplierQuoteRespVO.class);
+        enrichQuoteMaterialInfo(list);
+        return success(list);
+    }
+
+    private void enrichQuoteMaterialInfo(List<SrmSupplierQuoteRespVO> list) {
+        if (list == null || list.isEmpty()) return;
+        Set<Long> materialIds = CollectionUtils.convertSet(list, SrmSupplierQuoteRespVO::getTenderMaterialId);
+        Map<Long, SrmTenderMaterialDO> materialMap = tenderMaterialMapper.selectBatchIds(materialIds).stream()
+                .collect(java.util.stream.Collectors.toMap(SrmTenderMaterialDO::getId, m -> m));
+        list.forEach(vo -> {
+            SrmTenderMaterialDO material = materialMap.get(vo.getTenderMaterialId());
+            if (material != null) {
+                vo.setTenderMaterialCode(material.getProductCode());
+                vo.setTenderMaterialName(material.getProductName());
+                vo.setMaterialName(material.getProductName());
+                vo.setTenderMaterialSpec(material.getProductSpec());
+                vo.setTenderMaterialUnit(material.getUnit());
+            }
+        });
     }
 
     // ========== 鍏宠仈鏁版嵁濉厖 ==========

--
Gitblit v1.9.3