rev:二期出库测试修改

This commit is contained in:
2025-06-25 18:05:22 +08:00
parent 668c9e1200
commit 66e7b1a2c8
3 changed files with 52 additions and 4 deletions

View File

@@ -66,6 +66,38 @@ public class TwoOutExceptionalTask extends AbstractAcsTask {
return resultList;
}
@Override
public List<AcsTaskDto> addTask(String taskId) {
/*
* 下发给ACS时需要特殊处理
*/
JSONArray arr = WQLObject.getWQLObject("SCH_BASE_Task").query("handle_class = '" + THIS_CLASS + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0' and task_id = '"+taskId+"'").getResultJSONArray(0);
ArrayList<AcsTaskDto> resultList = new ArrayList<>();
for (int i = 0; i < arr.size(); i++) {
JSONObject json = arr.getJSONObject(i);
char dtl_type = json.getString("task_type").charAt(json.getString("task_type").length() - 1);
AcsTaskDto dto = AcsTaskDto.builder()
.ext_task_id(json.getString("task_id"))
.task_code(json.getString("task_code"))
.task_type(json.getString("acs_task_type"))
.start_device_code(json.getString("point_code1"))
.next_device_code(json.getString("point_code2"))
.vehicle_code(json.getString("vehicle_code2"))
.vehicle_code2(json.getString("vehicle_code"))
.priority(json.getString("priority"))
.class_type(json.getString("task_type"))
.route_plan_code(getRoutePlanCode(json.getString("point_code1")))
.dtl_type(String.valueOf(dtl_type))
.product_area(IOSEnum.PRODUCT_AREA.code("BLK"))
.remark(json.getString("remark"))
.build();
resultList.add(dto);
}
return resultList;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateTaskStatus(JSONObject taskObj, String status) {
@@ -100,9 +132,12 @@ public class TwoOutExceptionalTask extends AbstractAcsTask {
// 判断任务是否被标记
if (jsonTask.getString("is_auto_issue").equals(IOSEnum.IS_SEND.code(""))) {
// 创建出库任务
JSONObject jsonDis = disTab.query("iostorinv_id = '" + jsonTask.getString("table_fk") + "' and struct_code = '" + jsonTask.getString("point_code1") + "'").uniqueResult(0);
JSONObject jsonDis = disTab.query("iostorinv_id = '" + jsonTask.getString("car_no") + "' and struct_code = '" + jsonTask.getString("point_code1") + "'").uniqueResult(0);
JSONObject jsonPoint = pointTab.query("region_id = '" + RegionTypeEnum.TWO_OUT01.getId() + "' and is_delete = '0' and is_used = '1'").uniqueResult(0);
JSONObject jsonArr = WQLObject.getWQLObject("st_ivt_structattr")
.query("struct_code = '" + jsonTask.getString("point_code2") + "'")
.uniqueResult(0);
JSONObject jsonPoint = pointTab.query("point_code = '" + IOSEnum.OUT_POINT.code(jsonArr.getString("row_num")) + "' and is_delete = '0' and is_used = '1'").uniqueResult(0);
// 查询木箱对应的载具
JSONObject jsonVeExt = extTab.query("pcsn = '" + jsonTask.getString("vehicle_code") + "'")
@@ -118,8 +153,12 @@ public class TwoOutExceptionalTask extends AbstractAcsTask {
jsonTaskParam.put("vehicle_code", jsonTask.getString("vehicle_code"));
jsonTaskParam.put("vehicle_code2", jsonVeExt.getString("storagevehicle_code"));
jsonTaskParam.put("task_group_id", jsonDis.getString("task_id"));
jsonTaskParam.put("vehicle_type", jsonArr.getString("storagevehicle_type"));
jsonTaskParam.put("containerType", jsonArr.getString("storagevehicle_type"));
jsonTaskParam.put("is_auto_issue", IOSEnum.IS_SEND.code(""));
jsonTaskParam.put("table_fk", jsonTask.getString("table_fk"));
jsonTaskParam.put("request_param", jsonTaskParam);
jsonTaskParam.put("table_fk", jsonTask.getString("car_no"));
jsonTaskParam.put("remark", "异常移库任务完成自动创建出库任务!");
jsonTaskParam.put("sort_seq", Integer.parseInt(IOSEnum.ZDEPTH_STRUCT.code("")));
TwoOutTask twoOutTask = new TwoOutTask();
@@ -129,7 +168,7 @@ public class TwoOutExceptionalTask extends AbstractAcsTask {
JSONObject param = new JSONObject();
param.put("task_id",task_id);
param.put("point_id",jsonPoint.getString("point_id"));
disTab.update(param,"iostorinv_id = '"+jsonTask.getString("table_fk")+"' and struct_code = '"+jsonTask.getString("point_code1")+"'");
disTab.update(param,"iostorinv_id = '"+jsonTask.getString("car_no")+"' and struct_code = '"+jsonTask.getString("point_code1")+"'");
}
}
@@ -192,6 +231,7 @@ public class TwoOutExceptionalTask extends AbstractAcsTask {
json.put("point_code2", form.getString("next_device_code"));
json.put("handle_class", this.getClass().getName());
json.put("table_fk", form.getString("table_fk"));
json.put("remark", form.getString("remark"));
json.put("create_id", SecurityUtils.getCurrentUserId());
json.put("create_name", SecurityUtils.getCurrentUsername());
json.put("create_time", DateUtil.now());

View File

@@ -259,6 +259,7 @@ public class TwoOutTask extends AbstractAcsTask {
json.put("create_id", currentUserId);
json.put("create_name", currentUsername);
json.put("create_time", DateUtil.now());
json.put("remark", form.getString("remark"));
json.put("acs_task_type", "7");
WQLObject.getWQLObject("SCH_BASE_Task").insert(json);

View File

@@ -1486,6 +1486,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
jsonTaskParam.put("next_device_code", jsonMove.getString("struct_code"));
jsonTaskParam.put("vehicle_code", jsonLow.getString("storagevehicle_code"));
jsonTaskParam.put("vehicle_code2", jsonVeExt.getString("storagevehicle_code"));
jsonTaskParam.put("remark", "异常转库任务,触发转库单据【"+iostorinv_id+"");
jsonTaskParam.put("table_fk", iostorinv_id);
TwoOutExceptionalTask taskBean = new TwoOutExceptionalTask();
@@ -1745,6 +1746,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
.collect(Collectors.toList());
// 判断是否是异常货位
String remark = "";
if (json.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("出库异常锁"))) {
/*
* 判断异常货位上的任务是否完成
@@ -1760,6 +1762,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
if (jsonTask.getString("task_status").equals(TaskStatusEnum.FINISHED.getCode())) {
start_device_code = jsonTask.getString("point_code2");
is_auto_issue = IOSEnum.IS_SEND.code("");
remark = "异常货位出库!";
} else {
// 未完成只更新分配明细状态不更新任务id
disDaoList.forEach(row -> {
@@ -1770,6 +1773,9 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
// 标记任务
jsonTask.put("is_auto_issue",IOSEnum.IS_SEND.code(""));
jsonTask.put("remark","下发单据时【异常移库任务】未完成,请等待任务完成自动创建出库任务!");
// 用于任务完成时查找对应单据
jsonTask.put("car_no",disDaoList.get(0).getIostorinv_id());
taskService.update(jsonTask);
return;
}
@@ -1792,6 +1798,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
jsonTaskParam.put("containerType", json.getString("storagevehicle_type"));
jsonTaskParam.put("task_group_id", task_group_id);
jsonTaskParam.put("is_auto_issue", is_auto_issue);
jsonTaskParam.put("remark", remark);
JSONObject request_param = new JSONObject();
BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne(
new QueryWrapper<BstIvtBoxinfo>().lambda()