DLC 1 anno fa
parent
commit
e5ff678dc8

+ 0 - 7
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsBlankOrderDao.java

@@ -58,13 +58,6 @@ public interface ApsBlankOrderDao extends BaseMapper<ApsBlankOrderDo> {
             ") b where b.PROCESSID like '%${processid}%'")
     List<ApsProcessOperationProcessEquDo> getGroupProcessOperationProcessEqus(@Param("processid") String processid);
 
-    @Update("update aps_blank_order o \n" +
-            "join (select ID,PRODUCTTYPE,METAL,METALSTATE,THICKSTR,THICKEND,WIDTHSTR,WIDTHEND,LENGTHSTR,LENGTHEND from aps_craft_route where DELETED ='0' and ID=#{craftrouteid}) as r on 1=1\n" +
-            "set o.CRAFTROUTEID=r.ID,o.ROUTEPRODUCTTYPEID=r.PRODUCTTYPE,o.ROUTEMETAL=r.METAL,o.ROUTEMETALSTATE=r.METALSTATE,\n" +
-            "\to.ROUTETHICKSTR=r.THICKSTR,o.ROUTETHICKEND=r.THICKEND,o.ROUTEWIDTHSTR=r.WIDTHSTR,o.ROUTEWIDTHEND=r.WIDTHEND,o.ROUTELENGTHSTR=r.LENGTHSTR,o.ROUTELENGTHEND=r.LENGTHEND\n" +
-            "where o.ID=#{blankId} ")
-    void upCraftrouteId(@Param("blankId") String blankId, @Param("craftrouteid") String craftrouteid);
-
     void publish(@Param("productionOrderIds") List<String> productionOrderIds);
 
     void publishCancel(@Param("productionOrderIds") List<String> productionOrderIds);

+ 87 - 13
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProcessOperationServiceImpl.java

@@ -58,6 +58,9 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
     @Autowired
     private ApsBlankOrderDao apsBlankOrderDao;
 
+    @Autowired
+    private ApsCraftRouteService apsCraftRouteService;
+
     @Autowired
     ApsCraftRouteStepService apsCraftRouteStepService;
 
