浏览代码

feature 解决拆分后可能无法流转到新作业明细的问题

xiahan 11 月之前
父节点
当前提交
1e4c83df43

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

@@ -402,6 +402,15 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
                             newProcessEqu.getPlanstartdate(), newProcessEqu.getPlanenddate()));
                     saveList.add(newProcessEqu);
                     updateConflictVoList.add(updateConflictVo);
+                    // 获取上一个工序作业明细ID
+                    String previousprocessesids = newProcessEqu.getPreviousprocessesids();
+                    if(StringUtils.isNotBlank(previousprocessesids)){
+                        ApsProcessOperationProcessEquDo previousProcessEqu = this.getById(previousprocessesids);
+                        this.update(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>()
+                                .eq(ApsProcessOperationProcessEquDo::getId,previousprocessesids)
+                                .set(ApsProcessOperationProcessEquDo::getNextprocessesids,
+                                        strAppendListConvertStr(previousProcessEqu.getNextprocessesids(), Arrays.asList(previousprocessesids))));
+                    }
                 }
                 /************更新换线后工序作业的信息********************/
 
@@ -987,7 +996,17 @@ public class ApsProcessOperationProcessEquServiceImpl extends ServiceImpl<ApsPro
         }
         return affectedIdList;
     }
-
+    public String strAppendListConvertStr(String oldValue, List<String> newValues) {
+        if (org.apache.commons.lang.StringUtils.isBlank(oldValue) && (newValues == null || newValues.isEmpty())) {
+            return "";
+        }
+        if (oldValue == null) {
+            oldValue = "";
+        }
+        List<String> oldValues = new ArrayList<>(Arrays.asList(oldValue.split(",")));
+        oldValues.addAll(newValues);
+        return oldValues.stream().distinct().filter(org.apache.commons.lang.StringUtils::isNotBlank).collect(Collectors.joining(","));
+    }
 }