Ver Fonte

Merge branch 'master' into mode-min-unit

sucheng há 1 ano atrás
pai
commit
b8efec30d3

+ 3 - 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);
@@ -115,4 +108,7 @@ public interface ApsBlankOrderDao extends BaseMapper<ApsBlankOrderDo> {
 
     @Select("SELECT * FROM aps_blank_order WHERE DELETED = 0 AND PRODUCTIONORDERID = #{productionorderId}")
     List<ApsBlankOrderDo> selectBlankOrderByProductionorderId(@Param("productionorderId") String productionorderId);
+
+    @Update("update aps_process_operation_process_equ set BACHMATERIALPROCESS = REPLACE(REPLACE(REPLACE(BACHMATERIALPROCESS,'${batchnumber},',''),',${batchnumber}',''),'${batchnumber}','') where DELETED = 0 AND PREVIOUSPROCESSESIDS = #{processoperationequid} AND PROCESSID IN (select ID from aps_process_operation where DELETED = 0 AND PLANINPUTID = #{joboutputmaterialid})")
+    void updateBatchNumberByBorrow(@Param("batchnumber") String batchnumber, @Param("processoperationequid") String processoperationequid, @Param("joboutputmaterialid") String joboutputmaterialid);
 }

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

@@ -67,4 +67,6 @@ public interface ApsProcessOperationDao extends BaseMapper<ApsProcessOperationDo
     @Select("SELECT * FROM aps_process_operation WHERE DELETED = 0 AND BLANKID = #{blankid}")
     List<ApsProcessOperationDo> getProcessOperationByBlankId(@Param("blankid") String blankid);
 
+    @Update("update aps_process_operation_process_equ set BACHMATERIALPROCESS = IF(BACHMATERIALPROCESS is null || BACHMATERIALPROCESS = '',#{batchnumber},concat(BACHMATERIALPROCESS,',',#{batchnumber})) where DELETED = 0 AND PREVIOUSPROCESSESIDS = #{previousprocessesids}")
+    void updateBatchNumberByPrevious(@Param("batchnumber") String batchnumber, @Param("previousprocessesids") String previousprocessesids);
 }

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

@@ -49,6 +49,9 @@ public interface ApsReportRecordsDao extends BaseMapper<ApsReportRecordsDo> {
 
     @Select("select arr.ID from aps_process_operation apo LEFT JOIN aps_report_records arr ON arr.DELETED = 0 AND arr.PROCESSOPERATIONID = apo.ID LEFT JOIN aps_report_output aro ON aro.DELETED = 0 AND aro.MAINID = arr.ID where apo.DELETED = 0 AND aro.OUTPUTNUMBER = #{inputBatchNumber} ORDER BY arr.CREATEDATE desc limit 1")
     String selectLastReoprtRecordByBatchNumber(@Param("inputBatchNumber") String inputBatchNumber);
+
+    @Update("update aps_process_operation_process_equ set BACHMATERIALPROCESS = REPLACE(REPLACE(REPLACE(BACHMATERIALPROCESS,'${inputBatchNumber},',''),',${inputBatchNumber}',''),'${inputBatchNumber}','') where DELETED = 0 AND PREVIOUSPROCESSESIDS = #{previousprocessesids}")
+    void updateAllProcessEquBatchNumber(@Param("inputBatchNumber") String inputBatchNumber, @Param("previousprocessesids") String previousprocessesids);
 }
 
 

+ 7 - 2
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsBlankOrderServiceImpl.java

@@ -1731,10 +1731,15 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                 String batchnumber = progressWork.getBatchnumber();
                 //获取该在制品作业明细的ID
                 String processoperationequid = progressWork.getProcessoperationequid();
+                //在制品对应的工序作业输出物料ID
+                String joboutputmaterialid = progressWork.getJoboutputmaterialid();
                 //该对应工序作业的已借调卷数=已借调卷数+1
                 this.baseMapper.processAddSecondRoll(processoperationid);