@@ -150,7 +153,6 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
     @Override
     @Transactional
     public R resetCraftRoute(Map<String, Object> params) {
-//        R r = new R();
         try {
             JSONObject blanckdata = new JSONObject(params.get("BLANKDATA"));
             String craftrouteid = params.get("CRAFTROUTEID").toString();
@@ -562,8 +564,24 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
 
             if (bool1 && bool2 && bool3 && bool4) {
                 //更新坯料计划的所选工艺路线相关信息
-                apsBlankOrderDao.upCraftrouteId(blanckdata.getStr("ID"), craftrouteid);
-                return R.ok();
+                ApsCraftRouteDo apsCraftRouteDo = apsCraftRouteService.getById(craftrouteid);
+                apsBlankOrderService.update(new LambdaUpdateWrapper<ApsBlankOrderDo>()
+                        .eq(ApsBlankOrderDo::getId, blanckdata.getStr("ID"))
+                        .set(ApsBlankOrderDo::getCraftrouteid, craftrouteid)
+                        .set(ApsBlankOrderDo::getRouteproducttypeid, apsCraftRouteDo.getProducttype())
+                        .set(ApsBlankOrderDo::getRoutemetal, apsCraftRouteDo.getMetal())
+                        .set(ApsBlankOrderDo::getRoutemetalstate, apsCraftRouteDo.getMetalstate())
+                        .set(ApsBlankOrderDo::getRoutethinckstr, apsCraftRouteDo.getThickstr())
+                        .set(ApsBlankOrderDo::getRoutethickend, apsCraftRouteDo.getThickend())
+                        .set(ApsBlankOrderDo::getRoutewodthstr, apsCraftRouteDo.getWidthstr())
+                        .set(ApsBlankOrderDo::getRoutewidthend, apsCraftRouteDo.getWidthend())
+                        .set(ApsBlankOrderDo::getRoutelengthstr, apsCraftRouteDo.getLengthstr())
+                        .set(ApsBlankOrderDo::getRoutelengthend, apsCraftRouteDo.getLengthend())
+                );
+                R r = new R();
+                r.setCode("200");
+                r.setData(apsCraftRouteDo);
+                return r;
             } else {
                 return R.error();
             }
@@ -939,9 +957,25 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
         boolean bool3 = apsProcessOperationEquService.saveOrUpdateBatch(apsProcessOperationEquDoList);
         boolean bool4 = sysMindMappingService.saveOrUpdateBatch(sysMindMappingDoList);
         if (bool1 && bool2 && bool3 && bool4) {
-            //更新坯料计划的所选工艺路线
-            apsBlankOrderDao.upCraftrouteId(blanckdata.getStr("ID"), craftrouteid);
-            return R.ok();
+            //更新坯料计划的所选工艺路线相关信息
+            ApsCraftRouteDo apsCraftRouteDo = apsCraftRouteService.getById(craftrouteid);
+            apsBlankOrderService.update(new LambdaUpdateWrapper<ApsBlankOrderDo>()
+                    .eq(ApsBlankOrderDo::getId, blanckdata.getStr("ID"))
+                    .set(ApsBlankOrderDo::getCraftrouteid, craftrouteid)
+                    .set(ApsBlankOrderDo::getRouteproducttypeid, apsCraftRouteDo.getProducttype())
+                    .set(ApsBlankOrderDo::getRoutemetal, apsCraftRouteDo.getMetal())
+                    .set(ApsBlankOrderDo::getRoutemetalstate, apsCraftRouteDo.getMetalstate())
+                    .set(ApsBlankOrderDo::getRoutethinckstr, apsCraftRouteDo.getThickstr())
+                    .set(ApsBlankOrderDo::getRoutethickend, apsCraftRouteDo.getThickend())
+                    .set(ApsBlankOrderDo::getRoutewodthstr, apsCraftRouteDo.getWidthstr())
+                    .set(ApsBlankOrderDo::getRoutewidthend, apsCraftRouteDo.getWidthend())
+                    .set(ApsBlankOrderDo::getRoutelengthstr, apsCraftRouteDo.getLengthstr())
+                    .set(ApsBlankOrderDo::getRoutelengthend, apsCraftRouteDo.getLengthend())
+            );
+            R r = new R();
+            r.setCode("200");
+            r.setData(apsCraftRouteDo);
+            return r;
         } else {
             return R.error();
         }
@@ -957,7 +991,17 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
         //坯料计划去掉选择的工艺路线ID
         apsBlankOrderService.update(new LambdaUpdateWrapper<ApsBlankOrderDo>()
                 .eq(ApsBlankOrderDo::getId, blankid)
-                .set(ApsBlankOrderDo::getCraftrouteid, null));
+                .set(ApsBlankOrderDo::getCraftrouteid, null)
+                .set(ApsBlankOrderDo::getRouteproducttypeid, null)
+                .set(ApsBlankOrderDo::getRoutemetal, null)
+                .set(ApsBlankOrderDo::getRoutemetalstate, null)
+                .set(ApsBlankOrderDo::getRoutethinckstr, null)
+                .set(ApsBlankOrderDo::getRoutethickend, null)
+                .set(ApsBlankOrderDo::getRoutewodthstr, null)
+                .set(ApsBlankOrderDo::getRoutewidthend, null)
+                .set(ApsBlankOrderDo::getRoutelengthstr, null)
+                .set(ApsBlankOrderDo::getRoutelengthend, null)
+        );
         //工序作业
         apsProcessOperationDao.updateProcessOperation(blankid);
         //工序作业输出物料
@@ -1446,15 +1490,16 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
     @Transactional
     public R updateProcess(Map<String, Object> params) {
         List<ApsProcessOperationOutMaterDo> operationOutMaterDos = new ArrayList<>();//递归的数据源
+        JSONObject blanckdata = new JSONObject(params.get("BLANKDATA"));
         //首道工序
         Map<String, Object> map = new HashMap<>();
-        map.put("BLANKID", params.get("BLANKID").toString());
+        map.put("BLANKID", blanckdata.getStr("ID"));
         map.put("PREVIOUSPROCESSID", null);
         ApsProcessOperationDo apsProcessOperationDo = apsProcessOperationService.listByMap(map).stream().findFirst().orElse(null);
 
         //首道工序输出
         Map<String, Object> outmap = new HashMap<>();
-        outmap.put("BLANKID", params.get("BLANKID").toString());
+        outmap.put("BLANKID", blanckdata.getStr("ID"));
         outmap.put("MAINID", apsProcessOperationDo.getId());
 //        List<ApsProcessOperationOutMaterDo> apsProcessOperationOutMaterDos =apsProcessOperationOutMaterService.listByMap(outmap).stream().collect(Collectors.toList());
         ApsProcessOperationOutMaterDo apsProcessOperationOutMaterDo = apsProcessOperationOutMaterService.listByMap(outmap).stream().findFirst().orElse(null);
@@ -1464,10 +1509,17 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
         BigDecimal aluminumdensity = apsConfigs.get(0).getAluminumdensity();
 
         //更新工序输入
-        Integer rollnum = Integer.parseInt(params.get("ROLLNUM").toString());
-        BigDecimal singlerollweight = new BigDecimal(params.get("SINGLEROLLWEIGHT").toString());
-        String meterInput = getInMeterInfo(apsProcessOperationDo.getProducttype(), apsProcessOperationDo.getMetal(), apsProcessOperationDo.getMetalstate(), apsProcessOperationDo.getThickness(), apsProcessOperationDo.getProwidth(), apsProcessOperationDo.getProlength());
-        apsProcessOperationDo.setPlaninput(meterInput + params.get("SINGLEROLLWEIGHT").toString() + UNIT_MAP.getOrDefault(apsProcessOperationDo.getNumunit(), ""));
+        String meterInput = getInMeterInfo(blanckdata.getStr("PRODUCTTYPE"), blanckdata.getStr("ALLOY"), blanckdata.getStr("ALLOYSTATUS"), blanckdata.getBigDecimal("THICKNESS"), blanckdata.getBigDecimal("PROWIDTH"), blanckdata.getBigDecimal("PROLENGTH"));
+        apsProcessOperationDo.setPlaninput(meterInput + blanckdata.getStr("SINGLEROLLWEIGHT") + UNIT_MAP.getOrDefault(blanckdata.getStr("NUMBERUNIT"), ""));
+        apsProcessOperationDo.setProducttypeid(blanckdata.getStr("PRODUCTTYPEID"));
+        apsProcessOperationDo.setProducttype(blanckdata.getStr("PRODUCTTYPE"));
+        apsProcessOperationDo.setMetal(blanckdata.getStr("ALLOY"));
+        apsProcessOperationDo.setMetalstate(blanckdata.getStr("ALLOYSTATUS"));
+        apsProcessOperationDo.setThickness(blanckdata.getBigDecimal("THICKNESS"));
+        apsProcessOperationDo.setProwidth(blanckdata.getBigDecimal("PROWIDTH"));
+        apsProcessOperationDo.setProlength(blanckdata.getBigDecimal("PROLENGTH"));
+        Integer rollnum = blanckdata.getInt("ROLLNUM");
+        BigDecimal singlerollweight = blanckdata.getBigDecimal("SINGLEROLLWEIGHT");
         apsProcessOperationDo.setSinglerollweight(singlerollweight);
         apsProcessOperationDo.setPlaninrall(rollnum);
         apsProcessOperationDo.setPlanprocessrall(rollnum);
@@ -1491,6 +1543,28 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
         }
 
         //更新工序输出
+        String outProducttype = apsProcessOperationOutMaterDo.getProducttype();
+        if (apsProcessOperationOutMaterDo.getProducttyperule().equals("不变")) {
+            outProducttype = blanckdata.getStr("PRODUCTTYPE") == null ? "" : blanckdata.getStr("PRODUCTTYPE");
+            apsProcessOperationOutMaterDo.setProducttypeid(blanckdata.getStr("PRODUCTTYPEID") == null ? "" : blanckdata.getStr("PRODUCTTYPEID"));
+            apsProcessOperationOutMaterDo.setProducttype(outProducttype);
+        }
+        String outMeter = apsProcessOperationOutMaterDo.getMetal();
+        if (apsProcessOperationOutMaterDo.getMetalrule().equals("不变")) {
+            outMeter = blanckdata.getStr("ALLOY") == null ? "" : blanckdata.getStr("ALLOY");
+            apsProcessOperationOutMaterDo.setMetal(outMeter);
+        }
+        String outMetalstate = apsProcessOperationOutMaterDo.getMetalstate();
+        if (apsProcessOperationOutMaterDo.getMetalstaterule().equals("不变")) {
+            outMetalstate = blanckdata.getStr("ALLOYSTATUS") == null ? "" : blanckdata.getStr("ALLOYSTATUS");
+            apsProcessOperationOutMaterDo.setMetalstate(outMetalstate);
+        }
+        BigDecimal tval = changeSize(blanckdata.getBigDecimal("THICKNESS"), apsProcessOperationOutMaterDo.getThickrule(), apsProcessOperationOutMaterDo.getThickchange(), apsProcessOperationOutMaterDo.getThickness());
+        apsProcessOperationOutMaterDo.setThickness(tval);
+        BigDecimal wval = changeSize(blanckdata.getBigDecimal("PROWIDTH"), apsProcessOperationOutMaterDo.getWidthrule(), apsProcessOperationOutMaterDo.getWidthchange(), apsProcessOperationOutMaterDo.getProwidth());
+        apsProcessOperationOutMaterDo.setProwidth(wval);
+        BigDecimal lval = changeSize(blanckdata.getBigDecimal("PROLENGTH"), apsProcessOperationOutMaterDo.getLengthrule(), apsProcessOperationOutMaterDo.getLengthchange(), apsProcessOperationOutMaterDo.getProlength());
+        apsProcessOperationOutMaterDo.setProlength(lval);
         apsProcessOperationOutMaterDo.setPlanrollnum(rollnum);
         //输入单卷重*输出宽度/输入宽度
         String outsinglerollweight = df.format(singlerollweight.multiply(apsProcessOperationOutMaterDo.getProwidth() == null ? BigDecimal.valueOf(1) : apsProcessOperationOutMaterDo.getProwidth()).divide(apsProcessOperationDo.getProwidth() == null ? BigDecimal.valueOf(1) : apsProcessOperationDo.getProwidth(), 3, BigDecimal.ROUND_HALF_UP));

+ 1 - 1
cx-aps/cx-aps-server/src/main/java/com/rongwei/bsserver/controller/ApsProcessOperationController.java

@@ -108,7 +108,7 @@ public class ApsProcessOperationController {
     }
 
     /**
-     * 坯料计划修改卷数和单卷重后,更新工序作业相关信息
+     * 坯料计划修改坯料需求后,更新工序作业相关信息
      */
     @PostMapping("/updateProcess")
     public R updateProcess(@RequestBody Map<String, Object> params) {