代码更新

This commit is contained in:
ldj_willow
2022-10-19 14:35:33 +08:00
parent aae8d920c3
commit c003363b5c
7 changed files with 51 additions and 101 deletions

View File

@@ -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 创建任务需要的参数

View File

@@ -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;
}
}

View File

@@ -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);

View File

@@ -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) {
}
}

View File

@@ -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) {

View File

@@ -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) {

View File

@@ -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;
}