opt: 任务完成取消逻辑
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
package org.nl;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
|
||||
import com.github.pagehelper.PageInterceptor;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.nl.config.SpringContextHolder;
|
||||
import org.springframework.boot.ApplicationArguments;
|
||||
import org.springframework.boot.ApplicationRunner;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration;
|
||||
import org.springframework.boot.web.servlet.ServletComponentScan;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.scheduling.annotation.EnableAsync;
|
||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@@ -31,6 +31,10 @@ public class AppRun implements ApplicationRunner {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(AppRun.class, args);
|
||||
}
|
||||
@Bean
|
||||
ConfigurationCustomizer mybatisConfigurationCustomizer() {
|
||||
return configuration -> configuration.addInterceptor(new PageInterceptor());
|
||||
}
|
||||
|
||||
@Bean
|
||||
public SpringContextHolder springContextHolder() {
|
||||
|
||||
@@ -180,7 +180,7 @@ public class MesToWmsServiceImpl implements MesToWmsService {
|
||||
}
|
||||
GroupPlate groupPlate = iMdPbGroupplateService.getOne(new LambdaQueryWrapper<GroupPlate>()
|
||||
.eq(GroupPlate::getStoragevehicle_code, outStructAttr.getStoragevehicle_code())
|
||||
.eq(GroupPlate::getStatus, "01"));
|
||||
.eq(GroupPlate::getStatus, "02"));
|
||||
if (ObjectUtil.isEmpty(groupPlate)) {
|
||||
throw new BadRequestException("托盘[" + outStructAttr.getStoragevehicle_code() + "]组盘信息不存在!");
|
||||
}
|
||||
@@ -300,7 +300,7 @@ public class MesToWmsServiceImpl implements MesToWmsService {
|
||||
}
|
||||
GroupPlate groupPlate = iMdPbGroupplateService.getOne(new LambdaQueryWrapper<GroupPlate>()
|
||||
.eq(GroupPlate::getStoragevehicle_code, outStructAttr.getStoragevehicle_code())
|
||||
.eq(GroupPlate::getStatus, "01"));
|
||||
.eq(GroupPlate::getStatus, "02"));
|
||||
if (ObjectUtil.isEmpty(groupPlate)) {
|
||||
throw new BadRequestException("托盘[" + outStructAttr.getStoragevehicle_code() + "]组盘信息不存在!");
|
||||
}
|
||||
|
||||
@@ -172,6 +172,9 @@ public class PmFormDataServiceImpl extends ServiceImpl<PmFormDataMapper, PmFormD
|
||||
List<PmFormDataDto> pmFormDataList = this.baseMapper.queryTree2(query);
|
||||
com.baomidou.mybatisplus.extension.plugins.pagination.Page<PmFormDataDto> dtoPage = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(page.getPages(), page.getPageSize(), page.getTotal());
|
||||
dtoPage.setRecords(pmFormDataList);
|
||||
dtoPage.setTotal(page.getTotal());
|
||||
dtoPage.setSize(page.getPageSize());
|
||||
dtoPage.setCurrent(pageQuery.getPage());
|
||||
return dtoPage;
|
||||
|
||||
}
|
||||
|
||||
@@ -28,7 +28,8 @@ public enum StatusEnum {
|
||||
* 出入库单据类型退货出库
|
||||
*/
|
||||
IOBILL_TYPE_IN(ForkMap.of("生产入库", "10", "inStorageTask", "调拨入库", "11", "inStorageTask", "退货入库", "12", "inStorageTask", "拣选回库",
|
||||
"13", "inStorageTask", "盘点入库", "14", "inStorageTask", "托盘入库", "30", "inStorageTask", "二楼CTU入库", "80", "inStorageTask","来料入库", "1013", "inStorageTask")),
|
||||
"13", "inStorageTask", "盘点入库", "14", "inStorageTask", "托盘入库", "30", "inStorageTask", "二楼CTU入库", "80", "inStorageTask","来料入库",
|
||||
"1013", "inStorageTask", "解包退回", "0012", "inStorageTask" , "解包入库", "0011", "inStorageTask")),
|
||||
IOBILL_TYPE_OUT(ForkMap.of("销售出库", "20", "outStorageTask", "生产出库", "21", "outStorageTask", "调拨出库", "22", "outStorageTask",
|
||||
"拣选出库", "23", "conveyorOutStorageTask", "盘点出库", "24", "outStorageTask", "出库拣选", "25", "toPickPlatformTask",
|
||||
"退货出库", "26", "outStorageTask", "托盘出库", "40", "outStorageTask", "二楼CTU出库", "81", "inStorageTask", "二楼出库AGV搬运",
|
||||
|
||||
@@ -6,7 +6,9 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.sch_manage.enums.TaskFinishedTypeEnum;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
|
||||
|
||||
/**
|
||||
* @Author: lyd
|
||||
@@ -51,4 +53,55 @@ public class TaskUtils {
|
||||
setUpdateByPC(taskObj);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 点位修改更新信息
|
||||
**/
|
||||
public static void setUpdateByAcs(SchBasePoint pointObj) {
|
||||
pointObj.setUpdate_id(GeneralDefinition.ACS_ID);
|
||||
pointObj.setUpdate_name(GeneralDefinition.ACS_NAME);
|
||||
pointObj.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
|
||||
/**
|
||||
* 点位修改更新信息
|
||||
**/
|
||||
public static void setUpdateByPC(SchBasePoint pointObj) {
|
||||
pointObj.setUpdate_id(SecurityUtils.getCurrentUserId());
|
||||
pointObj.setUpdate_name(SecurityUtils.getCurrentNickName());
|
||||
pointObj.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
|
||||
public static void setUpdateByType(SchBasePoint pointObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
if (taskFinishedType.equals(TaskFinishedTypeEnum.AUTO_ACS)) {
|
||||
setUpdateByAcs(pointObj);
|
||||
} else {
|
||||
setUpdateByPC(pointObj);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 组盘修改更新信息
|
||||
**/
|
||||
public static void setUpdateByAcs(GroupPlate groupPlate) {
|
||||
groupPlate.setUpdate_id(GeneralDefinition.ACS_ID);
|
||||
groupPlate.setUpdate_name(GeneralDefinition.ACS_NAME);
|
||||
groupPlate.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
|
||||
/**
|
||||
* 组盘修改更新信息
|
||||
**/
|
||||
public static void setUpdateByPC(GroupPlate groupPlate) {
|
||||
groupPlate.setUpdate_id(SecurityUtils.getCurrentUserId());
|
||||
groupPlate.setUpdate_name(SecurityUtils.getCurrentNickName());
|
||||
groupPlate.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
|
||||
public static void setUpdateByType(GroupPlate groupPlate, TaskFinishedTypeEnum taskFinishedType) {
|
||||
if (taskFinishedType.equals(TaskFinishedTypeEnum.AUTO_ACS)) {
|
||||
setUpdateByAcs(groupPlate);
|
||||
} else {
|
||||
setUpdateByPC(groupPlate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,8 +10,10 @@ import org.nl.common.utils.IdUtil;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.sch_manage.enums.TaskFinishedTypeEnum;
|
||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskconfigService;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTaskconfig;
|
||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||
@@ -21,9 +23,12 @@ import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
||||
import org.nl.wms.warehouse_manage.inAndOut.service.IInBillService;
|
||||
import org.nl.wms.warehouse_manage.inAndOut.service.dao.IOStorInvDis;
|
||||
import org.nl.wms.warehouse_manage.inAndOut.service.dao.mapper.IOStorInvDisMapper;
|
||||
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
|
||||
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* 解包退料AGV任务
|
||||
@@ -41,6 +46,10 @@ public class JbBackAgvTask extends AbstractTask {
|
||||
private IInBillService inBillService;
|
||||
@Resource
|
||||
private IOStorInvDisMapper ioStorInvDisMapper;
|
||||
@Resource
|
||||
private ISchBasePointService pointService;
|
||||
@Resource
|
||||
private IMdPbGroupplateService groupplateService;
|
||||
@Override
|
||||
public String create(JSONObject json) {
|
||||
// 获取任务配置的优先级
|
||||
@@ -147,6 +156,16 @@ public class JbBackAgvTask extends AbstractTask {
|
||||
TaskUtils.setUpdateByType(taskObj, taskFinishedType);
|
||||
taskService.updateById(taskObj);
|
||||
inBillService.taskFinish(taskObj);
|
||||
// 点位绑定
|
||||
SchBasePoint emptyPoint = pointService.getById(taskObj.getPoint_code2());
|
||||
SchBasePoint materialPoint = pointService.getById(taskObj.getPoint_code3());
|
||||
emptyPoint.setPoint_status("2");
|
||||
emptyPoint.setVehicle_code(taskObj.getVehicle_code2());
|
||||
TaskUtils.setUpdateByType(emptyPoint, taskFinishedType);
|
||||
materialPoint.setPoint_status("1");
|
||||
materialPoint.setVehicle_code("");
|
||||
TaskUtils.setUpdateByType(materialPoint, taskFinishedType);
|
||||
pointService.updateBatchById(Arrays.asList(emptyPoint, materialPoint));
|
||||
}
|
||||
|
||||
private void cancelTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
@@ -163,6 +182,13 @@ public class JbBackAgvTask extends AbstractTask {
|
||||
.set(IOStorInvDis::getWork_status, IOSEnum.INBILL_DIS_STATUS.code("未生成"))
|
||||
.eq(IOStorInvDis::getTask_id,taskObj.getTask_id())
|
||||
);
|
||||
// 组盘状态改为组盘
|
||||
JSONObject request = JSONObject.parseObject(taskObj.getRequest_param());
|
||||
String groupId = request.getString("group_id");
|
||||
GroupPlate group = groupplateService.getById(groupId);
|
||||
group.setStatus(IOSEnum.GROUP_PLATE_STATUS.code("组盘"));
|
||||
TaskUtils.setUpdateByType(group, taskFinishedType);
|
||||
groupplateService.getById(group);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -660,7 +660,7 @@ public class InBillServiceImpl extends ServiceImpl<IOStorInvMapper, IOStorInv> i
|
||||
}
|
||||
IOStorInv invObj = this.getById(map.get("iostorinv_id"));
|
||||
String task_id = "";
|
||||
if ("0011".equals(invObj.getBill_type())) {
|
||||
if (StatusEnum.IOBILL_TYPE_IN.code("解包入库").equals(invObj.getBill_type())) {
|
||||
String structCode = map.get("struct_code");
|
||||
if (ObjectUtil.isEmpty(structCode)) {
|
||||
throw new BadRequestException("仓位未分配!");
|
||||
@@ -744,12 +744,13 @@ public class InBillServiceImpl extends ServiceImpl<IOStorInvMapper, IOStorInv> i
|
||||
JSONObject requestTaskParam = new JSONObject();
|
||||
requestTaskParam.put("tasks", jsonObjects);
|
||||
task_id = jbDownAgvTask.create(requestTaskParam);
|
||||
} else if ("0012".equals(invObj.getBill_type())) {
|
||||
} else if (StatusEnum.IOBILL_TYPE_IN.code("解包退回").equals(invObj.getBill_type())) {
|
||||
// 解包退料入库
|
||||
String structCode = map.get("struct_code");
|
||||
if (ObjectUtil.isEmpty(structCode)) {
|
||||
throw new BadRequestException("仓位未分配!");
|
||||
}
|
||||
Structattr structattr = iStructattrService.findByCode(structCode);
|
||||
// 获取组盘信息
|
||||
GroupPlate groupPlate = mdPbGroupplateService.getOne(new LambdaQueryWrapper<GroupPlate>()
|
||||
.eq(GroupPlate::getStoragevehicle_code, ioStorInvDis.getStoragevehicle_code())
|
||||
@@ -761,7 +762,7 @@ public class InBillServiceImpl extends ServiceImpl<IOStorInvMapper, IOStorInv> i
|
||||
SchBasePoint fullPoint = pointService.getNotTaskByRegionAndType(parentPoint.getRegion_code(), "3");
|
||||
SchBasePoint emptyPoint = pointService.getNotTaskByRegionAndType(parentPoint.getRegion_code(), "4");
|
||||
JSONObject task = new JSONObject();
|
||||
task.put("task_type", "JbDownAgvTask");
|
||||
task.put("task_type", "JbBackAgvTask");
|
||||
task.put("group_id", groupPlate.getGroup_id());
|
||||
task.put("workorder_id", whereJson.get("workorder_id"));
|
||||
task.put("TaskCode", CodeUtil.getNewCode("TASK_CODE"));
|
||||
@@ -770,8 +771,8 @@ public class InBillServiceImpl extends ServiceImpl<IOStorInvMapper, IOStorInv> i
|
||||
task.put("point_code3", fullPoint.getPoint_code());
|
||||
task.put("point_code4", structCode);
|
||||
task.put("vehicle_code", fullPoint.getVehicle_code());
|
||||
task.put("vehicle_code2", emptyPoint.getStoragevehicle_code());
|
||||
jbBackAgvTask.create(task);
|
||||
task.put("vehicle_code2", structattr.getStoragevehicle_code());
|
||||
task_id = jbBackAgvTask.create(task);
|
||||
} else if (StatusEnum.IOBILL_TYPE_IN.code("来料入库").equals(invObj.getBill_type())) {
|
||||
// 获取组盘信息
|
||||
GroupPlate groupPlate = mdPbGroupplateService.getOne(new LambdaQueryWrapper<GroupPlate>()
|
||||
|
||||
@@ -2,7 +2,7 @@ export default {
|
||||
'lang': 'English',
|
||||
// 平台
|
||||
'platform': {
|
||||
'title': 'NOBLELIFT Platform',
|
||||
'title': 'LMS Platform',
|
||||
'tip1': 'The user name cannot be empty',
|
||||
'tip2': 'The password cannot be empty',
|
||||
'tip3': 'The verification code cannot be empty'
|
||||
|
||||
@@ -2,7 +2,7 @@ export default {
|
||||
'lang': 'in',
|
||||
// 平台
|
||||
'platform': {
|
||||
'title': 'NOBLELIFT Platform',
|
||||
'title': 'LMS Platform',
|
||||
'tip1': 'Nama pengguna tidak dapat kosong',
|
||||
'tip2': 'Kata sandi tidak dapat kosong',
|
||||
'tip3': 'Kode verifikasi tidak dapat kosong'
|
||||
|
||||
@@ -2,7 +2,7 @@ export default {
|
||||
'lang': 'zh',
|
||||
// 平台
|
||||
'platform': {
|
||||
'title': 'WMS仓储系统',
|
||||
'title': '株洲中钨LMS系统',
|
||||
'tip1': '用户名不能为空',
|
||||
'tip2': '密码不能为空',
|
||||
'tip3': '验证码不能为空'
|
||||
|
||||
@@ -83,12 +83,13 @@
|
||||
<el-select
|
||||
v-model="form.point_code"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择"
|
||||
class="filter-item"
|
||||
style="width: 200px;"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in pointlist"
|
||||
v-for="item in pointList"
|
||||
:key="item.point_code"
|
||||
:label="item.point_name"
|
||||
:value="item.point_code"
|
||||
@@ -242,7 +243,7 @@ export default {
|
||||
tableMater: []
|
||||
},
|
||||
storlist: [],
|
||||
pointlist: [],
|
||||
pointList: [],
|
||||
rules: {}
|
||||
}
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user