代码更新

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

View File

@@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.dao.PdmBdWorkorder;
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 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的任务集合
@@ -108,7 +69,6 @@ public abstract class AbstractTask {
//1、获取任务
//2、根据任务配置补全任务
//3、下发
List<AcsTaskDto> list = new ArrayList<>();
for (SchBaseTask task : taskList) {
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);
/**
* 寻找合适的点位
*
* @return
*/
protected abstract List<Object> findPoints();
/**
* 设置起点或者终点
@@ -230,19 +183,14 @@ public abstract class AbstractTask {
if (ObjectUtil.isEmpty(workorder)) {
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("vehicle_type", workorder.getVehicle_type()); // 载具类型
// 设置任务数据
task.setVehicle_type(workorder.getVehicle_type());
}
// 2、创建申请任务
task.setAcs_trace_id("");
task.setAcs_trace_id(param.getString("acs_trace_id"));
task.setConfig_code(config_code);
task.setCreate_id(SecurityUtils.getCurrentUserId());
task.setCreate_mode("");
task.setCreate_mode(param.getString("create_mode"));
task.setVehicle_code(param.getString("vehicle_code"));
task.setTask_status(TaskStatus.APPLY.getCode());
// 设置起/终点

View File

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

View File

@@ -40,11 +40,11 @@ public class HNMLTask extends AbstractTask {
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
private ISchBasePointService pointService;
@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();
SchBaseTaskconfig configObj = taskConfigService.getById(TASK_CONFIG_CODE);
SchBasePoint endPointObj = pointService.getById(endPoint);
// 根据传来的类型去对任务进行操作
if (status.equals(TaskStatus.EXECUTING)) { // 执行中
taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
@@ -82,23 +83,23 @@ public class HNMLTask extends AbstractTask {
// 要把数据存到组盘表
SchBaseVehiclematerialgroup groupEntity = new SchBaseVehiclematerialgroup();
groupEntity.setMaterial_id(ObjectUtil.isNotEmpty(extGroupData) && ObjectUtil.isNotEmpty(extGroupData.getString("material_id"))
? extGroupData.getString("material_id")
: "");
? extGroupData.getString("material_id")
: "");
groupEntity.setStanding_time(ObjectUtil.isNotEmpty(extGroupData) && ObjectUtil.isNotEmpty(extGroupData.getString("standing_time"))
? extGroupData.getInteger("standing_time")
: 0);
? extGroupData.getInteger("standing_time")
: 0);
groupEntity.setIs_full(ObjectUtil.isNotEmpty(extGroupData)
? extGroupData.getBoolean("is_full")
: true);
? extGroupData.getBoolean("is_full")
: true);
groupEntity.setMaterial_qty(ObjectUtil.isNotEmpty(extGroupData)
? extGroupData.getInteger("material_qty")
: 0);
? extGroupData.getInteger("material_qty")
: 0);
groupEntity.setMaterial_weight(ObjectUtil.isNotEmpty(extGroupData)
? extGroupData.getBigDecimal("material_weight")
: BigDecimal.valueOf(0));
? extGroupData.getBigDecimal("material_weight")
: BigDecimal.valueOf(0));
groupEntity.setWorkorder_code(ObjectUtil.isNotEmpty(extGroupData) && ObjectUtil.isNotEmpty(extGroupData.getString("workorder_code"))
? extGroupData.getString("workorder_code")
: "");
? extGroupData.getString("workorder_code")
: "");
groupEntity.setVehicle_code(vehicle_code);
groupEntity.setVehicle_type(taskObj.getVehicle_type());
groupEntity.setPoint_code(endPoint);
@@ -183,16 +184,6 @@ public class HNMLTask extends AbstractTask {
return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null;
}
@Override
protected void issue() {
}
@Override
protected List<Object> findPoints() {
return null;
}
@Override
public void forceFinish(String task_code) {
this.updateStatus(task_code, TaskStatus.FINISHED);

View File

@@ -79,6 +79,7 @@ public class HNQKTask extends AbstractTask {
/**
* 找起点
*
* @param startRegionStr
* @return
*/
@@ -97,11 +98,6 @@ public class HNQKTask extends AbstractTask {
return ObjectUtil.isNotEmpty(schBasePoints) ? schBasePoints.get(0) : null;
}
@Override
protected void issue() {
}
@Override
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
public void forceFinish(String task_code) {
this.updateStatus(task_code, TaskStatus.FINISHED);

View File

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