代码更新

This commit is contained in:
ludj
2023-05-25 19:16:40 +08:00
parent f3b789aa66
commit de1256c72b
6 changed files with 25 additions and 103 deletions

Binary file not shown.

View File

@@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.nl.common.exception.BadRequestException; import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.pdm.service.IPdmBdWorkorderService; import org.nl.wms.pdm.service.IPdmBdWorkorderService;
import org.nl.wms.pdm.service.dao.PdmBdWorkorder; import org.nl.wms.pdm.service.dao.PdmBdWorkorder;
import org.nl.wms.sch.point.service.ISchBasePointService; import org.nl.wms.sch.point.service.ISchBasePointService;
@@ -46,44 +45,6 @@ public abstract class AbstractTask {
*/ */
protected abstract void create() throws BadRequestException; protected abstract void create() throws BadRequestException;
/**
* 下发
*/
protected abstract void issue();
/**
* 添加任务进行下发
*
* @return
*/
public List addTask() {
/* //任务基础表【sch_base_task】
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
JSONArray tasks = taskTab.query("handle_class = '" + this.getClass().getName() + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0'").getResultJSONArray(0);
List<AcsTaskDto> arr = new ArrayList<>();
for (int i = 0, j = tasks.size(); i < j; i++) {
JSONObject json = tasks.getJSONObject(i);
AcsTaskDto taskDto = new AcsTaskDto();
taskDto.setExt_task_uuid(json.getString("task_id"));
taskDto.setTask_code(json.getString("task_code"));
taskDto.setTask_type("1");
//如果起点是码垛机械手的下料位置,终点是货架type要给2
JSONObject stratrObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("start_point_code") + "'").uniqueResult(0);
JSONObject nextObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("next_point_code") + "'").uniqueResult(0);
if (StrUtil.equals(stratrObj.getString("area_type"), AreaEnum.YZQY.getCode()) &&
StrUtil.equals(nextObj.getString("area_type"), AreaEnum.RYHCHJ.getCode())
) {
taskDto.setTask_type("2");
}
taskDto.setRoute_plan_code("normal");
taskDto.setStart_device_code(json.getString("start_point_code"));
taskDto.setNext_device_code(json.getString("next_point_code"));
taskDto.setVehicle_code(json.getString("vehicle_code"));
arr.add(taskDto);
}
return arr;*/
return null;
}
/** /**
* @return WCS的任务集合 * @return WCS的任务集合
@@ -108,7 +69,6 @@ public abstract class AbstractTask {
//1、获取任务 //1、获取任务
//2、根据任务配置补全任务 //2、根据任务配置补全任务
//3、下发 //3、下发
List<AcsTaskDto> list = new ArrayList<>(); List<AcsTaskDto> list = new ArrayList<>();
for (SchBaseTask task : taskList) { for (SchBaseTask task : taskList) {
AcsTaskDto taskDto = new AcsTaskDto(); AcsTaskDto taskDto = new AcsTaskDto();
@@ -148,19 +108,12 @@ public abstract class AbstractTask {
/** /**
* 自动生成任务 * 自动生成任务
*/ */
public void autoCreate() { protected void autoCreate() {
} }
protected abstract void updateStatus(String task_code, TaskStatus status); protected abstract void updateStatus(String task_code, TaskStatus status);
/**
* 寻找合适的点位
*
* @return
*/
protected abstract List<Object> findPoints();
/** /**
* 设置起点或者终点 * 设置起点或者终点
@@ -230,19 +183,14 @@ public abstract class AbstractTask {
if (ObjectUtil.isEmpty(workorder)) { if (ObjectUtil.isEmpty(workorder)) {
throw new BadRequestException("当前设备工单未生产!"); throw new BadRequestException("当前设备工单未生产!");
} }
// 将组盘所需的数据装成jsonObject跟着任务走
param.put("material_id", workorder.getMaterial_id()); // 物料标识
param.put("standing_time", workorder.getStanding_time()); // 静置时间
param.put("workorder_code", workorder.getWorkorder_code()); // 静置时间 param.put("workorder_code", workorder.getWorkorder_code()); // 静置时间
param.put("vehicle_type", workorder.getVehicle_type()); // 载具类型
// 设置任务数据 // 设置任务数据
task.setVehicle_type(workorder.getVehicle_type()); task.setVehicle_type(workorder.getVehicle_type());
} }
// 2、创建申请任务 // 2、创建申请任务
task.setAcs_trace_id(""); task.setAcs_trace_id(param.getString("acs_trace_id"));
task.setConfig_code(config_code); task.setConfig_code(config_code);
task.setCreate_id(SecurityUtils.getCurrentUserId()); task.setCreate_mode(param.getString("create_mode"));
task.setCreate_mode("");
task.setVehicle_code(param.getString("vehicle_code")); task.setVehicle_code(param.getString("vehicle_code"));
task.setTask_status(TaskStatus.APPLY.getCode()); task.setTask_status(TaskStatus.APPLY.getCode());
// 设置起/终点 // 设置起/终点

View File

@@ -25,7 +25,6 @@ public class AutoCreateTask {
if (ObjectUtil.isNull(subTypes) || subTypes.isEmpty()) { if (ObjectUtil.isNull(subTypes) || subTypes.isEmpty()) {
Reflections reflections = new Reflections("org.nl"); Reflections reflections = new Reflections("org.nl");
//System.out.println(AbstractAcsTask.class.isAssignableFrom(DumpInvTask.class));
subTypes = reflections.getSubTypesOf(AbstractTask.class); subTypes = reflections.getSubTypesOf(AbstractTask.class);
} }
this.doExecute(); this.doExecute();
@@ -45,7 +44,7 @@ public class AutoCreateTask {
// } // }
//Method m = obj.getClass().getDeclaredMethod("schedule"); //Method m = obj.getClass().getDeclaredMethod("schedule");
Method m = obj.getClass().getMethod("schedule"); Method m = obj.getClass().getMethod("schedule");
List<AcsTaskDto> tasks = (List<AcsTaskDto>) m.invoke(obj); m.invoke(obj);
} catch (InvocationTargetException e) { } catch (InvocationTargetException e) {
e.printStackTrace(); e.printStackTrace();
log.info("定时器执行失败:{}", e.getTargetException().getMessage()); log.info("定时器执行失败:{}", e.getTargetException().getMessage());

View File

@@ -40,11 +40,11 @@ public class HNMLTask extends AbstractTask {
private static String TASK_CONFIG_CODE = "HNMLTask"; private static String TASK_CONFIG_CODE = "HNMLTask";
// 空位 // 空位
private final String EMPTY_POINT = "1"; private static final String EMPTY_POINT = "1";
// 有料 // 有料
private final String FULL_POINT = "2"; private static final String FULL_POINT = "2";
// 空载具 // 空载具
private final String EMPTY_VEHICLE = "3"; private static final String EMPTY_VEHICLE = "3";
@Autowired @Autowired
private ISchBasePointService pointService; private ISchBasePointService pointService;
@Autowired @Autowired
@@ -73,6 +73,7 @@ public class HNMLTask extends AbstractTask {
String vehicle_code = ObjectUtil.isNotEmpty(taskObj.getVehicle_code()) ? taskObj.getVehicle_code() : IdUtil.getSnowflake(1, 1).nextIdStr(); String vehicle_code = ObjectUtil.isNotEmpty(taskObj.getVehicle_code()) ? taskObj.getVehicle_code() : IdUtil.getSnowflake(1, 1).nextIdStr();
SchBaseTaskconfig configObj = taskConfigService.getById(TASK_CONFIG_CODE); SchBaseTaskconfig configObj = taskConfigService.getById(TASK_CONFIG_CODE);
SchBasePoint endPointObj = pointService.getById(endPoint); SchBasePoint endPointObj = pointService.getById(endPoint);
// 根据传来的类型去对任务进行操作 // 根据传来的类型去对任务进行操作
if (status.equals(TaskStatus.EXECUTING)) { // 执行中 if (status.equals(TaskStatus.EXECUTING)) { // 执行中
taskObj.setTask_status(TaskStatus.EXECUTING.getCode()); taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
@@ -183,16 +184,6 @@ public class HNMLTask extends AbstractTask {
return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null; return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null;
} }
@Override
protected void issue() {
}
@Override
protected List<Object> findPoints() {
return null;
}
@Override @Override
public void forceFinish(String task_code) { public void forceFinish(String task_code) {
this.updateStatus(task_code, TaskStatus.FINISHED); this.updateStatus(task_code, TaskStatus.FINISHED);

View File

@@ -79,6 +79,7 @@ public class HNQKTask extends AbstractTask {
/** /**
* 找起点 * 找起点
*
* @param startRegionStr * @param startRegionStr
* @return * @return
*/ */
@@ -97,11 +98,6 @@ public class HNQKTask extends AbstractTask {
return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null; return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null;
} }
@Override
protected void issue() {
}
@Override @Override
protected void updateStatus(String task_code, TaskStatus status) { protected void updateStatus(String task_code, TaskStatus status) {
// 校验任务 // 校验任务
@@ -121,11 +117,6 @@ public class HNQKTask extends AbstractTask {
} }
@Override
protected List<Object> findPoints() {
return null;
}
@Override @Override
public void forceFinish(String task_code) { public void forceFinish(String task_code) {
this.updateStatus(task_code, TaskStatus.FINISHED); this.updateStatus(task_code, TaskStatus.FINISHED);

View File

@@ -50,6 +50,7 @@ public class YZQLTask extends AbstractTask {
private ISchBaseTaskconfigService taskConfigService; private ISchBaseTaskconfigService taskConfigService;
@Autowired @Autowired
private ISchBaseVehiclematerialgroupService vehiclematerialgroupService; private ISchBaseVehiclematerialgroupService vehiclematerialgroupService;
@Override @Override
protected void create() throws BadRequestException { protected void create() throws BadRequestException {
// 获取任务 // 获取任务
@@ -84,10 +85,11 @@ public class YZQLTask extends AbstractTask {
/** /**
* 找起点业务:根据起点区域寻找所需点位 * 找起点业务:根据起点区域寻找所需点位
*
* @param startRegionStr : 区域列表 * @param startRegionStr : 区域列表
* @param extGroupData : 外部参数,包含条件所需的信息 * @param extGroupData : 外部参数,包含条件所需的信息
* @description : JSONObject获取不到就是null
* @return * @return
* @description : JSONObject获取不到就是null
*/ */
private SchBasePoint findStartPoint(List<String> startRegionStr, JSONObject extGroupData) { private SchBasePoint findStartPoint(List<String> startRegionStr, JSONObject extGroupData) {
String materialId = extGroupData.getString("material_id"); String materialId = extGroupData.getString("material_id");
@@ -114,10 +116,6 @@ public class YZQLTask extends AbstractTask {
return one; return one;
} }
@Override
protected void issue() {
}
@Override @Override
protected void updateStatus(String task_code, TaskStatus status) { protected void updateStatus(String task_code, TaskStatus status) {
@@ -168,11 +166,6 @@ public class YZQLTask extends AbstractTask {
taskService.updateById(taskObj); taskService.updateById(taskObj);
} }
@Override
protected List<Object> findPoints() {
return null;
}
@Override @Override
public void forceFinish(String task_code) { public void forceFinish(String task_code) {
this.updateStatus(task_code, TaskStatus.FINISHED); this.updateStatus(task_code, TaskStatus.FINISHED);