-                //将在制品的作业输出物料ID对应的所有后道工序作业的所有作业明细的待加工料卷批次号去掉“{批次号},”
-                this.baseMapper.processDeleteBatchNumber(batchnumber, processoperationid);
+//                //将在制品的作业输出物料ID对应的所有后道工序作业的所有作业明细的待加工料卷批次号去掉“{批次号},”
+//                this.baseMapper.processDeleteBatchNumber(batchnumber, processoperationid);
+                //查找该在制品作业明细ID对应的后道作业明细中,其工序作业的输入物料ID是该在制品的作业输出物料ID的所有作业明细,
+                //将这些作业明细的待加工料卷批次号去掉“{批次号},”
+                this.baseMapper.updateBatchNumberByBorrow(batchnumber, processoperationequid, joboutputmaterialid);
                 //处理后续工序状态
                 Map<String, Object> params2 = new HashMap<>();
                 params2.put("processId", processoperationid);

+ 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));

+ 44 - 28
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsReportRecordsServiceImpl.java

@@ -143,26 +143,30 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
 
         /**
          * 如果输入物料有批次号,则
-         * 如果该工序作业没有前道工序作业,则该工序作业所有作业明细的待加工料卷批次号加上“{批次号},”
-         * 如果该工序作业有前道工序作业,则输入物料对应前道工序作业的输出物料的所有后道工序作业的所有作业明细的待加工料卷批次号加上“{批次号},”
          */
         if (ObjectUtil.isNotEmpty(recordsDo.getBatchnumber())) {
-            //查询工序作业
-            ApsProcessOperationDo apsProcessOperationDo = apsProcessOperationService.getById(processoperationid);
-            //没有前道工序
-            if (ObjectUtil.isEmpty(apsProcessOperationDo.getPreviousprocessid())) {
-                apsProcessOperationDao.updateBatchNumberByProcessId(recordsDo.getBatchnumber(), processoperationid);
-            }
-            //有前道工序
-            if (ObjectUtil.isNotEmpty(apsProcessOperationDo.getPreviousprocessid())) {
-                //查询所有同级工序
-                List<ApsProcessOperationDo> list = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getPreviousprocessid, apsProcessOperationDo.getPreviousprocessid()));
-                List<String> processIdList = list.stream().map(ApsProcessOperationDo::getId).collect(Collectors.toList());
-                if (StringUtils.isNotBlank(recordsDo.getBatchnumber())) {
-                    //更新所有同级工序作业的明细,增加批次号
-                    apsProcessOperationDao.updateBatchNumberByProcessList(recordsDo.getBatchnumber(), processIdList);
-                }
-
+//            //查询工序作业
+//            ApsProcessOperationDo apsProcessOperationDo = apsProcessOperationService.getById(processoperationid);
+//            //没有前道工序
+//            if (ObjectUtil.isEmpty(apsProcessOperationDo.getPreviousprocessid())) {
+//                apsProcessOperationDao.updateBatchNumberByProcessId(recordsDo.getBatchnumber(), processoperationid);
+//            }
+//            //有前道工序
+//            if (ObjectUtil.isNotEmpty(apsProcessOperationDo.getPreviousprocessid())) {
+//                //查询所有同级工序
+//                List<ApsProcessOperationDo> list = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getPreviousprocessid, apsProcessOperationDo.getPreviousprocessid()));
+//                List<String> processIdList = list.stream().map(ApsProcessOperationDo::getId).collect(Collectors.toList());
+//                if (StringUtils.isNotBlank(recordsDo.getBatchnumber())) {
+//                    //更新所有同级工序作业的明细,增加批次号
+//                    apsProcessOperationDao.updateBatchNumberByProcessList(recordsDo.getBatchnumber(), processIdList);
+//                }
+//
+//            }
+            /**
+             * 如果该工序作业明细有前道工序作业明细,则将前道工序作业明细的所有后道工序作业明细的待加工料卷批次号加上“{批次号},”
+             */
+            if (ObjectUtil.isNotEmpty(equDo.getPreviousprocessesids()) && ObjectUtil.isNotEmpty(recordsDo.getBatchnumber())) {
+                apsProcessOperationDao.updateBatchNumberByPrevious(recordsDo.getBatchnumber(), equDo.getPreviousprocessesids());
             }
         }
 
