任务修改

This commit is contained in:
2022-11-04 17:24:08 +08:00
parent 97aeb3341c
commit e668124a96
7 changed files with 105 additions and 93 deletions

View File

@@ -486,6 +486,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
jo.put("point_code1", cool_ivt.getString("full_point_code"));
jo.put("point_code2", cut_jo.getString("full_point_code"));
jo.put("vehicle_code", parent_container_name);
jo.put("product_area", cool_ivt.getString("product_area"));
jo.put("task_type", "010302");
} else {
jo.put("point_code1", cool_ivt.getString("full_point_code"));
@@ -494,6 +495,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
jo.put("point_code4", cool_ivt.getString("full_point_code"));
jo.put("vehicle_code", parent_container_name);
jo.put("vehicle_code2", cut_jo.getString("empty_vehicle_code"));
jo.put("product_area", cool_ivt.getString("product_area"));
jo.put("task_type", "010301");
}

View File

@@ -117,12 +117,9 @@ public class OutServiceImpl implements OutService {
}
JSONObject jo = new JSONObject();
jo.put("point_code1","");
jo.put("point_code2","");
jo.put("point_code3",point_code);
jo.put("point_code4",empty_vehicle.getString("point_code"));
jo.put("vehicle_code","");
jo.put("vehicle_code2",cut_qzzno);
jo.put("point_code1",point_code);
jo.put("point_code2",empty_vehicle.getString("point_code"));
jo.put("vehicle_code",cut_qzzno);
jo.put("task_type","010404");
cutTrussTask.createTask(jo);

View File

