取货无货接口 放货有货接口
This commit is contained in:
@@ -21,7 +21,7 @@ public interface IToWmsService {
|
||||
/**
|
||||
* 入库、出库 任务完成回传
|
||||
* Map<String, String>
|
||||
* "wmsType": "任务类型" 1-入库 2-出库 3-agv搬运,
|
||||
* "wmsType": "任务类型" 1-入库 2-出库
|
||||
* taskNo:出库 入库任务号
|
||||
* trayCode:托盘码
|
||||
* positionCode1:起点
|
||||
@@ -38,16 +38,5 @@ public interface IToWmsService {
|
||||
* 取货无货,重新分配物料
|
||||
*/
|
||||
AjaxResult reMaterial(ReMaterialParam reMaterialParam);
|
||||
/**
|
||||
* 小车接收开始信号
|
||||
*/
|
||||
AjaxResult startSignal(RequestEnter requestEnter);
|
||||
/**
|
||||
* ctu取完箱子反馈
|
||||
* @param map{
|
||||
* "lljCode"
|
||||
* }
|
||||
* @return
|
||||
*/
|
||||
AjaxResult takeCompleted(Map<String, Object> map);
|
||||
|
||||
}
|
||||
|
||||
@@ -24,10 +24,8 @@ import com.ruoyi.bas.roadway.service.IBasRoadwayService;
|
||||
import com.ruoyi.bas.tag.domain.BasTag;
|
||||
import com.ruoyi.bas.tag.service.IBasTagService;
|
||||
import com.ruoyi.bas.taskNo.service.IBasTaskNoService;
|
||||
import com.ruoyi.bas.warehouse.domain.BasWarehouse;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.MessageUtils;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.device.agv.domain.AgvContainerTask;
|
||||
import com.ruoyi.device.agv.service.IAgvContainerTaskService;
|
||||
import com.ruoyi.in.erp.domain.TransferBillCallback;
|
||||
@@ -41,9 +39,7 @@ import com.ruoyi.job.mydojob.service.IMydoJobService;
|
||||
import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail;
|
||||
import com.ruoyi.job.mydojobdetail.service.IMydoJobDetailService;
|
||||
import com.ruoyi.out.outStockout.service.IOutStockoutService;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -279,8 +275,6 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
/**
|
||||
* todo 根据包装方式 主要包装方式 描述 长 宽 高 包装材积获取大小
|
||||
*
|
||||
* @param basProduct
|
||||
* @return
|
||||
*/
|
||||
private int getSize(BasProduct basProduct) {
|
||||
String remark = basProduct.getRemark();
|
||||
@@ -368,67 +362,10 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
return AjaxResult.error(MessageUtils.message("warn.message"));
|
||||
}
|
||||
MydoJob outJob = outMydoJobs.get(0);
|
||||
//料箱出库 需同步电子标签
|
||||
if ("23".equals(outJob.getInOrOut())) {
|
||||
//查询拣选工位绑定的电子标签
|
||||
BasTag tagParam = new BasTag();
|
||||
tagParam.setPickAdd(wmsJobRequest.getPickSsj());
|
||||
tagParam.setSpare3("1");
|
||||
List<BasTag> tags = iBasTagService.selectBasTagList(tagParam);
|
||||
if (tags.isEmpty()) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message4"));
|
||||
}
|
||||
BasTag basTag = tags.get(0);
|
||||
basTag.setTrayCode(outJob.getTrayCode());
|
||||
iBasTagService.updateBasTag(basTag);
|
||||
//同步电子标签
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(outMydoJobs.get(0).getJobId());
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
|
||||
//开启线程
|
||||
//new Thread(new TagOutReadThread(basTag.getIp())).start();
|
||||
}
|
||||
outJob.setExecutionPhase("2");
|
||||
mydoJobService.updateMydoJob(outJob);
|
||||
break;
|
||||
case "3":
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getContainerCode())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message5"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode1())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message6"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode2())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message7"));
|
||||
}
|
||||
//agv搬运作业
|
||||
//绑定料架和点位
|
||||
BasContainer basContainerParam = new BasContainer();
|
||||
basContainerParam.setContainerId(wmsJobRequest.getContainerCode());
|
||||
//basContainerParam.setPortName(wmsJobRequest.getPositionCode2());
|
||||
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
|
||||
if (basContainers.isEmpty()) {
|
||||
log.error("没有该料架 {}", wmsJobRequest.getContainerCode());
|
||||
return AjaxResult.error(MessageUtils.message("error.message11"));
|
||||
}
|
||||
//修改绑定点位
|
||||
BasContainer basContainer = basContainers.get(0);
|
||||
basContainer.setPortName(wmsJobRequest.getPositionCode2());
|
||||
basContainerService.updateBasContainer(basContainer);
|
||||
|
||||
//删除agv任务
|
||||
AgvContainerTask agvContainerTaskParam = new AgvContainerTask();
|
||||
agvContainerTaskParam.setContainer(basContainer.getContainerId());
|
||||
List<AgvContainerTask> agvContainerTasks = agvContainerTaskService.selectAgvContainerTaskList(agvContainerTaskParam);
|
||||
if (CollUtil.isNotEmpty(agvContainerTasks)) {
|
||||
for (AgvContainerTask agvContainerTask : agvContainerTasks) {
|
||||
agvContainerTask.setStatus("2");
|
||||
agvContainerTask.setFinishTime(DateUtil.formatDateTime(new Date()));
|
||||
agvContainerTaskService.updateAgvContainerTask(agvContainerTask);
|
||||
agvContainerTaskService.insertHistory(agvContainerTask.getId());
|
||||
agvContainerTaskService.deleteAgvContainerTaskById(agvContainerTask.getId());
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
log.error("作业类型错误");
|
||||
return AjaxResult.error(MessageUtils.message("error.message12"));
|
||||
@@ -470,86 +407,5 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
return outStockoutService.autoAllot(stockOutId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 小车接收开始信号
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult startSignal(RequestEnter requestEnter) {
|
||||
/*switch (requestEnter.getWmsType()) {
|
||||
case "1":
|
||||
case "2":
|
||||
MydoJob mydoJobParam = new MydoJob();
|
||||
mydoJobParam.setTaskNo(requestEnter.getTaskNo());
|
||||
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
|
||||
if (mydoJobs.isEmpty()) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
for (MydoJob mydoJob1 : mydoJobs) {
|
||||
mydoJob1.setStatus("3");
|
||||
mydoJob1.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||
mydoJobService.updateMydoJob(mydoJob1);
|
||||
}
|
||||
return AjaxResult.success();
|
||||
case "3":
|
||||
AgvContainerTask agvContainerTaskParam = new AgvContainerTask();
|
||||
agvContainerTaskParam.setTaskNo(requestEnter.getTaskNo());
|
||||
List<AgvContainerTask> agvContainerTasks = agvContainerTaskService.selectAgvContainerTaskList(agvContainerTaskParam);
|
||||
if (CollUtil.isEmpty(agvContainerTasks)) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
for (AgvContainerTask agvContainerTask : agvContainerTasks) {
|
||||
agvContainerTask.setStatus("2");
|
||||
agvContainerTask.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||
agvContainerTaskService.updateAgvContainerTask(agvContainerTask);
|
||||
}
|
||||
return AjaxResult.success();
|
||||
default:
|
||||
return AjaxResult.error();
|
||||
}*/
|
||||
return AjaxResult.success();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* ctu取完箱子反馈
|
||||
*
|
||||
* @param map{ "portCode"
|
||||
* "wmsType"
|
||||
* }
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult takeCompleted(Map<String, Object> map) {
|
||||
String wmsType = Convert.toStr(map.get("wmsType"));
|
||||
|
||||
switch (wmsType) {
|
||||
case "1":
|
||||
//流利架入库
|
||||
String lljCode = Convert.toStr(map.get("portCode"));
|
||||
BasTag basTagParam = new BasTag();
|
||||
basTagParam.setPickAdd(lljCode);
|
||||
List<BasTag> basTags = iBasTagService.selectBasTagList(basTagParam);
|
||||
for (BasTag basTag : basTags) {
|
||||
basTag.setSpare2("2");
|
||||
iBasTagService.updateBasTag(basTag);
|
||||
}
|
||||
case "2":
|
||||
|
||||
break;
|
||||
case "3":
|
||||
//小车搬运料架
|
||||
String startPoint = Convert.toStr(map.get("portCode"));
|
||||
BasContainer basContainerParam = new BasContainer();
|
||||
basContainerParam.setPortName(startPoint);
|
||||
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
|
||||
for (BasContainer basContainer : basContainers) {
|
||||
basContainer.setPortName("");
|
||||
basContainerService.updateBasContainer(basContainer);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw new RuntimeException("wmsType错误");
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user