调整推送生成出库任务接口
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ruoyi.api.controller;
|
||||
|
||||
import com.ruoyi.api.domain.wcs2wms.JobParam;
|
||||
import com.ruoyi.api.domain.wcs2wms.ReceiveJob;
|
||||
import com.ruoyi.api.domain.wcs2wms.stockout.StockoutReceive;
|
||||
import com.ruoyi.api.service.IApiService;
|
||||
import com.ruoyi.bas.port.domain.WcsPort;
|
||||
import com.ruoyi.bas.port.service.IWcsPortService;
|
||||
@@ -12,7 +13,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/wcs2Wms/api")
|
||||
@RequestMapping("/wcs2wms/api")
|
||||
public class Wcs2WmsController {
|
||||
|
||||
@Autowired
|
||||
@@ -23,12 +24,12 @@ public class Wcs2WmsController {
|
||||
/**
|
||||
* 接收wms出库任务
|
||||
*
|
||||
* @param receiveOutJob
|
||||
* @param stockoutReceive
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/receiveOutMydoJob")
|
||||
public AjaxResult receiveOutMydoJob(@RequestBody ReceiveJob receiveOutJob) {
|
||||
return apiService.receiveOutMydoJob(receiveOutJob);
|
||||
public AjaxResult receiveOutMydoJob(@RequestBody StockoutReceive stockoutReceive) {
|
||||
return apiService.receiveOutMydoJob(stockoutReceive);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.api.domain.wcs2wms.stockout;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
|
||||
/**
|
||||
* wms推送出库请求参数
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class StockoutReceive {
|
||||
|
||||
/**
|
||||
* 请求时传入的 reqCode,原样回传
|
||||
*/
|
||||
private String reqCode;
|
||||
|
||||
/**
|
||||
* wms下发的任务号
|
||||
*/
|
||||
private String taskCode;
|
||||
|
||||
/**
|
||||
* 出库库位编号
|
||||
*/
|
||||
private String siteCode;
|
||||
|
||||
/**
|
||||
* 任务类型编号
|
||||
*/
|
||||
private String taskTypeCode;
|
||||
|
||||
|
||||
}
|
||||
@@ -12,6 +12,7 @@ import com.ruoyi.api.domain.agv.genAgvSchedulingTask.GenAgvSchedulingTaskRespons
|
||||
import com.ruoyi.api.domain.wcs2wms.JobParam;
|
||||
import com.ruoyi.api.domain.wcs2wms.ReceiveJob;
|
||||
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionRequest;
|
||||
import com.ruoyi.api.domain.wcs2wms.stockout.StockoutReceive;
|
||||
import com.ruoyi.bas.port.domain.WcsPort;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.exception.job.TaskException;
|
||||
@@ -141,16 +142,16 @@ public interface IApiService
|
||||
/**
|
||||
* 入库请求生成作业
|
||||
*/
|
||||
public AjaxResult createInMydoJob(Map<String, Object> param);
|
||||
AjaxResult createInMydoJob(Map<String, Object> param);
|
||||
|
||||
/**
|
||||
* 入库请求作业异常反馈(扫码失败、外形、称重等异常)
|
||||
*/
|
||||
public AjaxResult createInMydoJobException(Map<String, Object> param);
|
||||
AjaxResult createInMydoJobException(Map<String, Object> param);
|
||||
|
||||
public AjaxResult selectMydoJobByNoTrayCode(Map<String, Object> param);
|
||||
AjaxResult selectMydoJobByNoTrayCode(Map<String, Object> param);
|
||||
|
||||
AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob);
|
||||
AjaxResult receiveOutMydoJob(StockoutReceive stockoutReceive);
|
||||
|
||||
AjaxResult receiveInMydoJob(ReceiveJob receiveInJob);
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ import com.ruoyi.api.domain.agv.genAgvSchedulingTask.PositionCodeData;
|
||||
import com.ruoyi.api.domain.wcs2wms.JobParam;
|
||||
import com.ruoyi.api.domain.wcs2wms.ReceiveJob;
|
||||
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionRequest;
|
||||
import com.ruoyi.api.domain.wcs2wms.stockout.StockoutReceive;
|
||||
import com.ruoyi.api.service.IApiService;
|
||||
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
|
||||
import com.ruoyi.bas.port.domain.WcsPort;
|
||||
@@ -450,37 +451,42 @@ public class ApiServiceImpl implements IApiService {
|
||||
|
||||
|
||||
@Override
|
||||
public AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob) {
|
||||
public AjaxResult receiveOutMydoJob(StockoutReceive stockoutReceive) {
|
||||
|
||||
//检查任务是否存在,避免重复生成
|
||||
MydoJob job = new MydoJob();
|
||||
job.setTaskNo(receiveOutJob.getTaskNo());
|
||||
job.setWmsTaskNo(stockoutReceive.getTaskCode());
|
||||
List<MydoJob> tasks = mydoJobService.selectMydoJobList(job);
|
||||
|
||||
//校验:任务已存在
|
||||
if (tasks.size() != 0) {
|
||||
log.info("【请求异常】wms下发出库任务失败,该任务已存在,单号:{},任务号:{}", receiveOutJob.getJobId(), receiveOutJob.getTaskNo());
|
||||
return AjaxResult.error("【请求异常】wms下发出库任务失败,该任务已存在,单号:" + receiveOutJob.getJobId() + ",任务号:" + receiveOutJob.getTaskNo());
|
||||
log.info("【请求异常】wms下发出库任务失败,该任务已存在,任务号:{}", stockoutReceive.getTaskCode());
|
||||
return AjaxResult.error("【请求异常】wms下发出库任务失败,任务号:" + stockoutReceive.getTaskCode());
|
||||
}
|
||||
|
||||
//生成出库作业
|
||||
MydoJob mydoJob = new MydoJob();
|
||||
mydoJob.setJobId(receiveOutJob.getJobId());
|
||||
mydoJob.setTaskNo(receiveOutJob.getTaskNo());
|
||||
mydoJob.setCargoSpaceId(receiveOutJob.getCargoSpaceId());
|
||||
mydoJob.setJobId(mydoJobService.getJobId("CK"));
|
||||
mydoJob.setTaskNo(mydoJobService.getTaskNo("3"));
|
||||
mydoJob.setWmsTaskNo(stockoutReceive.getTaskCode());
|
||||
//todo 可能需要解析货位 wms参数【siteCode】
|
||||
mydoJob.setCargoSpaceId(stockoutReceive.getSiteCode());
|
||||
mydoJob.setExitId("G1004");
|
||||
mydoJob.setInOrOut(receiveOutJob.getInOrOut());
|
||||
//todo 是否需要解析wms推送的任务类型?
|
||||
// mydoJob.setInOrOut(stockoutReceive.getTaskTypeCode());
|
||||
mydoJob.setInOrOut("2");
|
||||
mydoJob.setStatus("1");
|
||||
mydoJob.setPriority(Long.valueOf(10));
|
||||
mydoJob.setTrayCode(receiveOutJob.getTrayCode());
|
||||
mydoJob.setRoadwayId(receiveOutJob.getRoadwayId());
|
||||
//todo 可能需要查本地库存信息获取条码?
|
||||
// mydoJob.setTrayCode(receiveOutJob.getTrayCode());
|
||||
mydoJob.setCreateTime(DateUtils.getNowDate());
|
||||
mydoJob.setExecutionPhase(TASK_EP_CREATE);
|
||||
// mydoJob.setTraySize(receiveOutJob.getDepartmentId());
|
||||
int i = mydoJobService.insertMydoJob(mydoJob);
|
||||
if (i > 0) {
|
||||
// boolean success = mydoJobService.saveOrUpdate(mydoJob);
|
||||
if (i != 0) {
|
||||
return AjaxResult.success(
|
||||
"【请求成功】wms下发出库作业,作业单号:" + receiveOutJob.getJobId() + ",任务号:" + receiveOutJob.getTaskNo() + ",出库货位:" + receiveOutJob.getCargoSpaceId());
|
||||
"【请求成功】wms下发出库作业,下发任务号:" + stockoutReceive.getTaskCode() + ",出库货位:" + stockoutReceive.getSiteCode());
|
||||
}else{
|
||||
return AjaxResult.error();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user