@@ -259,9 +263,14 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
             //更新实际开工时间
             needUpdateProcessOperationProcessEqu.setActualstartdate(DateUtil.date());
         }
+        //加工中批次号
         if (ObjectUtil.isNotEmpty(req.getInputBatchNumber())) {
             needUpdateProcessOperationProcessEqu.setDoingbatchnumber(req.getInputBatchNumber());
         }
+        //更新工序作业明细的完工状态和作业状态
+        if (apsProcessOperationProcessEquDo.getWorkstatus().equals("待开工")) {
+            needUpdateProcessOperationProcessEqu.setWorkstatus("加工中");
+        }
         apsProcessOperationProcessEquService.updateById(needUpdateProcessOperationProcessEqu);
 
         //===============更新工序作业==================
@@ -273,16 +282,23 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
         //==========输入物料有批次号==============
         if (ObjectUtil.isNotEmpty(req.getInputBatchNumber())) {
             //如果该工序作业没有前道工序作业
-            if (ObjectUtil.isEmpty(apsProcessOperationDo.getPreviousprocessid())) {
-                //该工序作业的待加工料卷批次号去掉“{批次号},”或者“,{批次号}”
-                this.baseMapper.updateBatchMaterialProcess(req.getInputBatchNumber(), apsProcessOperationProcessEquDo.getId());
-            } else {//如果该工序作业有前道工序作业
-                //前道工序作业 的 所有后道工序作业(包含本工序作业【即所有与本工序同级的工序作业】) 的待加工料卷批次号去掉“{批次号},”或者“,{批次号}”
-                //查询前道工序作业的所有后道工序作业
-                List<ApsProcessOperationDo> nextProcessList = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getPreviousprocessid, apsProcessOperationDo.getPreviousprocessid()));
-                String collect = nextProcessList.stream().map(ApsProcessOperationDo::getId).collect(Collectors.joining("','"));
-                String processIds = "'" + collect + "'";
-                this.baseMapper.updateBatchMaterialProcessBatch(req.getInputBatchNumber(), processIds);
+//            if (ObjectUtil.isEmpty(apsProcessOperationDo.getPreviousprocessid())) {
+//                //该工序作业的待加工料卷批次号去掉“{批次号},”或者“,{批次号}”
+//                this.baseMapper.updateBatchMaterialProcess(req.getInputBatchNumber(), apsProcessOperationProcessEquDo.getId());
+//            } else {//如果该工序作业有前道工序作业
+//                //前道工序作业 的 所有后道工序作业(包含本工序作业【即所有与本工序同级的工序作业】) 的待加工料卷批次号去掉“{批次号},”或者“,{批次号}”
+//                //查询前道工序作业的所有后道工序作业
+//                List<ApsProcessOperationDo> nextProcessList = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getPreviousprocessid, apsProcessOperationDo.getPreviousprocessid()));
+//                String collect = nextProcessList.stream().map(ApsProcessOperationDo::getId).collect(Collectors.joining("','"));
+//                String processIds = "'" + collect + "'";
+//                this.baseMapper.updateBatchMaterialProcessBatch(req.getInputBatchNumber(), processIds);
+//            }
+            /**
+             * 如果该工序作业明细有前道工序作业明细,
+             * 则将前道工序作业明细的所有后道工序作业明细的待加工料卷批次号去掉“{批次号},”
+             */
+            if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getPreviousprocessesids())) {
+                this.baseMapper.updateAllProcessEquBatchNumber(req.getInputBatchNumber(), apsProcessOperationProcessEquDo.getPreviousprocessesids());
             }
         }
 

+ 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) {