diff --git a/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/ErpExternalApi.java b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/ErpExternalApi.java index 457c0cd..7bf7d12 100644 --- a/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/ErpExternalApi.java +++ b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/ErpExternalApi.java @@ -6,10 +6,12 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.Valid; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import java.util.HashMap; +import java.util.Map; @FeignClient(name = ApiConstants.NAME) @Tag(name = "RPC 服务 - ERP") @@ -21,4 +23,8 @@ public interface ErpExternalApi { @Operation(summary = "erp数据提交") HashMap submitDataToErp(@Valid @RequestBody ErpSubmitReqDTO reqDTO); + @GetMapping(PREFIX + "/query") + @Operation(summary = "erp数据查询") + HashMap queryDataToErp(@Valid @RequestBody String funcnr, Map req); + } diff --git a/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/dto/ErpQueryReqDTO.java b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/dto/ErpQueryReqDTO.java new file mode 100644 index 0000000..a7e9232 --- /dev/null +++ b/zt-module-erp/zt-module-erp-api/src/main/java/com/zt/plat/module/erp/api/dto/ErpQueryReqDTO.java @@ -0,0 +1,32 @@ +package com.zt.plat.module.erp.api.dto; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Map; + +@Schema(description = "RPC 服务 - 查询 ERP DTO") +@Data +public class ErpQueryReqDTO { + /** + * 调用ERP接口查询erp数据 + * + * 请求参数说明: + * "uuid": 请求uuid,必须 + * "sapsys": SAP系统ID, 必须 + * "srcsys": 源调用系统ID,必须 + * "funcnr": 接口编号,必须,参见RFC功能列表,可调用接口编号范围051-900 + * "bskey": 调用系统业务单据编号,必须,在外部系统唯一,用于关联 + * "usrid": 外部系统用户id + * "usrnm": 外部系统用户名 + * "sign": 签名,uuid+srcsys+密码,MD5 32位小写签名,密码另行约定 + * "req": {具体参数,参见RFC功能列表} + */ + private String funcnr; + private String bskey; + private String usrid; + private String usrnm; + private String sign; + private Map req; + +} diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java index ade41ae..016f0c4 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/api/ErpExternalApiImpl.java @@ -7,6 +7,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; +import java.util.Map; /** * ERP Api 实现类 @@ -25,4 +26,9 @@ public class ErpExternalApiImpl implements ErpExternalApi { public HashMap submitDataToErp(ErpSubmitReqDTO reqDTO) { return erpConfig.pushDataToErp(reqDTO); } + + @Override + public HashMap queryDataToErp(String funcnr, Map req) { + return erpConfig.fetchDataFromERP(funcnr, req); + } } diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryPageReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryPageReqVO.java index bf71059..e550f77 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryPageReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryPageReqVO.java @@ -16,10 +16,10 @@ public class ErpFactoryPageReqVO extends PageParam { private String number; @Schema(description = "公司编号") - private String companyNumber; + private String erpCompanyNumber; @Schema(description = "公司名称") - private String companyName; + private String erpCompanyName; @Schema(description = "类型") private String type; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryRespVO.java index 9700347..e71e7d2 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryRespVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactoryRespVO.java @@ -23,7 +23,10 @@ public class ErpFactoryRespVO { private String number; @Schema(description = "公司编号") - private String companyNumber; + private String erpCompanyNumber; + + @Schema(description = "公司编号") + private String erpCompanyName; @Schema(description = "类型") private String type; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactorySaveReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactorySaveReqVO.java index f93795f..9730222 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactorySaveReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpFactorySaveReqVO.java @@ -20,10 +20,7 @@ public class ErpFactorySaveReqVO { private String number; @Schema(description = "公司编号") - private String companyNumber; - - @Schema(description = "公司编号") - private String companyName; + private String erpCompanyNumber; @Schema(description = "类型") private String type; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java index 18e1ae7..cac2001 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpWarehouseRespVO.java @@ -2,6 +2,7 @@ package com.zt.plat.module.erp.controller.admin.erp.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -18,6 +19,9 @@ public class ErpWarehouseRespVO { @ExcelProperty("工厂编码;将查询参数存入") private String factoryNumber; + @Schema(description = "工厂名称") + private String factoryName; + @Schema(description = "库位描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三") @ExcelProperty("库位描述") private String name; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpFactoryDO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpFactoryDO.java index 61a613b..e86556c 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpFactoryDO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpFactoryDO.java @@ -41,13 +41,13 @@ public class ErpFactoryDO extends BusinessBaseDO { * 公司编号 */ @TableField("CPN_ID") - private String companyNumber; + private String erpCompanyNumber; /** * 公司名称 */ @TableField(exist = false) - private String companyName; + private String erpCompanyName; /** * 类型 diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpFactoryServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpFactoryServiceImpl.java index b7966fd..7f355e3 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpFactoryServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpFactoryServiceImpl.java @@ -220,7 +220,7 @@ public class ErpFactoryServiceImpl implements ErpFactoryService { ErpFactoryDO DO = new ErpFactoryDO(); DO.setName(dataJson.getString("NAME1")); DO.setNumber(number); - DO.setCompanyNumber(dataJson.getString("BUKRS")); + DO.setErpCompanyNumber(dataJson.getString("BUKRS")); DO.setType("ERP"); if (numbers.get(number)!=null) { // 更新 diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/utils/ErpConfig.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/utils/ErpConfig.java index 114ccda..2548206 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/utils/ErpConfig.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/utils/ErpConfig.java @@ -5,10 +5,8 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.zt.plat.module.erp.api.dto.ErpSubmitReqDTO; -import jakarta.annotation.Resource; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; -import org.springframework.data.redis.core.RedisTemplate; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; @@ -16,7 +14,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.client.RestTemplate; import java.util.*; -import java.util.stream.Collectors; import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.zt.plat.module.erp.enums.ErrorCodeConstants.*; @@ -25,7 +22,6 @@ import static dm.jdbc.util.DriverUtil.log; @Configuration public class ErpConfig { - @Value("${erp.address}") private String erpAddress; diff --git a/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpFactoryMapper.xml b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpFactoryMapper.xml index d58ec00..2444df4 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpFactoryMapper.xml +++ b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpFactoryMapper.xml @@ -10,23 +10,31 @@ --> diff --git a/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpWarehouseMapper.xml b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpWarehouseMapper.xml index 9afa594..5212755 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpWarehouseMapper.xml +++ b/zt-module-erp/zt-module-erp-server/src/main/resources/mapper/ErpWarehouseMapper.xml @@ -14,23 +14,31 @@ \ No newline at end of file