From 1563527fa11de5345de56c086eee713a1d482e72 Mon Sep 17 00:00:00 2001 From: x_z Date: Thu, 19 May 2022 09:37:17 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=A0=B9=E6=8D=AE=E6=8E=A5=E5=8F=A3=E6=96=87?= =?UTF-8?q?=E6=A1=A3=EF=BC=8C=E6=96=B0=E5=BB=BA=E5=B9=B3=E5=92=8C=E6=89=80?= =?UTF-8?q?=E9=9C=80=E6=8E=A5=E5=8F=A3=E5=8F=82=E6=95=B0=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mipsdl/admin/client/http/PhxyyClient.java | 38 +++++++------------ .../mipsdl/admin/client/http/TestClient.java | 14 +++---- .../admin/controller/UdiWmsController.java | 36 ++++++++++++++---- .../admin/req/UdiwmsProductRequest.java | 5 +++ .../mipsdl/admin/req/UdiwmsUnitRequest.java | 5 +++ .../admin/req/phxyy/PhBusTypeRequest.java | 13 +++++++ .../admin/req/phxyy/PhOrderRequest.java | 23 +++++++++++ .../admin/req/phxyy/PhProductRequest.java | 33 ++++++++++++++++ .../mipsdl/admin/req/phxyy/PhUnitRequest.java | 20 ++++++++++ .../admin/req/phxyy/PhWarehouseRequest.java | 15 ++++++++ 10 files changed, 163 insertions(+), 39 deletions(-) create mode 100644 api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhBusTypeRequest.java create mode 100644 api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhOrderRequest.java create mode 100644 api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhProductRequest.java create mode 100644 api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhUnitRequest.java create mode 100644 api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhWarehouseRequest.java diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/PhxyyClient.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/PhxyyClient.java index 344ec89..8aedfbc 100644 --- a/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/PhxyyClient.java +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/PhxyyClient.java @@ -3,12 +3,12 @@ package com.glxp.mipsdl.admin.client.http; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.TypeReference; -import com.glxp.mipsdl.admin.client.BaseHttpClient; import com.glxp.mipsdl.admin.config.ThirdSysConfig; import com.glxp.mipsdl.admin.dao.phxyy.BasicThirdSysDetailDao; import com.glxp.mipsdl.admin.entity.phxyy.BasicThirdSysBusApiEntity; import com.glxp.mipsdl.admin.entity.phxyy.BasicThirdSysDetailEntity; import com.glxp.mipsdl.admin.req.*; +import com.glxp.mipsdl.admin.req.phxyy.*; import com.glxp.mipsdl.admin.res.phxyy.BussinessOriginTypeResponse; import com.glxp.mipsdl.admin.service.phxyy.BasicThirdSysBusApiService; import com.glxp.mipsdl.admin.service.phxyy.BussinessOriginTypeService; @@ -24,7 +24,7 @@ import javax.annotation.Resource; * 平和县医院对接 */ @Service -public class PhxyyClient implements BaseHttpClient { +public class PhxyyClient { @Resource private ThirdSysConfig thirdSysConfig; @@ -45,9 +45,8 @@ public class PhxyyClient implements BaseHttpClient { @Resource private BasicThirdSysDetailDao basicThirdSysDetailDao; - @Override - public BaseResponse getUnit(UdiwmsUnitRequest unitRequest) { - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("corpUrl", unitRequest.getThirdSys()); + public BaseResponse getUnit(PhUnitRequest unitRequest) { + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("corpUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), unitRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { @@ -55,9 +54,8 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override - public BaseResponse getProducts(UdiwmsProductRequest udiwmsProductRequest) { - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("piQueryUrl", udiwmsProductRequest.getThirdSys()); + public BaseResponse getProducts(PhProductRequest udiwmsProductRequest) { + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("piQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsProductRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { @@ -65,9 +63,8 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override - public BaseResponse getOrderTypes(UdiwmsBusTypeRequest udiwmsBusTypeRequest) { - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("busTypeQueryUrl", udiwmsBusTypeRequest.getThirdSys()); + public BaseResponse getOrderTypes(PhBusTypeRequest udiwmsBusTypeRequest) { + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("busTypeQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsBusTypeRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { @@ -75,7 +72,6 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override public BaseResponse getOrders(UdiwmsOrderRequest udiwmsOrderRequest) { if (StrUtil.isEmpty(udiwmsOrderRequest.getBillType())) { return ResultVOUtils.error(500, "单据类型不能未空"); @@ -83,7 +79,7 @@ public class PhxyyClient implements BaseHttpClient { if (StrUtil.isEmpty(udiwmsOrderRequest.getThirdSys())) { return ResultVOUtils.error(500, "第三方系统ID不能为空"); } - BussinessOriginTypeResponse bussinessOriginTypeResponse = bussinessOriginTypeService.findByKey(udiwmsOrderRequest.getBillType(), udiwmsOrderRequest.getThirdSys()); + BussinessOriginTypeResponse bussinessOriginTypeResponse = bussinessOriginTypeService.findByKey(udiwmsOrderRequest.getBillType(), thirdSysConfig.getThirdSysConfig().getThirdId()); udiwmsOrderRequest.setBillType(bussinessOriginTypeResponse.getThirdAction()); BasicThirdSysBusApiEntity basicThirdSysBusApiEntity = basicThirdSysBusApiService.selectByKey(bussinessOriginTypeResponse.getThirdAction(), bussinessOriginTypeResponse.getThirdSys(), 1); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysBusApiEntity.getUrl(), udiwmsOrderRequest, getHeaders()); @@ -93,15 +89,11 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override - public BaseResponse submitOrders(UdiwmsOrderRequest udiwmsOrderRequest) { + public BaseResponse submitOrders(PhOrderRequest udiwmsOrderRequest) { if (StrUtil.isEmpty(udiwmsOrderRequest.getBillType())) { return ResultVOUtils.error(500, "单据类型不能未空"); } - if (StrUtil.isEmpty(udiwmsOrderRequest.getThirdSys())) { - return ResultVOUtils.error(500, "第三方系统ID不能为空"); - } - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("orderSubmitUrl", udiwmsOrderRequest.getThirdSys()); + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("orderSubmitUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsOrderRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { @@ -109,9 +101,8 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override public BaseResponse getInvProducts(UdiwmsOnhandRequest udiwmsOnhandRequest) { - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("invPiUrl", udiwmsOnhandRequest.getThirdSys()); + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("invPiUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsOnhandRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { @@ -119,9 +110,8 @@ public class PhxyyClient implements BaseHttpClient { return baseResponse; } - @Override - public BaseResponse getWarehouse(UdiwmsWarehouseRequest udiwmsWarehouseRequest) { - BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("warehouseUrl", udiwmsWarehouseRequest.getThirdSys()); + public BaseResponse getWarehouse(PhWarehouseRequest udiwmsWarehouseRequest) { + BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("warehouseQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId()); String response = HttpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsWarehouseRequest, getHeaders()); BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() { diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/TestClient.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/TestClient.java index d19d249..c7dad25 100644 --- a/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/TestClient.java +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/client/http/TestClient.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.glxp.mipsdl.admin.req.*; +import com.glxp.mipsdl.admin.req.phxyy.PhUnitRequest; import com.glxp.mipsdl.admin.res.system.UdiwmsWarehouseResponse; import com.glxp.mipsdl.admin.res.system.*; import com.glxp.mipsdl.admin.util.CustomUtil; @@ -30,10 +31,7 @@ public class TestClient { * @param testUnitRequest * @return */ - public BaseResponse getUnit(UdiwmsUnitRequest testUnitRequest) { - if (null == testUnitRequest || StrUtil.isBlank(testUnitRequest.getThirdSys())) { - return ResultVOUtils.error(500, "第三方系统ID不能为空"); - } + public BaseResponse getUnit(PhUnitRequest testUnitRequest) { List unitResponses = new ArrayList<>(); AtomicInteger unitId = new AtomicInteger(2468); for (int i = 0; i < 10; i++) { @@ -58,9 +56,6 @@ public class TestClient { * @return */ public BaseResponse getProducuts(UdiwmsProductRequest udiwmsProductRequest) { - if (null == udiwmsProductRequest || StrUtil.isBlank(udiwmsProductRequest.getThirdSys())) { - return ResultVOUtils.error(500, "第三方系统ID不能为空"); - } List productInfoResponses = new ArrayList<>(); for (int i = 0; i < 10; i++) { UdiwmsProductInfoResponse response = UdiwmsProductInfoResponse.builder() @@ -271,13 +266,16 @@ public class TestClient { response.setCode("1001"); response.setName("总库"); response.setRemark("备注"); + List details = new ArrayList<>(); for (int j = 0; j < 3; j++) { UdiwmsWarehouseDetail detail = new UdiwmsWarehouseDetail(); detail.setCode("100101"); detail.setName("货位1"); detail.setRemark("货位备注"); - response.getDetails().add(detail); + details.add(detail); } + response.setDetails(details); + list.add(response); } return ResultVOUtils.success(list); } diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/controller/UdiWmsController.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/controller/UdiWmsController.java index 8cb1a95..1b8dbfd 100644 --- a/api-sync/src/main/java/com/glxp/mipsdl/admin/controller/UdiWmsController.java +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/controller/UdiWmsController.java @@ -1,5 +1,6 @@ package com.glxp.mipsdl.admin.controller; +import cn.hutool.core.bean.BeanUtil; import com.glxp.mipsdl.admin.annotation.AuthRuleAnnotation; import com.glxp.mipsdl.admin.client.http.TestClient; import com.glxp.mipsdl.admin.client.http.UdPlatClient; @@ -7,6 +8,7 @@ import com.glxp.mipsdl.admin.client.http.YyUCloud31Client; import com.glxp.mipsdl.admin.client.http.PhxyyClient; import com.glxp.mipsdl.admin.http.request.USignRequest; import com.glxp.mipsdl.admin.req.*; +import com.glxp.mipsdl.admin.req.phxyy.*; import com.glxp.mipsdl.common.enums.ResultEnum; import com.glxp.mipsdl.common.res.BaseResponse; import com.glxp.mipsdl.common.util.ResultVOUtils; @@ -46,9 +48,13 @@ public class UdiWmsController { if (curFlag.equals("YONGYOU_U8_V3.1")) { return pzhzdClient.getUnit(testUnitRequest); } else if (curFlag.equals("TEST")) { - return testClient.getUnit(testUnitRequest); + PhUnitRequest phUnitRequest = new PhUnitRequest(); + BeanUtil.copyProperties(testUnitRequest, phUnitRequest); + return testClient.getUnit(phUnitRequest); } else if (curFlag.equals("PHXYY")) { - return phxyyClient.getUnit(testUnitRequest); + PhUnitRequest phUnitRequest = new PhUnitRequest(); + BeanUtil.copyProperties(testUnitRequest, phUnitRequest); + return phxyyClient.getUnit(phUnitRequest); } else return ResultVOUtils.error(500, "当前第三方系统不支持往来单位信息查询!"); } @@ -64,18 +70,30 @@ public class UdiWmsController { } else if (curFlag.equals("TEST")) { return testClient.getProducuts(udiwmsProductRequest); } else if (curFlag.equals("PHXYY")) { - return phxyyClient.getProducts(udiwmsProductRequest); + PhProductRequest phProductRequest = new PhProductRequest(); + BeanUtil.copyProperties(udiwmsProductRequest, phProductRequest); + return phxyyClient.getProducts(phProductRequest); } return ResultVOUtils.error(500, "当前第三方系统不支持产品信息查询!"); } + /** + * 查询仓库货位码 + * + * @param udiwmsWarehouseRequest + * @return + */ @AuthRuleAnnotation("") @PostMapping("/udiwms/erp/getWarehouse") - public BaseResponse getWarehouse(UdiwmsWarehouseRequest udiwmsWarehouseRequest) { + public BaseResponse getWarehouse(@RequestBody UdiwmsWarehouseRequest udiwmsWarehouseRequest) { if (curFlag.equals("YONGYOU_U8_V3.1")) { return pzhzdClient.getWarehouse(udiwmsWarehouseRequest); } else if (curFlag.equals("TEST")) { return testClient.getWarehouse(udiwmsWarehouseRequest); + } else if (curFlag.equals("PHXYY")) { + PhWarehouseRequest phWarehouseRequest = new PhWarehouseRequest(); + BeanUtil.copyProperties(udiwmsWarehouseRequest, phWarehouseRequest); + return phxyyClient.getWarehouse(phWarehouseRequest); } else return ResultVOUtils.error(500, "当前第三方系统不支持仓库货位号查询!"); } @@ -100,7 +118,9 @@ public class UdiWmsController { if (curFlag.equals("TEST")) { return testClient.getBusType(udiwmsBusTypeRequest); } else if (curFlag.equals("PHXYY")) { - return phxyyClient.getOrderTypes(udiwmsBusTypeRequest); + PhBusTypeRequest phBusTypeRequest = new PhBusTypeRequest(); + BeanUtil.copyProperties(udiwmsBusTypeRequest, phBusTypeRequest); + return phxyyClient.getOrderTypes(phBusTypeRequest); } else return ResultVOUtils.error(500, "当前第三方系统不支持业务单据类型查询!"); @@ -113,9 +133,11 @@ public class UdiWmsController { if (curFlag.equals("TEST")) { return testClient.addOrders(udiwmsOrderRequest); } else if (curFlag.equals("PHXYY")) { - return phxyyClient.submitOrders(udiwmsOrderRequest); + PhOrderRequest phOrderRequest = new PhOrderRequest(); + BeanUtil.copyProperties(udiwmsOrderRequest, phOrderRequest); + return phxyyClient.submitOrders(phOrderRequest); } - return ResultVOUtils.error(500, ""); + return ResultVOUtils.error(500, "当前第三方系统不支持提交单据!"); } diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsProductRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsProductRequest.java index c348a33..5d04f7f 100644 --- a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsProductRequest.java +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsProductRequest.java @@ -76,4 +76,9 @@ public class UdiwmsProductRequest extends ListPageRequest { private String remark3; private String thirdSys; + /** + * 最后更新时间 + */ + private String lastUpdateTime; + } diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsUnitRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsUnitRequest.java index ef31f3e..33664f5 100644 --- a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsUnitRequest.java +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/UdiwmsUnitRequest.java @@ -10,4 +10,9 @@ public class UdiwmsUnitRequest extends ListPageRequest { private String name; //往来单位名称 private String thirdSys; //第三方系统编码 + /** + * 最后更新时间 + */ + private String lastUpdateTime; + } diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhBusTypeRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhBusTypeRequest.java new file mode 100644 index 0000000..0f4e717 --- /dev/null +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhBusTypeRequest.java @@ -0,0 +1,13 @@ +package com.glxp.mipsdl.admin.req.phxyy; + +import lombok.Data; + +@Data +public class PhBusTypeRequest { + + //单据类型编码 + private String code; + + //单据类型名称 + private String name; +} diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhOrderRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhOrderRequest.java new file mode 100644 index 0000000..61eccfb --- /dev/null +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhOrderRequest.java @@ -0,0 +1,23 @@ +package com.glxp.mipsdl.admin.req.phxyy; + +import com.glxp.mipsdl.admin.req.UdiwmsOrderDetail; +import lombok.Data; + +import java.util.List; + +@Data +public class PhOrderRequest { + + + private String billNo; //单据号 + private String billFlag; //单据状态,0.未签字,1.已签字 + private Integer inoutType; //出入库类型 1.入库 2.出库 + private String billDate; //单据日期 + private String billType; //单据类型 + private String remark; //备注 + private String corpId; //第三方单据往来单位ID + private String corpName; //往来单位 + + private List items; //单据详情数组 + +} diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhProductRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhProductRequest.java new file mode 100644 index 0000000..5ab59a2 --- /dev/null +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhProductRequest.java @@ -0,0 +1,33 @@ +package com.glxp.mipsdl.admin.req.phxyy; + +import com.glxp.mipsdl.admin.req.ListPageRequest; +import lombok.Data; + +@Data +public class PhProductRequest extends ListPageRequest { + + private String code; //产品编码 + private String name; //产品名称 + + //计量单位 + private String measname; + + + //注册/备案号 + private String registerNo; + + //生产厂家 + private String manufactory; + + //医保编码 + private String ybbm; + + //型号 + private String standard; + + /** + * 最后更新时间 + */ + private String lastUpdateTime; + +} diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhUnitRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhUnitRequest.java new file mode 100644 index 0000000..9ca4802 --- /dev/null +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhUnitRequest.java @@ -0,0 +1,20 @@ +package com.glxp.mipsdl.admin.req.phxyy; + +import com.glxp.mipsdl.admin.req.ListPageRequest; +import lombok.Data; + +/** + * 平和 查询往来单位接口参数 + */ +@Data +public class PhUnitRequest extends ListPageRequest { + + private String unitId; //往来单位编码 + private String name; //往来单位名称 + + /** + * 最后更新时间 + */ + private String lastUpdateTime; + +} diff --git a/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhWarehouseRequest.java b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhWarehouseRequest.java new file mode 100644 index 0000000..df4094a --- /dev/null +++ b/api-sync/src/main/java/com/glxp/mipsdl/admin/req/phxyy/PhWarehouseRequest.java @@ -0,0 +1,15 @@ +package com.glxp.mipsdl.admin.req.phxyy; + +import com.glxp.mipsdl.admin.req.ListPageRequest; +import lombok.Data; + +@Data +public class PhWarehouseRequest extends ListPageRequest { + + //仓库号,支持模糊查询 + private String inventoryCode; + + //货位号,支持模糊查询 + private String warehouseCode; + +}