From a158ed9136af588b82d365f98074b29c70cdb601 Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期五, 08 八月 2025 15:58:35 +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/service/pp/GlassOptimizeService.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
index 9535a46..b6adbf0 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
@@ -262,6 +262,8 @@
List<Map<String, Object>> originalFilm = (List<Map<String, Object>>) object.get("originalFilm");
glassOptimizeMapper.addOptimizeUse(originalFilm,projectId,"admin");
+ Map<String, Object> glassInfo = glassOptimizeMapper.getGlassInfo(projectId);
+
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(optimalResults);
glassOptimizeMapper.addOptimizeProjectFile(json,projectId,"admin");
@@ -270,12 +272,55 @@
glassOptimizeMapper.addOptimizeLayout(objectMapList,projectId);
for(Map<String, Object> objectMap:objectMapList){
List<Map<String, Object>> objectMap2 = (List<Map<String, Object>>) objectMap.get("glassDetails");
- //杩唬鐜荤拑鏄庣粏闆嗗悎鍒犻櫎浣欐枡
+ //杩唬鐜荤拑鏄庣粏闆嗗悎澶勭悊浣欐枡鍜屽叾浠�
Iterator<Map<String, Object>> iterator = objectMap2.iterator();
while (iterator.hasNext()) {
Map<String, Object> map = iterator.next();
- if (map.get("isRemain").toString()=="true") {
- iterator.remove();
+ // 淇敼isRemain鍒ゆ柇閫昏緫锛屾敮鎸佹暟瀛�0/1鍜屽瓧绗︿覆"0"/"1"
+ boolean isRemain = false;
+ if (map.containsKey("isRemain")) {
+ Object isRemainObj = map.get("isRemain");
+ if (isRemainObj != null) {
+ if (isRemainObj instanceof Number) {
+ // 鏁板瓧绫诲瀷: 1琛ㄧずtrue锛�0琛ㄧずfalse
+ isRemain = ((Number) isRemainObj).intValue() == 1;
+ } else {
+ // 瀛楃涓茬被鍨�: "1"琛ㄧずtrue锛�"0"琛ㄧずfalse
+ isRemain = "1".equals(isRemainObj.toString());
+ }
+ }
+ }
+
+ if (isRemain) {
+ System.out.println( map);
+ if (glassInfo != null) {
+ String glassType = (String) glassInfo.get("glass_type");
+ String glassThickness = (String) glassInfo.get("glass_thickness");
+ // 浣欐枡瀛樺叆optimizeoffcut
+ glassOptimizeMapper.addOptimizeOffcut(map, projectId, glassType, glassThickness);
+ }
+ iterator.remove(); // 浠庡師鍒楄〃涓Щ闄�
+ }else {
+ // 澶勭悊isRotate瀛楁杞崲 (鐜板湪鏄�0/1)
+ if (map.containsKey("isRotate")) {
+ Object isRotateObj = map.get("isRotate");
+ if (isRotateObj != null) {
+ if (isRotateObj instanceof Number) {
+ // 鐩存帴浣跨敤鏁板瓧鍊�
+ map.put("isRotate", ((Number) isRotateObj).intValue());
+ } else {
+ // 瀛楃涓插舰寮忕殑"0"/"1"
+ String isRotateStr = isRotateObj.toString();
+ if ("1".equals(isRotateStr)) {
+ map.put("isRotate", 1);
+ } else {
+ map.put("isRotate", 0);
+ }
+ }
+ } else {
+ map.put("isRotate", 0); // 榛樿鍊�
+ }
+ }
}
}
--
Gitblit v1.8.0