From 9241057698075ce3cd0b94a7a29eec0ade1a267a Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 11 三月 2026 13:51:53 +0800
Subject: [PATCH] 更新删除生产计划

---
 src/main/java/com/ruoyi/productionPlan/controller/ProductionPlanController.java |   61 ++++++++++++++++++++++++++++++
 1 files changed, 60 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/productionPlan/controller/ProductionPlanController.java b/src/main/java/com/ruoyi/productionPlan/controller/ProductionPlanController.java
index 5abb115..d07b93b 100644
--- a/src/main/java/com/ruoyi/productionPlan/controller/ProductionPlanController.java
+++ b/src/main/java/com/ruoyi/productionPlan/controller/ProductionPlanController.java
@@ -1,17 +1,21 @@
 package com.ruoyi.productionPlan.controller;
 
 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.productionPlan.dto.ProductionPlanDto;
+import com.ruoyi.productionPlan.dto.ProductionPlanImportDto;
+import com.ruoyi.productionPlan.dto.ProductionPlanSummaryDto;
 import com.ruoyi.productionPlan.service.ProductionPlanService;
-import com.ruoyi.staff.dto.StaffLeaveDto;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
@@ -38,6 +42,7 @@
     }
 
     @GetMapping("/loadProdData")
+    @ApiOperation("鎷夊彇閿�鍞敓浜ц鍒�")
     @Log(title = "鎷夊彇閿�鍞敓浜ц鍒�", businessType = BusinessType.INSERT)
     public AjaxResult loadProdData() {
         productionPlanService.loadProdData();
@@ -46,7 +51,61 @@
 
     @PostMapping("/combine")
     @Log(title = "鍚堝苟鐢熶骇璁″垝", businessType = BusinessType.INSERT)
+    @ApiOperation("鍚堝苟鐢熶骇璁″垝")
     public AjaxResult combine(@RequestBody ProductionPlanDto productionPlanDto) {
         return AjaxResult.success(productionPlanService.combine(productionPlanDto));
     }
+
+    @PostMapping("")
+    @Log(title = "鍒涘缓鐢熶骇璁″垝", businessType = BusinessType.INSERT)
+    @ApiOperation("鍒涘缓鐢熶骇璁″垝")
+    public AjaxResult add(@RequestBody ProductionPlanDto productionPlanDto) {
+        return AjaxResult.success(productionPlanService.add(productionPlanDto));
+    }
+
+    @PutMapping("")
+    @Log(title = "鏇存柊鐢熶骇璁″垝", businessType = BusinessType.UPDATE)
+    @ApiOperation("鏇存柊鐢熶骇璁″垝")
+    public AjaxResult update(@RequestBody ProductionPlanDto productionPlanDto) {
+        return AjaxResult.success(productionPlanService.updateById(productionPlanDto));
+    }
+
+    @DeleteMapping("")
+    @Log(title = "鍒犻櫎鐢熶骇璁″垝", businessType = BusinessType.DELETE)
+    @ApiOperation("鍒犻櫎鐢熶骇璁″垝")
+    public AjaxResult delete(@RequestBody List<Long> ids) {
+        return AjaxResult.success(productionPlanService.removeByIds(ids));
+    }
+
+    @GetMapping("/summaryByProductType")
+    @ApiOperation("鎸夌収浜у搧绫诲埆姹囨�荤粺璁¢渶姹傞噺")
+    @Log(title = "鎸夌収浜у搧绫诲埆姹囨�荤粺璁¢渶姹傞噺", businessType = BusinessType.OTHER)
+    public AjaxResult summaryByProductType(ProductionPlanSummaryDto query) {
+        List<ProductionPlanSummaryDto> list = productionPlanService.summaryByProductType(query);
+        return AjaxResult.success(list);
+    }
+
+    @PostMapping("/downloadTemplate")
+    @Log(title = "涓嬭浇涓荤敓浜ц鍒掑鍏ユā鏉�", businessType = BusinessType.EXPORT)
+    @ApiOperation("涓嬭浇涓荤敓浜ц鍒掑鍏ユā鏉�")
+    public void importTemplate(HttpServletResponse response) {
+        ExcelUtil<ProductionPlanImportDto> excelUtil = new ExcelUtil<>(ProductionPlanImportDto.class);
+        excelUtil.importTemplateExcel(response, "涓荤敓浜ц鍒掑鍏ユā鏉�");
+    }
+
+    @PostMapping("/import")
+    @ApiOperation("涓荤敓浜ц鍒掓暟鎹鍏�")
+    @Log(title = "涓荤敓浜ц鍒掓暟鎹鍏�", businessType = BusinessType.IMPORT)
+    public AjaxResult importProdData(@RequestParam("file") MultipartFile file) {
+        productionPlanService.importProdData(file);
+        return AjaxResult.success("瀵煎叆鎴愬姛");
+    }
+
+    @PostMapping("/export")
+    @ApiOperation("涓荤敓浜ц鍒掓暟鎹鍑�")
+    @Log(title = "涓荤敓浜ц鍒掓暟鎹鍑�", businessType = BusinessType.EXPORT)
+    public void exportProdData(HttpServletResponse response, @RequestBody(required = false) List<Long> ids) {
+        productionPlanService.exportProdData(response, ids);
+    }
+
 }

--
Gitblit v1.9.3