diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java index 8da5ae4..8149ea7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java @@ -142,4 +142,12 @@ public class AcsToWmsController { public ResponseEntity getVehicleInfo(@RequestBody JSONObject whereJson) { return new ResponseEntity<>(acsToWmsService.getVehicleInfo(whereJson), HttpStatus.OK); } + + @PostMapping("/updateFoldPoint") + @Log("更新叠盘位点位状态") + @ApiOperation("更新叠盘位点位状态") + @SaIgnore + public ResponseEntity updateFoldPoint(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(acsToWmsService.updateFoldPoint(whereJson), HttpStatus.OK); + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java index a39618a..02a1c5d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/AcsToWmsService.java @@ -106,4 +106,6 @@ public interface AcsToWmsService { JSONObject feedbackVehicleType(JSONObject param); JSONObject getVehicleInfo(JSONObject whereJson); + + JSONObject updateFoldPoint(JSONObject param); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 3916e35..711c5e0 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -231,6 +231,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { switch (region) { case HL: + JSONObject workorder = TaskUtils.hasWorkOrder(point); + method_param.put("workorder", workorder); task_code = hlSendMaterialTask.createTask(method_param); break; case YZ: @@ -259,6 +261,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { break; case "2": // 叫料 + JSONObject workorder = TaskUtils.hasWorkOrder(point); + method_param.put("workorder", workorder); + switch (region) { case FJ: task_code = fjCallMaterialTask.createTask(method_param); @@ -279,6 +284,13 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { break; case "4": // 叫空 + String device_code = point.getString("device_code"); + JSONObject work_order = WQLObject + .getWQLObject("pdm_bd_workorder") + .query("is_delete = '0' AND device_code = '" + device_code + "' AND order_status = '3'") + .uniqueResult(0); + method_param.put("workorder", work_order); + switch (region) { case HL: task_code = hlCallEmptyTask.createTask(method_param); @@ -773,4 +785,25 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result.put("data", data); return result; } + + @Override + public JSONObject updateFoldPoint(JSONObject param) { + String point_code = param.getString("device_code"); + if (StrUtil.isBlank(point_code)) { + throw new BadRequestException("点位不能为空!"); + } + String point_status = param.getString("point_status"); + if (StrUtil.isBlank(point_status)) { + throw new BadRequestException("点位状态不能为空!"); + } + + JSONObject point_update = new JSONObject(); + point_update.put("point_status", point_status); + WQLObject.getWQLObject("sch_base_point").update(point_update, "point_code = '" + point_code + "'"); + + JSONObject result = new JSONObject(); + result.put("status", HttpStatus.OK.value()); + result.put("message", "更新点位状态成功!"); + return result; + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AbstractAcsTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AbstractAcsTask.java index e8089b9..43ca0ff 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AbstractAcsTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AbstractAcsTask.java @@ -7,9 +7,11 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.common.utils.SecurityUtils; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.sch.AcsUtil; import org.nl.wms.sch.task.AcsTaskDTO; +import org.nl.wms.sch.task.util.TaskUtils; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; @@ -51,7 +53,7 @@ public abstract class AbstractAcsTask { .query("is_delete = '0' AND task_status = " + TaskStatus.START_AND_END.value() + " AND handle_class = '" + this.getClass().getName() + "'") .getResultJSONArray(0); - ArrayList acsTasks = new ArrayList<>(); + ArrayList acs_tasks = new ArrayList<>(); for (Object o : tasks) { JSONObject task = (JSONObject) o; @@ -68,11 +70,13 @@ public abstract class AbstractAcsTask { .remark(task.getString("remark")) .build(); - acsTasks.add(acsTask); + acs_tasks.add(acsTask); } - return acsTasks; - }; + return acs_tasks; + } + + ; /** * @param taskObj 代表一条任务对象 @@ -145,16 +149,32 @@ public abstract class AbstractAcsTask { */ public JSONObject immediateNotifyAcs(String taskId) { WQLObject taskTable = WQLObject.getWQLObject("sch_base_task"); - JSONArray tasks = taskTable + JSONObject task = taskTable .query("task_id = " + taskId) - .getResultJSONArray(0); + .uniqueResult(0); - if (ObjectUtil.isNotEmpty(tasks)) { - String taskStatus = ((JSONObject) tasks.get(0)).getString("task_status"); - if (!StrUtil.equals(taskStatus, TaskStatus.START_AND_END.value())) { - throw new BadRequestException("只能下发已确认起点和终点的任务"); + if (ObjectUtil.isNotEmpty(task)) { + String task_status = task.getString("task_status"); + if (!StrUtil.equals(task_status, TaskStatus.START_AND_END.value())) { + throw new BadRequestException("只能下发 [确认起点和终点] 的任务!"); } + AcsTaskDTO acs_task = AcsTaskDTO + .builder() + .task_id(task.getString("task_id")) + .task_code(task.getString("task_code")) + .task_type(task.getString("acs_task_type")) + .start_device_code(task.getString("point_code1")) + .next_device_code(task.getString("point_code2")) + .vehicle_code(task.getString("vehicle_code")) + .vehicle_type(task.getString("vehicle_type")) + .priority(task.getString("priority")) + .remark(task.getString("remark")) + .build(); + + JSONArray tasks = new JSONArray() {{ + add(acs_task); + }}; JSONObject result = AcsUtil.notifyAcs("api/wms/task", tasks); String status = result.getString("status"); @@ -169,8 +189,8 @@ public abstract class AbstractAcsTask { JSONObject taskObj = new JSONObject(); taskObj.put("task_id", ((JSONObject) item).getString("task_id")); taskObj.put("task_status", TaskStatus.ISSUE.value()); - taskObj.put("remark", "下发成功"); - taskObj.put("update_time", DateUtil.now()); + taskObj.put("remark", "下发成功!"); + TaskUtils.addCurrentUpdateColum(taskObj); taskTable.update(taskObj); }); } else {//下发失败 @@ -178,8 +198,8 @@ public abstract class AbstractAcsTask { JSONObject taskObj = new JSONObject(); taskObj.put("task_id", ((JSONObject) item).getString("task_id")); // taskObj.put("task_status", TaskStatusEnum.ISSUE.getCode()); - taskObj.put("remark", "下发失败:" + message); - taskObj.put("update_time", DateUtil.now()); + taskObj.put("remark", "下发失败:" + message); + TaskUtils.addCurrentUpdateColum(taskObj); taskTable.update(taskObj); }); } @@ -188,8 +208,8 @@ public abstract class AbstractAcsTask { //处理下发失败的任务 for (int i = 0; i < errArr.size(); i++) { JSONObject taskObj = errArr.getJSONObject(i); - taskObj.put("remark", "下发失败:"+taskObj.getString("message")); - taskObj.put("update_time", DateUtil.now()); + taskObj.put("remark", "下发失败:" + taskObj.getString("message")); + TaskUtils.addCurrentUpdateColum(taskObj); taskTable.update(taskObj); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCreateTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCreateTask.java index 1635f8b..bebf85a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCreateTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCreateTask.java @@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; +import org.nl.modules.common.utils.SecurityUtils; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.wms.sch.AcsUtil; @@ -84,6 +85,8 @@ public class AutoCreateTask { taskObj.put("task_id", item.getTask_id()); taskObj.put("task_status", TaskStatus.ISSUE.value()); taskObj.put("remark", "下发成功"); + taskObj.put("update_optid", AutoCreate.id); + taskObj.put("update_optname", AutoCreate.nick_name); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); }); @@ -92,7 +95,9 @@ public class AutoCreateTask { JSONObject taskObj = new JSONObject(); taskObj.put("task_id", item.getTask_id()); // taskObj.put("task_status", TaskStatusEnum.ISSUE.getCode()); - taskObj.put("remark", "下发失败:" + message); + taskObj.put("remark", "下发失败:" + message); + taskObj.put("update_optid", AutoCreate.id); + taskObj.put("update_optname", AutoCreate.nick_name); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); }); @@ -103,6 +108,8 @@ public class AutoCreateTask { for (int i = 0; i < errArr.size(); i++) { JSONObject taskObj = errArr.getJSONObject(i); taskObj.put("remark", "下发失败:" + taskObj.getString("message")); + taskObj.put("update_optid", AutoCreate.id); + taskObj.put("update_optname", AutoCreate.nick_name); taskObj.put("update_time", DateUtil.now()); taskTab.update(taskObj); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/empty/YZCallEmptyTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/empty/YZCallEmptyTask.java index 9ea3551..6a9d3c9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/empty/YZCallEmptyTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/empty/YZCallEmptyTask.java @@ -12,7 +12,6 @@ import org.nl.wms.basedata.eum.VehicleType; import org.nl.wms.sch.manage.*; import org.nl.wms.sch.task.util.TaskUtils; import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; /** * 辽宁晟华压制 叫空 任务类 @@ -24,7 +23,6 @@ import org.springframework.transaction.annotation.Transactional; @Component public class YZCallEmptyTask extends AbstractAcsTask { - @Override public void updateTaskStatus(JSONObject task, String status) { if (TaskStatus.EXECUTING.value().equals(status)) { @@ -37,7 +35,6 @@ public class YZCallEmptyTask extends AbstractAcsTask { this.cancelTask(task, OperationType.AUTO); } } - @Override public String createTask(JSONObject form) { @@ -68,12 +65,12 @@ public class YZCallEmptyTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); } - @Override public void findStartPoint() { WQLObject task_table = WQLObject.getWQLObject("sch_base_task"); @@ -103,16 +100,17 @@ public class YZCallEmptyTask extends AbstractAcsTask { task.put("point_code1", point.getString("point_code")); task.put("vehicle_code", TaskUtils.formatVehicleCode(point.getString("vehicle_code"))); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point); point_table.update(point); } } } - @Override public void forceFinish(String task_id) { JSONObject task = WQLObject.getWQLObject("sch_base_task").query("task_id = " + task_id).uniqueResult(0); @@ -132,7 +130,6 @@ public class YZCallEmptyTask extends AbstractAcsTask { this.cancelTask(task, OperationType.MANUAL); } - public void cancelTask(JSONObject task, OperationType operation_type) { if (task.getIntValue("task_status") < Integer.parseInt(TaskStatus.FINISHED.value())) { task.put("task_status", TaskStatus.CANCELLED.value()); @@ -169,7 +166,6 @@ public class YZCallEmptyTask extends AbstractAcsTask { point_table.update(point2, "point_code = '" + task.getString("point_code2") + "'"); } } - public void finishTask(JSONObject task, OperationType operation_type) { if (task.getIntValue("task_status") < Integer.parseInt(TaskStatus.FINISHED.value())) { @@ -190,13 +186,19 @@ public class YZCallEmptyTask extends AbstractAcsTask { point1.put("vehicle_type", ""); point1.put("vehicle_code", ""); point1.put("point_status", PointStatus.EMPTY.value()); - TaskUtils.addCurrentUpdateColum(point1); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } JSONObject point2 = new JSONObject(); point2.put("lock_type", LockType.UNLOCKED.value()); point2.put("task_code", ""); + point2.put("vehicle_type", task.getString("vehicle_type")); + point2.put("vehicle_code", task.getString("vehicle_code")); point2.put("point_status", PointStatus.NOT_EMPTY.value()); if (operation_type == OperationType.AUTO) { TaskUtils.addACSUpdateColum(point2); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/FJCallMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/FJCallMaterialTask.java index d79382d..68a91f6 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/FJCallMaterialTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/FJCallMaterialTask.java @@ -12,7 +12,6 @@ import org.nl.wms.basedata.eum.VehicleType; import org.nl.wms.sch.manage.*; import org.nl.wms.sch.task.util.TaskUtils; import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; /** * @author zhangjiangwei @@ -40,7 +39,7 @@ public class FJCallMaterialTask extends AbstractAcsTask { @Override public String createTask(JSONObject form) { JSONObject point = form.getJSONObject("point"); - JSONObject workorder = TaskUtils.hasWorkOrder(point); + JSONObject workorder = form.getJSONObject("workorder"); JSONObject task = TaskUtils.buildTask( "分拣区叫料", @@ -62,6 +61,7 @@ public class FJCallMaterialTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); @@ -82,6 +82,7 @@ public class FJCallMaterialTask extends AbstractAcsTask { JSONObject point = WQL .getWO("CALL_MATERIAL_TASK") .addParam("flag", "3") + .addParam("material_id", task.getString("material_id")) .process() .uniqueResult(0); @@ -90,11 +91,13 @@ public class FJCallMaterialTask extends AbstractAcsTask { task.put("point_code1", point.getString("point_code")); task.put("vehicle_code", TaskUtils.formatVehicleCode(point.getString("vehicle_code"))); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); JSONObject point_update = new JSONObject(); point_update.put("lock_type", LockType.TASK_LOCKED.value()); point_update.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point_update); point_table.update(point_update, "point_id = " + point.getLongValue("point_id")); } } @@ -178,7 +181,11 @@ public class FJCallMaterialTask extends AbstractAcsTask { point1.put("vehicle_type", ""); point1.put("vehicle_code", ""); point1.put("point_status", PointStatus.EMPTY.value()); - TaskUtils.addCurrentUpdateColum(point1); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/SZCallMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/SZCallMaterialTask.java index 656e7bc..4df493e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/SZCallMaterialTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/SZCallMaterialTask.java @@ -1,5 +1,6 @@ package org.nl.wms.sch.task.call.material; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -11,7 +12,6 @@ import org.nl.wms.basedata.eum.VehicleType; import org.nl.wms.sch.manage.*; import org.nl.wms.sch.task.util.TaskUtils; import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; /** * @author zhangjiangwei @@ -78,6 +78,7 @@ public class SZCallMaterialTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); @@ -107,11 +108,13 @@ public class SZCallMaterialTask extends AbstractAcsTask { task.put("material_id", point.getString("material_id")); task.put("vehicle_code", TaskUtils.formatVehicleCode(point.getString("vehicle_code"))); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); JSONObject point_update = new JSONObject(); point_update.put("lock_type", LockType.TASK_LOCKED.value()); point_update.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point_update); point_table.update(point_update, "point_id = " + point.getLongValue("point_id")); } } @@ -195,7 +198,11 @@ public class SZCallMaterialTask extends AbstractAcsTask { point1.put("vehicle_type", ""); point1.put("vehicle_code", ""); point1.put("point_status", PointStatus.EMPTY.value()); - TaskUtils.addCurrentUpdateColum(point1); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql index 60c9d04..13c1d96 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql @@ -14,6 +14,7 @@ ## 表字段对应输入参数 ################################################# 输入.flag TYPEAS s_string + 输入.material_id TYPEAS f_string [临时表] --这边列出来的临时表就会在运行期动态创建 @@ -95,6 +96,7 @@ AND point.point_status = '1' AND point.vehicle_type = '2' AND vd.is_fire = '1' + AND vd.material_id = 输入.material_id ORDER BY workorder.is_urgent DESC, vd.create_time ASC ENDSELECT diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java index 1bc1c18..dbc23cc 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java @@ -39,7 +39,7 @@ public class FJSendEmptyTask extends AbstractAcsTask { @Override public String createTask(JSONObject form) { JSONObject point = form.getJSONObject("point"); - String vehicle_code = form.getString("vehicle_code"); + String vehicle_code = point.getString("vehicle_code"); JSONObject task = TaskUtils.buildTask( "分拣区送空", @@ -61,6 +61,7 @@ public class FJSendEmptyTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); @@ -88,10 +89,12 @@ public class FJSendEmptyTask extends AbstractAcsTask { task.put("task_status", TaskStatus.START_AND_END.value()); task.put("point_code2", point.getString("point_code")); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point); point_table.update(point); } } @@ -175,14 +178,17 @@ public class FJSendEmptyTask extends AbstractAcsTask { point1.put("vehicle_type", ""); point1.put("vehicle_code", ""); point1.put("point_status", PointStatus.EMPTY.value()); - TaskUtils.addCurrentUpdateColum(point1); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } JSONObject point2 = new JSONObject(); point2.put("lock_type", LockType.UNLOCKED.value()); point2.put("task_code", ""); - point2.put("point_status", PointStatus.NOT_EMPTY.value()); if (operation_type == OperationType.AUTO) { TaskUtils.addACSUpdateColum(point2); } else if (operation_type == OperationType.MANUAL) { diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql index 60de1da..580a08b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql @@ -48,6 +48,7 @@ AND lock_type = '1' AND region_code = 'GTK' AND point_type = '1' + AND point_status = '0' ENDSELECT ENDQUERY ENDIF diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java index 798bae4..8f8a909 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java @@ -59,6 +59,7 @@ public class SZSendMaterialTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); @@ -86,10 +87,12 @@ public class SZSendMaterialTask extends AbstractAcsTask { task.put("task_status", TaskStatus.START_AND_END.value()); task.put("point_code2", point.getString("point_code")); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point); point_table.update(point); } } @@ -170,7 +173,14 @@ public class SZSendMaterialTask extends AbstractAcsTask { && task.getString("task_code").equals(point1.getString("task_code"))) { point1.put("lock_type", LockType.UNLOCKED.value()); point1.put("task_code", ""); - TaskUtils.addCurrentUpdateColum(point1); + point1.put("vehicle_type", ""); + point1.put("vehicle_code", ""); + point1.put("point_status", PointStatus.EMPTY.value()); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java index e3584d0..92214ea 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java @@ -8,11 +8,9 @@ import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.basedata.eum.TrueOrFalse; -import org.nl.wms.basedata.eum.VehicleType; import org.nl.wms.sch.manage.*; import org.nl.wms.sch.task.util.TaskUtils; import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; /** * @author zhangjiangwei @@ -63,6 +61,7 @@ public class YZSendMaterialTask extends AbstractAcsTask { point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addFormUpdateColum(point, form); WQLObject.getWQLObject("sch_base_point").update(point); return task.getString("task_code"); @@ -92,10 +91,12 @@ public class YZSendMaterialTask extends AbstractAcsTask { task.put("task_status", TaskStatus.START_AND_END.value()); task.put("point_code2", point.getString("point_code")); task.put("remark", ""); + TaskUtils.addAutoUpdateColum(task); task_table.update(task); point.put("lock_type", LockType.TASK_LOCKED.value()); point.put("task_code", task.getString("task_code")); + TaskUtils.addAutoUpdateColum(point); point_table.update(point); } } @@ -180,7 +181,11 @@ public class YZSendMaterialTask extends AbstractAcsTask { point1.put("vehicle_type", ""); point1.put("vehicle_code", ""); point1.put("point_status", PointStatus.EMPTY.value()); - TaskUtils.addCurrentUpdateColum(point1); + if (operation_type == OperationType.AUTO) { + TaskUtils.addACSUpdateColum(point1); + } else if (operation_type == OperationType.MANUAL) { + TaskUtils.addCurrentUpdateColum(point1); + } point_table.update(point1); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java index fdf4aaf..f4f821f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java @@ -10,6 +10,7 @@ import org.nl.modules.common.utils.SecurityUtils; import org.nl.modules.system.util.CodeUtil; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.sch.manage.ACSSystem; +import org.nl.wms.sch.manage.AutoCreate; import org.nl.wms.sch.manage.LockType; import org.nl.wms.sch.manage.PointStatus; @@ -111,4 +112,16 @@ public class TaskUtils { row.put("update_optname", SecurityUtils.getCurrentNickName()); row.put("update_time", DateUtil.now()); } + + public static void addAutoUpdateColum(JSONObject row) { + row.put("update_optid", AutoCreate.id); + row.put("update_optname", AutoCreate.nick_name); + row.put("update_time", DateUtil.now()); + } + + public static void addFormUpdateColum(JSONObject row, JSONObject form) { + row.put("update_optid", form.getString("create_id")); + row.put("update_optname", form.getString("create_name")); + row.put("update_time", DateUtil.now()); + } }