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/GlassOptimizeController.java | 318 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 318 insertions(+), 0 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java b/north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java index f9db621..e6f0a0e 100644 --- a/north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java +++ b/north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java @@ -1,15 +1,27 @@ 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.entity.pp.LayoutsData; import com.example.erp.entity.pp.OptimizeProjectMange; +import com.example.erp.exception.ServiceException; import com.example.erp.service.pp.GlassOptimizeService; +import com.example.erp.service.pp.JsonToOptConverter; +import com.example.erp.service.userInfo.UserService; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.io.IOException; import java.sql.Date; +import java.util.Map; @RestController @Api(value="浼樺寲绠$悊controller",tags={"浼樺寲绠$悊鎿嶄綔鎺ュ彛"}) @@ -17,6 +29,34 @@ public class GlassOptimizeController { @Autowired GlassOptimizeService glassOptimizeService; + @Autowired + private UserService userService; + //宸ョ▼淇℃伅 + @ApiOperation("宸ョ▼淇℃伅鎺ュ彛") + @PostMapping ("/projectInfo/{projectNo}/{username}") + public Result projectInfo( + @PathVariable String projectNo,@PathVariable String username){ + return Result.seccess(glassOptimizeService.projectInfoSv(projectNo,username)); + } + + //宸ョ▼淇℃伅娴佺▼鍗� + @ApiOperation("宸ョ▼淇℃伅娴佺▼鍗℃帴鍙�") + @PostMapping ("/getProcessCard/{projectNo}") + public Result getProcessCard( + @PathVariable String projectNo){ + return Result.seccess(glassOptimizeService.getProcessCardSv(projectNo)); + } + + //搴撳瓨淇℃伅 + @ApiOperation("搴撳瓨淇℃伅鎺ュ彛") + @GetMapping ("/materialStore/{thickness}/{model}/{projectNumber}") + public Result materialStore( + @PathVariable String thickness, + @PathVariable String model,@PathVariable String projectNumber, + @RequestParam(name = "type", required = false) Integer type,@RequestParam(name = "username", required = false) String username ){ + return Result.seccess(glassOptimizeService.materialStoreSv(thickness,model,projectNumber,type,username)); + } + //宸ョ▼鏌ヨ娴佺▼鍗� @ApiOperation("鍒涘缓宸ョ▼鏌ヨ娴佺▼鍗℃帴鍙�") @@ -25,6 +65,15 @@ @PathVariable String optionVal, @PathVariable Integer radio){ return Result.seccess(glassOptimizeService.getFlowCardList(optionVal,radio)); + } + + //宸ョ▼鏌ヨ娴佺▼鍗� + @ApiOperation("淇敼宸ョ▼鏌ヨ娴佺▼鍗℃帴鍙�") + @PostMapping ("/getUpdateFlowCardList/{type}/{thickness}/{radio}/{projectNo}") + public Result getUpdateFlowCardList( + @PathVariable String type,@PathVariable String thickness, + @PathVariable Integer radio,@PathVariable String projectNo){ + return Result.seccess(glassOptimizeService.getUpdateFlowCardList(type,thickness,radio,projectNo)); } //宸ョ▼鏌ヨ娴佺▼鍗� @@ -43,4 +92,273 @@ @RequestBody OptimizeProjectMange optimizeProjectMange) { return Result.seccess(glassOptimizeService.OptimizeProjectMange(startSelectTime,endSelectTime,optimizeProjectMange)); } + + //淇敼宸ョ▼鐘舵�� + @ApiOperation("淇敼宸ョ▼鐘舵�佹帴鍙�") + @PostMapping("/updateProjectState/{projectNumber}/{state}/{states}/{code}") + public Result updateProjectState( + @PathVariable String projectNumber, + @PathVariable Integer state, + @PathVariable Integer states, + @PathVariable Integer code + ) { + if (glassOptimizeService.updateProjectState(projectNumber, state,states,code)) { + return Result.seccess(); + } else { + throw new ServiceException(Constants.Code_500, "淇敼澶辫触"); + + } + } + + //鍒犻櫎宸ョ▼ + @ApiOperation("宸ョ▼绠$悊鍒犻櫎鎺ュ彛") + @PostMapping("/deleteProject/{projectNumber}") + public Result deleteProject( + @PathVariable String projectNumber){ + return Result.seccess(glassOptimizeService.deleteProject(projectNumber,1)); + } + + //妯℃嫙璁$畻宸ョ▼鍙锋煡璇� + @ApiOperation("妯℃嫙璁$畻宸ョ▼鍙锋煡璇�") + @PostMapping ("/selectProjectCompute/{projectNumber}") + public Result selectProjectCompute( + @PathVariable String projectNumber){ + return Result.seccess(glassOptimizeService.selectProjectComputeSv(projectNumber)); + } + + //妯℃嫙璁$畻宸ョ▼鍙锋煡璇� + @ApiOperation("妯℃嫙璁$畻宸ョ▼鏁版嵁鏌ヨ") + @PostMapping ("/selectProjectComputeAll/{projectNumber}") + public Result selectProjectComputeAll( + @PathVariable String projectNumber){ + return Result.seccess(glassOptimizeService.selectProjectComputeAll(projectNumber)); + } + + //妯℃嫙璁$畻娴佺▼鍗¤鎯� + @ApiOperation("妯℃嫙璁$畻娴佺▼鍗¤鎯�") + @PostMapping ("/selectComputeDetail/{processId}/{technologyNumber}/{patchState}") + public Result selectComputeDetail( + @PathVariable String processId, @PathVariable Integer technologyNumber,@PathVariable String patchState){ + return Result.seccess(glassOptimizeService.selectComputeDetailSv(processId,technologyNumber,patchState)); + } + + @ApiOperation("妯℃嫙璁$畻") + @PostMapping("/simulationCalculate") + public Result simulationCalculate(@RequestBody Map<String, Object> object) { + try { + return Result.seccess(glassOptimizeService.SimulationCalculation(object)); + } catch (Exception e) { + e.printStackTrace(); + return Result.error(); + } + } + + @ApiOperation("妯℃嫙璁$畻淇濆瓨") + @PostMapping("/simulationSave") + public Result simulationSave(@RequestBody Map<String, Object> object) { + try { + return Result.seccess(glassOptimizeService.addSimulation(object)); + } catch (Exception e) { + e.printStackTrace(); + return Result.error(); + } + } + + @ApiOperation("浼樺寲璁剧疆淇濆瓨") + @PostMapping("/optimizeParms/{username}") + public Result optimizeParmsSave(@RequestBody Map<String, Object> object,@PathVariable String username) { + try { + return Result.seccess(glassOptimizeService.optimizeParmsSave(object,username)); + } catch (Exception e) { + e.printStackTrace(); + return Result.error(); + } + } + + + @PostMapping("/selectOptimizeParms/{username}") + public Result getOptimizeParms(@PathVariable String username) { + return Result.seccess(userService.getOptimizeParms(username)); + } + + + + @ApiOperation("妯℃嫙璁$畻澶氭祦绋嬪崱") + @PostMapping("/selectComputeDetailmore") + public Result selectComputeDetailmore(@RequestBody Map<String, Object> object) { + try { + return Result.seccess(glassOptimizeService.SimulationCalculation(object)); + } catch (Exception e) { + e.printStackTrace(); + return Result.error(); + } + } + + + + + + //鍒涘缓宸ョ▼鏌ヨ娴佺▼鍗℃槑缁� + @ApiOperation("鍒涘缓宸ョ▼鏌ヨ娴佺▼鍗℃槑缁�") + @PostMapping ("/getProcessCardDetail/{processId}/{technologyNumber}") + public Result getProcessCardDetail( + @PathVariable String processId, + @PathVariable Integer technologyNumber){ + return Result.seccess(glassOptimizeService.getProcessCardDetailSv(processId,technologyNumber)); + } + + @ApiOperation("鑶滅郴鏌ヨ") + @PostMapping ("/selectGlassType") + public Result selectGlassType(){ + return Result.seccess(glassOptimizeService.selectGlassTypeSv()); + } + + @ApiOperation("鏈�鏂板伐绋嬪彿鏌ヨ") + @PostMapping ("/getProjectId") + public Result getProjectId(){ + return Result.seccess(glassOptimizeService.getProjectIdSv()); + } + @ApiOperation("鍒涘缓宸ョ▼鎺ュ彛") + @PostMapping("/addProject/{optionVal}/{projectId}/{projectNmae}") + public Result addProject( + @PathVariable String optionVal, + @PathVariable String projectId, + @PathVariable String projectNmae, + @RequestBody Map<String,Object> object){ + return Result.seccess(glassOptimizeService.addProjectSv(optionVal,projectId,projectNmae,object)); + } + + + @ApiOperation("淇濆瓨浼樺寲缁撴灉鎺ュ彛") + @PostMapping("/saveOptimizeData/{projectId}") + public Result saveOptimizeResult( @PathVariable String projectId, + @RequestBody Map<String,Object> object){ + return Result.seccess(glassOptimizeService.saveOptimizeResult(object,projectId)); + } + + + @ApiOperation("鏌ヨ浼樺寲缁撴灉鎺ュ彛") + @PostMapping("/selectOptimizeResult/{processId}") + public Result selectOptimizeResult( + @PathVariable String processId){ + return Result.seccess(glassOptimizeService.selectOptimizeResult(processId)); + } + + @ApiOperation("鏇存柊浼樺寲缁撴灉鎺ュ彛") + @PostMapping("/updateOptimizeResult/{processId}") + public Result updateOptimizeResult( + @PathVariable String processId,@RequestBody Map<String,Object> object){ + + return Result.seccess(glassOptimizeService.updateOptimizeResult(object,processId)); + } + @ApiOperation("OPT鏂囦欢涓嬭浇鎺ュ彛") + @PostMapping("/generateOpt") + public ResponseEntity<byte[]> generateOptFile(@RequestBody LayoutsData layoutsData) throws IOException { + // 纭繚 layoutsData 鍖呭惈 Layouts 鏁扮粍 + if (layoutsData == null || layoutsData.getLayouts() == null) { + throw new IllegalArgumentException("Layouts 鏁版嵁涓嶈兘涓虹┖"); + } + + // 鐢熸垚 OPT 鏂囦欢鍐呭 + String optContent = JsonToOptConverter.generateOptContent(layoutsData); + + // 鍒涘缓鍝嶅簲澶� + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(org.springframework.http.MediaType.TEXT_PLAIN); + headers.setContentDispositionFormData("attachment", "output.opt"); + + // 杩斿洖鏂囦欢鍐呭 + return new ResponseEntity<>(optContent.getBytes(), headers, HttpStatus.OK); + } + + @PostMapping("/getConfiguration/{type}/{username}") + public Result getConfiguration(@PathVariable String type,@PathVariable String username) { + return Result.seccess(glassOptimizeService.getConfiguration(type,username)); + } + + @ApiOperation("淇墖纾ㄩ噺淇敼") + @PostMapping("/saveConfiguration/{type}/{username}") + public Result saveConfiguration(@PathVariable String type,@PathVariable String username, @RequestBody Map<String,Object> object){ + return Result.seccess(glassOptimizeService.saveConfiguration(object,type,username)); + } + + @ApiOperation("妯℃嫙鎺掔増") + @PostMapping("/simulatedTypesetting") + public Result simulatedTypesetting(@RequestBody Map<String, Object> object) { + return Result.seccess(glassOptimizeService.simulatedTypesetting1(object)); + } + + + + + + + + + + + + + + //妯℃嫙璁$畻宸ョ▼鍙锋煡璇㈢涓夋柟 + @ApiOperation("妯℃嫙璁$畻宸ョ▼鍙锋煡璇�") + @PostMapping ("/selectProjectComputeMpThirdParty/{projectNumber}") + public Result selectProjectComputeMpThirdParty( @PathVariable String projectNumber){ + return Result.seccess(glassOptimizeService.selectProjectComputeMpThirdParty(projectNumber)); + } + + //妯℃嫙璁$畻娴佺▼鍗¤鎯呯涓夋柟 + @ApiOperation("妯℃嫙璁$畻娴佺▼鍗¤鎯�") + @PostMapping ("/selectComputeDetailThirdParty/{processId}/{technologyNumber}") + public Result selectComputeDetailThirdParty( + @PathVariable String processId, @PathVariable Integer technologyNumber){ + return Result.seccess(glassOptimizeService.selectComputeDetailThirdParty(processId,technologyNumber)); + } + + @ApiOperation("妯℃嫙璁$畻淇濆瓨") + @PostMapping("/simulationSaveThirdParty") + public Result simulationSaveThirdParty(@RequestBody Map<String, Object> object) { + try { + return Result.seccess(glassOptimizeService.simulationSaveThirdParty(object)); + } catch (Exception e) { + e.printStackTrace(); + return Result.error(); + } + } + + //鍒犻櫎宸ョ▼ + @ApiOperation("宸ョ▼绠$悊鍒犻櫎鎺ュ彛") + @PostMapping("/deleteProjectThirdParty/{projectNumber}") + public Result deleteProjectThirdParty( + @PathVariable String projectNumber){ + return Result.seccess(glassOptimizeService.deleteProjectThirdParty(projectNumber)); + } + + @ApiOperation("宸ョ▼淇℃伅鎺ュ彛") + @PostMapping ("/projectInfoThirdParty/{projectNo}") + public Result projectInfoThirdParty( + @PathVariable String projectNo){ + return Result.seccess(glassOptimizeService.projectInfoThirdParty(projectNo)); + } + + //搴撳瓨淇℃伅 + @ApiOperation("搴撳瓨淇℃伅鎺ュ彛") + @GetMapping ("/materialStoreSvThirdParty/{projectNumber}") + public Result materialStoreSvThirdParty(@PathVariable String projectNumber ){ + return Result.seccess(glassOptimizeService.materialStoreSvThirdParty(projectNumber)); + } + + //宸ョ▼淇℃伅娴佺▼鍗� + @ApiOperation("宸ョ▼淇℃伅娴佺▼鍗℃帴鍙�") + @PostMapping ("/getProcessCardMpThirdParty/{projectNo}") + public Result getProcessCardMpThirdParty( + @PathVariable String projectNo){ + return Result.seccess(glassOptimizeService.getProcessCardMpThirdParty(projectNo)); + } + + + + + + } -- Gitblit v1.8.0