| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public Object optimizeInfoSv(String projectNo, String username) { |
| | | Map<String, Object> stringObjectMap = glassOptimizeMapper.selectProjectCount(projectNo); |
| | | Map<String, Object> map = new HashMap<>(); |
| | | List<Map<String, Object>> dataList = null; |
| | | if (Integer.parseInt(stringObjectMap.get("tempering_state").toString())==1){ |
| | | dataList = glassOptimizeMapper.computeAndOptimization(projectNo); |
| | | } else { |
| | | dataList = glassOptimizeMapper.directOptimization(projectNo); |
| | | } |
| | | |
| | | // 获取磨量配置数据 |
| | | List<Map<String, Object>> grindingTrimmingList = glassOptimizeMapper.getGrindingOptimize(username); |
| | | // 将磨量配置数据拼接到每条主数据后面 |
| | | if (dataList != null && !dataList.isEmpty() && grindingTrimmingList != null && !grindingTrimmingList.isEmpty()) { |
| | | // 获取第一条磨量配置数据(通常只有一条记录) |
| | | Map<String, Object> grindingConfig = grindingTrimmingList.get(0); |
| | | // 将磨量配置添加到每条主数据中 |
| | | for (Map<String, Object> dataItem : dataList) { |
| | | // 将磨量配置的字段添加到每条数据中 |
| | | for (Map.Entry<String, Object> entry : grindingConfig.entrySet()) { |
| | | // 避免覆盖原有字段 |
| | | if (!dataItem.containsKey(entry.getKey())) { |
| | | dataItem.put(entry.getKey(), entry.getValue()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | map.put("data", dataList); |
| | | return map; |
| | | } |
| | | |
| | | |
| | | //工程信息流程卡 |
| | | public Map<String, Object> getProcessCardSv(String projectNo) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | |
| | | if(projectType.equals("2")){ |
| | | deleteProject(projectId,2); |
| | | } |
| | | |
| | | // 创建一个映射来存储 (processId-technologyNumber) 组合到 rack 编号的映射 |
| | | Map<String, Integer> rackMap = new HashMap<>(); |
| | | int rackCounter = 1; |
| | | |
| | | for (FlowCard flowCard : flowCardList) { |
| | | // 为每个唯一的 processId-technologyNumber 组合分配 rack 编号 |
| | | String key = flowCard.getProcessId() + "-" + flowCard.getTechnologyNumber(); |
| | | if (!rackMap.containsKey(key)) { |
| | | rackMap.put(key, rackCounter++); |
| | | } |
| | | int rackValue = rackMap.get(key); |
| | | |
| | | if(flowCard.getPatchState().equals(0)){ |
| | | state1=1; |
| | | //给流程卡表添加对应的工程号 |
| | | Boolean a=glassOptimizeMapper.updateFlowCardProject(flowCard.getProcessId(),flowCard.getTechnologyNumber(),projectId); |
| | | Boolean a = glassOptimizeMapper.updateFlowCardProject(flowCard.getProcessId(),flowCard.getTechnologyNumber(),projectId); |
| | | // 更新流程卡的rack字段 |
| | | glassOptimizeMapper.updateFlowCardRack(flowCard.getProcessId(), flowCard.getTechnologyNumber(), rackValue); |
| | | area = glassOptimizeMapper.getSelectArea(flowCard.getProcessId(),flowCard.getTechnologyNumber()).doubleValue(); |
| | | sumArea = sumArea.add(BigDecimal.valueOf(area)); |
| | | sumQuantity +=flowCard.getQuantity(); |
| | |
| | | map.put("data", glassOptimizeMapper.getProjectByProjectNoSv(projectNo)); |
| | | return map; |
| | | } |
| | | |
| | | } |