feat: 任务配置前端国际化

任务调度管理前端国际化
点位表字段与功能修改近似于兰州海亮项目
点位表前端国际化,任务配置功能整改
This commit is contained in:
2024-04-11 11:16:35 +08:00
parent 68ad6128ea
commit 1c267f4521
35 changed files with 1392 additions and 502 deletions

View File

@@ -141,8 +141,8 @@ public class SchBaseVehiclematerialgroupServiceImpl extends ServiceImpl<SchBaseV
@Override
public SchBaseVehiclematerialgroup getOneByVehicleCode(String vehicleCode, String value) {
List<String> list = new ArrayList<>();
list.add(GeneralDefinition.STEEL_TRAY);
list.add(GeneralDefinition.MATERIAL_CUP);
// list.add(GeneralDefinition.STEEL_TRAY);
// list.add(GeneralDefinition.MATERIAL_CUP);
LambdaQueryWrapper<SchBaseVehiclematerialgroup> lambda = new QueryWrapper<SchBaseVehiclematerialgroup>().lambda();
lambda.eq(SchBaseVehiclematerialgroup::getVehicle_code, vehicleCode)
.eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value)

View File

@@ -28,14 +28,12 @@ public class SchBasePointController {
@GetMapping
@Log("查询点位管理")
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page){
return new ResponseEntity<>(TableDataInfo.build(schBasePointService.queryAll(whereJson,page)),HttpStatus.OK);
}
@PostMapping
@Log("新增点位管理")
public ResponseEntity<Object> create(@Validated @RequestBody SchBasePoint entity){
schBasePointService.create(entity);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -46,14 +44,12 @@ public class SchBasePointController {
@PutMapping
@Log("修改点位管理")
public ResponseEntity<Object> update(@Validated @RequestBody SchBasePoint entity){
schBasePointService.update(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("删除点位管理")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
schBasePointService.deleteAll(ids);
@@ -62,7 +58,6 @@ public class SchBasePointController {
@Log("启动与禁用")
@PostMapping("/changeUsed")
public ResponseEntity<Object> changeUsedOn(@RequestBody JSONObject jsonObject) {
schBasePointService.changeUsed(jsonObject);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -70,14 +65,12 @@ public class SchBasePointController {
@PostMapping("/getPointList")
@Log("获取区域下拉框")
public ResponseEntity<Object> getPointList(@RequestBody(required = false) SchBasePoint region){
return new ResponseEntity<>(schBasePointService.getPointList(region),HttpStatus.OK);
}
@Log("锁定与解锁")
@PostMapping("/changeLock")
public ResponseEntity<Object> changeLock(@RequestBody JSONObject points) {
schBasePointService.changeLock(points);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);

View File

@@ -23,110 +23,117 @@ public class SchBasePoint implements Serializable {
private static final long serialVersionUID = 1L;
/** 点位编码 */
@TableId(value = "point_code", type = IdType.NONE)
private String point_code;
/** 点位名称 */
private String point_name;
/** 区域编码 */
private String region_code;
/** 区域名称 */
private String region_name;
/** 点位类型 */
private String point_type;
/** 点位状态 */
private String point_status;
/** 可以存放物料类型 */
private String can_material_type;
/** 可以存放载具类型 */
private String can_vehicle_type;
/** 载具最大数量 */
private Integer vehicle_max_qty;
/** 载具类型 */
private String vehicle_type;
/** 载具编码 */
private String vehicle_code;
/** 载具数量 */
private Integer vehicle_qty;
/** 块 */
private Integer block_num;
/** 排 */
private Integer row_num;
/** 列 */
private Integer col_num;
/** 层 */
private Integer layer_num;
/** 入库顺序 */
private Integer in_order_seq;
/** 出库顺序 */
private Integer out_order_seq;
/** 入空顺序 */
private Integer in_empty_seq;
/** 出空顺序 */
private Integer out_empty_seq;
/** 父点位 */
private String parent_point_code;
/** 外部编码 */
private String ext_point_code;
/** 进行中的任务编码 */
private String ing_task_code;
/** 是否工单 */
private Boolean is_has_workder;
/** 车间编码 */
private String workshop_code;
/** 是否自动 */
private Boolean is_auto;
/** 备注 */
private String remark;
/** 是否使用 */
private Boolean is_used;
/** 创建人 */
private String create_id;
private String create_name;
private String create_time;
private String update_id;
private String update_name;
private String update_time;
private String update_time;
private String source_id;
/** 物料编码 */
private String material_code;
/** 位置 */
private String point_location;
/** 锁定类型 */
private String lock_type;
@TableField(exist = false)
private List<String> can_vehicle_types;

View File

@@ -60,8 +60,8 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
? whereJson.get("point_status").toString() : null;
Boolean is_used = ObjectUtil.isNotEmpty(whereJson.get("is_used"))
? Boolean.valueOf(whereJson.get("is_used").toString()) : null;
Boolean lock_type = ObjectUtil.isNotEmpty(whereJson.get("lock_type"))
? Boolean.valueOf(whereJson.get("lock_type").toString()) : false;
String lock_type = ObjectUtil.isNotEmpty(whereJson.get("lock_type"))
? String.valueOf(whereJson.get("lock_type").toString()) : null;
Boolean parent_point = ObjectUtil.isNotEmpty(whereJson.get("parent_point"))
? Boolean.valueOf(whereJson.get("parent_point").toString()) : false;
LambdaQueryWrapper<SchBasePoint> lam = new LambdaQueryWrapper<>();
@@ -72,10 +72,7 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
.eq(ObjectUtil.isNotEmpty(point_type), SchBasePoint::getPoint_type, point_type)
.eq(ObjectUtil.isNotEmpty(point_status), SchBasePoint::getPoint_status, point_status)
.eq(ObjectUtil.isNotEmpty(is_used), SchBasePoint::getIs_used, is_used)
.and(!lock_type, slam -> slam.isNull(SchBasePoint::getIng_task_code).or()
.eq(SchBasePoint::getIng_task_code, ""))
.and(lock_type, slam -> slam.isNotNull(SchBasePoint::getIng_task_code)
.ne(SchBasePoint::getIng_task_code, ""))
.eq(ObjectUtil.isNotEmpty(lock_type), SchBasePoint::getLock_type, lock_type)
.orderByAsc(SchBasePoint::getRegion_code)
.orderByAsc(SchBasePoint::getPoint_code)
.orderByAsc(SchBasePoint::getPoint_type)

View File

@@ -9,6 +9,7 @@ import org.nl.common.domain.query.PageQuery;
import org.nl.common.logging.annotation.Log;
import org.nl.wms.sch.task.service.ISchBaseTaskService;
import org.nl.wms.sch.task.service.dao.SchBaseTask;
import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@@ -32,7 +33,7 @@ public class SchBaseTaskController {
@GetMapping
@Log("查询任务管理")
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page){
public ResponseEntity<Object> query(SchBaseTaskQuery whereJson, PageQuery page){
return new ResponseEntity<>(TableDataInfo.build(schBaseTaskService.queryAll(whereJson,page)),HttpStatus.OK);
}

View File

@@ -7,6 +7,7 @@ import org.nl.common.domain.query.PageQuery;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.wms.ext.acs.service.dto.to.BaseRequest;
import org.nl.wms.sch.task.service.dao.SchBaseTask;
import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery;
import org.nl.wms.sch.task_manage.task.core.TaskStatus;
import java.util.List;
@@ -27,7 +28,7 @@ public interface ISchBaseTaskService extends IService<SchBaseTask> {
* @param pageable 分页参数
* @return IPage<SchBaseTask>
*/
IPage<SchBaseTask> queryAll(Map whereJson, PageQuery pageable);
IPage<SchBaseTask> queryAll(SchBaseTaskQuery whereJson, PageQuery pageable);
/**

View File

@@ -26,112 +26,121 @@ public class SchBaseTask implements Serializable {
@TableId(value = "task_id", type = IdType.NONE)
private String task_id;
/** 任务编码 */
private String task_code;
/** 任务类型 */
private String task_type;
/** 任务状态 */
private String task_status;
/** 配置编码 */
private String config_code;
/** 点位1 */
private String point_code1;
/** 点位2 */
private String point_code2;
/** 点位3 */
private String point_code3;
/** 点位4 */
private String point_code4;
/** 组盘id */
private String group_id;
/** 载具类型 */
private String vehicle_type;
/** 载具数量 */
private Integer vehicle_qty;
/** 载具编码 */
private String vehicle_code;
/** 载具编码2 */
private String vehicle_code2;
/** - */
private String handle_status;
/** 车号 */
private String car_no;
/** 任务组id */
private Long task_group_id;
/** 任务组序号 */
private BigDecimal task_group_seq;
/** 完成类型 */
private String finished_type;
/** 创建模式 */
private String create_mode;
/** acs链路id */
private String acs_trace_id;
/** 请求参数 */
private String request_param;
/** 反馈参数 */
private String response_param;
/** 生成区域 */
private String workshop_code;
/** 外部数据 */
private String ext_group_data;
/** 备注 */
private String remark;
/** 是否删除 */
private Boolean is_delete;
/** 创建人 */
private String create_id;
/** 创建人 */
private String create_name;
/** 创建时间 */
private String create_time;
/** 更新id */
private String update_id;
/** 更新人 */
private String update_name;
/** 更新时间 */
private String update_time;
/** 处理类 */
private String handle_class;
private String acs_task_type;
private String priority;
private String product_area;
/** 是否下发 */
private String is_send;
/** 配置表 -> 优先级 */
@TableField(exist = false)
private String priority;
/** 配置表 -> acs任务类型 */
@TableField(exist = false)
private String acs_task_type;
/** 配置表 -> agv系统 */
@TableField(exist = false)
private String agv_system_type;
/** 额外参数 */
@TableField(exist = false)
private String dtl_type;

View File

@@ -42,6 +42,7 @@ public class SchBaseTaskconfig implements Serializable {
private String acs_task_type;
private String agv_system_type;
private String task_name;

View File

@@ -1,7 +1,11 @@
package org.nl.wms.sch.task.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.nl.wms.sch.task.service.dao.SchBaseTask;
import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery;
import java.util.List;
/**
* @author lyd
@@ -9,4 +13,5 @@ import org.nl.wms.sch.task.service.dao.SchBaseTask;
**/
public interface SchBaseTaskMapper extends BaseMapper<SchBaseTask> {
IPage<SchBaseTask> selectPageLeftJoin(IPage<SchBaseTask> pages, SchBaseTaskQuery whereJson, List<String> collect);
}

View File

@@ -2,4 +2,47 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper">
<select id="selectPageLeftJoin" resultType="org.nl.wms.sch.task.service.dao.SchBaseTask">
SELECT
t.*,
tc.config_name,
tc.task_name,
tc.priority,
tc.acs_task_type,
tc.agv_system_type
FROM
`sch_base_task` t
LEFT JOIN sch_base_taskconfig tc ON tc.config_code = t.config_code
<where>
<if test="whereJson.task_code != null">
AND t.task_code = #{whereJson.task_code}
</if>
<if test="whereJson.config_code != null">
AND t.config_code = #{whereJson.config_code}
</if>
<if test="whereJson.point_code != null">
AND (t.point_code1 LIKE '%${whereJson.point_code}%'
OR t.point_code2 LIKE '%${whereJson.point_code}%')
</if>
<if test="whereJson.unFinished != null">
AND t.task_status <![CDATA[<=]]> #{whereJson.unFinished}
</if>
<if test="whereJson.vehicle_code != null">
AND t.vehicle_code = #{whereJson.vehicle_code}
</if>
<if test="whereJson.end_time != null">
AND t.create_time <![CDATA[<=]]> #{whereJson.end_time}
</if>
<if test="whereJson.begin_time != null">
AND t.create_time <![CDATA[>=]]> #{whereJson.begin_time}
</if>
<if test="collect != null and collect != ''">
AND t.task_status IN
<foreach collection="collect" item="code" separator="," open="(" close=")">
#{code}
</foreach>
</if>
</where>
ORDER BY t.create_time DESC
</select>
</mapper>

View File

@@ -15,7 +15,7 @@
AND sc.config_name LIKE '%${config.blurry}%'
</if>
<if test="config.workshop_code != null">
AND sc.workshop_code = config.workshop_code
AND sc.workshop_code = #{config.workshop_code}
</if>
</select>
</mapper>

View File

@@ -1,12 +1,25 @@
package org.nl.wms.sch.task.service.dto;
import lombok.Data;
import org.nl.common.domain.query.BaseQuery;
import org.nl.wms.sch.task.service.dao.SchBaseTask;
import java.io.Serializable;
/**
* @author lyd
* @date 2023-05-15
**/
public class SchBaseTaskQuery extends BaseQuery<SchBaseTask> {
@Data
public class SchBaseTaskQuery implements Serializable {
private String task_code;
private String vehicle_code;
private String point_code;
private String begin_time;
private String end_time;
private String more_task_status;
private String unFinished;
private String config_code;
}

View File

@@ -20,6 +20,7 @@ import org.nl.wms.sch.task.service.ISchBaseTaskService;
import org.nl.wms.sch.task.service.dao.SchBaseTask;
import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper;
import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper;
import org.nl.wms.sch.task.service.dto.SchBaseTaskQuery;
import org.nl.wms.sch.task_manage.AbstractTask;
import org.nl.wms.sch.task_manage.task.TaskFactory;
import org.nl.wms.sch.task_manage.task.core.TaskStatus;
@@ -50,40 +51,51 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
private TaskFactory taskFactory;
@Override
public IPage<SchBaseTask> queryAll(Map whereJson, PageQuery page) {
String task_code = ObjectUtil.isNotEmpty(whereJson.get("task_code"))
? whereJson.get("task_code").toString() : null;
String vehicle_code = ObjectUtil.isNotEmpty(whereJson.get("vehicle_code"))
? whereJson.get("vehicle_code").toString() : null;
String point_code = ObjectUtil.isNotEmpty(whereJson.get("point_code"))
? whereJson.get("point_code").toString() : null;
String begin_time = ObjectUtil.isNotEmpty(whereJson.get("begin_time"))
? whereJson.get("begin_time").toString() : null;
String end_time = ObjectUtil.isNotEmpty(whereJson.get("end_time"))
? whereJson.get("end_time").toString() : null;
String more_task_status = ObjectUtil.isNotEmpty(whereJson.get("more_task_status"))
? whereJson.get("more_task_status").toString() : null;
List<String> collect = ObjectUtil.isNotEmpty(more_task_status)
? Arrays.stream(more_task_status.split(",")).collect(Collectors.toList()) : null;
String unFinished = null;
public IPage<SchBaseTask> queryAll(SchBaseTaskQuery whereJson, PageQuery page) {
List<String> collect = ObjectUtil.isNotEmpty(whereJson.getMore_task_status())
? Arrays.stream(whereJson.getMore_task_status().split(",")).collect(Collectors.toList()) : null;
if (collect != null) {
if (collect.contains(TaskStatus.UNFINISHED.getCode())) {
collect = null;
unFinished = TaskStatus.EXECUTING.getCode();
whereJson.setUnFinished(TaskStatus.EXECUTING.getCode());
}
}
LambdaQueryWrapper<SchBaseTask> lam = new LambdaQueryWrapper<>();
lam.eq(ObjectUtil.isNotEmpty(task_code), SchBaseTask::getTask_code, task_code)
.eq(ObjectUtil.isNotEmpty(vehicle_code), SchBaseTask::getVehicle_code, vehicle_code)
.eq(ObjectUtil.isNotEmpty(point_code), SchBaseTask::getPoint_code1, point_code)
.ge(ObjectUtil.isNotEmpty(begin_time), SchBaseTask::getCreate_time, begin_time)
.le(ObjectUtil.isNotEmpty(end_time), SchBaseTask::getCreate_time, end_time)
.in(ObjectUtil.isNotEmpty(collect), SchBaseTask::getTask_status, collect)
.le(ObjectUtil.isNotEmpty(unFinished), SchBaseTask::getTask_status, unFinished)
.orderByDesc(SchBaseTask::getUpdate_time);
IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize());
schBaseTaskMapper.selectPage(pages, lam);
pages = schBaseTaskMapper.selectPageLeftJoin(pages, whereJson, collect);
return pages;
// String task_code = ObjectUtil.isNotEmpty(whereJson.get("task_code"))
// ? whereJson.get("task_code").toString() : null;
// String vehicle_code = ObjectUtil.isNotEmpty(whereJson.get("vehicle_code"))
// ? whereJson.get("vehicle_code").toString() : null;
// String point_code = ObjectUtil.isNotEmpty(whereJson.get("point_code"))
// ? whereJson.get("point_code").toString() : null;
// String begin_time = ObjectUtil.isNotEmpty(whereJson.get("begin_time"))
// ? whereJson.get("begin_time").toString() : null;
// String end_time = ObjectUtil.isNotEmpty(whereJson.get("end_time"))
// ? whereJson.get("end_time").toString() : null;
// String more_task_status = ObjectUtil.isNotEmpty(whereJson.get("more_task_status"))
// ? whereJson.get("more_task_status").toString() : null;
// List<String> collect = ObjectUtil.isNotEmpty(more_task_status)
// ? Arrays.stream(more_task_status.split(",")).collect(Collectors.toList()) : null;
// String unFinished = null;
// if (collect != null) {
// if (collect.contains(TaskStatus.UNFINISHED.getCode())) {
// collect = null;
// unFinished = TaskStatus.EXECUTING.getCode();
// }
// }
// LambdaQueryWrapper<SchBaseTask> lam = new LambdaQueryWrapper<>();
// lam.eq(ObjectUtil.isNotEmpty(task_code), SchBaseTask::getTask_code, task_code)
// .eq(ObjectUtil.isNotEmpty(vehicle_code), SchBaseTask::getVehicle_code, vehicle_code)
// .eq(ObjectUtil.isNotEmpty(point_code), SchBaseTask::getPoint_code1, point_code)
// .ge(ObjectUtil.isNotEmpty(begin_time), SchBaseTask::getCreate_time, begin_time)
// .le(ObjectUtil.isNotEmpty(end_time), SchBaseTask::getCreate_time, end_time)
// .in(ObjectUtil.isNotEmpty(collect), SchBaseTask::getTask_status, collect)
// .le(ObjectUtil.isNotEmpty(unFinished), SchBaseTask::getTask_status, unFinished)
// .orderByDesc(SchBaseTask::getUpdate_time);
// IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize());
// schBaseTaskMapper.selectPage(pages, lam);
// return pages;
}

View File

@@ -144,6 +144,8 @@ public abstract class AbstractTask {
.eq(SchBaseTaskconfig::getConfig_code, config_code));
taskDto.setPriority(taskConfig.getPriority());
taskDto.setTask_type(taskConfig.getAcs_task_type());
taskDto.setProduct_area(taskConfig.getWorkshop_code());
taskDto.setAgv_system_type(taskConfig.getAgv_system_type());
taskDto.setRoute_plan_code(taskConfig.getRoute_plan_code());
return taskDto;
}
@@ -214,15 +216,6 @@ public abstract class AbstractTask {
}
/**
* 首先组盘在下发任务
*
* @param param 具体参数
*/
public String setGroupPlate(JSONObject param) {
return "";
}
/**
* 下发前的处理可以根据任务类进行给acs任务类更新数据
* @param task LMS任务
@@ -259,22 +252,31 @@ public abstract class AbstractTask {
// 申请任务
SchBaseTask task = new SchBaseTask();
// 请求点
String apply_point_code = param.getString("device_code");
String applyPointCode = param.getString("device_code");
String requestNo = param.getString("requestNo");
String config_code = param.getString("config_code");
String configCode = param.getString("config_code");
// 1、校验数据
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
.eq(SchBaseTaskconfig::getConfig_code, config_code));
Assert.notNull(taskConfig, "找不到配置文件,请确认[" + config_code + "]配置是否存在!");
.eq(SchBaseTaskconfig::getConfig_code, configCode));
Assert.notNull(taskConfig, "找不到配置文件,请确认[" + configCode + "]配置是否存在!");
// 最大任务数
Integer tcmn = taskConfig.getTask_create_max_num();
// 获取执行中的任务
List<SchBaseTask> unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(
taskConfig.getConfig_code(), apply_point_code, taskConfig.getTask_direction());
// 获取执行中的任务(由配置文件设置,一般是最大值)
List<SchBaseTask> unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(
taskConfig.getConfig_code(), taskConfig.getTask_direction());
Assert.isFalse(unFinishTasksByTaskConfig.size() >= tcmn,
apply_point_code + "该点位申请的任务未完成数已超过上限,无法申请任务");
applyPointCode + "该点位申请的任务未完成数已超过上限,无法申请任务");
// 校验同个点位,同种任务是否多次请求创建任务固定只能1个任务
List<SchBaseTask> applyPointTask = taskService.findUnFinishTasksByTaskConfig(
taskConfig.getConfig_code(), applyPointCode, taskConfig.getTask_direction());
if (applyPointTask.size() == 1) {
throw new BadRequestException("点位[ " + applyPointCode + "] 已经创建过任务");
}
String vehicleType = param.getString("vehicle_type");
String vehicleCode = TaskUtils.defaultVehicleCode(param.getString("vehicle_code"));
AbstractTask bean = SpringContextHolder.getBean(this.getClass());
@@ -283,31 +285,30 @@ public abstract class AbstractTask {
task.setAcs_trace_id(requestNo);
task.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr());
task.setTask_code(IdUtil.getSnowflake(1, 1).nextIdStr());
task.setConfig_code(config_code);
task.setConfig_code(configCode);
// todo
task.setCreate_mode(ObjectUtil.isNotEmpty(param.getString("create_mode"))
? param.getString("create_mode") : GeneralDefinition.ACS_CREATION);
task.setVehicle_code(vehicleCode);
task.setVehicle_qty(param.getInteger("vehicle_qty"));
task.setVehicle_type(vehicleType);
task.setTask_status(TaskStatus.APPLY.getCode());
task.setProduct_area(param.getString("product_area"));
// 设置起/终点
task.setPoint_code1(param.getString("point_code1"));
task.setPoint_code2(param.getString("point_code2"));
task.setPoint_code3(param.getString("point_code3"));
task.setPoint_code4(param.getString("point_code4"));
// 将所有参数存到表中,后续需要可以提取
task.setRequest_param(JSONObject.toJSONString(param));
// 设置创建人信息
TaskUtils.setCreateByAcsOrPda(task, param);
// 3、判断是否直接找点下发
// 立即创建吧组盘放到具体位置,免得重复创建
if (taskConfig.getIs_immediate_create()) {
bean.createCompletion(task);
} else {
// 不需要立即创建
// 设置组盘 - 需要的话由子类自行实现
// todo: 如果不需要这种场景,可以换成其他使用场景,目的是由策略角色去完善对此字段赋值
task.setGroup_id(bean.setGroupPlate(param));
// 创建一条单点任务。
taskService.save(task);
bean.create();

View File

@@ -8,19 +8,11 @@ package org.nl.wms.sch.task_manage;
public class GeneralDefinition {
/** 未知 */
public static final String UNKNOWN = "-";
// 统一编码定义
/** 窑自动任务开启 */
public static final String AUTO_KILN_CALL = "auto_kiln_call";
// 是否
/**是/正确/可用... */
public static final String YES = "1";
/** 否/错误/不可用... */
public static final String NO = "0";
// 载具类型
/** 料盅 */
public static final String MATERIAL_CUP = "LZ";
/** 钢托盘 */
public static final String STEEL_TRAY = "GTP";
// 账号定义
/** acs系统 */
public static final String ACS_ID = "2";
@@ -30,16 +22,6 @@ public class GeneralDefinition {
public static final String MES_ID = "3";
/** mes系统 */
public static final String MES_NAME = "MES系统";
// 点位类型
/** 设备位 */
public static final String DEVICE_POINT = "1";
/** 对接位 */
public static final String DOCKING_POINT = "2";
// 出入口
/**入口**/
public static final String ENTRANCE = "1";
/**出口**/
public static final String EXIT = "2";
// 任务生产方式
/**自动创建**/
public static final String AUTO_CREATION = "1";
@@ -54,16 +36,6 @@ public class GeneralDefinition {
public static final String MES_LMS = "3";
/**LMS->MES**/
public static final String LMS_MES = "4";
// 区域定义
/** 料盅睏料线区域 */
public static final String LZKLX = "LZKLX";
/** 干燥窑区域 */
public static final String GZY = "GZY";
// 特殊: 1-缓存输送线入口2-缓存输送线出口3-上输送线4-下输送线
/** 上输送线 */
public static final String UPPER_CONVEYOR_LINE = "3";
/** 下输送线 */
public static final String LOWER_CONVEYOR_LINE = "4";
// 参数名称
/** 是否连接 */
public static final String IS_CONNECT_ACS = "is_connect_acs";

View File

@@ -18,7 +18,6 @@ import org.nl.wms.sch.task_manage.task.core.TaskStatus;
import org.nl.wms.storage_manage.ios.enums.IOSEnum;
import org.nl.wms.util.TaskUtils;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@@ -48,13 +47,11 @@ public class CallEmpReelTask extends AbstractTask {
public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) {
acsTaskDto.setDtl_type(task.getDtl_type());
acsTaskDto.setTruss_type(PackageInfoIvtEnum.TRUSS_TYPE.code("点对点任务"));
acsTaskDto.setAgv_system_type(PackageInfoIvtEnum.AGV_SYSTEM_TYPE.code("1楼叉车系统"));
acsTaskDto.setParams(JSON.parseObject(task.getRequest_param(),
new TypeReference<Map<String, String>>() {}));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void create() throws BadRequestException {
}
@@ -115,11 +112,9 @@ public class CallEmpReelTask extends AbstractTask {
task.setTask_code(IdUtil.getSnowflake(1,1).nextIdStr());
task.setHandle_class(THIS_CLASS);
task.setIs_send(isSend ? "1" : "0");
task.setAcs_task_type(StrUtil.isEmpty(task.getAcs_task_type())
? PackageInfoIvtEnum.ACS_TASK_TYPE.code("agv任务") : (task.getAcs_task_type()));
task.setTask_status(StrUtil.isEmpty(task.getTask_status())
? TaskStatus.START_AND_POINT.getCode() : task.getTask_status());
task.setProduct_area(StrUtil.isEmpty(task.getProduct_area()) ? "A1" : task.getProduct_area());
task.setWorkshop_code(StrUtil.isEmpty(task.getWorkshop_code()) ? "A1" : task.getWorkshop_code());
TaskUtils.setCreateByDefault(task);
taskService.save(task);
//如果目标点位没有空位先创建不下发

View File

@@ -49,7 +49,13 @@ https://juejin.cn/post/6844903775631572999
</encoder>
</appender>
<appender name="luceneAppender" class="org.nl.config.lucene.LuceneAppender" />
<appender name="luceneAppender" class="org.nl.config.lucene.LuceneAppender" >
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="asyncLuceneAppender" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="luceneAppender" />
<!-- 设置队列大小 -->