油漆线任务优先级和送料送托盘的校验

This commit is contained in:
2023-02-19 00:06:35 +08:00
parent f0c910718b
commit 74e662d547
4 changed files with 31 additions and 7 deletions

View File

@@ -362,6 +362,7 @@ public class YqxCallEmpVehicleTask extends AbstractAcsTask {
.task_status(TaskStatusEnum.SURE_END.getCode())
.point_code2(point_code2)
.acs_task_type("2")
.priority("8")
.vehicle_code(form.getString("vehicle_code"))
.vehicle_type(workOrderObj.getString("vehicle_type"))
.vehicle_qty(1)

View File

@@ -209,6 +209,7 @@ public class YqxCallMaterialTask extends AbstractAcsTask {
.task_type("task_type")
.task_name("油漆线叫料")
.material_qty(qty)
.priority("8")
.task_status(TaskStatusEnum.SURE_END.getCode())
.point_code2(point_code2)
.vehicle_code(vehicle_code)

View File

@@ -120,15 +120,31 @@ public class YqxSendEmpVehicleTask extends AbstractAcsTask {
* 3.下发给ACS
*/
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表
//生产工单表【PDM_BD_WorkOrder】
WQLObject workOrderTab = WQLObject.getWQLObject("PDM_BD_WorkOrder");
//点位基础表【SCH_BASE_Point】
WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point");
String point_code1 = form.getString("point_code1");
String device_code = pointTab.query("point_code = '" + point_code1 + "'").uniqueResult(0).getString("device_code");
JSONObject workOrderObj = workOrderTab.query("device_code = '" + device_code + "' and order_status = '3' and is_delete ='0'").uniqueResult(0);
if (ObjectUtil.isEmpty(workOrderObj)) throw new BadRequestException("该设备当前未生产或者已删除");
String vehicleType = workOrderObj.getString("vehicle_type");
if (ObjectUtil.isEmpty(vehicleType)) throw new BadRequestException("载具类型不能为空");
JSONObject jsonObject = pointTab.query("region_code = 'YQQY01' and point_type = '2' and can_vehicle_type = '" + vehicleType + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(jsonObject)) throw new BadRequestException("找不到油漆线托盘下料起点");
String startPointCode = jsonObject.getString("point_code");
SchTaskDto dto = SchTaskDto.builder().task_id(org.nl.wms.util.IdUtil.getLongId())
.task_code(CodeUtil.getNewCode("TASK_CODE"))
.task_type("")
.task_name("油漆线空盘入库")
.task_status(TaskStatusEnum.SURE_START.getCode())
.point_code1(point_code1)
.point_code1(startPointCode)
.priority("8")
.vehicle_code(form.getString("vehicle_code"))
.vehicle_type(form.getString("vehicle_type"))
.vehicle_qty(form.getIntValue("qty"))

View File

@@ -150,23 +150,29 @@ public class YqxSendMaterialTask extends AbstractAcsTask {
//任务表【SCH_BASE_Task】
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
//判断当前点是否有未完成的任务
JSONObject taskObj = taskTab.query("is_delete='0' and point_code1 = '" + point_code1 + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(taskObj)) throw new BadRequestException("当前点位" + point_code1 + "存在未完成的任务");
String device_code = pointTab.query("point_code = '" + point_code1 + "'").uniqueResult(0).getString("device_code");
JSONObject workOrderObj = workOrderTab.query("device_code = '" + device_code + "' and order_status = '3' and is_delete ='0'").uniqueResult(0);
if (ObjectUtil.isEmpty(workOrderObj)) throw new BadRequestException("该设备当前未生产或者已删除");
String vehicleType = workOrderObj.getString("vehicle_type");
if (ObjectUtil.isEmpty(vehicleType)) throw new BadRequestException("载具类型不能为空");
JSONObject jsonObject = pointTab.query("region_code = 'YQQY01' and point_type = '4' and can_vehicle_type = '" + vehicleType + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(jsonObject)) throw new BadRequestException("找不到油漆线物料下料起点");
String startPointCode = jsonObject.getString("point_code");
//判断当前点是否有未完成的任务
JSONObject taskObj = taskTab.query("is_delete='0' and point_code1 = '" + startPointCode + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(taskObj)) throw new BadRequestException("当前点位" + startPointCode + "存在未完成的任务");
SchTaskDto dto = SchTaskDto.builder()
.task_id(IdUtil.getLongId())
.task_code(CodeUtil.getNewCode("TASK_CODE"))
.task_type("task_type")
.task_name("油漆线满料")
.priority("8")
.task_status(TaskStatusEnum.SURE_START.getCode())
.point_code1(point_code1)
.point_code1(startPointCode)
.material_info_id(workOrderObj.getLong("workorder_id"))
.material_id(workOrderObj.getLong("material_id"))
.vehicle_type(workOrderObj.getString("vehicle_type"))