From 3ee8fe50e1d49f848bd44d4ee5e98af223c42e7f Mon Sep 17 00:00:00 2001 From: wangsq Date: Wed, 8 Jul 2026 17:07:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E5=91=8A=E8=A7=A3=E8=AF=BB=E7=AD=BE?= =?UTF-8?q?=E5=90=8D=E7=94=9F=E6=88=90=E8=B0=83=E6=95=B4=20=E5=BE=B7?= =?UTF-8?q?=E5=AE=8F=E5=B7=9E=E4=B8=AD=E5=8C=BB=E9=99=A2=E6=99=BA=E8=83=BD?= =?UTF-8?q?=E5=AF=BC=E8=AF=8A=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/ynxbd/common/TestA.java | 38 ------------------- .../action/healthcard/HCReportAction.java | 34 ++++++++--------- .../config/healthcard/HCSignHelper.java | 17 ++++++++- .../common/helper/common/XmlConfigHelper.java | 2 +- .../德宏州中医院-hc-config.xml | 30 +++++++++++++++ 5 files changed, 63 insertions(+), 58 deletions(-) create mode 100644 src/main/resources/copy/ai-guidance/德宏州中医院-hc-config.xml diff --git a/src/main/java/com/ynxbd/common/TestA.java b/src/main/java/com/ynxbd/common/TestA.java index 459b072..1933cdc 100644 --- a/src/main/java/com/ynxbd/common/TestA.java +++ b/src/main/java/com/ynxbd/common/TestA.java @@ -2,44 +2,6 @@ package com.ynxbd.common; public class TestA { -// public static void main(String[] args) throws Exception { -// // System.out.println(AesWxHelper.decode("")); -// } - - -// public static void main(String[] args) { -// String KEY = "3431de05cbf9d0ffdbc064a352835981"; -// String PARTNER_ID = "100000637"; -// -// String timestamp = System.currentTimeMillis() + ""; -// String str = PARTNER_ID + timestamp; -// String cacheSign = HMACHelper.sha256(str, KEY); -// System.out.println(timestamp); -// System.out.println(cacheSign); -// } - -// public static void main(String[] args) { -// String KEY = "3431de05cbf9d0ffdbc064a352835981"; -// String PARTNER_ID = "100000637"; -// -// String timestamp = System.currentTimeMillis() + ""; -// String str = PARTNER_ID + timestamp; -// String cacheSign = HMACHelper.sha256(str, KEY); -// System.out.println(timestamp); -// System.out.println(cacheSign); -// } - - - public static void getSignInfo(javax.servlet.http.HttpServletRequest request) { - System.out.println("222222222"); - } - - - // 测试 - public static void main(String[] args) { - System.out.println("1111111111"); - } - // public static void main(String[] args) { // String respXML = "\n" + // "\t1002\n" + diff --git a/src/main/java/com/ynxbd/common/action/healthcard/HCReportAction.java b/src/main/java/com/ynxbd/common/action/healthcard/HCReportAction.java index ae59683..c297f03 100644 --- a/src/main/java/com/ynxbd/common/action/healthcard/HCReportAction.java +++ b/src/main/java/com/ynxbd/common/action/healthcard/HCReportAction.java @@ -38,23 +38,23 @@ public class HCReportAction extends BaseAction { // Map reportInfo = new HashMap<>(); // partnerId:合作方ID 腾讯健康提供 -// JSONObject jsonObject = OkHttpHelper.postJson(url + "合作方ID 腾讯健康提供", params -> { -// params.put("reqHead", reqHead); -// params.put("hospitalId", HealthCardConfig.H_HOSPITAL_ID); -// params.put("outerId", reportId); -// params.put("healthCardId", healthCardId); -// params.put("patientId", patientId); -// params.put("msgId", msgId); -// params.put("reportFileType", 2); // [ 1:pdf;2:图片;3:文本] -// params.put("reportContent", reportContent); // 报告内容:报告文件base64编码、体积需要在30MB以内 当reportFileType 取值为 1, 2时,将报告文件base64编码放在该字段 -// params.put("textReportInfo", ""); // 当reportFileType 取值为 3 时,将文本报告内容放下该字段。 -// }, headers -> { -// headers.add("Content-Type", "application/json"); -// headers.add("god-portal-signature", config.getSign()); -// headers.add("god-portal-timestamp", config.getTimestamp()); -// headers.add("god-portal-request-id", requestId); -// }); -// log.info("[报告解读] resp={}", jsonObject); + JSONObject jsonObject = OkHttpHelper.postJson(url + "合作方ID 腾讯健康提供", params -> { + params.put("reqHead", reqHead); + params.put("hospitalId", HealthCardConfig.H_HOSPITAL_ID); + params.put("outerId", reportId); + params.put("healthCardId", healthCardId); + params.put("patientId", patientId); + params.put("msgId", msgId); + params.put("reportFileType", 2); // [ 1:pdf;2:图片;3:文本] + params.put("reportContent", reportContent); // 报告内容:报告文件base64编码、体积需要在30MB以内 当reportFileType 取值为 1, 2时,将报告文件base64编码放在该字段 + params.put("textReportInfo", ""); // 当reportFileType 取值为 3 时,将文本报告内容放下该字段。 + }, headers -> { + headers.add("Content-Type", "application/json"); + headers.add("god-portal-signature", config.getSignature()); + headers.add("god-portal-timestamp", config.getTimestamp()); + headers.add("god-portal-request-id", requestId); + }); + log.info("[报告解读] resp={}", jsonObject); return Result.success(); } } diff --git a/src/main/java/com/ynxbd/common/config/healthcard/HCSignHelper.java b/src/main/java/com/ynxbd/common/config/healthcard/HCSignHelper.java index 2044268..c70546a 100644 --- a/src/main/java/com/ynxbd/common/config/healthcard/HCSignHelper.java +++ b/src/main/java/com/ynxbd/common/config/healthcard/HCSignHelper.java @@ -1,6 +1,7 @@ package com.ynxbd.common.config.healthcard; import cn.hutool.crypto.digest.DigestUtil; +import com.ynxbd.common.helper.common.HMACHelper; import lombok.Getter; import lombok.extern.slf4j.Slf4j; @@ -9,7 +10,7 @@ import java.util.UUID; @Slf4j @Getter public class HCSignHelper { - private String sign; + private String signature; private String timestamp; private String requestId; @@ -20,8 +21,20 @@ public class HCSignHelper { // 2. 拼接 signStr = partnerId + timestamp + token String signStr = partnerId + this.timestamp + token; // 3. MD5 32位小写 - this.sign = DigestUtil.md5Hex(signStr); + this.signature = DigestUtil.md5Hex(signStr); this.requestId = String.valueOf(UUID.randomUUID()); return this; } + + + public static void main(String[] args) { + String TOKEN = "795b207e12572839976d9310bdde32be"; + String PARTNER_ID = "100000317"; + + String timestamp = System.currentTimeMillis() + ""; + String str = PARTNER_ID + timestamp; + String cacheSign = HMACHelper.sha256(str, TOKEN); + System.out.println(timestamp); + System.out.println(cacheSign); + } } diff --git a/src/main/java/com/ynxbd/common/helper/common/XmlConfigHelper.java b/src/main/java/com/ynxbd/common/helper/common/XmlConfigHelper.java index 0452de5..51e6139 100644 --- a/src/main/java/com/ynxbd/common/helper/common/XmlConfigHelper.java +++ b/src/main/java/com/ynxbd/common/helper/common/XmlConfigHelper.java @@ -132,7 +132,7 @@ public class XmlConfigHelper { // // // public static void main(String[] args) { -// Element report = readXmlConfig("hc-config.xml", "report"); +// Element report = readXmlConfig("德宏州中医院-hc-config.xml", "report"); // String s = report.elementText("is_dev"); // System.out.println(s); // } diff --git a/src/main/resources/copy/ai-guidance/德宏州中医院-hc-config.xml b/src/main/resources/copy/ai-guidance/德宏州中医院-hc-config.xml new file mode 100644 index 0000000..7480017 --- /dev/null +++ b/src/main/resources/copy/ai-guidance/德宏州中医院-hc-config.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + true + + true + + 100000317 + + 795b207e12572839976d9310bdde32be + + 795b207e12572839976d9310bdde32be + + 20002953 + 德宏州中医医院 + 暂无介绍 + 三级乙等 + 暂无地址 + 0692-2121450 + + \ No newline at end of file