调整wms接口增加的字段

This commit is contained in:
lsymicc
2026-04-03 08:57:32 +08:00
parent b0372a0fea
commit 3be86abb94
15 changed files with 257 additions and 185 deletions

View File

@@ -7,6 +7,7 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.util.ObjUtil;
import com.ruoyi.api.domain.wcs2wms.JobParam;
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionReceive;
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionRequest;
import com.ruoyi.api.service.IApiService;
import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
@@ -155,19 +156,26 @@ public class DdjThread implements Runnable {
TaskExceptionRequest taskExceptionRequest = new TaskExceptionRequest();
taskExceptionRequest.setTaskClass(mydoJob.getInOrOut());
taskExceptionRequest.setType(TASK_EXCEPTION_STOCKIN_OCCUPIED);
taskExceptionRequest.setTaskCode(String.valueOf(mydoJob));
taskExceptionRequest.setTaskCode(mydoJob.getWmsTaskNo());
taskExceptionRequest.setTaskTypeCode("");//todo 不知道填什么内容
taskExceptionRequest.setReqCode(UUID.randomUUID().toString());
taskExceptionRequest.setReqCode(mydoJob.getJobId() + mydoJob.getTaskNo());
taskExceptionRequest.setAdverseCauses("当前位置已有货物,盘点后重新分配货位");
AjaxResult ajaxResult = apiService.reAssign(taskExceptionRequest);
if (ajaxResult.isSuccess()){
//获取返回的新货位
MydoJob mydoJobReAssign = BeanUtil.toBean(ajaxResult.get("data"), MydoJob.class);
//获取返回的任务号和新分配的货位
TaskExceptionReceive mydoJobReAssign = BeanUtil.toBean(ajaxResult.get("result"), TaskExceptionReceive.class);
MydoJob wmsJob = new MydoJob();
wmsJob.setInOrOut(mydoJobReAssign.getTaskCode());
if (mydoJobService.selectMydoJobList(wmsJob).size() == 0) {
log.warn("该任务不存在,任务号:{}", mydoJobReAssign.getTaskCode());
return;
}
//更新任务参数
mydoJob = mydoJobService.selectMydoJobByTaskNo(rwh);
mydoJob.setCargoSpaceId(mydoJobReAssign.getCargoSpaceId());
mydoJob.setCargoSpaceId(mydoJobReAssign.getSiteCode());
mydoJob.setFaultFlag("2");
mydoJobService.updateMydoJob(mydoJob);
@@ -209,8 +217,8 @@ public class DdjThread implements Runnable {
//作废作业
InvalidMydoJob(rwh, ddj.getId());
//重置【取货无货】的出库异常货位库存信息
// basCargoSpaceService.resetCargoSpaceByStockoutException(mydoJob.getCargoSpaceId());
//清空/重置【取货无货】的出库异常货位库存信息
basCargoSpaceService.resetCargoSpaceByStockoutException(mydoJob.getCargoSpaceId());
}
}
}

View File

@@ -23,6 +23,7 @@ import com.ruoyi.queue.agv.service.IAgvQueueService;
import com.ruoyi.schedule.plcRead.ssj.PlcSsjRead;
import lombok.extern.slf4j.Slf4j;
import javax.annotation.PostConstruct;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -107,7 +108,7 @@ public class PortConvThread implements Runnable {
//请求参数
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("taskTypeCode", inSsjDevice.getTrayCode());//任务类型编号
paramMap.put("reqCode", UUID.randomUUID().toString());//任请求码
paramMap.put("reqCode", UUID.randomUUID().toString());//请求码
paramMap.put("cntCode", inSsjDevice.getTrayCode());//容器编号
int height = inSsjDevice.getHeight();
int weight = inSsjDevice.getWeight();
@@ -182,8 +183,12 @@ public class PortConvThread implements Runnable {
//获取wms下发的任务号和分配货位
StockinReceive result = BeanUtil.toBean(ajaxResult.get("result"), StockinReceive.class);
MydoJob mydoJob = new MydoJob();
// mydoJob.setJobId();
mydoJob.setTrayCode(result.getCntCode());
mydoJob.setCargoSpaceId(result.getSiteCode());
mydoJob.setWmsTaskNo(result.getTaskCode());
mydoJob.setJobId(mydoJobService.getJobId("RK"));
mydoJob.setTaskNo(mydoJobService.getTaskNo("1"));
// mydoJob.setTaskNo(result.getTaskCode());//todo 确定是否用获取的任务号作为wcs的任务号
//todo 校验wms分配的货位(排列层)是否合法
@@ -243,7 +248,10 @@ public class PortConvThread implements Runnable {
jobCallBack.setStatus("0");
jobCallBack.setTaskNo(Convert.toLong(mydoJob.getTaskNo()));
jobCallBack.setCreateTime(new Date());
jobCallBack.setSpare1("0");
jobCallBack.setTaskTypeCode("");//todo ???
jobCallBack.setReqCode(UUID.randomUUID().toString());
jobCallBack.setTaskCode(mydoJob.getWmsTaskNo());
// jobCallBack.setSpare1("0");
jobCallBackService.insertJobCallBack(jobCallBack);
}
}
@@ -252,15 +260,11 @@ public class PortConvThread implements Runnable {
}
}
public void inDispatch1(DeviceSsj ssjDevice) {
//有入库请求就肯定是电气的任务号的作业
if(StrUtil.isNotBlank(ssjDevice.getTrayCode()) && ssjDevice.getRkqq()==1 && ssjDevice.getTaskNo()<1000){