package com.zy.asrs.wms.apis.wcs.controller;
|
|
import com.zy.asrs.framework.common.R;
|
import com.zy.asrs.wms.apis.wcs.entity.request.ContainerArrivedParam;
|
import com.zy.asrs.wms.apis.wcs.entity.request.TasksStatusCallbackParam;
|
import com.zy.asrs.wms.apis.wcs.services.WcsApiService;
|
import com.zy.asrs.wms.system.controller.BaseController;
|
import io.netty.util.internal.StringUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
@RequestMapping("/in/stock/")
|
@RestController
|
public class InStockController extends BaseController {
|
|
@Autowired
|
private WcsApiService wcsApiService;
|
|
|
/***
|
* 容器到达接收
|
* @param arrivedParam
|
* @return
|
*/
|
@PostMapping("/container/arrived")
|
public R containerArrivedNotify(@RequestBody ContainerArrivedParam arrivedParam) {
|
|
if (StringUtil.isNullOrEmpty(arrivedParam.getContainerCode())) {
|
return R.error("容器编码不能为空!!");
|
}
|
if (StringUtil.isNullOrEmpty(arrivedParam.getSlotCode())) {
|
return R.error("输送线节点编码不能为空!!");
|
}
|
|
String str = arrivedParam.getContainerCode().trim();
|
// CUT库条码T开头,截取后10位
|
if (str.charAt(0) == 'T') {
|
arrivedParam.setContainerCode(str.substring(str.length() - 10));
|
}
|
return wcsApiService.containerArrivedNotify(arrivedParam, "inStock", getHostId());
|
|
}
|
|
|
/**
|
* ESS上报任务状态接口
|
* @param callbackParam
|
* @return
|
*/
|
@PostMapping("/receive/tasks/status")
|
public R receiveTaskStatus(@RequestBody TasksStatusCallbackParam callbackParam) {
|
if (!StringUtil.isNullOrEmpty(callbackParam.getEventType())) {
|
if (StringUtil.isNullOrEmpty(callbackParam.getContainerCode())) {
|
return R.error("容器编码不能为空!!");
|
}
|
if (StringUtil.isNullOrEmpty(callbackParam.getTaskCode())) {
|
return R.error("任务编码不能为空!!");
|
}
|
wcsApiService.receiveTaskStatus(callbackParam, "inStock", getHostId());
|
} else {
|
return R.error("上报事件类型不能为空!!");
|
}
|
|
return R.success();
|
}
|
|
}
|