|
@@ -132,11 +132,11 @@ public class ApsServiceImpl implements ApsService {
|
|
|
}
|
|
|
apsBlankOrders.addAll(fbNotLock);
|
|
|
}
|
|
|
-// apsOrderScheduleNew(apsBlankOrders,currentUser);
|
|
|
- apsOrderSchedule(apsBlankOrders);
|
|
|
+ apsOrderScheduleNew(apsBlankOrders,currentUser);
|
|
|
+// apsOrderSchedule(apsBlankOrders);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- logger.info("排程异常" + e);
|
|
|
+ logger.info("排程异常",e);
|
|
|
String msg = "排程服务异常";
|
|
|
if(e instanceof CustomException){
|
|
|
msg = e.getMessage();
|
|
@@ -321,8 +321,16 @@ public class ApsServiceImpl implements ApsService {
|
|
|
apsOrderScheduleApsNew(v);
|
|
|
}catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- logger.info("排程异常" + e);
|
|
|
- String msg = "排程服务异常";
|
|
|
+ logger.info("排程异常",e);
|
|
|
+ String blankNos = "";
|
|
|
+ for (ApsBlankOrderVo apsBlankOrderVo : v) {
|
|
|
+ if("".equals(blankNos)){
|
|
|
+ blankNos = apsBlankOrderVo.getBlanknumber();
|
|
|
+ }else{
|
|
|
+ blankNos = blankNos+";"+apsBlankOrderVo.getBlanknumber();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ String msg = "排程服务异常(坯料计划号:"+blankNos+")";
|
|
|
if(e instanceof CustomException){
|
|
|
msg = e.getMessage();
|
|
|
}
|
|
@@ -417,6 +425,8 @@ public class ApsServiceImpl implements ApsService {
|
|
|
apsBlankOrders.forEach((bo)->{
|
|
|
blankOrderIds.add(bo.getId());
|
|
|
});
|
|
|
+ System.out.println("当前批次排程坯料计划ID:" + blankOrderIds);
|
|
|
+ logger.info("当前批次排程坯料计划ID:" + blankOrderIds);
|
|
|
// 更新待排程的锁定的作业
|
|
|
if(blankOrderIds != null && blankOrderIds.size()>0){
|
|
|
String blankidStrs = CollUtil.join(blankOrderIds, "','");
|
|
@@ -447,26 +457,32 @@ public class ApsServiceImpl implements ApsService {
|
|
|
List<ProductionScheduleVo> apsProductionSchedules = new ArrayList<>();
|
|
|
// 多卷先排
|
|
|
apsBlankOrders.forEach((bo)->{
|
|
|
- List<ApsBlankOrderVo> v = new ArrayList<>();
|
|
|
- v.add(bo);
|
|
|
- dataMapOrder.put(bo.getId(),bo);
|
|
|
+ try{
|
|
|
+ List<ApsBlankOrderVo> v = new ArrayList<>();
|
|
|
+ v.add(bo);
|
|
|
+ dataMapOrder.put(bo.getId(),bo);
|
|
|
|
|
|
- // 模型转换
|
|
|
- ProductionScheduleVo productionScheduleVo = apsProductionScheduleInit(v);
|
|
|
- productionScheduleVos.add(productionScheduleVo);
|
|
|
- dataMap.put(productionScheduleVo.getProductionScheduleId(),v);
|
|
|
+ // 模型转换
|
|
|
+ ProductionScheduleVo productionScheduleVo = apsProductionScheduleInit(v);
|
|
|
+ productionScheduleVos.add(productionScheduleVo);
|
|
|
+ dataMap.put(productionScheduleVo.getProductionScheduleId(),v);
|
|
|
// int mergeThNum = mergeThNum(bo, productionScheduleVo);
|
|
|
- // 排程计划设备集合
|
|
|
- List<Equipment> equipmentList1 = new ArrayList<>();
|
|
|
- List<ApsProcessOperationDo> operationDos1 = apsProcessOperationService.list(new LambdaQueryWrapper<ApsProcessOperationDo>()
|
|
|
- .in(ApsProcessOperationDo::getBlankid, bo.getId()));
|
|
|
- List<String> blankids = new ArrayList<>();
|
|
|
- blankids.add(bo.getId());
|
|
|
- for (ApsProcessOperationDo operationDo : operationDos1) {
|
|
|
- List<String> optionalEquipments = equipmentListInit(operationDo,equipmentList1,eqMaps,blankids,null,productionScheduleVo,apsConfigs.get(0));
|
|
|
+ // 排程计划设备集合
|
|
|
+ List<Equipment> equipmentList1 = new ArrayList<>();
|
|
|
+ List<ApsProcessOperationDo> operationDos1 = apsProcessOperationService.list(new LambdaQueryWrapper<ApsProcessOperationDo>()
|
|
|
+ .in(ApsProcessOperationDo::getBlankid, bo.getId()));
|
|
|
+ List<String> blankids = new ArrayList<>();
|
|
|
+ blankids.add(bo.getId());
|
|
|
+ for (ApsProcessOperationDo operationDo : operationDos1) {
|
|
|
+ List<String> optionalEquipments = equipmentListInit(operationDo,equipmentList1,eqMaps,blankids,null,productionScheduleVo,apsConfigs.get(0));
|
|
|
+ }
|
|
|
+ productionScheduleVo.setEquipmentList(equipmentList1);
|
|
|
+ apsProductionSchedules.add(productionScheduleVo);
|
|
|
+ }catch(Exception e){
|
|
|
+ logger.info("坯料计划:+bo.getBlanknumber() + ;排程数据初始化异常",e);
|
|
|
+ String msg = "坯料计划:"+bo.getBlanknumber() + ";排程数据初始化异常";
|
|
|
+ throw new CustomException(msg);
|
|
|
}
|
|
|
- productionScheduleVo.setEquipmentList(equipmentList1);
|
|
|
- apsProductionSchedules.add(productionScheduleVo);
|
|
|
});
|
|
|
|
|
|
// 多个坯料计划合并排程
|
|
@@ -600,8 +616,12 @@ public class ApsServiceImpl implements ApsService {
|
|
|
if(productionScheduleVo.getStandingyield() == null){
|
|
|
productionScheduleVo.setStandingyield(60);
|
|
|
}
|
|
|
+ // 默认宽差配置
|
|
|
productionScheduleVo.setMiddifference(apsScheduleConfig.getMiddifference());
|
|
|
productionScheduleVo.setFurnacedifference(apsScheduleConfig.getFurnacedifference());
|
|
|
+ // 默认卷重差配置
|
|
|
+ productionScheduleVo.setWeightdifference(apsScheduleConfig.getWeightdifference());
|
|
|
+ productionScheduleVo.setMidweightdifference(apsScheduleConfig.getMidweightdifference());
|
|
|
} else {
|
|
|
throw new CustomException("排程参数缺失");
|
|
|
}
|