diff --git a/wcs/src/main/java/org/wcs/business/pub/ReportStandard.java b/wcs/src/main/java/org/wcs/business/pub/ReportStandard.java index 741c95a..4f3cfb7 100644 --- a/wcs/src/main/java/org/wcs/business/pub/ReportStandard.java +++ b/wcs/src/main/java/org/wcs/business/pub/ReportStandard.java @@ -9,6 +9,7 @@ import org.wcs.constant.enums.http.StockCallBackStatusEnum; import org.wcs.model.bo.tuple.Tuple2; import org.wcs.model.dto.client.*; import org.wcs.model.po.app.AppConveyTask; +import org.wcs.model.po.app.AppEtagTask; import org.wcs.model.po.app.AppStockComposeTask; import org.wcs.plugin.webHttpClient.WebHttpClient; import org.wcs.plugin.webHttpClient.model.HttpRequest; @@ -26,6 +27,8 @@ public class ReportStandard { private static final String stockTaskCallBackAddressKey = "_STOCK_TASK_STATUS_CALLBACK"; // 输送线任务上报状态地址键,用任务来源拼接此字符串查找上位系统地址 private static final String conveyTaskCallBackAddressKey = "_CONVEY_TASK_STATUS_CALLBACK"; + // 贴标任务上报状态地址键,用任务来源拼接此字符串查找上位系统地址 + private static final String etagTaskCallBackAddressKey = "_ETAG_TASK_STATUS_CALLBACK"; // 仓库任务申请地址键,用任务点绑定的系统拼接此字符串查找上位系统地址 private static final String stockLoginRequestAddressKey = "_STOCK_LOGIN_REQ"; @@ -182,6 +185,9 @@ public class ReportStandard { * @return <错误信息,响应数据 > */ public static Tuple2 conveyTaskReport(ConveyCallBackStatusEnum status, AppConveyTask conveyTask, String message, String arriveLocation) { + if(conveyTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) { + return new Tuple2<>(null, "内部任务不上报"); + } ConveyTaskStatusUploadReq conveyTaskStatusUploadReq = new ConveyTaskStatusUploadReq(); conveyTaskStatusUploadReq.setTaskId(conveyTask.getTaskId()); conveyTaskStatusUploadReq.setTaskType(conveyTask.getTaskType()); @@ -209,7 +215,36 @@ public class ReportStandard { return new Tuple2<>(null, httpResponse.getResponseText()); } - + /** + * 电子标签任务上报 + * @param etagTask 贴标任务 + * @param confirmNum 确认数量 + * @param confirmPerson 确认人 + * @return <错误信息,响应数据 > + */ + public static Tuple2 etagTaskReport(AppEtagTask etagTask, Integer confirmNum, String confirmPerson) { + if(etagTask.getTaskSource().equals(ConstantData.SYSTEM_NAME)) { + return new Tuple2<>(null, "内部任务不上报"); + } + EtagTaskStatusUploadReq etagTaskStatusUploadReq = new EtagTaskStatusUploadReq(); + etagTaskStatusUploadReq.setTaskId(etagTask.getTaskId()); + etagTaskStatusUploadReq.setConfirmNum(confirmNum); + etagTaskStatusUploadReq.setConfirmPerson(confirmPerson); + HttpRequest httpRequest = HttpRequest.buildStart().post().setAddressKey(etagTask.getTaskSource() + etagTaskCallBackAddressKey) + .setBody(AppStringUtils.objectToString(etagTaskStatusUploadReq)).autoRetry().buildEnd(); + HttpResponse httpResponse = WebHttpClient.httpRequest(httpRequest); + if(httpResponse.isBaseDataError()) { + return new Tuple2<>(httpResponse.getErrText(), null); + } + if(!httpResponse.isSuccess()) { + String errText = httpResponse.getErrText(); + if(httpResponse.getException() != null) { + errText += httpResponse.getException().getMessage(); + } + return new Tuple2<>(errText, null); + } + return new Tuple2<>(null, httpResponse.getResponseText()); + } diff --git a/wcs/src/main/java/org/wcs/model/dto/client/EtagTaskStatusUploadReq.java b/wcs/src/main/java/org/wcs/model/dto/client/EtagTaskStatusUploadReq.java new file mode 100644 index 0000000..27581cb --- /dev/null +++ b/wcs/src/main/java/org/wcs/model/dto/client/EtagTaskStatusUploadReq.java @@ -0,0 +1,33 @@ +package org.wcs.model.dto.client; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Getter; +import lombok.Setter; + +/** + * 电子标签任务状态上报 + */ +@Getter +@Setter +public class EtagTaskStatusUploadReq { + + /** + * 任务ID + */ + @JsonProperty("taskId") + private String taskId; + + /** + * 确认数量 + */ + @JsonProperty("confirmNum") + private Integer confirmNum; + + /** + * 确认人 + */ + @JsonProperty("confirmPerson") + private String confirmPerson; + + +}