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 |  254 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 241 insertions(+), 13 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 19dc67d..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
@@ -3,14 +3,23 @@
 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;
 
@@ -20,22 +29,32 @@
 public class GlassOptimizeController {
     @Autowired
     GlassOptimizeService glassOptimizeService;
-
+    @Autowired
+    private UserService userService;
     //宸ョ▼淇℃伅
     @ApiOperation("宸ョ▼淇℃伅鎺ュ彛")
-    @PostMapping  ("/projectInfo/{projectNo}")
+    @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.projectInfoSv(projectNo));
+        return Result.seccess(glassOptimizeService.getProcessCardSv(projectNo));
     }
 
     //搴撳瓨淇℃伅
     @ApiOperation("搴撳瓨淇℃伅鎺ュ彛")
-    @PostMapping  ("/materialStore/{thickness}/{model}")
+    @GetMapping  ("/materialStore/{thickness}/{model}/{projectNumber}")
     public Result materialStore(
             @PathVariable  String thickness,
-            @PathVariable  String model ){
-        return Result.seccess(glassOptimizeService.materialStoreSv(thickness,model));
+            @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));
     }
 
 
@@ -46,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));
     }
 
     //宸ョ▼鏌ヨ娴佺▼鍗�
@@ -67,12 +95,14 @@
 
     //淇敼宸ョ▼鐘舵��
     @ApiOperation("淇敼宸ョ▼鐘舵�佹帴鍙�")
-    @PostMapping("/updateProjectState/{projectNumber}/{state}")
+    @PostMapping("/updateProjectState/{projectNumber}/{state}/{states}/{code}")
     public Result updateProjectState(
             @PathVariable String projectNumber,
-            @PathVariable Integer state
+            @PathVariable Integer state,
+            @PathVariable Integer states,
+            @PathVariable Integer code
     ) {
-        if (glassOptimizeService.updateProjectState(projectNumber, state)) {
+        if (glassOptimizeService.updateProjectState(projectNumber, state,states,code)) {
             return Result.seccess();
         } else {
             throw new ServiceException(Constants.Code_500, "淇敼澶辫触");
@@ -85,7 +115,7 @@
     @PostMapping("/deleteProject/{projectNumber}")
     public Result deleteProject(
             @PathVariable String projectNumber){
-        return Result.seccess(glassOptimizeService.deleteProject(projectNumber));
+        return Result.seccess(glassOptimizeService.deleteProject(projectNumber,1));
     }
 
     //妯℃嫙璁$畻宸ョ▼鍙锋煡璇�
@@ -96,13 +126,77 @@
         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}")
+    @PostMapping  ("/selectComputeDetail/{processId}/{technologyNumber}/{patchState}")
     public Result selectComputeDetail(
-            @PathVariable String processId){
-        return Result.seccess(glassOptimizeService.selectComputeDetailSv(processId));
+            @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("鍒涘缓宸ョ▼鏌ヨ娴佺▼鍗℃槑缁�")
@@ -133,4 +227,138 @@
             @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