Browse Source

Merge remote-tracking branch 'origin/mode-min-unit' into mode-min-unit

xiahan 1 year ago
parent
commit
085e22edc2

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

@@ -54,6 +54,10 @@ public interface ApsBlankOrderDao extends BaseMapper<ApsBlankOrderDo> {
             "</if></script>")
     List<ApsBlankOrderVo> getOrdersHasNotLockProcess(@Param("hasIds") String hasIds, @Param("tenantId") String tenantId);
 
+    @Select("UPDATE aps_process_operation set LOCKMARK=null where LOCKMARK='y' and DELETED='0' and " +
+            "BLANKID in (SELECT ID FROM aps_blank_order where DELETED='0' and SCHEDULINGSTATUS='10' and ID in (${hasIds}))")
+    void setLockMarkNullByToAps(@Param("hasIds") String hasIds);
+
     @Select("select * FROM (\n" +
             "select PROCESSDEVICEID,PLANSTARTDATE,PLANENDDATE,GROUP_CONCAT(PROCESSID) PROCESSID from (select * from aps_process_operation_process_equ " +
             "where DELETED='0' ORDER BY PROCESSID ASC) a GROUP BY PROCESSDEVICEID,PLANSTARTDATE,PLANENDDATE" +

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

@@ -1836,7 +1836,7 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
 
             //本道工序作业
             ApsProcessOperationDo apsProcessOperationDo = cancelProcessOperationVo.getApsprocessoperationdo();
-            if (cancelProcessOperationVo.getSetcancelroll()) {
+            if (cancelProcessOperationVo.getSetincancelroll()) {
                 apsProcessOperationDo.setCancelroll(apsProcessOperationDo.getCancelroll() + curcancelroll);
             }
             apsProcessOperationDo.setLeavewaitworkroll(apsProcessOperationDo.getPlanprocessrall() - apsProcessOperationDo.getStartingroll() - apsProcessOperationDo.getInputunqualifiedroll() - apsProcessOperationDo.getCancelroll());
@@ -1871,8 +1871,7 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
             List<ApsProcessOperationOutMaterDo> apsProcessOperationOutMaterDos = apsProcessOperationOutMaterService.listByMap(map).stream().collect(Collectors.toList());
             for (ApsProcessOperationOutMaterDo apsProcessOperationOutMaterDo : apsProcessOperationOutMaterDos) {
                 Integer curOutMaterCancelRoll = curcancelroll * apsProcessOperationOutMaterDo.getOutval();//输出物料本次取消卷数
-//                apsProcessOperationOutMaterDo = cancelProcessOperationOutMater(curOutMaterCancelRoll, apsProcessOperationOutMaterDo,apsProcessOperationDos);
-                apsProcessOperationOutMaterDo.setOutcancelroll(apsProcessOperationOutMaterDo.getOutcancelroll() + curOutMaterCancelRoll);
+                apsProcessOperationOutMaterDo.setOutcancelroll((apsProcessOperationDo.getInputunqualifiedroll() + apsProcessOperationDo.getCancelroll()) * apsProcessOperationOutMaterDo.getOutval());
                 Integer curStockCancelRoll = 0;//本次备料取消卷数
                 Integer curMoveCancelRoll = 0;//本次流转取消卷数
                 Integer curProdCancelRoll = 0;//本次成品取消卷数
@@ -1916,7 +1915,7 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
                             }
                             processOperationDo.setInputunqualifiedroll(getInputCancelRoll(apsProcessOperationDo.getPlanprocessrall(), apsProcessOperationDo.getCancelroll(), apsProcessOperationOutMaterDo));
                             cancelProcessOperationVo1.setApsprocessoperationdo(processOperationDo);
-                            cancelProcessOperationVo1.setSetcancelroll(cancelProcessOperationVo.getSetcancelroll());
+                            cancelProcessOperationVo1.setSetincancelroll(false);
                             cancelProcessOperation(cancelProcessOperationVo1);
                         } else {
                             break;

+ 6 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsServiceImpl.java

@@ -182,6 +182,12 @@ public class ApsServiceImpl implements ApsService {
                 });
                 processOperationProcessEquService.update(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>().set(ApsProcessOperationProcessEquDo::getLockmark,"n")
                         .in(ApsProcessOperationProcessEquDo::getBlankid,blankOrderIds));
+                // 更新待排程的锁定的作业
+                if(blankOrderIds != null && blankOrderIds.size()>0){
+                    String blankidStrs = CollUtil.join(blankOrderIds, "','");
+                    blankidStrs = "'" + blankidStrs + "'";
+                    apsBlankOrderDao.setLockMarkNullByToAps(blankidStrs);
+                }
                 // 排程
                 List<ProductionScheduleVo> productionScheduleVos = new ArrayList<>();
                 Map<String,List<ApsBlankOrderVo>> dataMap = new HashMap<>();

+ 1 - 1
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ReportCheckServiceImpl.java

@@ -535,7 +535,7 @@ public class ReportCheckServiceImpl implements ReportCheckService {
             cancelProcessOperationVo.setCraftrouteid(null);
             cancelProcessOperationVo.setCurcancelroll(unqualifiedCount);
             cancelProcessOperationVo.setApsprocessoperationdo(currentProcessOperationMainDo);
-            cancelProcessOperationVo.setSetcancelroll(false);
+            cancelProcessOperationVo.setSetincancelroll(false);
             apsProcessOperationService.cancelProcessOperation(cancelProcessOperationVo);
         }
         log.info("更新工序作业的输出物料和在制品相关信息结束");

+ 2 - 2
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/vo/CancelProcessOperationVo.java

@@ -9,8 +9,8 @@ public class CancelProcessOperationVo {
     private String craftrouteid;
     //本次取消卷数
     private Integer curcancelroll;
-    //是否更新已取消卷数
-    private Boolean setcancelroll = true;
+    //是否更新输入已取消卷数
+    private Boolean setincancelroll = true;
     //修改的作业
     private ApsProcessOperationDo apsprocessoperationdo;
 }