diff --git a/src/main/java/com/glxp/mipsdl/controller/YbApiController.java b/src/main/java/com/glxp/mipsdl/controller/YbApiController.java index 11cabf6..0c8e795 100644 --- a/src/main/java/com/glxp/mipsdl/controller/YbApiController.java +++ b/src/main/java/com/glxp/mipsdl/controller/YbApiController.java @@ -32,12 +32,12 @@ public class YbApiController { /** * 【1201】医药机构信息获取 * - * @param yljg1201Request + * @param baseYljg1201Request * @return */ @PostMapping("/udiwms/erp/yb/1201") - public BaseResponse getYb1201(@RequestBody Yljg1201Request yljg1201Request) { - String jsonStr = JSONUtil.toJsonStr(yljg1201Request); + public BaseResponse getYb1201(@RequestBody BaseYljg1201Request baseYljg1201Request) { + String jsonStr = JSONUtil.toJsonStr(baseYljg1201Request); log.error("【1201】医药机构信息获取请求参数:" + jsonStr); return ResultVOUtils.success(ybClient.ybPost("1201", jsonStr)); } @@ -53,6 +53,25 @@ public class YbApiController { return ResultVOUtils.success(ybClient.ybPost(dictRequest.getApiCode(), jsonStr)); } + + /** + * 单据试上传 + */ + @PostMapping("/udiwms/erp/yb/order/upload/test") + public BaseResponse testUpload(@RequestBody DictRequest dictRequest) { + String jsonStr = JSONUtil.toJsonStr(dictRequest.getOrder()); + return ResultVOUtils.success(ybClient.ybPost(dictRequest.getApiCode(), jsonStr)); + } + + + @PostMapping("/udiwms/erp/yb/sign") + public BaseResponse signNo(@RequestBody BaseYbRequest baseYbRequest) { + String jsonStr = JSONUtil.toJsonStr(baseYbRequest); + log.error("【1201】医药机构信息获取请求参数:" + jsonStr); + return ResultVOUtils.success(ybClient.ybPost("9001", jsonStr)); + } + + @Resource VInsurNationGoodsPhysicMapper goodsPhysicMapper; @Resource diff --git a/src/main/java/com/glxp/mipsdl/entity/system/ThrYbSetup.java b/src/main/java/com/glxp/mipsdl/entity/system/ThrYbSetup.java index 9bb88d5..34ea8b1 100644 --- a/src/main/java/com/glxp/mipsdl/entity/system/ThrYbSetup.java +++ b/src/main/java/com/glxp/mipsdl/entity/system/ThrYbSetup.java @@ -81,6 +81,17 @@ public class ThrYbSetup implements Serializable { */ @TableField(value = "opter_type") private String opter_type; + @TableField(value = "sequenceNum") + private String sequenceNum; + @TableField(value = "opter_no") + private String opter_no; + @TableField(value = "mac") + private String mac; + @TableField(value = "ip") + private String ip; + + @TableField(value = "signNo") + private String signNo; private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/src/main/java/com/glxp/mipsdl/req/yb/BaseYbRequest.java b/src/main/java/com/glxp/mipsdl/req/yb/BaseYbRequest.java new file mode 100644 index 0000000..8e2c07f --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/req/yb/BaseYbRequest.java @@ -0,0 +1,9 @@ +package com.glxp.mipsdl.req.yb; + +import lombok.Data; + +@Data +public class BaseYbRequest { + + private SignRequest sign; +} diff --git a/src/main/java/com/glxp/mipsdl/req/yb/BaseYljg1201Request.java b/src/main/java/com/glxp/mipsdl/req/yb/BaseYljg1201Request.java new file mode 100644 index 0000000..570c910 --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/req/yb/BaseYljg1201Request.java @@ -0,0 +1,9 @@ +package com.glxp.mipsdl.req.yb; + +import lombok.Data; + +@Data +public class BaseYljg1201Request { + + private Yljg1201Request medinsinfo; +} diff --git a/src/main/java/com/glxp/mipsdl/req/yb/DictRequest.java b/src/main/java/com/glxp/mipsdl/req/yb/DictRequest.java index bca0c8d..2c30aa8 100644 --- a/src/main/java/com/glxp/mipsdl/req/yb/DictRequest.java +++ b/src/main/java/com/glxp/mipsdl/req/yb/DictRequest.java @@ -8,6 +8,8 @@ public class DictRequest { private String apiCode; private DataInfo data; + BaseXsck3505Request order; + @Data public static class DataInfo { private String ver; diff --git a/src/main/java/com/glxp/mipsdl/req/yb/SignRequest.java b/src/main/java/com/glxp/mipsdl/req/yb/SignRequest.java new file mode 100644 index 0000000..b1e88d5 --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/req/yb/SignRequest.java @@ -0,0 +1,12 @@ +package com.glxp.mipsdl.req.yb; + +import lombok.Data; + +@Data +public class SignRequest { + + private String ip; + private String mac; + private String opter_no; + +} diff --git a/src/main/java/com/glxp/mipsdl/service/yb/YbClient.java b/src/main/java/com/glxp/mipsdl/service/yb/YbClient.java index 2de2a0f..076500d 100644 --- a/src/main/java/com/glxp/mipsdl/service/yb/YbClient.java +++ b/src/main/java/com/glxp/mipsdl/service/yb/YbClient.java @@ -25,14 +25,14 @@ public class YbClient { public ChsMedicalResponse ybPost(String apiNo, String data) { - log.error("[" + apiNo + "]医保接口请求参数:" + data); + log.info("[" + apiNo + "]医保接口请求参数:" + data); ThrYbSetup thrYbSetup = thrYbSetupService.getSetUp(); if (thrYbSetup == null) throw new RuntimeException("未配置医保接口"); String infno = apiNo; SignTypeEnum signType = SignTypeEnum.SM3; EncryptionModeEnum encType = EncryptionModeEnum.SM4; - String msgId = thrYbSetup.getFixmedins_code() + DateUtil.formatYbDateTime(new Date()) + "0001"; + String msgId = thrYbSetup.getFixmedins_code() + DateUtil.formatYbDateTime(new Date()) + thrYbSetup.getSequenceNum(); try { ZephyrMedicalClient client = new ZephyrMedicalClient(thrYbSetup.getUrl(), infno, thrYbSetup.getAppId(), thrYbSetup.getAppSecret(), signType, thrYbSetup.getSignKey(), encType, thrYbSetup.getEncKey()); @@ -46,8 +46,10 @@ public class YbClient { req.setInfTime(DateUtil.formatDateTime(new Date())); req.setFixmedinsCode(thrYbSetup.getFixmedins_code()); req.setFixmedinsName(thrYbSetup.getFixmedins_name()); - com.alibaba.fastjson.JSONObject yyyy = JSONObject.parseObject(data, com.alibaba.fastjson.JSONObject.class); - req.setInput(yyyy); + com.alibaba.fastjson.JSONObject dataJson = JSONObject.parseObject(data, com.alibaba.fastjson.JSONObject.class); + req.setInput(dataJson); + req.setSignNo(thrYbSetup.getSignNo()); + log.info("【" + apiNo + "】医保接口请求参数:" + JSONObject.toJSONString(req)); ChsMedicalResponse resp = client.execute(req); return resp; } catch (ZephyrApiException e) {