guoyujie
2025-10-09 c1c7cae9ebaa7f743e51660265c8dfa6ac52f10d
north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
@@ -393,6 +393,24 @@
                            }
                        }
                    }
                    // 处理 glassPoint 序列化
                    if (detail.containsKey("glassPoint")) {
                        Object glassPointObj = detail.get("glassPoint");
                        if (glassPointObj != null) {
                            try {
                                // 如果 glassPointObj 已经是字符串,则不需要转换
                                if (!(glassPointObj instanceof String)) {
                                    // 将对象转换为 JSON 字符串
                                    String glassPointStr = mapper.writeValueAsString(glassPointObj);
                                    detail.put("glassPoint", glassPointStr);
                                }
                            } catch (Exception e) {
                                // 如果转换失败,记录错误并移除该字段
                                System.err.println("转换 glassPoint 失败: " + e.getMessage());
                                detail.remove("glassPoint");
                            }
                        }
                    }
                    if (isRemain) {
                        offCutDetails.add(detail);
@@ -674,7 +692,7 @@
    }
    //修改排版状态
    public Boolean updateProjectState(String projectNumber, Integer state,Integer states, Integer code) {
    public Boolean updateProjectState(String projectNumber, Integer state,Integer states, Integer code) throws JsonProcessingException {
        if (!projectNumber.isEmpty()) {
            //撤销模拟计算
            if(code==1){
@@ -693,7 +711,12 @@
            }
            //允许生产
            else if(code==3){
                glassOptimizeMapper.updateProjectStateMp(projectNumber, state);
                Boolean isSeccess = issuingProjects(projectNumber);
                if(isSeccess){
                    glassOptimizeMapper.updateProjectStateMp(projectNumber, state);
                }else{
                    return false;
                }
            }
            //生产不可见
            else if(code==4){