From 2f640b1038fa331954f78ed1f4317212cf5bb34d Mon Sep 17 00:00:00 2001 From: chenlu <1320612696@qq.com> Date: 星期五, 07 六月 2024 16:56:06 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/controller/pp/ReportController.java | 222 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 218 insertions(+), 4 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 8574f65..42c7314 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 @@ -1,23 +1,33 @@ package com.example.erp.controller.pp; +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; +import com.example.erp.entity.sd.Order; +import com.example.erp.entity.sd.OrderDetail; import com.example.erp.entity.sd.OrderGlassDetail; import com.example.erp.exception.ServiceException; import com.example.erp.service.pp.ReportService; import com.example.erp.service.pp.WorkOrderService; +import com.example.erp.tools.DownExcel; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.sql.Date; +import java.time.LocalDate; import java.util.List; import java.util.Map; @RestController -@Api(value="鐢熶骇鎶ヨ〃controller",tags={"鐢熶骇鎶ヨ〃鎿嶄綔鎺ュ彛"}) +@Api(value = "鐢熶骇鎶ヨ〃controller", tags = {"鐢熶骇鎶ヨ〃鎿嶄綔鎺ュ彛"}) @RequestMapping("/report") public class ReportController { private final ReportService reportService; @@ -28,9 +38,213 @@ //娴佺▼鍗¤繘搴� @ApiOperation("娴佺▼鍗¤繘搴�") - @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") + @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)); + + } + + @ApiOperation("鍦ㄥ埗鍝佹姤琛�") + @SaCheckPermission("WorkInProgress.search") + @PostMapping("/workInProgress/{selectTime1}/{selectTime2}/{orderId}/{inputProject}/{selectProcesses}") + 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)); + + } + + @ApiOperation("宸ュ簭寰呭畬鎴愭姤琛�") + @SaCheckPermission("ProcessToBeCompleted.search") + @PostMapping("/selectProcessToBeCompleted/{selectTime1}/{selectTime2}/{orderId}/{inputProject}/{selectProcesses}") + public Result selectProcessToBeCompleted( + @PathVariable Date selectTime1, + @PathVariable Date selectTime2, + @PathVariable String orderId, + @PathVariable String inputProject, + @PathVariable String selectProcesses, + @RequestBody Report report) { + return Result.seccess(reportService.selectProcessToBeCompletedSv(selectTime1, selectTime2, orderId, inputProject, selectProcesses, report)); + + } + + @ApiOperation("娆$牬鏄庣粏鎶ヨ〃") + @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 DamageReportDTO damageReportDTO) { + return Result.seccess(reportService.selectDamageReportSv(pageNum, pageSize, selectTime1, selectTime2, damageReportDTO)); + + } + + @ApiOperation("鍒嗘灦鏄庣粏鎶ヨ〃") + @SaCheckPermission("SplittingDetailsOutside.search") + @PostMapping("/splittingDetailsOutside/{orderId}") + public Result splittingDetailsOutside( + @PathVariable String orderId, + @RequestBody Report report) { + return Result.seccess(reportService.splittingDetailsOutsideSv(orderId, report)); + + } + + @ApiOperation("鍝佽川鎶ヨ〃") + @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)); + + } + + @ApiOperation("鎴愬搧鐜囨姤琛�") + @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)); + + } + + @ApiOperation("鐢熶骇鍙戣揣杩涘害") + @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}") + public Result taskCompletionStatus(@PathVariable Date selectTime1, + @PathVariable Date selectTime2, + @RequestBody List<Integer> columns) { + return Result.seccess(reportService.taskCompletionStatusSv(selectTime1, selectTime2, columns)); + } + + @ApiOperation("璁㈠崟璁″垝鍒嗚В") + @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)); + } + + @ApiOperation("鍘熺墖棰嗘枡") + @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)); + } + + @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, 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"); } } -- Gitblit v1.8.0