From 91b61fe723df498d62c596372521d426299f0f8b Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期一, 09 六月 2025 16:54:26 +0800
Subject: [PATCH] 标签不显示标题问题

---
 north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java |  226 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 174 insertions(+), 52 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java b/north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java
index d95100b..8e655a8 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java
@@ -3,6 +3,7 @@
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import com.example.erp.common.Constants;
 import com.example.erp.common.Result;
+import com.example.erp.dto.pp.*;
 import com.example.erp.entity.pp.DamageDetails;
 import com.example.erp.entity.pp.FlowCard;
 import com.example.erp.entity.pp.Report;
@@ -26,7 +27,7 @@
 import java.util.Map;
 
 @RestController
-@Api(value="鐢熶骇鎶ヨ〃controller",tags={"鐢熶骇鎶ヨ〃鎿嶄綔鎺ュ彛"})
+@Api(value = "鐢熶骇鎶ヨ〃controller", tags = {"鐢熶骇鎶ヨ〃鎿嶄綔鎺ュ彛"})
 @RequestMapping("/report")
 public class ReportController {
     private final ReportService reportService;
@@ -37,39 +38,40 @@
 
     //娴佺▼鍗¤繘搴�
     @ApiOperation("娴佺▼鍗¤繘搴�")
-    @SaCheckPermission("ProcessCardProgress.search")
-    @PostMapping  ("/processCardProgress/{orderId}")
-    public Result processCardProgress(@PathVariable String orderId, @RequestBody List<Integer> columns){
-        return Result.seccess(reportService.processCardProgressSv(orderId,columns));
+    @SaCheckPermission("processCardProgress.search")
+    @PostMapping("/processCardProgress/{orderId}")
+    public Result processCardProgress(@PathVariable String orderId, @RequestBody List<Integer> columns) {
+        return Result.seccess(reportService.processCardProgressSv(orderId, columns));
     }
 
     @ApiOperation("璺ㄥ伐搴忔鐮�")
-    @SaCheckPermission("CrossProcessBreaking.search")
+    @SaCheckPermission("crossProcessBreaking.search")
     @PostMapping("/crossProcessBreaking/{pageNum}/{pageSize}/{selectDate}")
     public Result getOrderReport(@PathVariable Integer pageNum,
                                  @PathVariable Integer pageSize,
                                  @PathVariable List<String> selectDate,
-                                 @RequestBody DamageDetails damageDetails)  {
-        return  Result.seccess(reportService.crossProcessBreakingSv(pageNum,pageSize,selectDate,damageDetails));
+                                 @RequestBody CrossProcessBreakingDTO crossProcessBreakingDTO) {
+        return Result.seccess(reportService.crossProcessBreakingSv(pageNum, pageSize, selectDate, crossProcessBreakingDTO));
 
     }
 
     @ApiOperation("鍦ㄥ埗鍝佹姤琛�")
-    @SaCheckPermission("WorkInProgress.search")
-    @PostMapping("/workInProgress/{selectTime1}/{selectTime2}/{orderId}/{inputProject}/{selectProcesses}")
+    @SaCheckPermission("workInProgress.search")
+    @PostMapping("/workInProgress/{pageNum}/{pageSize}/{orderId}/{inputProject}/{selectProcesses}/{optionVal}")
     public Result workInProgress(
-                                 @PathVariable Date selectTime1,
-                                 @PathVariable Date selectTime2,
-                                 @PathVariable String orderId,
-                                 @PathVariable String inputProject,
-                                 @PathVariable String selectProcesses,
-                                 @RequestBody Report report)  {
-        return  Result.seccess(reportService.workInProgressSv(selectTime1,selectTime2,orderId,inputProject,selectProcesses,report));
+            @PathVariable Integer pageNum,
+            @PathVariable Integer pageSize,
+            @PathVariable String orderId,
+            @PathVariable String inputProject,
+            @PathVariable String selectProcesses,
+            @PathVariable String optionVal,
+            @RequestBody WorkInProgressDTO workInProgressDTO) {
+        return Result.seccess(reportService.workInProgressSv(pageNum, pageSize, orderId, inputProject, selectProcesses,optionVal, workInProgressDTO));
 
     }
 
     @ApiOperation("宸ュ簭寰呭畬鎴愭姤琛�")
-    @SaCheckPermission("ProcessToBeCompleted.search")
+    @SaCheckPermission("processToBeCompleted.search")
     @PostMapping("/selectProcessToBeCompleted/{selectTime1}/{selectTime2}/{orderId}/{inputProject}/{selectProcesses}")
     public Result selectProcessToBeCompleted(
             @PathVariable Date selectTime1,
@@ -77,92 +79,212 @@
             @PathVariable String orderId,
             @PathVariable String inputProject,
             @PathVariable String selectProcesses,
-            @RequestBody Report report)  {
-        return  Result.seccess(reportService.selectProcessToBeCompletedSv(selectTime1,selectTime2,orderId,inputProject,selectProcesses,report));
+            @RequestBody Report report) {
+        return Result.seccess(reportService.selectProcessToBeCompletedSv(selectTime1, selectTime2, orderId, inputProject, selectProcesses, report));
 
     }
 
     @ApiOperation("娆$牬鏄庣粏鎶ヨ〃")
-    @SaCheckPermission("DamageReport.search")
-    @PostMapping("/damageReport/{selectTime1}/{selectTime2}")
+    @SaCheckPermission("damageReport.search")
+    @PostMapping("/damageReport/{pageNum}/{pageSize}/{selectTime1}/{selectTime2}")
     public Result damageReport(
+            @PathVariable Integer pageNum,
+            @PathVariable Integer pageSize,
             @PathVariable Date selectTime1,
             @PathVariable Date selectTime2,
-            @RequestBody Report report)  {
-        return  Result.seccess(reportService.selectDamageReportSv(selectTime1,selectTime2,report));
+            @RequestBody DamageReportDTO damageReportDTO) {
+        return Result.seccess(reportService.selectDamageReportSv(pageNum, pageSize, selectTime1, selectTime2, damageReportDTO));
 
     }
+
     @ApiOperation("鍒嗘灦鏄庣粏鎶ヨ〃")
-    @SaCheckPermission("SplittingDetailsOutside.search")
+    @SaCheckPermission("splittingDetailsOutside.search")
     @PostMapping("/splittingDetailsOutside/{orderId}")
     public Result splittingDetailsOutside(
             @PathVariable String orderId,
-            @RequestBody Report report)  {
-        return  Result.seccess(reportService.splittingDetailsOutsideSv(orderId,report));
+            @RequestBody Report report) {
+        return Result.seccess(reportService.splittingDetailsOutsideSv(orderId, report));
 
     }
 
     @ApiOperation("鍝佽川鎶ヨ〃")
-    @SaCheckPermission("QualityReport.search")
+    @SaCheckPermission("qualityReport.search")
     @PostMapping("/qualityReport/{selectTime1}/{selectTime2}")
     public Result qualityReport(
             @PathVariable Date selectTime1,
             @PathVariable Date selectTime2,
-            @RequestBody Report report)  {
-        return  Result.seccess(reportService.qualityReportSv(selectTime1,selectTime2,report));
+            @RequestBody Report report) {
+        return Result.seccess(reportService.qualityReportSv(selectTime1, selectTime2, report));
 
     }
 
     @ApiOperation("鎴愬搧鐜囨姤琛�")
-    @SaCheckPermission("Yield.search")
+    @SaCheckPermission("yield.search")
     @PostMapping("/yield/{selectTime1}/{selectTime2}/{selectProcesses}")
     public Result yield(
             @PathVariable Date selectTime1,
             @PathVariable Date selectTime2,
             @PathVariable String selectProcesses,
-            @RequestBody Report report)  {
-        return  Result.seccess(reportService.yieldSv(selectTime1,selectTime2,selectProcesses,report));
+            @RequestBody Report report) {
+        return Result.seccess(reportService.yieldSv(selectTime1, selectTime2, selectProcesses, report));
 
     }
 
     @ApiOperation("鐢熶骇鍙戣揣杩涘害")
-    @SaCheckPermission("ProductionSchedule.search")
-    @PostMapping  ("/productionSchedule/{orderId}")
-    public Result productionSchedule(@PathVariable String orderId, @RequestBody List<Integer> columns){
-        return Result.seccess(reportService.productionScheduleSv(orderId,columns));
+    @SaCheckPermission("productionSchedule.search")
+    @PostMapping("/productionSchedule/{orderId}")
+    public Result productionSchedule(@PathVariable String orderId, @RequestBody List<Integer> columns) {
+        return Result.seccess(reportService.productionScheduleSv(orderId, columns));
     }
 
     @ApiOperation("浠诲姟瀹屾垚鎯呭喌姹囨�昏繘搴�")
-    @SaCheckPermission("TaskCompletionStatus.search")
-    @PostMapping  ("/taskCompletionStatus/{selectTime1}/{selectTime2}")
+    @SaCheckPermission("taskCompletionStatus.search")
+    @PostMapping("/taskCompletionStatus/{selectTime1}/{selectTime2}")
     public Result taskCompletionStatus(@PathVariable Date selectTime1,
                                        @PathVariable Date selectTime2,
-                                       @RequestBody List<Integer> columns){
-        return Result.seccess(reportService.taskCompletionStatusSv(selectTime1,selectTime2,columns));
+                                       @RequestBody List<Integer> columns) {
+        return Result.seccess(reportService.taskCompletionStatusSv(selectTime1, selectTime2, columns));
     }
 
     @ApiOperation("璁㈠崟璁″垝鍒嗚В")
-    @SaCheckPermission("OrderPlanDecomposition.search")
-    @PostMapping  ("/orderPlanDecomposition/{selectTime1}/{selectTime2}")
+    @SaCheckPermission("orderPlanDecomposition.search")
+    @PostMapping("/orderPlanDecomposition/{selectTime1}/{selectTime2}")
     public Result orderPlanDecomposition(@PathVariable Date selectTime1,
-                                       @PathVariable Date selectTime2,
-                                         @RequestBody Report report){
-        return Result.seccess(reportService.orderPlanDecompositionSv(selectTime1,selectTime2,report));
+                                         @PathVariable Date selectTime2,
+                                         @RequestBody Report report) {
+        return Result.seccess(reportService.orderPlanDecompositionSv(selectTime1, selectTime2, report));
+    }
+
+    @ApiOperation("璁㈠崟鎶ュ伐")
+    @SaCheckPermission("orderPlanDecomposition.search")
+    @PostMapping("/orderReportingWorks/{selectTime1}/{selectTime2}")
+    public Result orderReportingWorks(@PathVariable Date selectTime1,
+                                         @PathVariable Date selectTime2,
+                                         @RequestBody Report report) {
+        return Result.seccess(reportService.orderReportingWorks(selectTime1, selectTime2, report));
     }
 
     @ApiOperation("鍘熺墖棰嗘枡")
-    @SaCheckPermission("RawMaterialRequisition.search")
-    @PostMapping  ("/rawMaterialRequisition/{selectTime1}/{selectTime2}")
+    @SaCheckPermission("rawMaterialRequisition.search")
+    @PostMapping("/rawMaterialRequisition/{selectTime1}/{selectTime2}")
     public Result rawMaterialRequisition(@PathVariable Date selectTime1,
                                          @PathVariable Date selectTime2,
-                                         @RequestBody Report report){
-        return Result.seccess(reportService.rawMaterialRequisitionSv(selectTime1,selectTime2,report));
+                                         @RequestBody Report report) {
+        return Result.seccess(reportService.rawMaterialRequisitionSv(selectTime1, selectTime2, report));
+    }
+
+    @ApiOperation("鐝粍浜ч噺鏄庣粏鎶ヨ〃")
+    @SaCheckPermission("damageReport.search")
+    @PostMapping("/teamOutput/{pageNum}/{pageSize}/{selectTime1}/{selectTime2}/{selectProcesses}")
+    public Result teamOutput(
+            @PathVariable Integer pageNum,
+            @PathVariable Integer pageSize,
+            @PathVariable Date selectTime1,
+            @PathVariable Date selectTime2,
+            @PathVariable String selectProcesses,
+            @RequestBody TeamOutputDTO teamOutputDTO) {
+        return Result.seccess(reportService.teamOutputSv(pageNum, pageSize, selectTime1, selectTime2,selectProcesses, teamOutputDTO));
+
     }
     @ApiOperation("璺ㄥ伐搴忔鐮存姤琛ㄥ鍑�")
     @PostMapping("/exportCrossProcessBreaking")
     public void exportCrossProcessBreaking(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
-
         //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
-        DownExcel.download(response, DamageDetails.class, reportService.exportCrossProcessBreakingSv(dates),"CrossProcessBreaking");
+        DownExcel.download(response, CrossProcessBreakingDTO.class, reportService.exportCrossProcessBreakingSv(dates), "CrossProcessBreaking");
+    }
+
+    @ApiOperation("娆$牬鏄庣粏鎶ヨ〃瀵煎嚭")
+    @PostMapping("/exportDamageReport")
+    public void exportDamageReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, DamageReportDTO.class, reportService.exportDamageReportSv(dates), "DamageReport");
+    }
+
+    @ApiOperation("璁㈠崟璁″垝鍒嗚В鎶ヨ〃瀵煎嚭")
+    @PostMapping("/exportOrderPlanDecomposition")
+    public void exportOrderPlanDecomposition(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, OrderPlanDecompositionDTO.class, reportService.exportOrderPlanDecompositionSv(dates), "OrderPlanDecomposition");
+    }
+
+    @ApiOperation("宸ュ簭寰呭畬鎴愭姤琛ㄥ鍑�")
+    @PostMapping("/exportProcessToBeCompleted")
+    public void exportProcessToBeCompleted(HttpServletResponse response,
+                                           @RequestBody Map<String, Object> dates)
+            throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, ProcessToBeCompletedDTO.class, reportService.exportProcessToBeCompletedSv(dates), "ProcessToBeCompleted");
+    }
+
+    @ApiOperation("鍦ㄥ埗鍝佹姤琛ㄥ鍑�")
+    @PostMapping("/exportWorkInProgress")
+    public void exportWorkInProgress(HttpServletResponse response,
+                                     @RequestBody Map<String, Object> dates)
+            throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, WorkInProgressDTO.class, reportService.exportWorkInProgressSv(dates), "WorkInProgress");
+    }
+
+//
+
+    @ApiOperation("浠诲姟瀹屾垚鎯呭喌瀵煎嚭")
+    @PostMapping("/exportTaskCompletionStatus")
+    public void exportTaskCompletionStatus(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, TaskCompletionStatusDTO.class, reportService.exportDamageReportSv(dates), "TaskCompletionStatus");
+    }
+
+    @ApiOperation("鍘熺墖棰嗘枡瀵煎嚭")
+    @PostMapping("/exportRawMaterialRequisition")
+    public void exportRawMaterialRequisition(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, RawMaterialRequisitionDTO.class, reportService.exportRawMaterialRequisitionSv(dates), "RawMaterialRequisition");
+    }
+
+    @ApiOperation("鍝佽川鎶ヨ〃瀵煎嚭")
+    @PostMapping("/exportQualityReport")
+    public void exportQualityReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, QualityReportDTO.class, reportService.exportQualityReportSv(dates), "QualityReport");
+    }
+
+    @ApiOperation("鎴愬搧鐜囨姤琛ㄥ鍑�")
+    @PostMapping("/exportYield")
+    public void exportYield(HttpServletResponse response,
+                                     @RequestBody Map<String, Object> dates)
+            throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, YieldDTO.class, reportService.exportYieldSv(dates), "Yield");
+    }
+
+    @ApiOperation("鎺掍骇璁㈠崟淇℃伅鎶ヨ〃")
+    @PostMapping("/scheduleProductionSchedule/{pageNum}/{pageSize}/{selectTime1}/{selectTime2}/{processes}")
+    public Result scheduleProductionSchedule(
+            @PathVariable Integer pageNum,
+            @PathVariable Integer pageSize,
+            @PathVariable Date selectTime1,
+            @PathVariable Date selectTime2,
+            @PathVariable String processes,
+            @RequestBody ScheduleProductionScheduleDTO scheduleProductionScheduleDTO) {
+        return Result.seccess(reportService.scheduleProductionScheduleSv(pageNum, pageSize, selectTime1, selectTime2,processes, scheduleProductionScheduleDTO));
+
+    }
+
+    @ApiOperation("璁㈠崟鎺掍骇璁″垝瀵煎嚭")
+    @PostMapping("/exportScheduleReport")
+    public void exportScheduleReport(HttpServletResponse response,
+                                     @RequestBody Map<String, Object> dates
+    ) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, ScheduleProductionScheduleDTO.class, reportService.exportScheduleReportSv(dates), "ScheduleProduction");
+    }
+
+    @ApiOperation("鐝粍浜ч噺瀵煎嚭")
+    @PostMapping("/exportTeamOutput")
+    public void exportTeamOutput(HttpServletResponse response,
+                                     @RequestBody Map<String, Object> dates
+    ) throws IOException, IllegalAccessException, InstantiationException {
+        //鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
+        DownExcel.download(response, TeamOutputDTO.class, reportService.exportTeamOutputSv(dates), "TeamOutput");
     }
 }

--
Gitblit v1.8.0