|
@@ -149,9 +149,12 @@ public class ProductionScheduleServiceImpl implements ProductionScheduleService
|
|
|
// 设备列表初始化
|
|
|
unsolvedCloudBalance.setEquipmentList(productionScheduleVo.getEquipmentList());
|
|
|
|
|
|
- List<ProductionProcesses> productionProcesses = sortProcess(productionScheduleVo.getProcesses());
|
|
|
+ /*List<ProductionProcesses> productionProcesses = sortProcess(productionScheduleVo.getProcesses());
|
|
|
// 工序任务初始化
|
|
|
- unsolvedCloudBalance.setProcessesList(productionProcesses);
|
|
|
+ unsolvedCloudBalance.setProcessesList(productionProcesses);*/
|
|
|
+
|
|
|
+ sortProcess(productionScheduleVo.getProcesses());
|
|
|
+ unsolvedCloudBalance.setProcessesList(productionScheduleVo.getProcesses());
|
|
|
return unsolvedCloudBalance;
|
|
|
}
|
|
|
|
|
@@ -169,12 +172,20 @@ public class ProductionScheduleServiceImpl implements ProductionScheduleService
|
|
|
roots.add(productionProcesses);
|
|
|
}
|
|
|
}
|
|
|
+ // 订单作业列表
|
|
|
+ Map<String,List<ProductionProcesses>> orderMap = new HashMap<>();
|
|
|
for (ProductionProcesses root : roots) {
|
|
|
+ Integer i = 1;
|
|
|
+ root.setOrderMark(i);
|
|
|
+ setProcessSort(root,i);
|
|
|
+ }
|
|
|
+ sources.sort(Comparator.comparing(ProductionProcesses::getOrderMark));
|
|
|
+
|
|
|
+ /*for (ProductionProcesses root : roots) {
|
|
|
List<Integer> repeatPro = new ArrayList<>();
|
|
|
Map<Integer,Integer> repeatProMap = new HashMap<>();
|
|
|
List<ProductionProcesses> subprocesses = new ArrayList<>();
|
|
|
subprocesses.add(root);
|
|
|
-// bsIds.add(root.getBsProcessesId());
|
|
|
getNextProcess(root,subprocesses,repeatPro,processes,repeatProMap);
|
|
|
|
|
|
if(repeatPro != null && repeatPro.size()>0){
|
|
@@ -188,20 +199,31 @@ public class ProductionScheduleServiceImpl implements ProductionScheduleService
|
|
|
processes.add(repeatProMap.get(integer),subprocesses.get(i));
|
|
|
}
|
|
|
}
|
|
|
- // 最后一个把所有后面的工序插入到总工序列表后面
|
|
|
- /*if(integer.equals(repeatPro.get(repeatPro.size() - 1))){
|
|
|
- for(int i=integer+1;i<subprocesses.size();i++){
|
|
|
- processes.add(subprocesses.get(i));
|
|
|
- }
|
|
|
- }*/
|
|
|
}
|
|
|
}else{
|
|
|
processes.addAll(subprocesses);
|
|
|
}
|
|
|
- }
|
|
|
+ }*/
|
|
|
return processes;
|
|
|
}
|
|
|
|
|
|
+ private void setProcessSort(ProductionProcesses proces,Integer i){
|
|
|
+ i++;
|
|
|
+ if(proces.getNextProcesses() != null && proces.getNextProcesses().size()>0){
|
|
|
+ for (ProductionProcesses nextProcess : proces.getNextProcesses()) {
|
|
|
+ if(nextProcess.getOrderMark() != null && nextProcess.getOrderMark()>0){
|
|
|
+ if(i>nextProcess.getOrderMark()){
|
|
|
+ nextProcess.setOrderMark(i);
|
|
|
+ setProcessSort(nextProcess,i);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ nextProcess.setOrderMark(i);
|
|
|
+ setProcessSort(nextProcess,i);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void getNextProcess(ProductionProcesses proces,List<ProductionProcesses> subprocesses,
|
|
|
List<Integer> repeatPro,List<ProductionProcesses> processes,Map<Integer,Integer> repeatProMap){
|
|
|
if(proces.getNextProcesses() != null && proces.getNextProcesses().size()>0){
|