rev: 压机加急工单搬运、滚筒线送料到入窑口、回滚失效
This commit is contained in:
@@ -91,6 +91,13 @@ public interface ISchBaseTaskService extends IService<SchBaseTask> {
|
||||
*/
|
||||
List<SchBaseTask> findTasksByTaskStatus(String config_code, TaskStatus status);
|
||||
|
||||
/**
|
||||
* 获取多个任务配置请求中的任务
|
||||
* @param config_code 任务配置
|
||||
* @return /
|
||||
*/
|
||||
List<SchBaseTask> findApplyTasksByTaskStatus(String... config_code);
|
||||
|
||||
/**
|
||||
* 任务申请
|
||||
*
|
||||
|
||||
@@ -141,6 +141,18 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
return schBaseTasks;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SchBaseTask> findApplyTasksByTaskStatus(String... config_code) {
|
||||
List<String> configList = Arrays.stream(config_code).collect(Collectors.toList());
|
||||
LambdaQueryWrapper<SchBaseTask> lam = new LambdaQueryWrapper<>();
|
||||
lam.in(SchBaseTask::getConfig_code, configList)
|
||||
.eq(SchBaseTask::getTask_status, TaskStatus.APPLY.getCode())
|
||||
.ne(SchBaseTask::getIs_delete, true)
|
||||
.orderByDesc(SchBaseTask::getConfig_code)
|
||||
.orderByAsc(SchBaseTask::getCreate_time);
|
||||
return schBaseTaskMapper.selectList(lam);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void create(SchBaseTask entity) {
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
|
||||
@@ -58,7 +58,7 @@ public abstract class AbstractTask {
|
||||
*
|
||||
* @throws BadRequestException
|
||||
*/
|
||||
protected abstract void create() throws BadRequestException;
|
||||
public abstract void create() throws BadRequestException;
|
||||
|
||||
/**
|
||||
* 任务创建
|
||||
@@ -66,7 +66,7 @@ public abstract class AbstractTask {
|
||||
*
|
||||
* @param task
|
||||
*/
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -83,6 +83,10 @@ public class GeneralDefinition {
|
||||
* 对接位
|
||||
*/
|
||||
public static final String DOCKING_POINT = "2";
|
||||
/**
|
||||
* 检测位
|
||||
*/
|
||||
public static final String CHECK_POINT = "4";
|
||||
// 出入口
|
||||
/**
|
||||
* 入口
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
// @Autowired
|
||||
// private ISysParamService paramService;
|
||||
// @Override
|
||||
// protected void create() throws BadRequestException {
|
||||
// public void create() throws BadRequestException {
|
||||
//
|
||||
// }
|
||||
//
|
||||
|
||||
@@ -50,7 +50,7 @@ public class CTQKTask extends AbstractTask {
|
||||
private DTKMapper dtkMapper;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -86,7 +86,7 @@ public class CTQKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -49,7 +49,7 @@ public class DTSKTask extends AbstractTask {
|
||||
private DTKMapper dtkMapper;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -84,7 +84,7 @@ public class DTSKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -63,7 +63,7 @@ public class FJMKTask extends AbstractTask {
|
||||
private WmsToAcsService wmsToAcsService;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -136,7 +136,7 @@ public class FJMKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -62,7 +62,7 @@ public class FJQKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -114,7 +114,7 @@ public class FJQKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -66,7 +66,7 @@ public class FJQLTask extends AbstractTask {
|
||||
private IPdmBdProductionProcessTrackingService processTrackingService;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -110,7 +110,7 @@ public class FJQLTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -59,7 +59,7 @@ public class FJQZRKTask extends AbstractTask {
|
||||
private ISchBaseVehiclematerialgroupService vehiclematerialgroupService;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 最后一坨不需要呼叫空盘
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
@@ -96,7 +96,7 @@ public class FJQZRKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -60,7 +60,7 @@ public class FJRKTask extends AbstractTask {
|
||||
private FJMapper fjMapper;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 最后一坨不需要呼叫空盘
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
@@ -97,7 +97,7 @@ public class FJRKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -61,7 +61,7 @@ public class FJSKTask extends AbstractTask {
|
||||
private ISchBaseVehiclematerialgroupService vehiclematerialgroupService;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -98,7 +98,7 @@ public class FJSKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -57,7 +57,7 @@ public class FJSLTask extends AbstractTask {
|
||||
private ISysNoticeService noticeService;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -94,7 +94,7 @@ public class FJSLTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
package org.nl.wms.sch.task_manage.task.tasks.gtx;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.system.service.notice.ISysNoticeService;
|
||||
import org.nl.wms.sch.point.service.ISchBasePointService;
|
||||
import org.nl.wms.sch.point.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch.task.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch.task.service.ISchBaseTaskconfigService;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig;
|
||||
import org.nl.wms.sch.task_manage.AbstractTask;
|
||||
import org.nl.wms.sch.task_manage.GeneralDefinition;
|
||||
import org.nl.wms.sch.task_manage.enums.NoticeTypeEnum;
|
||||
import org.nl.wms.sch.task_manage.enums.TaskFinishedTypeEnum;
|
||||
import org.nl.wms.sch.task_manage.task.TaskType;
|
||||
import org.nl.wms.sch.task_manage.task.core.TaskStatus;
|
||||
import org.nl.wms.sch.task_manage.task.tasks.gtx.mapper.HCSSXMapper;
|
||||
import org.nl.wms.util.PointUtils;
|
||||
import org.nl.wms.util.TaskUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author: lyd
|
||||
* @Description: 双层输/压机加急送线满料->入窑口
|
||||
* @Date: 2024/1/11
|
||||
*/
|
||||
@Component(value = "HCSSXMLTask")
|
||||
@TaskType("HCSSXMLTask")
|
||||
@Slf4j
|
||||
public class HCSSXMLTask extends AbstractTask {
|
||||
|
||||
private static final String TASK_CONFIG_CODE = "HCSSXMLTask";
|
||||
private static final String YZ_TASK_CONFIG_CODE = "YZMLTask";
|
||||
@Autowired
|
||||
private ISchBasePointService pointService;
|
||||
@Autowired
|
||||
private ISchBaseTaskService taskService;
|
||||
@Autowired
|
||||
private ISchBaseTaskconfigService taskConfigService;
|
||||
@Autowired
|
||||
private HCSSXMapper hcssxMapper;
|
||||
@Autowired
|
||||
private ISysNoticeService noticeService;
|
||||
|
||||
@Override
|
||||
public void create() throws BadRequestException {
|
||||
// 需要找压制、双层输送线的半条任务。
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findApplyTasksByTaskStatus(TASK_CONFIG_CODE, YZ_TASK_CONFIG_CODE);
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
for (SchBaseTask task : tasks) {
|
||||
TaskUtils.setUpdateByAcs(task);
|
||||
List<String> nextRegionStr = Arrays.stream(taskConfig.getNext_region_str().split(","))
|
||||
.collect(Collectors.toList());
|
||||
// 找终点
|
||||
SchBasePoint point = findNextPoint(nextRegionStr);
|
||||
if (ObjectUtil.isEmpty(point)) {
|
||||
task.setRemark("入窑口未找到所需点位!");
|
||||
taskService.updateById(task);
|
||||
// 消息通知
|
||||
noticeService.createNotice(task.getTask_code() + " - " + task.getRemark(),
|
||||
task.getConfig_code() + task.getTask_code(),
|
||||
NoticeTypeEnum.WARN.getCode());
|
||||
continue;
|
||||
}
|
||||
// 设置终点并修改创建成功状态
|
||||
task.setPoint_code2(point.getPoint_code());
|
||||
task.setTask_status(TaskStatus.CREATED.getCode());
|
||||
task.setRemark("");
|
||||
TaskUtils.setUpdateByAcs(task);
|
||||
taskService.updateById(task);
|
||||
|
||||
point.setIng_task_code(task.getTask_code());
|
||||
PointUtils.setUpdateByAcs(point);
|
||||
pointService.updateById(point);
|
||||
}
|
||||
}
|
||||
|
||||
private SchBasePoint findNextPoint(List<String> nextRegionStr) {
|
||||
List<SchBasePoint> list = hcssxMapper.findPointForGZY(nextRegionStr);
|
||||
return list.size() > 0 ? list.get(0) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void updateStatus(String task_code, TaskStatus status) {
|
||||
// 校验任务
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (taskObj.getTask_status().equals(TaskStatus.FINISHED.getCode())) {
|
||||
throw new BadRequestException("该任务已完成!");
|
||||
}
|
||||
if (taskObj.getTask_status().equals(TaskStatus.CANCELED.getCode())) {
|
||||
throw new BadRequestException("该任务已取消!");
|
||||
}
|
||||
// 根据传来的类型去对任务进行操作
|
||||
if (status.equals(TaskStatus.EXECUTING)) {
|
||||
taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
|
||||
taskObj.setRemark("执行中");
|
||||
TaskUtils.setUpdateByAcs(taskObj);
|
||||
taskService.updateById(taskObj);
|
||||
}
|
||||
if (status.equals(TaskStatus.FINISHED)) {
|
||||
this.finishTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS);
|
||||
}
|
||||
if (status.equals(TaskStatus.CANCELED)) {
|
||||
this.cancelTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void forceFinish(String task_code) {
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (ObjectUtil.isEmpty(taskObj)) {
|
||||
throw new BadRequestException("该任务不存在");
|
||||
}
|
||||
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(String task_code) {
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (ObjectUtil.isEmpty(taskObj)) {
|
||||
throw new BadRequestException("该任务不存在");
|
||||
}
|
||||
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void finishTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
String endPoint = taskObj.getPoint_code2();
|
||||
SchBasePoint endPointObj = pointService.selectByIdLock(endPoint);
|
||||
if (ObjectUtil.isNotEmpty(endPointObj)) {
|
||||
// 终点解锁
|
||||
endPointObj.setIng_task_code("");
|
||||
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
|
||||
pointService.updateById(endPointObj);
|
||||
}
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setRemark(GeneralDefinition.TASK_FINISH);
|
||||
taskObj.setFinished_type(taskFinishedType.getCode());
|
||||
TaskUtils.setUpdateByType(taskObj, taskFinishedType);
|
||||
taskService.updateById(taskObj);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void cancelTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
// 获取参数
|
||||
String endPoint = taskObj.getPoint_code2();
|
||||
SchBasePoint endPointObj = pointService.getById(endPoint);
|
||||
// 终点解锁
|
||||
if (ObjectUtil.isNotEmpty(endPointObj)) {
|
||||
endPointObj.setIng_task_code("");
|
||||
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
|
||||
pointService.updateById(endPointObj);
|
||||
}
|
||||
taskObj.setRemark(GeneralDefinition.TASK_CANCEL);
|
||||
taskObj.setTask_status(TaskStatus.CANCELED.getCode());
|
||||
taskObj.setFinished_type(taskFinishedType.getCode());
|
||||
TaskUtils.setUpdateByType(taskObj, taskFinishedType);
|
||||
taskService.updateById(taskObj);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package org.nl.wms.sch.task_manage.task.tasks.gtx.mapper;
|
||||
|
||||
import org.nl.wms.sch.point.service.dao.SchBasePoint;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author: lyd
|
||||
* @Description:
|
||||
* @Date: 2024/1/11
|
||||
*/
|
||||
public interface HCSSXMapper {
|
||||
/**
|
||||
* 获取干燥窑终点
|
||||
* @param regionCode /
|
||||
* @return /
|
||||
*/
|
||||
List<SchBasePoint> findPointForGZY(List<String> regionCode);
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!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_manage.task.tasks.gtx.mapper.HCSSXMapper">
|
||||
|
||||
<select id="findPointForGZY" resultType="org.nl.wms.sch.point.service.dao.SchBasePoint">
|
||||
SELECT
|
||||
p.*
|
||||
FROM
|
||||
`sch_base_point` p
|
||||
LEFT JOIN sch_base_point p2 ON p2.point_code = p.parent_point_code
|
||||
WHERE p.point_type = '1'
|
||||
AND p2.point_status = '1'
|
||||
AND p2.is_used = true
|
||||
AND (p.ing_task_code = '' OR p.ing_task_code IS NULL)
|
||||
AND p.region_code IN
|
||||
<foreach collection="regionCode" item="code" separator="," open="(" close=")">
|
||||
#{code}
|
||||
</foreach>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -100,7 +100,7 @@ public class HNMLTask extends AbstractTask {
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() {
|
||||
public void create() {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
// */
|
||||
// @Override
|
||||
// @Transactional(rollbackFor = Exception.class)
|
||||
// protected void create() {
|
||||
// public void create() {
|
||||
// // 获取任务
|
||||
// List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// // 配置信息
|
||||
|
||||
@@ -64,7 +64,7 @@ public class CYZCTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -101,7 +101,7 @@ public class CYZCTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -55,7 +55,7 @@ public class GZYQLTask extends AbstractTask {
|
||||
private YZMapper yzMapper;
|
||||
|
||||
@Override
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
@@ -96,7 +96,7 @@ public class GZYQLTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
|
||||
@@ -50,7 +50,7 @@ public class YZQKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
@@ -80,7 +80,7 @@ public class YZQKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() {
|
||||
public void create() {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
// private YZMapper yzMapper;
|
||||
//
|
||||
// @Override
|
||||
// protected void create() throws BadRequestException {
|
||||
// public void create() throws BadRequestException {
|
||||
// // 获取任务
|
||||
// List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// // 配置信息
|
||||
|
||||
@@ -50,7 +50,7 @@ public class YZSKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
@@ -84,7 +84,7 @@ public class YZSKTask extends AbstractTask {
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() throws BadRequestException {
|
||||
public void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.config.SpringContextHolder;
|
||||
import org.nl.system.service.notice.ISysNoticeService;
|
||||
import org.nl.wms.database.brick.service.IMdBaseBrickInfoService;
|
||||
import org.nl.wms.ext.mes.service.WmsToMesService;
|
||||
@@ -72,49 +73,20 @@ public class YZSLTask extends AbstractTask {
|
||||
@Autowired
|
||||
private WmsToMesService wmsToMesService;
|
||||
|
||||
/**
|
||||
* 创建任务
|
||||
* @throws BadRequestException /
|
||||
* @see org.nl.wms.sch.task_manage.task.tasks.gtx.HCSSXMLTask
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void create() throws BadRequestException {
|
||||
// 获取任务
|
||||
List<SchBaseTask> tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY);
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
for (SchBaseTask task : tasks) {
|
||||
TaskUtils.setUpdateByAcs(task);
|
||||
List<String> nextRegionStr = Arrays.stream(taskConfig.getNext_region_str().split(","))
|
||||
.collect(Collectors.toList());
|
||||
// 找终点
|
||||
String requestParam = task.getRequest_param();
|
||||
JSONObject jsonObject = JSONObject.parseObject(requestParam);
|
||||
SchBasePoint point = findNextPoint(nextRegionStr, jsonObject);
|
||||
if (ObjectUtil.isEmpty(point)) {
|
||||
task.setRemark("压机[" + task.getPoint_code1() + "]未找到所需点位!");
|
||||
taskService.updateById(task);
|
||||
// 消息通知
|
||||
noticeService.createNotice(task.getRemark(), TASK_CONFIG_CODE + task.getTask_code(),
|
||||
NoticeTypeEnum.WARN.getCode());
|
||||
continue;
|
||||
}
|
||||
// 设置终点并修改创建成功状态
|
||||
task.setPoint_code2(point.getPoint_code());
|
||||
task.setTask_status(TaskStatus.CREATED.getCode());
|
||||
task.setRemark("");
|
||||
TaskUtils.setUpdateByAcs(task);
|
||||
taskService.updateById(task);
|
||||
|
||||
point.setIng_task_code(task.getTask_code());
|
||||
PointUtils.setUpdateByAcs(point);
|
||||
pointService.updateById(point);
|
||||
|
||||
//下发
|
||||
//this.renotifyAcs(task);
|
||||
}
|
||||
public void create() throws BadRequestException {
|
||||
// 非加急不会有半条任务,因此,此处无用;加急半条任务由滚筒线业务类处理
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
protected void createCompletion(SchBaseTask task) {
|
||||
public void createCompletion(SchBaseTask task) {
|
||||
// 配置信息
|
||||
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||
.eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE));
|
||||
@@ -133,6 +105,15 @@ public class YZSLTask extends AbstractTask {
|
||||
NoticeTypeEnum.WARN.getCode());
|
||||
throw new BadRequestException("压机[" + task.getPoint_code1() + "]未找到所需点位!");
|
||||
}
|
||||
// 特殊处理,创建半条任务
|
||||
if (ObjectUtil.isNotEmpty(point.getTask_warn()) && point.getTask_warn().equals(GeneralDefinition.NO)) {
|
||||
// 加急工单就创建半条任务
|
||||
task.setTask_status(TaskStatus.APPLY.getCode());
|
||||
task.setRemark("加急工单任务");
|
||||
TaskUtils.setUpdateByAcs(task);
|
||||
taskService.save(task);
|
||||
return;
|
||||
}
|
||||
// 设置终点并修改创建成功状态
|
||||
task.setPoint_code2(point.getPoint_code());
|
||||
task.setTask_status(TaskStatus.CREATED.getCode());
|
||||
@@ -148,9 +129,10 @@ public class YZSLTask extends AbstractTask {
|
||||
/**
|
||||
* 判断是否加急:是->入窑口,否->双层缓存线
|
||||
*
|
||||
* @param nextRegionStr
|
||||
* @param requestParam
|
||||
* @return
|
||||
* @param nextRegionStr /
|
||||
* @param requestParam /
|
||||
* @return /
|
||||
* @see org.nl.wms.sch.task_manage.task.tasks.gtx.HCSSXMLTask
|
||||
*/
|
||||
private SchBasePoint findNextPoint(List<String> nextRegionStr, JSONObject requestParam) {
|
||||
// 需要获取nextRegionStr
|
||||
@@ -169,16 +151,11 @@ public class YZSLTask extends AbstractTask {
|
||||
}
|
||||
// 判断是否加急,加急则去窑口,不加急就是去双层缓存输送线
|
||||
if (one.getIs_urgent()) {
|
||||
regionCode = nextRegionStr.get(1);
|
||||
// 判断窑区是否可用
|
||||
SchBasePoint basePoint = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>()
|
||||
.eq(SchBasePoint::getRegion_code, regionCode)
|
||||
.eq(SchBasePoint::getPoint_type, GeneralDefinition.ENTRANCE)
|
||||
.eq(SchBasePoint::getIs_used, true));
|
||||
// 如果窑口不能用,还是去双层输送线
|
||||
if (ObjectUtil.isEmpty(basePoint)) {
|
||||
regionCode = nextRegionStr.get(0);
|
||||
}
|
||||
// 直接创建半条任务供缓存线任务类扫描
|
||||
// todo: 2判断窑内数量是否大于177,如果窑口不能用,还是去双层输送线 后话
|
||||
SchBasePoint warnPoint = new SchBasePoint();
|
||||
warnPoint.setTask_warn(GeneralDefinition.NO);
|
||||
return warnPoint;
|
||||
}
|
||||
// 双层缓存货架的一上一下的区分 -> 上五下五区分
|
||||
LambdaQueryWrapper<SchBasePoint> lam = new QueryWrapper<SchBasePoint>().lambda();
|
||||
@@ -318,12 +295,6 @@ public class YZSLTask extends AbstractTask {
|
||||
String endPoint = taskObj.getPoint_code2();
|
||||
SchBasePoint endPointObj = pointService.getById(endPoint);
|
||||
if (ObjectUtil.isNotEmpty(endPointObj)) {
|
||||
// 终点解锁
|
||||
endPointObj.setIng_task_code("");
|
||||
// 终点清空
|
||||
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
|
||||
PointUtils.clearPointAndRetainNum(endPointObj);
|
||||
pointService.updateById(endPointObj);
|
||||
// 组盘表数据改成已绑定
|
||||
SchBaseVehiclematerialgroup vehiclematerialgroup = vehiclematerialgroupService.getById(taskObj.getGroup_id());
|
||||
TaskUtils.setGroupUpdateByType(vehiclematerialgroup, taskFinishedType);
|
||||
@@ -348,6 +319,13 @@ public class YZSLTask extends AbstractTask {
|
||||
bdWorkorder.setReal_qty(NumberUtil.add(realQty, materialQty));
|
||||
TaskUtils.setWorkOrderUpdateByType(bdWorkorder, taskFinishedType);
|
||||
workorderService.updateById(bdWorkorder);
|
||||
// 终点解锁
|
||||
endPointObj.setIng_task_code("");
|
||||
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
|
||||
if (!bdWorkorder.getIs_urgent()) {
|
||||
PointUtils.clearPointAndRetainNum(endPointObj);
|
||||
}
|
||||
pointService.updateById(endPointObj);
|
||||
}
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
|
||||
Reference in New Issue
Block a user