出入库限制优化

This commit is contained in:
lsymicc
2026-06-11 17:30:59 +08:00
parent cf538247e9
commit 6f60580268
2 changed files with 17 additions and 14 deletions

View File

@@ -48,8 +48,8 @@ import java.util.Map;
import static com.ruoyi.common.Constant.*;
import static com.ruoyi.common.ConvType.CONV_STOCKOUT;
import static com.ruoyi.common.TaskStatusCode.*;
import static com.ruoyi.common.TaskType.STOCKIN;
import static com.ruoyi.common.TaskStatusCode.TASK_EP_CREATED;
/**
* 接口记录Service业务层处理
@@ -543,12 +543,12 @@ public class ApiServiceImpl implements IApiService {
}
// 3.是否已经有正在执行的入库任务
job = new MydoJob().builder().inOrOut(STOCKIN).build();
tasks = mydoJobService.selectMydoJobList(job);
if (tasks.size() > 0) {
log.info("【警告】wms下发出库任务失败,已经有正在执行的入库任务,请稍后重试");
return AjaxResult.error("【警告】wms下发出库任务失败,已经有正在执行的入库任务,请稍后重试");
}
// job = new MydoJob().builder().inOrOut(STOCKIN).build();
// tasks = mydoJobService.selectMydoJobList(job);
// if (tasks.size() > 0) {
// log.info("【警告】wms下发出库任务失败,已经有正在执行的入库任务,请稍后重试");
// return AjaxResult.error("【警告】wms下发出库任务失败,已经有正在执行的入库任务,请稍后重试");
// }
//生成出库作业
MydoJob mydoJob = new MydoJob();
@@ -562,7 +562,7 @@ public class ApiServiceImpl implements IApiService {
mydoJob.setTraySize(GoodsType.TYPE_DEFAULT);//默认
mydoJob.setExitId(CONV_STOCKOUT);
mydoJob.setInOrOut("2");
mydoJob.setStatus("1");
mydoJob.setStatus(TASK_STATUS_CREATED);
mydoJob.setPriority(Long.valueOf(10));
//todo 可能需要查本地库存信息获取条码?
// mydoJob.setTrayCode(receiveOutJob.getTrayCode());

View File

@@ -9,6 +9,7 @@ import cn.hutool.core.util.ObjUtil;
import com.ruoyi.api.service.IApiService;
import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
import com.ruoyi.common.TaskType;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.device.ssj.domain.DeviceSsj;
@@ -22,8 +23,7 @@ import lombok.extern.slf4j.Slf4j;
import java.util.*;
import static com.ruoyi.common.ConvType.CONV_ROAD_1;
import static com.ruoyi.common.ConvType.CONV_STOCKOUT;
import static com.ruoyi.common.ConvType.*;
import static com.ruoyi.common.TaskStatusCode.*;
import static com.ruoyi.common.TaskType.*;
@@ -176,11 +176,14 @@ public class RoadConvThread implements Runnable {
//检查巷道口输送机是否空闲
if(roadSsjDevice.getKx()==1 && roadSsjDevice.getTaskNo() == 0){
//检查是否有入口是【G1004】的入库任务
//检查是否有入口是【TD1001-出库到位输送机】的入库任务 - 此处查询作用:如果已经有入库任务,则只可生成出库作业,不可生成堆垛机队列
String exitId = CONV_STOCKOUT;
List<MydoJob> inList = mydoJobService.getInJobByEntranceId(exitId);
if(inList.size() == 0){
List<MydoJob> jobs = mydoJobService.selectMydoJobList(
new MydoJob().builder().inOrOut(STOCKIN).build()
);
if(jobs.size() == 0){
//检查是否有出库任务
MydoJob mydoJob = mydoJobService.selectMydoJobByExitId(exitId);
@@ -223,7 +226,7 @@ public class RoadConvThread implements Runnable {
}
}
}else{
log.info("【出库警告】当前出口"+ exitId +"存在入库任务,无法出库!");
log.info("【警告】当前出口"+ exitId +"有正在执行的任务,无法出库,请等待执行的任务结束");
}
}