From cbadfd8e691ab335965202a984db16e55ac8e42c Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 30 十月 2026 17:51:06 +0800
Subject: [PATCH] 诚发五金:按技术方案重构业务功能并补齐库结构
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderBomController.java | 20 +++++++++++++++++---
1 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderBomController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderBomController.java
index 5bc87c5..3ef59ed 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderBomController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderBomController.java
@@ -25,6 +25,7 @@
import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService;
import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemTypeService;
import cn.iocoder.yudao.module.mes.service.md.unitmeasure.MesMdUnitMeasureService;
+import cn.iocoder.yudao.module.mes.service.pro.material.MesProMaterialRequirementService;
import cn.iocoder.yudao.module.mes.service.pro.route.MesProRouteProductBomService;
import cn.iocoder.yudao.module.mes.service.pro.route.MesProRouteProductService;
import cn.iocoder.yudao.module.mes.service.pro.workorder.MesProWorkOrderBomService;
@@ -32,6 +33,7 @@
import cn.iocoder.yudao.module.mes.service.pro.workorder.MesProWorkOrderService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
@@ -72,6 +74,8 @@
private MesWmMaterialStockMapper materialStockMapper;
@Resource
private ErpPurchaseOrderApi purchaseOrderApi;
+ @Resource
+ private MesProMaterialRequirementService materialRequirementService;
@PostMapping("/create")
@Operation(summary = "鍒涘缓宸ュ崟 BOM")
@@ -100,7 +104,6 @@
@GetMapping("/get")
@Operation(summary = "鑾峰緱宸ュ崟 BOM")
@Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")
- @PreAuthorize("@ss.hasPermission('mes:pro-work-order:query')")
public CommonResult<MesProWorkOrderBomRespVO> getWorkOrderBom(@RequestParam("id") Long id) {
MesProWorkOrderBomDO workOrderBom = workOrderBomService.getWorkOrderBom(id);
if (workOrderBom == null) {
@@ -111,16 +114,27 @@
@GetMapping("/page")
@Operation(summary = "鑾峰緱宸ュ崟 BOM 鍒嗛〉")
- @PreAuthorize("@ss.hasPermission('mes:pro-work-order:query')")
public CommonResult<PageResult<MesProWorkOrderBomRespVO>> getWorkOrderBomPage(@Valid MesProWorkOrderBomPageReqVO pageReqVO) {
PageResult<MesProWorkOrderBomDO> pageResult = workOrderBomService.getWorkOrderBomPage(pageReqVO);
return success(new PageResult<>(buildWorkOrderBomRespVOList(pageResult.getList()), pageResult.getTotal()));
}
+ @GetMapping("/item-list-preview")
+ @Operation(summary = "鎸変骇鍝佸拰鏁伴噺棰勮杈呮枡闇�姹傦紙鏂板宸ュ崟鏃跺垽鏂簱瀛樻槸鍚﹀厖瓒筹級")
+ @Parameters({
+ @Parameter(name = "productId", description = "浜у搧缂栧彿", required = true),
+ @Parameter(name = "quantity", description = "鐢熶骇鏁伴噺", required = true)
+ })
+ @PreAuthorize("@ss.hasPermission('mes:pro-work-order:query')")
+ public CommonResult<List<MesProWorkOrderItemRespVO>> previewItemList(
+ @RequestParam("productId") Long productId,
+ @RequestParam("quantity") BigDecimal quantity) {
+ return success(materialRequirementService.getItemListByProduct(productId, quantity));
+ }
+
@GetMapping("/item-list-by-work-order-id")
@Operation(summary = "鑾峰緱宸ュ崟鐗╂枡闇�姹傚垪琛�")
@Parameter(name = "workOrderId", description = "宸ュ崟缂栧彿", required = true)
- @PreAuthorize("@ss.hasPermission('mes:pro-work-order:query')")
public CommonResult<List<MesProWorkOrderItemRespVO>> getWorkOrderBomItemListByWorkOrderId(
@RequestParam("workOrderId") Long workOrderId) {
// 1. 鑾峰彇宸ュ崟
--
Gitblit v1.9.3