@@ -43,6 +43,14 @@ public class CoolCutTask extends AbstractAcsTask {
for (int i = 0; i < arr.size(); i++) {
JSONObject json = arr.getJSONObject(i);
String product_area = json.getString("product_area");
String agv_system_type = "";
if (product_area.equals("A")||product_area.equals("B")){
agv_system_type = "2";
}
if (product_area.equals("C")||product_area.equals("D")){
agv_system_type = "3";
}
AcsTaskDto dto = AcsTaskDto.builder()
.ext_task_id(json.getString("task_id"))
.task_code(json.getString("task_code"))
@@ -51,6 +59,7 @@ public class CoolCutTask extends AbstractAcsTask {
.next_device_code(json.getString("point_code2"))
.vehicle_code(json.getString("vehicle_code"))
.priority(json.getString("priority"))
.agv_system_type(agv_system_type)
.remark(json.getString("remark"))
.build();
resultList.add(dto);
@@ -256,7 +265,12 @@ public class CoolCutTask extends AbstractAcsTask {
json.put("create_name", currentUsername);
json.put("create_time", DateUtil.now());
json.put("priority", "1");
json.put("acs_task_type", "5");
if (form.getString("task_type").equals("010301")){
json.put("acs_task_type", "2");
}else {
json.put("acs_task_type", "3");
}
tab.insert(json);
return json.getString("task_id");

View File

@@ -62,9 +62,9 @@ public class CutTrussTask extends AbstractAcsTask {
String task_id = taskObj.getString("task_id");
JSONObject jsonTask = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0);
if (StrUtil.equals(status,"0")) {
if (StrUtil.equals(status, "0")) {
// 取消删除任务
taskTab.delete("task_id = '"+task_id+"'");
taskTab.delete("task_id = '" + task_id + "'");
}
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
@@ -74,62 +74,62 @@ public class CutTrussTask extends AbstractAcsTask {
taskTab.update(jsonTask);
}
if(StrUtil.equals(status, TaskStatusEnum.FINISHED.getCode())) {
if (StrUtil.equals(status, TaskStatusEnum.FINISHED.getCode())) {
// 更改任务状态为完成
jsonTask.put("task_status",TaskStatusEnum.FINISHED.getCode());
jsonTask.put("task_status", TaskStatusEnum.FINISHED.getCode());
jsonTask.put("update_optid", SecurityUtils.getCurrentUserId());
jsonTask.put("update_optname", SecurityUtils.getCurrentUsername());
jsonTask.put("update_time", DateUtil.now());
taskTab.update(jsonTask);
if (jsonTask.getString("task_type").equals("010403")){
if (jsonTask.getString("task_type").equals("010403")) {
//更新分切机对应位置的气涨轴
JSONObject cut_point = WQLObject.getWQLObject("ST_IVT_CutPointIvt").query("up_point_code = '"+jsonTask.getString("point_code2")+"'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(cut_point)){
cut_point.put("up_qzzno",jsonTask.getString("vehicle_code"));
}else {
cut_point = WQLObject.getWQLObject("ST_IVT_CutPointIvt").query("down_point_code = '"+jsonTask.getString("point_code2")+"'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(cut_point)){
cut_point.put("down_qzzno",jsonTask.getString("vehicle_code"));
}else {
JSONObject cut_point = WQLObject.getWQLObject("ST_IVT_CutPointIvt").query("up_point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(cut_point)) {
cut_point.put("up_qzzno", jsonTask.getString("vehicle_code"));
} else {
cut_point = WQLObject.getWQLObject("ST_IVT_CutPointIvt").query("down_point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(cut_point)) {
cut_point.put("down_qzzno", jsonTask.getString("vehicle_code"));
} else {
throw new BadRequestException("未查询到对应的分切机!");
}
}
WQLObject.getWQLObject("ST_IVT_CutPointIvt").update(cut_point);
//更新输送线的气涨轴编码
JSONObject delivery_point = WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").query("point_code = '"+jsonTask.getString("point_code1")+"'").uniqueResult(0);
if (ObjectUtil.isEmpty(delivery_point)){
JSONObject delivery_point = WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").query("point_code = '" + jsonTask.getString("point_code1") + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(delivery_point)) {
throw new BadRequestException("未查询到对应的输送线点位!");
}
delivery_point.put("qzzno",jsonTask.getString("vehicle_code2"));
delivery_point.put("point_status","04");
delivery_point.put("qzzno", jsonTask.getString("vehicle_code2"));
delivery_point.put("point_status", "04");
WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").update(delivery_point);
//更新出站气涨轴的分切计划状态
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '"+jsonTask.getString("vehicle_code2")+"' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '06'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)){
throw new BadRequestException("未查询到气涨轴:"+jsonTask.getString("vehicle_code2")+"对应的分切计划!");
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + jsonTask.getString("vehicle_code2") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '06'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)) {
throw new BadRequestException("未查询到气涨轴:" + jsonTask.getString("vehicle_code2") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo.size(); i++) {
JSONObject plan_row = plan_jo.getJSONObject(i);
plan_row.put("status","09");
plan_row.put("end_time",DateUtil.now());
plan_row.put("status", "09");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
//更新入站气涨轴的分切计划状态
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '"+jsonTask.getString("vehicle_code")+"' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '04'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)){
throw new BadRequestException("未查询到气涨轴:"+jsonTask.getString("vehicle_code")+"对应的分切计划!");
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + jsonTask.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '04'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)) {
throw new BadRequestException("未查询到气涨轴:" + jsonTask.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo2.size(); i++) {
JSONObject plan_row = plan_jo2.getJSONObject(i);
plan_row.put("status","05");
plan_row.put("end_time",DateUtil.now());
plan_row.put("status", "05");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
}
}
}
}
@Override
public void findStartPoint() {
@@ -148,24 +148,26 @@ public class CutTrussTask extends AbstractAcsTask {
Long currentUserId = SecurityUtils.getCurrentUserId();
String currentUsername = SecurityUtils.getCurrentUsername();
CutConveyorTask cutConveyorTask = new CutConveyorTask();
String point_code1 = form.getString("point_code1");
String point_code2 = form.getString("point_code2");
String point_code3 = form.getString("point_code3");
String point_code4 = form.getString("point_code4");
/*if (conveyorTask.isSingleTask(point_code1)){
throw new BadRequestException("点位:"+point_code1+"存在未完成的任务!");
if (cutConveyorTask.isSingleTask(point_code1)) {
throw new BadRequestException("点位:" + point_code1 + "存在未完成的任务!");
}
if (conveyorTask.isSingleTask(point_code2)){
throw new BadRequestException("点位:"+point_code2+"存在未完成的任务!");
if (cutConveyorTask.isSingleTask(point_code2)) {
throw new BadRequestException("点位:" + point_code2 + "存在未完成的任务!");
}
if (conveyorTask.isSingleTask(point_code3)){
throw new BadRequestException("点位:"+point_code3+"存在未完成的任务!");
if (cutConveyorTask.isSingleTask(point_code3)) {
throw new BadRequestException("点位:" + point_code3 + "存在未完成的任务!");
}
if (cutConveyorTask.isSingleTask(point_code4)) {
throw new BadRequestException("点位:" + point_code4 + "存在未完成的任务!");
}
if (conveyorTask.isSingleTask(point_code4)){
throw new BadRequestException("点位:"+point_code4+"存在未完成的任务!");
}*/
JSONObject json = new JSONObject();
json.put("task_id", IdUtil.getSnowflake(1,1).nextId());
json.put("task_id", IdUtil.getSnowflake(1, 1).nextId());
json.put("task_code", CodeUtil.getNewCode("TASK_CODE"));
json.put("task_type", form.getString("task_type"));
json.put("vehicle_code", form.getString("vehicle_code"));
@@ -179,57 +181,65 @@ public class CutTrussTask extends AbstractAcsTask {
json.put("create_id", currentUserId);
json.put("create_name", currentUsername);
json.put("create_time", DateUtil.now());
json.put("priority","1" );
json.put("acs_task_type","5" );
json.put("priority", "1");
json.put("acs_task_type", "6");
tab.insert(json);
if (form.getString("task_type").equals("010403")){
if (form.getString("task_type").equals("010403")) {
//更新入站气涨轴的分切计划状态
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '"+json.getString("vehicle_code")+"' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '03'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)){
throw new BadRequestException("未查询到气涨轴:"+json.getString("vehicle_code")+"对应的分切计划!");
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + json.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '03'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)) {
throw new BadRequestException("未查询到气涨轴:" + json.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo.size(); i++) {
JSONObject plan_row = plan_jo.getJSONObject(i);
plan_row.put("status","04");
plan_row.put("end_time",DateUtil.now());
plan_row.put("status", "04");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
//更新出站气涨轴的分切计划状态
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '"+json.getString("vehicle_code2")+"' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '05'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)){
throw new BadRequestException("未查询到气涨轴:"+json.getString("vehicle_code2")+"对应的分切计划!");
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + json.getString("vehicle_code2") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '05'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)) {
throw new BadRequestException("未查询到气涨轴:" + json.getString("vehicle_code2") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo2.size(); i++) {
JSONObject plan_row = plan_jo2.getJSONObject(i);
plan_row.put("status","06");
plan_row.put("end_time",DateUtil.now());
plan_row.put("status", "06");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
}
if (form.getString("task_type").equals("010404")){
if (form.getString("task_type").equals("010404")) {
//更新出站气涨轴的分切计划状态
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '"+json.getString("vehicle_code2")+"' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '05'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)){
throw new BadRequestException("未查询到气涨轴:"+json.getString("vehicle_code2")+"对应的分切计划!");
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + json.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '05'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)) {
throw new BadRequestException("未查询到气涨轴:" + json.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo2.size(); i++) {
JSONObject plan_row = plan_jo2.getJSONObject(i);
plan_row.put("status","06");
plan_row.put("end_time",DateUtil.now());
plan_row.put("status", "06");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
}
if (form.getString("task_type").equals("010405")){
if (form.getString("task_type").equals("010405")) {
//更新入站气涨轴的分切计划状态
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + json.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '03'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)) {
throw new BadRequestException("未查询到气涨轴:" + json.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo.size(); i++) {
JSONObject plan_row = plan_jo.getJSONObject(i);
plan_row.put("status", "04");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
}
return json.getString("task_id");
}
@@ -241,7 +251,6 @@ public class CutTrussTask extends AbstractAcsTask {
}
@Override
public void cancel(String task_id) {

View File

@@ -2,6 +2,7 @@ package org.nl.wms.sch.tasks;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@@ -40,6 +41,15 @@ public class InTask extends AbstractAcsTask {
for (int i = 0; i < arr.size(); i++) {
JSONObject json = arr.getJSONObject(i);
//判断该任务所在的块、排存在其他任务
String point_code2 = json.getString("point_code2");
JSONObject struct_jo = WQLObject.getWQLObject("ST_IVT_StructAttr").query("struct_code = '"+point_code2+"'").uniqueResult(0);
String row_num = struct_jo.getString("row_num");
String block_num = struct_jo.getString("block_num");
JSONObject task_jo = WQLObject.getWQLObject("ST_IVT_StructAttr").query("block_num = '"+block_num+"' AND row_num = '"+row_num+"' AND lock_type in ('3','6')").uniqueResult(0);
if (ObjectUtil.isNotEmpty(task_jo)){
continue;
}
AcsTaskDto dto = AcsTaskDto.builder()
.ext_task_id(json.getString("task_id"))
.task_code(json.getString("task_code"))
@@ -124,29 +134,6 @@ public class InTask extends AbstractAcsTask {
Long currentUserId = SecurityUtils.getCurrentUserId();
String currentUsername = SecurityUtils.getCurrentUsername();
/*JSONObject jo = new JSONObject();
jo.put("end_point",next_device_code);
jo.put("vehicle_code",vehicle_code);
jo.put("storagevehicle_type",form.getString("storagevehicle_type"));
jo.put("storagevehicle_id",form.getString("storagevehicle_id"));
String task_code = CodeUtil.getNewCode("TASK_CODE");
String priority = "0";*/
/*TaskDto taskDto = new TaskDto();
taskDto.setTask_code(task_code);
taskDto.setTask_type(task_type);
taskDto.setTaskdtl_type(task_type);
taskDto.setStart_point_code(start_device_code);
taskDto.setNext_point_code(next_device_code);
taskDto.setVehicle_code(vehicle_code);
taskDto.setTaskdtl_type(taskdtl_type);
taskDto.setHandle_class(this.getClass().getName());
taskDto.setFinished_type("00");
taskDto.setTask_status("01");
taskService.create(taskDto);
TaskDto taskDto1 = taskService.findByCode(task_code);*/
JSONObject json = new JSONObject();
json.put("task_id", IdUtil.getSnowflake(1, 1).nextId());
json.put("task_code", CodeUtil.getNewCode("TASK_CODE"));
@@ -160,7 +147,7 @@ public class InTask extends AbstractAcsTask {
json.put("create_name", currentUsername);
json.put("create_time", DateUtil.now());
json.put("priority", "1");
json.put("acs_task_type", "5");
json.put("acs_task_type", "7");
WQLObject.getWQLObject("SCH_BASE_Task").insert(json);
return json.getString("task_id");

View File

@@ -489,6 +489,9 @@
b.placement_type = a.placement_type
)
输入.sql_str
ENDSELECT
ENDQUERY
ENDIF