廖井涛
2025-12-01 21eed4f6a8065bb59d0aaf7481dfe145dba74f2a
north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
@@ -639,6 +639,10 @@
        } else {
            dataList = glassOptimizeMapper.directOptimization(projectNo);
        }
        List<Map<String, Object>> tempDataList = null;
        if (Integer.parseInt(stringObjectMap.get("optimize_state").toString())==1) {
            tempDataList = glassOptimizeMapper.optimizeTemp(projectNo);
        }
        // 获取磨量配置数据
        List<Map<String, Object>> grindingTrimmingList = glassOptimizeMapper.getGrindingOptimize(username);
@@ -656,6 +660,9 @@
                    }
                }
            }
        }
        if (tempDataList != null && !tempDataList.isEmpty()) {
            dataList.addAll(tempDataList);
        }
        map.put("optimizeState", Integer.parseInt(stringObjectMap.get("optimize_state").toString()));
        map.put("data", dataList);
@@ -920,7 +927,6 @@
            int state2 = 0;
            StringBuilder processId= new StringBuilder();
            List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("projectdetail")), FlowCard.class);
            if (!flowCardList.isEmpty()) {
                if(projectType.equals("2")){
                    deleteProject(projectId,2);
                }
@@ -929,6 +935,10 @@
                Map<String, Integer> rackMap = new HashMap<>();
                int rackCounter = 1;
            // 如果为空流程卡,则将 type 设置为 1
            if (flowCardList == null || flowCardList.isEmpty()) {
                type = 1;
            }
                for (FlowCard flowCard : flowCardList) {
                    // 为每个唯一的 processId-technologyNumber 组合分配 rack 编号
                    String key = flowCard.getProcessId() + "-" + flowCard.getTechnologyNumber();
@@ -962,6 +972,7 @@
                }else if(state1==1&&state2==1){
                    type=2;
                }
                int index = optionVal.indexOf("mm");
                // 获取 "mm" 前面的部分
                String glass_thickness = optionVal.substring(0, index);
@@ -978,10 +989,6 @@
                        TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
                        return "false1";
                    }
                }
            }else {
                return "false2";
            }
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
@@ -1387,6 +1394,8 @@
    public Map<String, Object> getProductListSv(String processId) {
        Map<String, Object> productMap = new HashMap<>();
        List<Map<String, Object>> productInfo = glassOptimizeMapper.selectProjectList(processId);
        List<Map<String, Object>> tempProductInfo = glassOptimizeMapper.selectTempProject(processId);
        productInfo.addAll(tempProductInfo);
        productMap.put("productInfo", productInfo);
        Map<String, Object> map = new HashMap<>();
@@ -1394,7 +1403,7 @@
            // 按照 processCard 分组
            Map<String, List<Map<String, Object>>> groupedByProcessCard = new HashMap<>();
            for (Map<String, Object> item : productInfo) {
                String processCard = (String) item.get("processCard");
                String processCard = String.valueOf(item.get("processCard"));
                if (processCard != null) {
                    groupedByProcessCard.computeIfAbsent(processCard, k -> new ArrayList<>()).add(item);
                }