代码更新
This commit is contained in:
@@ -30,8 +30,8 @@ public abstract class AbstractAcsTask {
|
||||
*/
|
||||
public List<AcsTaskDto> schedule() {
|
||||
this.autoCreate();
|
||||
this.findStartPoint();
|
||||
this.findNextPoint();
|
||||
this.findStartPoint(null);
|
||||
this.findNextPoint(null);
|
||||
return addTask();
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ public abstract class AbstractAcsTask {
|
||||
* @created 2020年6月12日 下午6:01:30
|
||||
*/
|
||||
|
||||
public abstract void findStartPoint();
|
||||
public abstract JSONObject findStartPoint(JSONObject param);
|
||||
|
||||
/**
|
||||
* @return
|
||||
@@ -85,7 +85,7 @@ public abstract class AbstractAcsTask {
|
||||
* @author ldjun
|
||||
* @created 2020年6月12日 下午6:01:06
|
||||
*/
|
||||
public abstract void findNextPoint();
|
||||
public abstract JSONObject findNextPoint(JSONObject param);
|
||||
|
||||
/**
|
||||
* @param form 创建任务需要的参数
|
||||
|
||||
@@ -9,12 +9,9 @@ import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
import org.nl.modules.common.utils.SecurityUtils;
|
||||
import org.nl.modules.system.util.CodeUtil;
|
||||
|
||||
|
||||
import org.nl.modules.wql.WQL;
|
||||
import org.nl.modules.wql.core.bean.WQLObject;
|
||||
import org.nl.modules.wql.util.SpringContextHolder;
|
||||
@@ -24,8 +21,6 @@ import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||
import org.nl.wms.sch.service.PointService;
|
||||
import org.nl.wms.sch.service.dto.PointDto;
|
||||
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -46,9 +41,9 @@ public class CallEmpVehicleTask 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)) {
|
||||
@@ -59,9 +54,9 @@ public class CallEmpVehicleTask 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());
|
||||
@@ -90,13 +85,13 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
|
||||
public JSONObject findStartPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
|
||||
public JSONObject findNextPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -116,7 +111,8 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
} else {
|
||||
// 判断终点是否有正在执行的任务
|
||||
JSONObject beforTaskObj = taskTab.query("is_delete='0' and point_code2='" + point_code2 + "' and task_status <>'" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0);
|
||||
if (ObjectUtil.isNotEmpty(beforTaskObj)) throw new BadRequestException("存在任务号为'" + beforTaskObj.getString("task_code") + "' 未完成!");
|
||||
if (ObjectUtil.isNotEmpty(beforTaskObj))
|
||||
throw new BadRequestException("存在任务号为'" + beforTaskObj.getString("task_code") + "' 未完成!");
|
||||
}
|
||||
// 载具数量不能为空
|
||||
if (ObjectUtil.isEmpty(qty)) throw new BadRequestException("载具数量不能为空");
|
||||
@@ -128,9 +124,9 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
// 终点确定:找起点
|
||||
if (ObjectUtil.isEmpty(point_code1)) {
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("point_code2",point_code2);
|
||||
param.put("vehicle_qty",qty);
|
||||
JSONObject json = this.findBeginPoint(param);
|
||||
param.put("point_code2", point_code2);
|
||||
param.put("vehicle_qty", qty);
|
||||
JSONObject json = this.findNextPoint(param);
|
||||
point_code1 = json.getString("point_code1");
|
||||
vehicle_type = json.getString("vehicle_type");
|
||||
} else {
|
||||
@@ -208,19 +204,21 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
if (ObjectUtil.isEmpty(jsonOrder)) throw new BadRequestException("此设备未在生产中或不存在");
|
||||
|
||||
//当前设备所需要的载具类型
|
||||
String vehicle_type=jsonOrder.getString("vehicle_type");
|
||||
String vehicle_type = jsonOrder.getString("vehicle_type");
|
||||
/*
|
||||
* 空托盘出库任务:
|
||||
* 1.叠盘架B区、养生A区 --> 共挤线 (优先级:1叠盘架B区 2养生A区)
|
||||
* 2.叠盘架A区、养生A区 --> 油漆线 (优先级:1叠盘架A区 2养生A区)
|
||||
*/
|
||||
String point_code1 = "";
|
||||
JSONObject map = new JSONObject();
|
||||
if (StrUtil.equals(jsonRegionEnd.getString("region_code"),RegionTypeEnum.GJQY.getCode())) {
|
||||
JSONObject map = new JSONObject();
|
||||
if (StrUtil.equals(jsonRegionEnd.getString("region_code"), RegionTypeEnum.GJQY.getCode())) {
|
||||
//1、判断是否有到该叠盘位的堆叠任务。
|
||||
|
||||
|
||||
//1、判断叠盘架B是否有对应类型的空载具
|
||||
JSONObject jsonDpjB = pointTab.query("point_status ='2' and lock_type='00' and can_vehicle_type = '" + vehicle_type + "'").uniqueResult(0);
|
||||
if (ObjectUtil.isEmpty(jsonDpjB)){//没有则去空托盘缓存区B和养生A区找
|
||||
if (ObjectUtil.isEmpty(jsonDpjB)) {//没有则去空托盘缓存区B和养生A区找
|
||||
|
||||
}
|
||||
|
||||
@@ -266,7 +264,7 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
|
||||
}
|
||||
|
||||
} else if (StrUtil.equals(jsonRegionEnd.getString("region_code"),RegionTypeEnum.YQQY.getCode())) {
|
||||
} else if (StrUtil.equals(jsonRegionEnd.getString("region_code"), RegionTypeEnum.YQQY.getCode())) {
|
||||
// 油漆线呼叫空托盘业务:查找叠盘架A区是否有满足条件的点位
|
||||
map.put("flag", "1");
|
||||
map.put("vehicle_qty", vehicle_qty);
|
||||
@@ -285,8 +283,8 @@ public class CallEmpVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
}
|
||||
JSONObject resuft = new JSONObject();
|
||||
resuft.put("point_code1",point_code1);
|
||||
resuft.put("vehicle_type",jsonOrder.getString("vehicle_type"));
|
||||
resuft.put("point_code1", point_code1);
|
||||
resuft.put("vehicle_type", jsonOrder.getString("vehicle_type"));
|
||||
return resuft;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,12 +6,9 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
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.system.util.CodeUtil;
|
||||
|
||||
|
||||
import org.nl.modules.wql.WQL;
|
||||
import org.nl.modules.wql.core.bean.WQLObject;
|
||||
import org.nl.modules.wql.util.SpringContextHolder;
|
||||
@@ -21,8 +18,6 @@ import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||
import org.nl.wms.sch.service.PointService;
|
||||
import org.nl.wms.sch.service.dto.PointDto;
|
||||
import org.nl.wms.sch.service.impl.PointServiceImpl;
|
||||
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -42,9 +37,9 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
||||
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)) {
|
||||
@@ -87,7 +82,7 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
public JSONObject findStartPoint(JSONObject data) {
|
||||
String task_status = TaskStatusEnum.SURE_START.getCode();
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
|
||||
JSONArray taskArry = taskTab.query("task_status='" + task_status + "' AND handle_class='" + THIS_CLASS + "' AND is_delete='0' ").getResultJSONArray(0);
|
||||
@@ -123,12 +118,13 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
taskObj.put("update_time", DateUtil.now());
|
||||
taskTab.update(taskObj);
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
|
||||
public JSONObject findNextPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -173,9 +169,9 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
if (StrUtil.isEmpty(point_code1)) {
|
||||
// 起点为空找到对应的起点
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("point_code2",point_code2);
|
||||
param.put("vehicle_type",vehicle_type);
|
||||
param.put("material_id",material_id);
|
||||
param.put("point_code2", point_code2);
|
||||
param.put("vehicle_type", vehicle_type);
|
||||
param.put("material_id", material_id);
|
||||
JSONObject ivtObj = this.findBeginPoint(param);
|
||||
|
||||
qty = ivtObj.getString("canuse_qty");
|
||||
@@ -252,7 +248,7 @@ public class CallMaterialTask extends AbstractAcsTask {
|
||||
* 1.养生A区 --> 油漆线
|
||||
*/
|
||||
JSONObject resuft = new JSONObject();
|
||||
if (StrUtil.equals(jsonEndRegion.getString("region_code"),RegionTypeEnum.YQQY.getCode())) {
|
||||
if (StrUtil.equals(jsonEndRegion.getString("region_code"), RegionTypeEnum.YQQY.getCode())) {
|
||||
JSONObject map = new JSONObject();
|
||||
map.put("flag", "3");
|
||||
map.put("vehicle_type", vehicle_type);
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
package org.nl.wms.sch.tasks;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||
|
||||
public class GjxFullMaterialTask extends AbstractAcsTask {
|
||||
@Override
|
||||
public void updateTaskStatus(JSONObject taskObj, String status) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String createTask(JSONObject form) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void forceFinish(String task_id) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pullBack(String task_id) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(String task_id) {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -4,21 +4,15 @@ import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
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.AbstractAcsTask;
|
||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* 普通点对点任务
|
||||
*/
|
||||
@@ -57,15 +51,16 @@ public class PointToPointTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
|
||||
public JSONObject findStartPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
|
||||
public JSONObject findNextPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public String createTask(JSONObject form) {
|
||||
|
||||
@@ -103,15 +103,16 @@ public class SendEmpVehicleTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
|
||||
public JSONObject findStartPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
|
||||
public JSONObject findNextPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String createTask(JSONObject form) {
|
||||
|
||||
@@ -115,12 +115,13 @@ public class SendMaterialTask extends AbstractAcsTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findStartPoint() {
|
||||
|
||||
public JSONObject findStartPoint(JSONObject param) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void findNextPoint() {
|
||||
public JSONObject findNextPoint(JSONObject data) {
|
||||
String task_status = TaskStatusEnum.SURE_START.getCode();
|
||||
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
|
||||
JSONArray taskArry = taskTab.query("task_status='" + task_status + "' AND handle_class='" + THIS_CLASS + "' AND is_delete='0' ").getResultJSONArray(0);
|
||||
@@ -157,7 +158,7 @@ public class SendMaterialTask extends AbstractAcsTask {
|
||||
taskObj.put("update_time", DateUtil.now());
|
||||
taskTab.update(taskObj);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user