From 55b23b69d38a2dc6050351f77139257ada1ad9fb Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Thu, 24 Nov 2022 17:52:09 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AB=8B=E5=BA=93=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/nl/acs/ext/wms/AcsUtil.java | 39 ++++++ .../java/org/nl/acs/ext/wms/RespUtil.java | 18 +++ .../ext/wms/liKuData/BaseResponseData.java | 24 ++++ .../wms/liKuData/BaseStoreReportRequest.java | 41 +++++++ .../ext/wms/liKuData/BaseStoreRequest.java | 42 +++++++ .../ext/wms/liKuData/CancelTaskRequest.java | 37 ++++++ .../ext/wms/liKuData/CancelTaskResponse.java | 13 ++ .../liKuData/EmptyVehicleOutStoreRequest.java | 13 ++ .../EmptyVehicleOutStoreResponse.java | 13 ++ .../wms/liKuData/InStoreReportRequest.java | 13 ++ .../wms/liKuData/InStoreReportResponse.java | 13 ++ .../acs/ext/wms/liKuData/InStoreRequest.java | 18 +++ .../ext/wms/liKuData/InStoreResetRequest.java | 12 ++ .../wms/liKuData/InStoreResetResponse.java | 12 ++ .../acs/ext/wms/liKuData/InStoreResponse.java | 12 ++ .../wms/liKuData/MoveStoreReportRequest.java | 10 ++ .../wms/liKuData/MoveStoreReportResponse.java | 12 ++ .../ext/wms/liKuData/MoveStoreRequest.java | 25 ++++ .../wms/liKuData/MoveStoreResetRequest.java | 13 ++ .../wms/liKuData/MoveStoreResetResponse.java | 13 ++ .../ext/wms/liKuData/MoveStoreResponse.java | 13 ++ .../wms/liKuData/OutStoreReportRequest.java | 13 ++ .../wms/liKuData/OutStoreReportResponse.java | 12 ++ .../acs/ext/wms/liKuData/OutStoreRequest.java | 27 +++++ .../ext/wms/liKuData/OutStoreResponse.java | 13 ++ .../org/nl/acs/ext/wms/liKuData/Resp.java | 32 +++++ .../wms/liKuData/RoadWayIsLockRequest.java | 28 +++++ .../wms/liKuData/RoadWayIsLockResponse.java | 13 ++ .../acs/ext/wms/rest/AcsToLiKuController.java | 112 ++++++++++++++++++ .../acs/ext/wms/service/AcsToLiKuService.java | 89 ++++++++++++++ .../service/impl/AcsToLiKuServiceImpl.java | 102 ++++++++++++++++ 31 files changed, 847 insertions(+) create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/AcsUtil.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/RespUtil.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseResponseData.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreReportRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/Resp.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockRequest.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockResponse.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/AcsToLiKuController.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/AcsToLiKuService.java create mode 100644 acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToLiKuServiceImpl.java diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/AcsUtil.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/AcsUtil.java new file mode 100644 index 000000000..9a66d3560 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/AcsUtil.java @@ -0,0 +1,39 @@ + +package org.nl.acs.ext.wms; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSONObject; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.service.ParamService; +import org.nl.modules.system.service.impl.ParamServiceImpl; +import org.nl.modules.wql.util.SpringContextHolder; + +/** + * ACS连接外部系统工具类: + */ +public class AcsUtil { + public static String notifyAcs(String api, W requestParam) { + ParamService paramService = SpringContextHolder.getBean(ParamServiceImpl.class); + //判断是否连接立库WCS系统 + String isConnect = paramService.findByCode("is_connect_liKu_Wcs").getValue(); + if (StrUtil.equals("0", isConnect)) { + throw new BadRequestException("参数配置表中-is_connect_liKu_Wcs为:0"); + } + String liKu_wcs_url = paramService.findByCode("liKu_wcs_url").getValue(); + try { + return HttpRequest + .post(liKu_wcs_url + api) + .body(String.valueOf(requestParam)) + .execute() + .body(); + } catch (Exception e) { + JSONObject result = new JSONObject(); + result.put("result", "false"); + result.put("code", "400"); + result.put("comment", e.getMessage()); + return String.valueOf(result); + } + } +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/RespUtil.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/RespUtil.java new file mode 100644 index 000000000..354547fbe --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/RespUtil.java @@ -0,0 +1,18 @@ +package org.nl.acs.ext.wms; + +import com.alibaba.fastjson.JSONObject; +import org.nl.acs.ext.wms.liKuData.Resp; + +/** + * @author: geng by + * @createDate: 2022/11/24 + */ +public class RespUtil { + public static Resp getResp(String result, T t) { + JSONObject jsonObject = JSONObject.parseObject(result); + Resp resp = new Resp<>(); + resp.setData(t); + resp = JSONObject.toJavaObject(jsonObject, Resp.class); + return resp; + } +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseResponseData.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseResponseData.java new file mode 100644 index 000000000..01732d7e7 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseResponseData.java @@ -0,0 +1,24 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 响应 data 公共基础类 + * 1、入库任务下发 + * 2、出库任务下发 + * 3、空托盘出库任务下发 + * 4、移库任务下发 + * 5、入库任务调整 + * 6、移库任务调整 + * 7、入库任务上报 + * 8、出库任务上报 + * 9、移库任务上报 + * 10、任务取消 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class BaseResponseData { + public String orderId; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreReportRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreReportRequest.java new file mode 100644 index 000000000..72bf4507e --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreReportRequest.java @@ -0,0 +1,41 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 任务上报请求参数基础类 + * 1、入库上报 + * 2、出库上报 + * 3、移库上报 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class BaseStoreReportRequest { + /** + * 任务编号 + * WCS内部任务编号,本次任务的唯一标识 + */ + public String orderId; + /** + * 托盘条码信息 + */ + public String palletCode; + /** + * 原库位号 + * 托盘的存储库位编号。具体库位编号需要双方商定 + */ + public String srcLocation; + /** + * 目的库位号 + * 托盘的目的存储库位编号。具体库位编号需要双方商定 + */ + public String destLocation; + /** + * 入库任务上报 1 已接收 2 开始执行 3执行完成 4 阻挡 5 空洞 + * 出库任务上报 1已接收任务,2开始执行,3执行完成 + * 移库任务上报 1 已接收 2开始执行3 执行完成 4 起点库位有货被阻挡 5目的点库位无货被阻挡 + */ + public int state; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreRequest.java new file mode 100644 index 000000000..0c6842a8e --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/BaseStoreRequest.java @@ -0,0 +1,42 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 任务下发请求参数基础类 + * 1、入库任务下发 + * 2、出库任务-批量下发 + * 3、空托盘出库任务下发 + * 4、移库任务-批量下发 + * 5、入库任务调整 + * 6、移库任务调整 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class BaseStoreRequest { + /** + * 任务编号 + * WCS内部任务编号,本次任务的唯一标识 + */ + public String orderId; + /** + * 楼层编号 + */ + public int floorNo; + /** + * 托盘条码信息 + */ + public String palletCode; + /** + * 原库位号 + * 托盘的存储库位编号。具体库位编号需要双方商定 + */ + public String srcLocation; + /** + * 目的库位号 + * 托盘的目的存储库位编号。具体库位编号需要双方商定 + */ + public String destLocation; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskRequest.java new file mode 100644 index 000000000..bea5ccea1 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskRequest.java @@ -0,0 +1,37 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 取消任务请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class CancelTaskRequest { + /** + * 任务编号 + * WCS内部任务编号,本次任务的唯一标识 + */ + public String orderId; + /** + * 托盘条码信息 + */ + public String palletCode; + /** + * 原库位号 + * 托盘的存储库位编号。具体库位编号需要双方商定 + */ + public String srcLocation; + /** + * 目的库位号 + * 托盘的目的存储库位编号。具体库位编号需要双方商定 + */ + public String destLocation; + /** + * 任务类型 + * 1 入库,2 出库,3 移库,4 空托盘入库,5 空托盘出库 + */ + public int taskType; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskResponse.java new file mode 100644 index 000000000..b89f4f110 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/CancelTaskResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 取消任务响应参数 Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class CancelTaskResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreRequest.java new file mode 100644 index 000000000..207894bc3 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreRequest.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 空托盘出库任务下发 请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class EmptyVehicleOutStoreRequest extends BaseStoreRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreResponse.java new file mode 100644 index 000000000..d189f410c --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/EmptyVehicleOutStoreResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 空托盘任务下发响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class EmptyVehicleOutStoreResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportRequest.java new file mode 100644 index 000000000..70493dcdf --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportRequest.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务上报请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreReportRequest extends BaseStoreReportRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportResponse.java new file mode 100644 index 000000000..5c467939d --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreReportResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务上报 响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreReportResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreRequest.java new file mode 100644 index 000000000..9d72850b4 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreRequest.java @@ -0,0 +1,18 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务下发请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreRequest extends BaseStoreRequest { + /** + * 任务类型 + * 1代表正常载货托盘入库,2代表空托盘入库 + */ + public int type; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetRequest.java new file mode 100644 index 000000000..2d276a211 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetRequest.java @@ -0,0 +1,12 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务调整请求参数类 + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreResetRequest extends BaseStoreRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetResponse.java new file mode 100644 index 000000000..525c1424e --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResetResponse.java @@ -0,0 +1,12 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务调整 响应参数Data类 + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreResetResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResponse.java new file mode 100644 index 000000000..fb409f6f7 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/InStoreResponse.java @@ -0,0 +1,12 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 入库任务下发响应参数 Data类 + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class InStoreResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportRequest.java new file mode 100644 index 000000000..93f933c51 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportRequest.java @@ -0,0 +1,10 @@ +package org.nl.acs.ext.wms.liKuData; + +/** + * 移库上报请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +public class MoveStoreReportRequest extends BaseStoreReportRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportResponse.java new file mode 100644 index 000000000..d338bc65d --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreReportResponse.java @@ -0,0 +1,12 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 移库上报响应参数 Data类 + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class MoveStoreReportResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreRequest.java new file mode 100644 index 000000000..e2873c635 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreRequest.java @@ -0,0 +1,25 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +import java.util.List; + +/** + * 移库任务下发请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class MoveStoreRequest { + /** + * 任务组编号 + * WCS内部任务组编号,本组任务的唯一标识 + */ + public String groupId; + + /** + * 任务信息,可批量下发 + */ + public List orderInfos; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetRequest.java new file mode 100644 index 000000000..48c6ef134 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetRequest.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 移库任务调整请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class MoveStoreResetRequest extends BaseStoreRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetResponse.java new file mode 100644 index 000000000..39b81e316 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResetResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 移库任务调整响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class MoveStoreResetResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResponse.java new file mode 100644 index 000000000..514303aea --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/MoveStoreResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 移库任务下发响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class MoveStoreResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportRequest.java new file mode 100644 index 000000000..d0557059c --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportRequest.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 出库任务上报请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class OutStoreReportRequest extends BaseStoreReportRequest { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportResponse.java new file mode 100644 index 000000000..e22ec4218 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreReportResponse.java @@ -0,0 +1,12 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 出库任务上报响应参数Data类 + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class OutStoreReportResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreRequest.java new file mode 100644 index 000000000..3fefe7977 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreRequest.java @@ -0,0 +1,27 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +import java.util.List; + +/** + * 出库任务下发请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class OutStoreRequest { + + /** + * 任务组编号 + * WCS内部任务组编号,本组任务的唯一标识 + */ + public String groupId; + + /** + * 任务信息,可批量下发 + */ + public List orderInfos; + +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreResponse.java new file mode 100644 index 000000000..b15006187 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/OutStoreResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 出库任务下发响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class OutStoreResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/Resp.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/Resp.java new file mode 100644 index 000000000..2e9aee841 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/Resp.java @@ -0,0 +1,32 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 调用立库接口统一返回参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class Resp { + /** + * 成功返回true,失败返回false + */ + public String result; + + /** + * 错误码(0表示成功)1代表入库目的位置有货,其他更多情况待定 + */ + public String code; + + /** + * 错误信息,如果成功则为null + */ + public String comment; + + /** + * 报文携带的数据 + */ + public T data; +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockRequest.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockRequest.java new file mode 100644 index 000000000..7e6852ecf --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockRequest.java @@ -0,0 +1,28 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 巷道锁定解锁请求参数类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class RoadWayIsLockRequest { + /** + * 楼层编号 + */ + public int floorNo; + /** + * 是否锁定 + * true代表锁定,false代表解锁 + */ + public String isLock; + /** + * 巷道编号 + * 需要解锁或锁定的巷道编号。具体巷道编号需要双方商定 + */ + public String roadwayNo; + +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockResponse.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockResponse.java new file mode 100644 index 000000000..6770a9bcc --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/liKuData/RoadWayIsLockResponse.java @@ -0,0 +1,13 @@ +package org.nl.acs.ext.wms.liKuData; + +import lombok.Data; + +/** + * 巷道锁定解锁响应参数Data类 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Data +public class RoadWayIsLockResponse extends BaseResponseData { +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/AcsToLiKuController.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/AcsToLiKuController.java new file mode 100644 index 000000000..94c72b175 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/rest/AcsToLiKuController.java @@ -0,0 +1,112 @@ + +package org.nl.acs.ext.wms.rest; + + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.acs.ext.wms.liKuData.*; +import org.nl.acs.ext.wms.service.AcsToLiKuService; +import org.nl.acs.ext.wms.service.AcsToWmsService; +import org.nl.modules.logging.annotation.Log; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +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; + +import java.util.Map; + +/** + * @author ludj + * @date 2021-07-21 + **/ +@RestController +@RequiredArgsConstructor +@Api(tags = "立库接口") +@RequestMapping("/api/liku") +@Slf4j +public class AcsToLiKuController { + private final AcsToLiKuService acsToLiKuService; + + @PostMapping("/inStore") + @Log("向立库wcs下发入库任务") + @ApiOperation("向立库wcs下发入库任务") + public ResponseEntity inStore(@RequestBody InStoreRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.inStore(requestParam), HttpStatus.OK); + } + + @PostMapping("/outStore") + @Log("向立库wcs下发出库任务") + @ApiOperation("向立库wcs下发出库任务") + public ResponseEntity outStore(@RequestBody OutStoreRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.outStore(requestParam), HttpStatus.OK); + } + + @PostMapping("/emptyVehicleOutStore") + @Log("向立库wcs下发空托盘出库任务") + @ApiOperation("向立库wcs下发空托盘出库任务") + public ResponseEntity emptyVehicleOutStore(@RequestBody EmptyVehicleOutStoreRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.emptyVehicleOutStore(requestParam), HttpStatus.OK); + } + + @PostMapping("/moveStore") + @Log("向立库wcs下发移库任务") + @ApiOperation("向立库wcs下发移库任务") + public ResponseEntity moveStore(@RequestBody MoveStoreRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.moveStore(requestParam), HttpStatus.OK); + } + + @PostMapping("/inStoreReset") + @Log("向立库wcs下发入库任务调整") + @ApiOperation("向立库wcs下发入库任务调整") + public ResponseEntity inStoreReset(@RequestBody InStoreResetRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.inStoreReset(requestParam), HttpStatus.OK); + } + + @PostMapping("/moveStoreReset") + @Log("向立库wcs下发移库任务调整") + @ApiOperation("向立库wcs下发移库任务调整") + public ResponseEntity moveStoreReset(@RequestBody MoveStoreResetRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.moveStoreReset(requestParam), HttpStatus.OK); + } + + @PostMapping("/roadWayIsLock") + @Log("向立库下发巷道锁定或解锁") + @ApiOperation("向立库下发巷道锁定或解锁") + public ResponseEntity roadWayIsLock(@RequestBody RoadWayIsLockRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.roadWayIsLock(requestParam), HttpStatus.OK); + } + + @PostMapping("/inStoreReport") + @Log("向立库下发入库任务上报") + @ApiOperation("向立库下发入库任务上报") + public ResponseEntity inStoreReport(@RequestBody InStoreReportRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.inStoreReport(requestParam), HttpStatus.OK); + } + + @PostMapping("/outStoreReport") + @Log("向立库下发出库任务上报") + @ApiOperation("向立库下发出库任务上报") + public ResponseEntity outStoreReport(@RequestBody OutStoreReportRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.outStoreReport(requestParam), HttpStatus.OK); + } + + @PostMapping("/moveStoreReport") + @Log("向立库下发移库任务上报") + @ApiOperation("向立库下发移库任务上报") + public ResponseEntity moveStoreReport(@RequestBody MoveStoreReportRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.moveStoreReport(requestParam), HttpStatus.OK); + } + + @PostMapping("/cancelTask") + @Log("向立库下发任务取消") + @ApiOperation("向立库下发任务取消") + public ResponseEntity cancelTask(@RequestBody CancelTaskRequest requestParam) { + return new ResponseEntity<>(acsToLiKuService.cancelTask(requestParam), HttpStatus.OK); + } +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/AcsToLiKuService.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/AcsToLiKuService.java new file mode 100644 index 000000000..16ee16e38 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/AcsToLiKuService.java @@ -0,0 +1,89 @@ +package org.nl.acs.ext.wms.service; + +import org.nl.acs.ext.wms.liKuData.*; + +/** + * @author: geng by + * @createDate: 2022/11/24 + */ +public interface AcsToLiKuService { + + /** + * 入库任务下发 + * @param requestParam + * @return + */ + public Resp inStore(InStoreRequest requestParam); + + /** + * 出库任务下发 + * @param requestParam + * @return + */ + public Resp outStore(OutStoreRequest requestParam); + + /** + * 空托盘出库任务下发 + * @param requestParam + * @return + */ + public Resp emptyVehicleOutStore(EmptyVehicleOutStoreRequest requestParam); + + + /** + * 移库任务下发 + * @param requestParam + * @return + */ + public Resp moveStore(MoveStoreRequest requestParam); + + + /** + * 入库任务调整 + * @param requestParam + * @return + */ + public Resp inStoreReset(InStoreResetRequest requestParam); + + + /** + * 移库任务调整 + * @param requestParam + * @return + */ + public Resp moveStoreReset(MoveStoreResetRequest requestParam); + + /** + * 巷道锁定与解锁 + * @return + */ + public Resp roadWayIsLock(RoadWayIsLockRequest requestParam); + + + /** + * 入库任务上报 + * @param requestParam + * @return + */ + public Resp inStoreReport(InStoreReportRequest requestParam); + + /** + * 出库任务上报 + * @param requestParam + * @return + */ + public Resp outStoreReport(OutStoreReportRequest requestParam); + + /** + * 移库任务上报 + * @param requestParam + * @return + */ + public Resp moveStoreReport(MoveStoreReportRequest requestParam); + + /** + *取消任务 + * @return + */ + public Resp cancelTask(CancelTaskRequest requestParam); +} diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToLiKuServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToLiKuServiceImpl.java new file mode 100644 index 000000000..662381886 --- /dev/null +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToLiKuServiceImpl.java @@ -0,0 +1,102 @@ +package org.nl.acs.ext.wms.service.impl; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.acs.device.address.service.AddressService; +import org.nl.acs.ext.wms.RespUtil; +import org.nl.acs.ext.wms.AcsUtil; +import org.nl.acs.ext.wms.liKuData.*; +import org.nl.acs.ext.wms.service.AcsToLiKuService; +import org.springframework.stereotype.Service; + +/** + * 立库WCS接口 + * + * @author: geng by + * @createDate: 2022/11/24 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class AcsToLiKuServiceImpl implements AcsToLiKuService { + + private final AddressService addressService; + + @Override + public Resp inStore(InStoreRequest requestParam) { + String api = addressService.findByCode("inStore").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new InStoreResponse()); + } + + @Override + public Resp outStore(OutStoreRequest requestParam) { + String api = addressService.findByCode("outStore").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new OutStoreResponse()); + } + + @Override + public Resp emptyVehicleOutStore(EmptyVehicleOutStoreRequest requestParam) { + String api = addressService.findByCode("emptyVehicleOutStore").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new EmptyVehicleOutStoreResponse()); + } + + @Override + public Resp moveStore(MoveStoreRequest requestParam) { + String api = addressService.findByCode("moveStore").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new MoveStoreResponse()); + } + + @Override + public Resp inStoreReset(InStoreResetRequest requestParam) { + String api = addressService.findByCode("inStoreReset").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new InStoreResetResponse()); + } + + @Override + public Resp moveStoreReset(MoveStoreResetRequest requestParam) { + String api = addressService.findByCode("moveStoreReset").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new MoveStoreResetResponse()); + } + + @Override + public Resp roadWayIsLock(RoadWayIsLockRequest requestParam) { + String api = addressService.findByCode("roadWayIsLock").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new RoadWayIsLockResponse()); + } + + @Override + public Resp inStoreReport(InStoreReportRequest requestParam) { + String api = addressService.findByCode("inStoreReport").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new InStoreReportResponse()); + } + + @Override + public Resp outStoreReport(OutStoreReportRequest requestParam) { + String api = addressService.findByCode("outStoreReport").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new OutStoreReportResponse()); + } + + @Override + public Resp moveStoreReport(MoveStoreReportRequest requestParam) { + String api = addressService.findByCode("moveStoreReport").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new MoveStoreReportResponse()); + } + + @Override + public Resp cancelTask(CancelTaskRequest requestParam) { + String api = addressService.findByCode("cancelTask").getMethods_url(); + String result = AcsUtil.notifyAcs(api, requestParam); + return RespUtil.getResp(result, new CancelTaskResponse()); + } + +}