|
|
|
@ -149,4 +149,119 @@ public class SchedulingServiceImpl implements SchedulingService { |
|
|
|
//处理返回的结果 |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional |
|
|
|
public void addWaitSchedule(SearchScheduleData inData) { |
|
|
|
//公共参数 |
|
|
|
String site = inData.getSite(); |
|
|
|
String orderNo = inData.getOrderNo(); |
|
|
|
Integer itemNo = inData.getItemNo(); |
|
|
|
String seqNo = inData.getSeqNo(); |
|
|
|
String workCenterNo = inData.getWorkCenterNo(); |
|
|
|
String resourceId = inData.getResourceId(); |
|
|
|
Float scheduledQty = inData.getScheduledQty(); |
|
|
|
String specifiedTime = inData.getSpecifiedTime(); |
|
|
|
Date scheduleDate = inData.getScheduleDate(); |
|
|
|
Date scheduleTime = inData.getScheduleTime(); |
|
|
|
String username = inData.getUsername(); |
|
|
|
int waitTimes = inData.getWaitTimes(); |
|
|
|
double waitHour = waitTimes/60.0; |
|
|
|
|
|
|
|
//获取当前加工中心机台对应的calendarId |
|
|
|
Map<String, Object> calendarMap = scheduleMapper.getCalendarId(inData); |
|
|
|
//判断是否存在当前的加工中心机台数据 |
|
|
|
if (calendarMap == null || calendarMap.size() == 0) { |
|
|
|
throw new RRException("班次异常!"); |
|
|
|
} |
|
|
|
//设置查询的条件 |
|
|
|
String calendarId = String.valueOf(calendarMap.get("calendarId")); |
|
|
|
//调用存储过程 取消排产的派工单 |
|
|
|
Map<String, Object> resultMap = this.addWaitSchedule(site, "9999", 10, workCenterNo, resourceId, waitHour, specifiedTime, scheduleDate, scheduleTime, calendarId, username); |
|
|
|
//判断是否检验成功 |
|
|
|
String resultCode = String.valueOf(resultMap.get("resultCode")); |
|
|
|
if ("400".equalsIgnoreCase(resultCode)) { |
|
|
|
String msg = String.valueOf(resultMap.get("resultMsg")); |
|
|
|
throw new RRException(msg); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Author LR |
|
|
|
* @Description 插入等待的派工单信息 |
|
|
|
* @DateTime 2022/3/2 15:49 |
|
|
|
* @Param [site, orderNo, itemNo, workCenterNo, resourceId, waitHour, specifiedTime, scheduleDate, scheduleTime, calendarId, username] |
|
|
|
* @return java.util.Map<java.lang.String,java.lang.Object> |
|
|
|
**/ |
|
|
|
public Map<String, Object> addWaitSchedule(String site, String orderNo, Integer itemNo, String workCenterNo, String resourceId, double waitHour, |
|
|
|
String specifiedTime, Date scheduleDate, Date scheduleTime, String calendarId, String username) { |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(orderNo); |
|
|
|
params.add(itemNo); |
|
|
|
params.add(workCenterNo); |
|
|
|
params.add(resourceId); |
|
|
|
params.add(waitHour); |
|
|
|
params.add(specifiedTime); |
|
|
|
params.add(scheduleDate); |
|
|
|
params.add(scheduleTime); |
|
|
|
params.add(calendarId); |
|
|
|
params.add(username); |
|
|
|
//调用存储过程 |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("soschedule_newwaitjob", params); |
|
|
|
//处理返回的结果 |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional |
|
|
|
public void reScheduleWorkOrders(SearchScheduleData inData) { |
|
|
|
//公共参数 |
|
|
|
String site = inData.getSite(); |
|
|
|
String workCenterNo = inData.getWorkCenterNo(); |
|
|
|
String resourceId = inData.getResourceId(); |
|
|
|
String specifiedTime = inData.getSpecifiedTime(); |
|
|
|
Date scheduleDate = inData.getScheduleDate(); |
|
|
|
Date scheduleTime = inData.getScheduleTime(); |
|
|
|
String username = inData.getUsername(); |
|
|
|
|
|
|
|
//获取当前加工中心机台对应的calendarId |
|
|
|
Map<String, Object> calendarMap = scheduleMapper.getCalendarId(inData); |
|
|
|
//判断是否存在当前的加工中心机台数据 |
|
|
|
if (calendarMap == null || calendarMap.size() == 0) { |
|
|
|
throw new RRException("班次异常!"); |
|
|
|
} |
|
|
|
//设置查询的条件 |
|
|
|
String calendarId = String.valueOf(calendarMap.get("calendarId")); |
|
|
|
//调用存储过程 重新排产的派工单 |
|
|
|
Map<String, Object> resultMap = this.reScheduleWorkOrders(site, specifiedTime, scheduleDate, scheduleTime, calendarId, workCenterNo, resourceId); |
|
|
|
//判断是否检验成功 |
|
|
|
String resultCode = String.valueOf(resultMap.get("resultCode")); |
|
|
|
if ("400".equalsIgnoreCase(resultCode)) { |
|
|
|
String msg = String.valueOf(resultMap.get("resultMsg")); |
|
|
|
throw new RRException(msg); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Author LR |
|
|
|
* @Description 重新排产派工单 |
|
|
|
* @DateTime 2022/3/2 15:59 |
|
|
|
* @Param [site, specifiedTime, scheduleDate, scheduleTime, calendarId, workCenterNo, resourceId] |
|
|
|
* @return java.util.Map<java.lang.String,java.lang.Object> |
|
|
|
**/ |
|
|
|
public Map<String, Object> reScheduleWorkOrders(String site, String specifiedTime, Date scheduleDate, Date scheduleTime, String calendarId, String workCenterNo, String resourceId) { |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(specifiedTime); |
|
|
|
params.add(scheduleDate); |
|
|
|
params.add(scheduleTime); |
|
|
|
params.add(calendarId); |
|
|
|
params.add(workCenterNo); |
|
|
|
params.add(resourceId); |
|
|
|
//调用存储过程 |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("soschedule_reschedulejob", params); |
|
|
|
//处理返回的结果 |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
} |