调整仓库任务状态上报的类,变更为统一上报类
This commit is contained in:
parent
0214a4aaa4
commit
52edde38c5
84
wcs/src/main/java/org/wcs/business/pub/ReportStandard.java
Normal file
84
wcs/src/main/java/org/wcs/business/pub/ReportStandard.java
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
package org.wcs.business.pub;
|
||||||
|
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.wcs.constant.ConstantData;
|
||||||
|
import org.wcs.constant.enums.http.StockCallBackStatusEnum;
|
||||||
|
import org.wcs.model.bo.tuple.Tuple2;
|
||||||
|
import org.wcs.model.dto.client.StockTaskStatusUploadReq;
|
||||||
|
import org.wcs.model.po.app.AppStockComposeTask;
|
||||||
|
import org.wcs.plugin.webHttpClient.WebHttpClient;
|
||||||
|
import org.wcs.plugin.webHttpClient.model.HttpRequest;
|
||||||
|
import org.wcs.plugin.webHttpClient.model.HttpResponse;
|
||||||
|
import org.wcs.utils.AppStringUtils;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 标准上报上位系统类
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
public class ReportStandard {
|
||||||
|
|
||||||
|
// 仓库任务上报状态地址键,用任务来源拼接此字符串查找上位系统地址
|
||||||
|
private static final String stockTaskCallBackAddressKey = "_STOCK_TASK_STATUS_CALLBACK";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上报仓库任务状态
|
||||||
|
* @param status 状态
|
||||||
|
* @param composeTask 仓库任务
|
||||||
|
* @return <错误信息,响应数据 >
|
||||||
|
*/
|
||||||
|
public static Tuple2<String, String> stockTaskReport(StockCallBackStatusEnum status, AppStockComposeTask composeTask) {
|
||||||
|
return stockTaskReport(status, composeTask, status.getMessage(), "");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上报仓库任务状态
|
||||||
|
* @param status 状态
|
||||||
|
* @param composeTask 仓库任务
|
||||||
|
* @param message 消息
|
||||||
|
* @return <错误信息,响应数据 >
|
||||||
|
*/
|
||||||
|
public static Tuple2<String, String> stockTaskReport(StockCallBackStatusEnum status, AppStockComposeTask composeTask, String message) {
|
||||||
|
return stockTaskReport(status, composeTask, message, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上报仓库任务状态
|
||||||
|
* @param status 状态
|
||||||
|
* @param composeTask 仓库任务
|
||||||
|
* @param message 消息
|
||||||
|
* @param destination 目标位置
|
||||||
|
* @return <错误信息,响应数据 >
|
||||||
|
*/
|
||||||
|
public static Tuple2<String, String> stockTaskReport(StockCallBackStatusEnum status, AppStockComposeTask composeTask, String message, String destination) {
|
||||||
|
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
||||||
|
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
||||||
|
}
|
||||||
|
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
||||||
|
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
||||||
|
stockTaskStatusUploadReq.setTaskStatus(status.getCode());
|
||||||
|
stockTaskStatusUploadReq.setDestination(destination);
|
||||||
|
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
||||||
|
stockTaskStatusUploadReq.setMessage(message);
|
||||||
|
/* 构造请求体 */
|
||||||
|
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + stockTaskCallBackAddressKey)
|
||||||
|
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
||||||
|
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
||||||
|
log.info("仓库任务:{} 任务状态上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
||||||
|
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
||||||
|
return new Tuple2<>(null, httpResponse.getResponseText());
|
||||||
|
}
|
||||||
|
String errText = "";
|
||||||
|
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
||||||
|
errText += httpResponse.getErrText();
|
||||||
|
}
|
||||||
|
if(httpResponse.getException() != null) {
|
||||||
|
errText += httpResponse.getException().getMessage();
|
||||||
|
}
|
||||||
|
return new Tuple2<>(errText, null);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,233 +0,0 @@
|
||||||
package org.wcs.business.stock.impl;
|
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
import org.wcs.business.stock.intf.IComposeTaskStatusReporter;
|
|
||||||
import org.wcs.constant.ConstantData;
|
|
||||||
import org.wcs.constant.enums.http.StockCallBackStatusEnum;
|
|
||||||
import org.wcs.model.bo.tuple.Tuple2;
|
|
||||||
import org.wcs.model.dto.client.StockTaskStatusUploadReq;
|
|
||||||
import org.wcs.model.po.app.AppStockComposeTask;
|
|
||||||
import org.wcs.plugin.webHttpClient.WebHttpClient;
|
|
||||||
import org.wcs.plugin.webHttpClient.model.HttpRequest;
|
|
||||||
import org.wcs.plugin.webHttpClient.model.HttpResponse;
|
|
||||||
import org.wcs.utils.AppStringUtils;
|
|
||||||
|
|
||||||
@Slf4j
|
|
||||||
@Service
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
public class ComposeTaskStatusReporter implements IComposeTaskStatusReporter {
|
|
||||||
|
|
||||||
private static final String callBackAddressKey = "_STOCK_TASK_STATUS_CALLBACK";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务开始
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskStart(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.START.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务开始上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务完成
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskFinish(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.FINISH.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务完成上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务错误
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskError(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.ERROR.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务错误上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务取消
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskCancel(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.CANCEL.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务取消上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务重复入库
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskDoubleIn(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.DOUBLE_IN.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务重复入库上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务空出库
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Tuple2<String, String> taskEmptyOut(AppStockComposeTask composeTask, String message) {
|
|
||||||
if(composeTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) {
|
|
||||||
return new Tuple2<>(null, "内部任务不上报"); // WCS 系统自己创建的不执行上传动作
|
|
||||||
}
|
|
||||||
StockTaskStatusUploadReq stockTaskStatusUploadReq = new StockTaskStatusUploadReq();
|
|
||||||
stockTaskStatusUploadReq.setTaskId(composeTask.getUpperTaskId());
|
|
||||||
stockTaskStatusUploadReq.setTaskStatus(StockCallBackStatusEnum.EMPTY_OUT.getCode());
|
|
||||||
stockTaskStatusUploadReq.setDestination("");
|
|
||||||
stockTaskStatusUploadReq.setVehicleNo(composeTask.getVehicleNo());
|
|
||||||
stockTaskStatusUploadReq.setMessage(message);
|
|
||||||
/* 构造请求体 */
|
|
||||||
HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(composeTask.getTaskSource() + callBackAddressKey)
|
|
||||||
.setBody(AppStringUtils.objectToString(stockTaskStatusUploadReq)).buildEnd();
|
|
||||||
HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest);
|
|
||||||
log.info("{} 任务空出库上报上位系统,请求结果:{}", composeTask.getUpperTaskId(), httpResponse.isSuccess());
|
|
||||||
if(!httpResponse.isBaseDataError() && httpResponse.isSuccess()) {
|
|
||||||
return new Tuple2<>(null, httpResponse.getResponseText());
|
|
||||||
}
|
|
||||||
String errText = "";
|
|
||||||
if(AppStringUtils.isNotEmpty(httpResponse.getErrText())) {
|
|
||||||
errText += httpResponse.getErrText();
|
|
||||||
}
|
|
||||||
if(httpResponse.getException() != null) {
|
|
||||||
errText += httpResponse.getException().getMessage();
|
|
||||||
}
|
|
||||||
return new Tuple2<>(errText, null);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -3,10 +3,11 @@ package org.wcs.business.stock.impl;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.wcs.business.stock.intf.IComposeTaskStatusReporter;
|
import org.wcs.business.pub.ReportStandard;
|
||||||
import org.wcs.business.stock.intf.IStockSingleTaskExecuteEvent;
|
import org.wcs.business.stock.intf.IStockSingleTaskExecuteEvent;
|
||||||
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
||||||
import org.wcs.constant.enums.database.*;
|
import org.wcs.constant.enums.database.*;
|
||||||
|
import org.wcs.constant.enums.http.StockCallBackStatusEnum;
|
||||||
import org.wcs.mapper.intf.AppStackerLocationService;
|
import org.wcs.mapper.intf.AppStackerLocationService;
|
||||||
import org.wcs.mapper.intf.AppStockComposeTaskService;
|
import org.wcs.mapper.intf.AppStockComposeTaskService;
|
||||||
import org.wcs.mapper.intf.AppStockSingleTaskService;
|
import org.wcs.mapper.intf.AppStockSingleTaskService;
|
||||||
|
|
@ -33,7 +34,6 @@ public class StockSingleTaskExecuteEvent implements IStockSingleTaskExecuteEvent
|
||||||
private final AppStockSingleTaskService stockSingleTaskService;
|
private final AppStockSingleTaskService stockSingleTaskService;
|
||||||
private final AppStockComposeTaskService stockComposeTaskService;
|
private final AppStockComposeTaskService stockComposeTaskService;
|
||||||
private final AppStackerLocationService stackerLocationService;
|
private final AppStackerLocationService stackerLocationService;
|
||||||
private final IComposeTaskStatusReporter composeTaskStatusReporter;
|
|
||||||
private final AppTrayConveyLocationService trayConveyLocationService;
|
private final AppTrayConveyLocationService trayConveyLocationService;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -86,7 +86,7 @@ public class StockSingleTaskExecuteEvent implements IStockSingleTaskExecuteEvent
|
||||||
stockComposeTaskUpdate.setTaskMsg(message);
|
stockComposeTaskUpdate.setTaskMsg(message);
|
||||||
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
||||||
log.info("独立任务开始执行更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
log.info("独立任务开始执行更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
||||||
composeTaskStatusReporter.taskStart(stockComposeTask, message);
|
ReportStandard.stockTaskReport(StockCallBackStatusEnum.START, stockComposeTask, message);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
@ -229,7 +229,7 @@ public class StockSingleTaskExecuteEvent implements IStockSingleTaskExecuteEvent
|
||||||
stockComposeTaskUpdate.setTaskMsg("[重复入库]" + message);
|
stockComposeTaskUpdate.setTaskMsg("[重复入库]" + message);
|
||||||
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
||||||
log.info("独立任务重复入库更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
log.info("独立任务重复入库更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
||||||
composeTaskStatusReporter.taskDoubleIn(stockComposeTask, message);
|
ReportStandard.stockTaskReport(StockCallBackStatusEnum.DOUBLE_IN,stockComposeTask, message);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
@ -268,7 +268,7 @@ public class StockSingleTaskExecuteEvent implements IStockSingleTaskExecuteEvent
|
||||||
stockComposeTaskUpdate.setTaskMsg("[空出库]" + message);
|
stockComposeTaskUpdate.setTaskMsg("[空出库]" + message);
|
||||||
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
boolean composeTaskUpdated = stockComposeTaskService.update(stockComposeTaskUpdate);
|
||||||
log.info("独立任务空出库更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
log.info("独立任务空出库更新组合任务数据库行:{} 状态:{} 更新结果:{}", AppStringUtils.objectToString(stockComposeTask), StockComposeTaskStatusEnum.EXECUTING.getCode(), composeTaskUpdated);
|
||||||
composeTaskStatusReporter.taskEmptyOut(stockComposeTask, message);
|
ReportStandard.stockTaskReport(StockCallBackStatusEnum.EMPTY_OUT,stockComposeTask, message);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,58 +0,0 @@
|
||||||
package org.wcs.business.stock.intf;
|
|
||||||
|
|
||||||
import org.wcs.model.bo.tuple.Tuple2;
|
|
||||||
import org.wcs.model.po.app.AppStockComposeTask;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 组合式任务状态上报者
|
|
||||||
*/
|
|
||||||
public interface IComposeTaskStatusReporter {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务开始
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskStart(AppStockComposeTask composeTask, String message);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务结束
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskFinish(AppStockComposeTask composeTask, String message);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务异常
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskError(AppStockComposeTask composeTask, String message);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务取消
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskCancel(AppStockComposeTask composeTask, String message);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务重复入库
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskDoubleIn(AppStockComposeTask composeTask, String message);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 任务空出
|
|
||||||
* @param composeTask 任务信息
|
|
||||||
* @param message 消息
|
|
||||||
* @return <错误信息,响应数据 >
|
|
||||||
*/
|
|
||||||
Tuple2<String, String> taskEmptyOut(AppStockComposeTask composeTask, String message);
|
|
||||||
}
|
|
||||||
|
|
@ -8,12 +8,12 @@ import lombok.Getter;
|
||||||
@Getter
|
@Getter
|
||||||
public enum StockCallBackStatusEnum {
|
public enum StockCallBackStatusEnum {
|
||||||
|
|
||||||
START(1, "开始"),
|
START(1, "任务开始"),
|
||||||
FINISH(2, "完成"),
|
FINISH(2, "任务完成"),
|
||||||
ERROR(3, "错误"),
|
ERROR(3, "任务错误"),
|
||||||
CANCEL(4, "取消"),
|
CANCEL(4, "任务取消"),
|
||||||
DOUBLE_IN(5, "重复入库"),
|
DOUBLE_IN(5, "重复入库"),
|
||||||
EMPTY_OUT(6, "空出");
|
EMPTY_OUT(6, "空出库");
|
||||||
|
|
||||||
private final Integer code;
|
private final Integer code;
|
||||||
private final String message;
|
private final String message;
|
||||||
|
|
|
||||||
|
|
@ -6,13 +6,14 @@ import org.quartz.DisallowConcurrentExecution;
|
||||||
import org.quartz.Job;
|
import org.quartz.Job;
|
||||||
import org.quartz.JobExecutionContext;
|
import org.quartz.JobExecutionContext;
|
||||||
import org.wcs.business.data.intf.IDataRecorder;
|
import org.wcs.business.data.intf.IDataRecorder;
|
||||||
|
import org.wcs.business.pub.ReportStandard;
|
||||||
import org.wcs.business.stock.LocationManage;
|
import org.wcs.business.stock.LocationManage;
|
||||||
import org.wcs.business.stock.StockComposeTaskManage;
|
import org.wcs.business.stock.StockComposeTaskManage;
|
||||||
import org.wcs.business.stock.intf.IComposeTaskStatusReporter;
|
|
||||||
import org.wcs.constant.enums.database.StockComposeTaskStatusEnum;
|
import org.wcs.constant.enums.database.StockComposeTaskStatusEnum;
|
||||||
import org.wcs.constant.enums.database.StockComposeTaskStepStatusEnum;
|
import org.wcs.constant.enums.database.StockComposeTaskStepStatusEnum;
|
||||||
import org.wcs.constant.enums.database.StockComposeTaskTypeEnum;
|
import org.wcs.constant.enums.database.StockComposeTaskTypeEnum;
|
||||||
import org.wcs.constant.enums.database.StockSingleTaskStatusEnum;
|
import org.wcs.constant.enums.database.StockSingleTaskStatusEnum;
|
||||||
|
import org.wcs.constant.enums.http.StockCallBackStatusEnum;
|
||||||
import org.wcs.helper.AppConfigHelper;
|
import org.wcs.helper.AppConfigHelper;
|
||||||
import org.wcs.helper.LocationHelper;
|
import org.wcs.helper.LocationHelper;
|
||||||
import org.wcs.mapper.intf.AppStockComposeTaskBakService;
|
import org.wcs.mapper.intf.AppStockComposeTaskBakService;
|
||||||
|
|
@ -50,7 +51,6 @@ public class ResolveStockTaskJob implements Job {
|
||||||
private final IDataRecorder dataRecorder;
|
private final IDataRecorder dataRecorder;
|
||||||
private final AppConfigHelper configHelper;
|
private final AppConfigHelper configHelper;
|
||||||
private final LocationHelper locationHelper;
|
private final LocationHelper locationHelper;
|
||||||
private final IComposeTaskStatusReporter composeTaskStatusReporter;
|
|
||||||
private final LocationManage locationManage; // 仓库位置管理器
|
private final LocationManage locationManage; // 仓库位置管理器
|
||||||
|
|
||||||
static boolean stockComposeTaskManageInitialized = false;
|
static boolean stockComposeTaskManageInitialized = false;
|
||||||
|
|
@ -231,7 +231,7 @@ public class ResolveStockTaskJob implements Job {
|
||||||
}
|
}
|
||||||
/* 完成任务 */
|
/* 完成任务 */
|
||||||
if(composeTask.getTaskStatus().equals(StockComposeTaskStatusEnum.COMPLETE.getCode())) {
|
if(composeTask.getTaskStatus().equals(StockComposeTaskStatusEnum.COMPLETE.getCode())) {
|
||||||
Tuple2<String, String> reporterResult = composeTaskStatusReporter.taskFinish(composeTask, composeTask.getTaskMsg());
|
Tuple2<String, String> reporterResult = ReportStandard.stockTaskReport(StockCallBackStatusEnum.FINISH, composeTask, composeTask.getTaskMsg());
|
||||||
if(reporterResult.getItem1() != null) {
|
if(reporterResult.getItem1() != null) {
|
||||||
log.info("任务完成上报失败,组合任务ID:{},错误信息:{}", composeTask.getTaskId(), reporterResult.getItem1());
|
log.info("任务完成上报失败,组合任务ID:{},错误信息:{}", composeTask.getTaskId(), reporterResult.getItem1());
|
||||||
dataRecorder.recordStockMsg(composeTask.getUpperTaskId(), composeTask.getVehicleNo(), "任务完成上报失败,错误信息:" + reporterResult.getItem1());
|
dataRecorder.recordStockMsg(composeTask.getUpperTaskId(), composeTask.getVehicleNo(), "任务完成上报失败,错误信息:" + reporterResult.getItem1());
|
||||||
|
|
@ -255,7 +255,7 @@ public class ResolveStockTaskJob implements Job {
|
||||||
}
|
}
|
||||||
/* 取消任务 */
|
/* 取消任务 */
|
||||||
if(composeTask.getTaskStatus().equals(StockComposeTaskStatusEnum.CANCEL.getCode())) {
|
if(composeTask.getTaskStatus().equals(StockComposeTaskStatusEnum.CANCEL.getCode())) {
|
||||||
Tuple2<String, String> reporterResult = composeTaskStatusReporter.taskCancel(composeTask, composeTask.getTaskMsg());
|
Tuple2<String, String> reporterResult = ReportStandard.stockTaskReport(StockCallBackStatusEnum.CANCEL, composeTask, composeTask.getTaskMsg());
|
||||||
if(reporterResult.getItem1() != null) {
|
if(reporterResult.getItem1() != null) {
|
||||||
log.info("任务取消上报失败,组合任务ID:{},错误信息:{}", composeTask.getTaskId(), reporterResult.getItem1());
|
log.info("任务取消上报失败,组合任务ID:{},错误信息:{}", composeTask.getTaskId(), reporterResult.getItem1());
|
||||||
dataRecorder.recordStockMsg(composeTask.getUpperTaskId(), composeTask.getVehicleNo(), "任务取消上报失败,错误信息:" + reporterResult.getItem1());
|
dataRecorder.recordStockMsg(composeTask.getUpperTaskId(), composeTask.getVehicleNo(), "任务取消上报失败,错误信息:" + reporterResult.getItem1());
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,6 @@ import org.wcs.business.stacker.StackerStatusMonitor;
|
||||||
import org.wcs.business.stacker.intf.IExecuteStackerTaskService;
|
import org.wcs.business.stacker.intf.IExecuteStackerTaskService;
|
||||||
import org.wcs.business.stock.intf.IStockSingleTaskExecuteEvent;
|
import org.wcs.business.stock.intf.IStockSingleTaskExecuteEvent;
|
||||||
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
||||||
import org.wcs.constant.enums.database.StockSingleTaskStatusEnum;
|
|
||||||
import org.wcs.constant.enums.plc.StackerControllerModelEnum;
|
import org.wcs.constant.enums.plc.StackerControllerModelEnum;
|
||||||
import org.wcs.constant.enums.plc.StackerDeviceStatusEnum;
|
import org.wcs.constant.enums.plc.StackerDeviceStatusEnum;
|
||||||
import org.wcs.constant.enums.plc.StackerTaskTypeEnum;
|
import org.wcs.constant.enums.plc.StackerTaskTypeEnum;
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,8 @@ import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.wcs.business.pub.ReportStandard;
|
||||||
import org.wcs.business.stock.LocationManage;
|
import org.wcs.business.stock.LocationManage;
|
||||||
import org.wcs.business.stock.impl.ComposeTaskStatusReporter;
|
|
||||||
import org.wcs.constant.ConstantData;
|
import org.wcs.constant.ConstantData;
|
||||||
import org.wcs.constant.enums.business.LocationTypeEnum;
|
import org.wcs.constant.enums.business.LocationTypeEnum;
|
||||||
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
import org.wcs.constant.enums.common.TrueOrFalseEnum;
|
||||||
|
|
@ -14,6 +14,7 @@ import org.wcs.constant.enums.database.StockComposeTaskStatusEnum;
|
||||||
import org.wcs.constant.enums.database.StockComposeTaskStepStatusEnum;
|
import org.wcs.constant.enums.database.StockComposeTaskStepStatusEnum;
|
||||||
import org.wcs.constant.enums.database.StockComposeTaskTypeEnum;
|
import org.wcs.constant.enums.database.StockComposeTaskTypeEnum;
|
||||||
import org.wcs.constant.enums.database.StockSingleTaskStatusEnum;
|
import org.wcs.constant.enums.database.StockSingleTaskStatusEnum;
|
||||||
|
import org.wcs.constant.enums.http.StockCallBackStatusEnum;
|
||||||
import org.wcs.factory.AppServeResponseFactory;
|
import org.wcs.factory.AppServeResponseFactory;
|
||||||
import org.wcs.mapper.intf.AppStockComposeTaskBakService;
|
import org.wcs.mapper.intf.AppStockComposeTaskBakService;
|
||||||
import org.wcs.mapper.intf.AppStockComposeTaskService;
|
import org.wcs.mapper.intf.AppStockComposeTaskService;
|
||||||
|
|
@ -52,7 +53,6 @@ public class StockComposeTaskService implements IStockComposeTaskService {
|
||||||
private final AppStockSingleTaskService stockSingleTaskService;
|
private final AppStockSingleTaskService stockSingleTaskService;
|
||||||
private final ExcelPoi excelPoi;
|
private final ExcelPoi excelPoi;
|
||||||
private final AppDataBaseTransUtils transUtils;
|
private final AppDataBaseTransUtils transUtils;
|
||||||
private final ComposeTaskStatusReporter composeTaskStatusReporter;
|
|
||||||
private final LocationManage locationManage; // 位置管理
|
private final LocationManage locationManage; // 位置管理
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -374,7 +374,7 @@ public class StockComposeTaskService implements IStockComposeTaskService {
|
||||||
if(AppStringUtils.isNotEmpty(reporterTaskStatusReq.getDestination().trim())) {
|
if(AppStringUtils.isNotEmpty(reporterTaskStatusReq.getDestination().trim())) {
|
||||||
appStockComposeTask.setDestination(reporterTaskStatusReq.getDestination());
|
appStockComposeTask.setDestination(reporterTaskStatusReq.getDestination());
|
||||||
}
|
}
|
||||||
Tuple2<String, String> taskFinish = composeTaskStatusReporter.taskFinish(appStockComposeTask, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
Tuple2<String, String> taskFinish = ReportStandard.stockTaskReport(StockCallBackStatusEnum.FINISH, appStockComposeTask, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
||||||
if(taskFinish.getItem1() != null) {
|
if(taskFinish.getItem1() != null) {
|
||||||
log.info("任务完成上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
log.info("任务完成上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
||||||
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
||||||
|
|
@ -399,7 +399,7 @@ public class StockComposeTaskService implements IStockComposeTaskService {
|
||||||
if(appStockComposeTask == null) {
|
if(appStockComposeTask == null) {
|
||||||
return AppServeResponseFactory.fail("任务不存在");
|
return AppServeResponseFactory.fail("任务不存在");
|
||||||
}
|
}
|
||||||
Tuple2<String, String> taskFinish = composeTaskStatusReporter.taskCancel(appStockComposeTask, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
Tuple2<String, String> taskFinish = ReportStandard.stockTaskReport(StockCallBackStatusEnum.CANCEL, appStockComposeTask, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
||||||
if(taskFinish.getItem1() != null) {
|
if(taskFinish.getItem1() != null) {
|
||||||
log.info("任务取消上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
log.info("任务取消上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
||||||
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
||||||
|
|
@ -429,7 +429,7 @@ public class StockComposeTaskService implements IStockComposeTaskService {
|
||||||
}
|
}
|
||||||
AppStockComposeTask appStockComposeTaskUpper = new AppStockComposeTask();
|
AppStockComposeTask appStockComposeTaskUpper = new AppStockComposeTask();
|
||||||
AppBeanUtils.copyProperties(appStockComposeTask, appStockComposeTaskUpper);
|
AppBeanUtils.copyProperties(appStockComposeTask, appStockComposeTaskUpper);
|
||||||
Tuple2<String, String> taskFinish = composeTaskStatusReporter.taskFinish(appStockComposeTaskUpper, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
Tuple2<String, String> taskFinish = ReportStandard.stockTaskReport(StockCallBackStatusEnum.FINISH, appStockComposeTaskUpper, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
||||||
if(taskFinish.getItem1() != null) {
|
if(taskFinish.getItem1() != null) {
|
||||||
log.info("历史数据任务完成上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
log.info("历史数据任务完成上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
||||||
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
||||||
|
|
@ -459,7 +459,7 @@ public class StockComposeTaskService implements IStockComposeTaskService {
|
||||||
}
|
}
|
||||||
AppStockComposeTask appStockComposeTaskUpper = new AppStockComposeTask();
|
AppStockComposeTask appStockComposeTaskUpper = new AppStockComposeTask();
|
||||||
AppBeanUtils.copyProperties(appStockComposeTask, appStockComposeTaskUpper);
|
AppBeanUtils.copyProperties(appStockComposeTask, appStockComposeTaskUpper);
|
||||||
Tuple2<String, String> taskFinish = composeTaskStatusReporter.taskCancel(appStockComposeTaskUpper, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
Tuple2<String, String> taskFinish = ReportStandard.stockTaskReport(StockCallBackStatusEnum.CANCEL, appStockComposeTaskUpper, operationUserId + "#" + reporterTaskStatusReq.getMessage());
|
||||||
if(taskFinish.getItem1() != null) {
|
if(taskFinish.getItem1() != null) {
|
||||||
log.info("历史数据任务取消上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
log.info("历史数据任务取消上报失败,组合任务ID:{},错误信息:{}", appStockComposeTask.getTaskId(), taskFinish.getItem1());
|
||||||
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
return AppServeResponseFactory.fail(taskFinish.getItem1());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user