rev:骨才区域任务修改为二次分配

This commit is contained in:
2025-11-05 09:40:30 +08:00
parent 0e19688493
commit 1220fb1878
12 changed files with 123 additions and 128 deletions

View File

@@ -163,7 +163,11 @@ public class PdaTaskServiceImpl implements PdaTaskService {
//如果是MB物料的上料点 需要下发二次分配点位
String prefix = schBasePoint.getPoint_code().substring(0, schBasePoint.getPoint_code().length() - 2);
List<SchBaseTask> existTask = taskService.findUnFinishTasksByTaskConfig("THSLTask", prefix);
if (existTask.size() <= 1) {
int existMaxTaskSize = 1;
if (schBasePoint.getPoint_code().contains("HXT")){//活性炭上料位有三个位置
existMaxTaskSize = 2;
}
if (existTask.size() <= existMaxTaskSize) {
List<SchBasePoint> list = pointMapper.selectListByRegionAndPrefix(region_code, prefix, schBasePoint.getPoint_type());
if (list.size() == 0) {
throw new BadRequestException(region_code + "区域无空闲点位");
@@ -172,7 +176,7 @@ public class PdaTaskServiceImpl implements PdaTaskService {
if (schBasePoint.getPoint_code().contains(RegionTypeEnum.REGION_TYPE.code("MB制布区"))) {
param.put("point4", point.getPoint_code());//
param.put("device_code", pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, schBasePoint.getParent_point_code())).getPoint_code());//等待点
} else if (schBasePoint.getPoint_code().contains("GC") && schBasePoint.getRegion_code().equals("L1")) {
} else if (schBasePoint.getPoint_code().contains("GC") && (schBasePoint.getRegion_code().equals("L1")||schBasePoint.getRegion_code().equals("L2"))) {
param.put("point4", point.getPoint_code());//
param.put("device_code", pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, schBasePoint.getParent_point_code())).getPoint_code());//等待点
} else if (schBasePoint.getPoint_code().contains("HXT") && schBasePoint.getRegion_code().equals("L1")) {
@@ -238,6 +242,15 @@ public class PdaTaskServiceImpl implements PdaTaskService {
if (ObjectUtil.isEmpty(data)) {
throw new BadRequestException("物料信息不能为空");
}
for (int i = 0; i < data.size(); i++) {
JSONObject jo = data.getJSONObject(i);
String container_code = jo.getString("container_code");
List<GroupPlatedtl> groupPlatedtlList = groupplatedtlService.selectDtlByContainerCode(container_code);
if (ObjectUtil.isNotEmpty(groupPlatedtlList)) {
throw new BadRequestException("该卷号【" + container_code + "】已绑定过,请勿重复操作!");
}
}
SchBasePoint point = pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, point_code));
if (ObjectUtil.isEmpty(point)) {
throw new BadRequestException("点位" + point_code + "不存在!");
@@ -748,6 +761,7 @@ public class PdaTaskServiceImpl implements PdaTaskService {
point.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode());
point.setStoragevehicle_code("");
point.setMaterial_code("");
point.setIng_task_code("");
pointMapper.updateById(point);
JSONObject ret = new JSONObject();
ret.put("status", String.valueOf(HttpStatus.HTTP_OK));
@@ -760,7 +774,7 @@ public class PdaTaskServiceImpl implements PdaTaskService {
log.info("载具绑定,请求参数:" + whereJson);
String point_code = whereJson.getString("point_code");
SchBasePoint point = pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, point_code));
point.setPoint_status("2");
point.setPoint_status(PointStatusEnum.FULL_POINT.getCode());
pointMapper.updateById(point);
JSONObject ret = new JSONObject();
ret.put("status", String.valueOf(HttpStatus.HTTP_OK));
@@ -1017,14 +1031,14 @@ public class PdaTaskServiceImpl implements PdaTaskService {
// 校验起点
SchBasePoint pointStartDao = pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>()
.eq(SchBasePoint::getPoint_code, start_point_code));
if (!pointStartDao.getPoint_status().equals("2")) {
throw new BadRequestException(start_point_code + "点位不是满位状态");
if (!pointStartDao.getPoint_status().equals(PointStatusEnum.FULL_POINT.getCode())) {
throw new BadRequestException(start_point_code + "点位不是空载具状态,请先进行载具绑定再试!");
}
// 校验终点
SchBasePoint pointNextDao = pointMapper.selectOne(new LambdaQueryWrapper<SchBasePoint>()
.eq(SchBasePoint::getPoint_code, end_point_code));
if (!pointNextDao.getPoint_status().equals("1")) {
if (!pointNextDao.getPoint_status().equals(PointStatusEnum.EMPTY_POINT.getCode())) {
throw new BadRequestException(end_point_code + "点位不是空位状态");
}
}

View File

@@ -223,7 +223,7 @@
FROM `sch_base_point` p
WHERE p.region_code = #{region_code}
AND p.parent_point_code = #{point_code2}
AND (point_type = '1' OR point_type = '3')
AND (point_type = '1' OR point_type = '2' OR point_type = '3')
AND is_used = 1
AND point_status = "1"
ORDER BY in_order_seq asc

View File

@@ -226,7 +226,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
}
// 根据标识找到任务
SchBaseTask taskOne = this.getByCode(task_code);
if (Integer.parseInt(taskOne.getTask_status()) >= Integer.parseInt(TaskStatus.FINISHED.getCode())) {
if (taskOne.getTask_status().compareTo(TaskStatus.FINISHED.getCode())>=0) {
throw new BadRequestException(LangProcess.msg("task_statusWrong"));
}
// 根据配置去工厂类获得类对象

View File

@@ -27,7 +27,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @author ldjun
@@ -167,10 +170,35 @@ AbstractTask {
public void getAllFinishTask() {
List<SchBaseTask> list = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
.eq(SchBaseTask::getTask_status, TaskStatus.CREATED.getCode())
.eq(SchBaseTask::getIs_delete, false));
.eq(SchBaseTask::getIs_delete, false)
.orderByAsc(SchBaseTask::getCreate_time));
if (ObjectUtil.isEmpty(list)) {
return;
}
// // 分离NETXLTask和其他任务
// List<SchBaseTask> netxlTasks = list.stream()
// .filter(task -> "NETXLTask".equals(task.getConfig_code()))
// .collect(Collectors.toList());
//
// // 对NETXLTask按照point_code2去重每个point_code2只下发一个任务
// Set<String> processedPointCodes = new HashSet<>();
// List<SchBaseTask> tasksToSend = new ArrayList<>();
//
// // 先添加非NETXLTask任务
// List<SchBaseTask> otherTasks = list.stream()
// .filter(task -> !"NETXLTask".equals(task.getConfig_code()))
// .collect(Collectors.toList());
// tasksToSend.addAll(otherTasks);
//
// // 处理NETXLTask任务同一point_code2只下发一个
// for (SchBaseTask task : netxlTasks) {
// String pointCode2 = task.getPoint_code2();
// if (!processedPointCodes.contains(pointCode2)) {
// tasksToSend.add(task);
// processedPointCodes.add(pointCode2);
// }
// // 重复的任务保留在数据库中,不添加到下发列表
// }
// 下发
this.renotifyAcs(list);
}

View File

@@ -15,9 +15,9 @@ public enum PointStatusEnum {
// 空位/无货
EMPTY_POINT("1", "空位/无货"),
// 有料
FULL_POINT("3", "有料"),
FULL_POINT("3", "空载具"),
// 空载具/有货
EMPTY_VEHICLE("2", "空载具/有货");
EMPTY_VEHICLE("2", "有箱/有货");
private final String code;
private final String label;

View File

@@ -34,7 +34,7 @@ public enum TaskStatus {
*/
CANCELED("6", "已取消", "已取消"),
PICK_UP_COMPLETED("071", "取货完成,执行中","取货完成,执行中"),
PICK_UP_COMPLETED("051", "取货完成,执行中","取货完成,执行中"),
/**
* 未完成
*/

View File

@@ -138,6 +138,9 @@ public class PdaPointTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (!taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv还未取货完成不允许点完成!");
}
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -147,6 +150,9 @@ public class PdaPointTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv已经取货完成不允许点取消!");
}
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -156,10 +162,11 @@ public class PdaPointTask extends AbstractTask {
SchBasePoint endPointObj = pointService.getById(taskObj.getPoint_code2());
// 取货完成时起点清空
if (ObjectUtil.isNotEmpty(endPointObj)) {
endPointObj.setPoint_status(PointStatusEnum.EMPTY_VEHICLE.getCode());
endPointObj.setPoint_status(PointStatusEnum.FULL_POINT.getCode());
// endPointObj.setVehicle_type(GeneralDefinition.STEEL_TRAY);
// endPointObj.setVehicle_qty(taskObj.getVehicle_qty());
endPointObj.setUpdate_time(DateUtil.now());
endPointObj.setIng_task_code("");
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
pointService.updateById(endPointObj);
}
@@ -178,6 +185,7 @@ public class PdaPointTask extends AbstractTask {
// 起点解锁
if (ObjectUtil.isNotEmpty(startPointObj)) {
startPointObj.setIng_task_code("");
startPointObj.setStoragevehicle_code("");
PointUtils.setUpdateByType(startPointObj, taskFinishedType);
pointService.updateById(startPointObj);
}

View File

@@ -186,6 +186,9 @@ public class NETSLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (!taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv还未取货完成不允许点完成!");
}
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -195,6 +198,9 @@ public class NETSLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv已经取货完成不允许点取消!");
}
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -247,43 +253,8 @@ public class NETSLTask extends AbstractTask {
SchBasePoint startPointObj = pointService.getById(taskObj.getPoint_code1());
// 起点解锁
if (ObjectUtil.isNotEmpty(startPointObj)) {
String storagevehicle_code = startPointObj.getStoragevehicle_code();
// String storagevehicle_code = startPointObj.getStoragevehicle_code();
//取货完成会清空托盘号
//托盘号不为空,还未取货
if (ObjectUtil.isEmpty(storagevehicle_code)&&startPointObj.getPoint_type().equals("1")) {
String vehicle_code = taskObj.getVehicle_code();
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, vehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size()>0){
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
}else {
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, storagevehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size() > 0) {
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
}
startPointObj.setIng_task_code("");
PointUtils.setUpdateByType(startPointObj, taskFinishedType);
pointService.updateById(startPointObj);

View File

@@ -283,6 +283,9 @@ public class NETXLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (!taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv还未取货完成不允许点完成!");
}
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -292,6 +295,9 @@ public class NETXLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv已经取货完成不允许点取消!");
}
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -305,6 +311,7 @@ public class NETXLTask extends AbstractTask {
endPointObj.setStoragevehicle_code(taskObj.getVehicle_code());
endPointObj.setMaterial_code(taskObj.getMaterial_code());
endPointObj.setUpdate_time(DateUtil.now());
endPointObj.setIng_task_code("");
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
pointService.updateById(endPointObj);
}
@@ -325,23 +332,7 @@ public class NETXLTask extends AbstractTask {
String storagevehicle_code = startPointObj.getStoragevehicle_code();
//取货完成会清空托盘号
//托盘号不为空,还未取货
if (ObjectUtil.isEmpty(storagevehicle_code)) {
String vehicle_code = taskObj.getVehicle_code();
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, vehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size()>0){
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
}else {
if (ObjectUtil.isNotEmpty(storagevehicle_code)) {
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, storagevehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
@@ -356,11 +347,11 @@ public class NETXLTask extends AbstractTask {
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
startPointObj.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode());
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
startPointObj.setIng_task_code("");
startPointObj.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode());
PointUtils.setUpdateByType(startPointObj, taskFinishedType);
pointService.updateById(startPointObj);
}

View File

@@ -127,7 +127,10 @@ public class THSLTask extends AbstractTask {
} else if ("HXTFZW".equals(schBasePointDto.getRegion_code())) {
task.setVehicle_code2(PackageInfoIvtEnum.AGV_ACTION_TYPE.code("放货二次分配"));
task.setPoint_code1(schBasePointDto.getPoint_code());
}else {
}else if ("E1".equals(schBasePointDto.getRegion_code())) {
task.setVehicle_code2(PackageInfoIvtEnum.AGV_ACTION_TYPE.code("放货二次分配"));
task.setPoint_code1(schBasePointDto.getPoint_code());
} else {
task.setPoint_code1(schBasePointDto.getPoint_code());
task.setVehicle_code2(PackageInfoIvtEnum.AGV_ACTION_TYPE.code("普通任务"));
}
@@ -181,6 +184,9 @@ public class THSLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (!taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv还未取货完成不允许点完成!");
}
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -190,6 +196,9 @@ public class THSLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv已经取货完成不允许点取消!");
}
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -220,43 +229,26 @@ public class THSLTask extends AbstractTask {
SchBasePoint startPointObj = pointService.getById(taskObj.getPoint_code1());
// 起点解锁
if (ObjectUtil.isNotEmpty(startPointObj)) {
String storagevehicle_code = startPointObj.getStoragevehicle_code();
//取货完成会清空托盘号
//托盘号不为空,还未取货
if (ObjectUtil.isEmpty(storagevehicle_code)&&startPointObj.getPoint_type().equals("1")) {
String vehicle_code = taskObj.getVehicle_code();
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, vehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size()>0){
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
}else {
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, storagevehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size() > 0) {
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
}
// String storagevehicle_code = startPointObj.getStoragevehicle_code();
// //取货完成会清空托盘号
// //托盘号不为空,还未取货
// if (ObjectUtil.isEmpty(storagevehicle_code)&&startPointObj.getPoint_type().equals("1")) {
// String vehicle_code = taskObj.getVehicle_code();
// GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, vehicle_code));
// if (ObjectUtil.isNotEmpty(groupPlate)) {
// //删除组盘信息
// List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
// if (list.size()>0){
// Set<String> ids = new HashSet<String>();
// list.forEach(groupPlatedtl ->{
// String id = groupPlatedtl.getGroupdtl_id();
// ids.add(id);
// } );
// mdPbGroupplatedtlMapper.deleteBatchIds(ids);
// }
// mdPbGroupplateMapper.deleteById(groupPlate);
// }
// }
startPointObj.setIng_task_code("");
PointUtils.setUpdateByType(startPointObj, taskFinishedType);
pointService.updateById(startPointObj);

View File

@@ -22,7 +22,7 @@
AND g.material_code = #{material_code}
AND p.point_status = '2'
AND p.is_used = 1
AND (p.region_code = 'E2' OR p.region_code = 'H1' OR p.region_code = 'H2' OR p.region_code = 'HXTFZW')
AND (p.region_code = 'E2' OR p.region_code = 'H1' OR p.region_code = 'H2' OR p.region_code = 'HXTFZW'OR p.region_code = 'GC'OR p.region_code = 'E1')
</select>
<select id="findPointsByMaterialCode" resultType="org.nl.wms.sch.point.service.dto.SchBasePointDto">

View File

@@ -268,6 +268,9 @@ public class THXLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (!taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv还未取货完成不允许点完成!");
}
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -277,6 +280,9 @@ public class THXLTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
if (taskObj.getTask_status().equals(TaskStatus.PICK_UP_COMPLETED.getCode())){
throw new BadRequestException("agv已经取货完成不允许点取消!");
}
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
}
@@ -291,6 +297,7 @@ public class THXLTask extends AbstractTask {
endPointObj.setStoragevehicle_code(taskObj.getVehicle_code());
endPointObj.setMaterial_code(taskObj.getMaterial_code());
endPointObj.setUpdate_time(DateUtil.now());
endPointObj.setIng_task_code("");
PointUtils.setUpdateByType(endPointObj, taskFinishedType);
pointService.updateById(endPointObj);
}
@@ -311,23 +318,7 @@ public class THXLTask extends AbstractTask {
String storagevehicle_code = startPointObj.getStoragevehicle_code();
//取货完成会清空托盘号
//托盘号不为空,还未取货
if (ObjectUtil.isEmpty(storagevehicle_code)) {
String vehicle_code = taskObj.getVehicle_code();
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, vehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
List<GroupPlatedtl> list = mdPbGroupplatedtlMapper.selectList(new LambdaQueryWrapper<GroupPlatedtl>().eq(GroupPlatedtl::getGroup_id, groupPlate.getGroup_id()));
if (list.size()>0){
Set<String> ids = new HashSet<String>();
list.forEach(groupPlatedtl ->{
String id = groupPlatedtl.getGroupdtl_id();
ids.add(id);
} );
mdPbGroupplatedtlMapper.deleteBatchIds(ids);
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
}else {
if (ObjectUtil.isNotEmpty(storagevehicle_code)) {
GroupPlate groupPlate = mdPbGroupplateMapper.selectOne(new LambdaQueryWrapper<GroupPlate>().eq(GroupPlate::getStoragevehicle_code, storagevehicle_code));
if (ObjectUtil.isNotEmpty(groupPlate)) {
//删除组盘信息
@@ -342,11 +333,11 @@ public class THXLTask extends AbstractTask {
}
mdPbGroupplateMapper.deleteById(groupPlate);
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
startPointObj.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode());
}
startPointObj.setMaterial_code("");
startPointObj.setStoragevehicle_code("");
startPointObj.setIng_task_code("");
startPointObj.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode());
PointUtils.setUpdateByType(startPointObj, taskFinishedType);
pointService.updateById(startPointObj);
}