From bc116c55a44bc344e5575b5bdd4c2591bc0475aa Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 17 三月 2026 16:43:36 +0800
Subject: [PATCH] fix: BOM模块的导入、模板下载、新增、编辑修改
---
src/main/java/com/ruoyi/production/controller/ProductBomController.java | 21 +++++++++++++++++----
1 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/controller/ProductBomController.java b/src/main/java/com/ruoyi/production/controller/ProductBomController.java
index b6c9bce..5bfae99 100644
--- a/src/main/java/com/ruoyi/production/controller/ProductBomController.java
+++ b/src/main/java/com/ruoyi/production/controller/ProductBomController.java
@@ -3,9 +3,11 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.production.dto.BomImportDto;
import com.ruoyi.production.dto.ProductBomDto;
import com.ruoyi.production.pojo.ProcessRoute;
import com.ruoyi.production.pojo.ProductBom;
@@ -19,6 +21,7 @@
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -54,7 +57,7 @@
@GetMapping("/listPage")
@Log(title = "BOM-鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER)
@ApiOperation("BOM-鍒嗛〉鏌ヨ")
- public AjaxResult listPage(Page page, ProductBomDto productBomDto) {
+ public AjaxResult listPage(Page<ProductBom> page, ProductBomDto productBomDto) {
IPage<ProductBomDto> listPage = productBomService.listPage(page, productBomDto);
return AjaxResult.success(listPage);
}
@@ -100,16 +103,26 @@
@PostMapping("uploadBom")
+ @PreAuthorize("@ss.hasPermi('product:bom:import')")
@Log(title = "鏍规嵁Excel瀵煎叆BOM", businessType = BusinessType.IMPORT)
@ApiOperation("鏍规嵁Excel瀵煎叆BOM")
- public AjaxResult uploadBom(@RequestParam("file") MultipartFile file) {
- return productBomService.uploadBom(file);
+ public AjaxResult uploadBom(@RequestParam("file") MultipartFile file, @RequestParam("dictCode") Long dictCode) {
+ return productBomService.uploadBom(file, dictCode);
}
@PostMapping("exportBom")
- @Log(title = "瀵煎嚭BOM鏂囦欢", businessType = BusinessType.EXPORT)
+ @PreAuthorize("@ss.hasPermi('product:bom:export')")
@ApiOperation("瀵煎嚭BOM鏂囦欢")
+ @Log(title = "瀵煎嚭BOM鏂囦欢", businessType = BusinessType.EXPORT)
public void exportBom(HttpServletResponse response, @RequestParam Integer bomId) {
productBomService.exportBom(response, bomId);
}
+
+ @GetMapping("/downloadTemplate")
+ @Log(title = "涓嬭浇BOM瀵煎叆妯℃澘", businessType = BusinessType.EXPORT)
+ @ApiOperation("涓嬭浇BOM瀵煎叆妯℃澘")
+ public void importTemplate(HttpServletResponse response) {
+ ExcelUtil<BomImportDto> excelUtil = new ExcelUtil<>(BomImportDto.class);
+ excelUtil.importTemplateExcel(response, "BOM瀵煎叆妯℃澘");
+ }
}
--
Gitblit v1.9.3