|
@@ -1,13 +1,27 @@
|
|
|
package com.zskk.service;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLEncoder;
|
|
|
+import java.security.MessageDigest;
|
|
|
+import java.security.NoSuchAlgorithmException;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.Map;
|
|
|
import java.util.UUID;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.jfinal.kit.HashKit;
|
|
|
+import com.jfinal.kit.HttpKit;
|
|
|
import com.jfinal.kit.PropKit;
|
|
|
+import com.jfinal.plugin.activerecord.Record;
|
|
|
import com.zskk.model.Exams;
|
|
|
import com.zskk.model.User;
|
|
|
import com.zskk.model.UserBind;
|
|
|
|
|
|
+import okhttp3.ConnectionSpec;
|
|
|
+import okhttp3.FormBody;
|
|
|
import okhttp3.MediaType;
|
|
|
import okhttp3.OkHttpClient;
|
|
|
import okhttp3.Request;
|
|
@@ -20,7 +34,6 @@ public class UserService {
|
|
|
|
|
|
private static final OkHttpClient OKHTTP_CLIENT = new OkHttpClient();
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 创建微信用户
|
|
|
*
|
|
@@ -196,22 +209,137 @@ public class UserService {
|
|
|
}
|
|
|
|
|
|
|
|
|
- private static String post(String url, String json) throws IOException {
|
|
|
- RequestBody body = RequestBody.create(json, JSON_CODE);
|
|
|
- Request request = new Request.Builder()
|
|
|
- .url(url)
|
|
|
- .post(body)
|
|
|
- .build();
|
|
|
- try (Response response = OKHTTP_CLIENT.newCall(request).execute()) {
|
|
|
- return response.body().string();
|
|
|
- }
|
|
|
+ private static void post2(String url, Map<String, String> map) throws IOException {
|
|
|
+ RequestBody formBody = new FormBody.Builder()
|
|
|
+ .add("timestamp", String.valueOf(getSecondTimestamp(new Date())))
|
|
|
+ .add("signature", Ksort(map))
|
|
|
+ .add("data", JSON.toJSONString(map))
|
|
|
+ .build();
|
|
|
+ System.out.println(String.valueOf(getSecondTimestamp(new Date())));
|
|
|
+ System.out.println(Ksort(map));
|
|
|
+ System.out.println(JSON.toJSONString(map));
|
|
|
+
|
|
|
+ Request request = new Request.Builder()
|
|
|
+ .url("http://39.106.136.96/pacs/zskk/writePatientReport")
|
|
|
+ .post(formBody)
|
|
|
+ .build();
|
|
|
+
|
|
|
+// try (Response response = OKHTTP_CLIENT.newCall(request).execute()) {
|
|
|
+// if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
|
|
|
+//
|
|
|
+// System.out.println(response.body().string());
|
|
|
+//// return response.body().string();
|
|
|
+//
|
|
|
+// }
|
|
|
}
|
|
|
+ public static String getSecondTimestamp(Date date) {
|
|
|
+ if (null == date) {
|
|
|
+ return "参数为空";
|
|
|
+ }
|
|
|
+ String timestamp = String.valueOf(date.getTime());
|
|
|
+ int length = timestamp.length();
|
|
|
+ if (length > 3) {
|
|
|
+ return String.valueOf(timestamp.substring(0, length - 3));
|
|
|
+ } else {
|
|
|
+ return "参数不足3位数";
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ public static String Ksort(Map<String, String> map){
|
|
|
+ String sb = "";
|
|
|
+ String[] key = new String[map.size()];
|
|
|
+ int index = 0;
|
|
|
+ for (String k : map.keySet()) {
|
|
|
+ key[index] = k;
|
|
|
+ index++;
|
|
|
+ }
|
|
|
+ Arrays.sort(key);
|
|
|
+
|
|
|
+ for (String s : key) {
|
|
|
+ sb += s + "=" + map.get(s) + "&";
|
|
|
+ }
|
|
|
+ sb = sb.substring(0, sb.length() - 1);
|
|
|
+ System.out.println("***"+sb);
|
|
|
+
|
|
|
+ try {
|
|
|
+ sb = URLEncoder.encode(sb, "UTF-8");
|
|
|
+ } catch (UnsupportedEncodingException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }// 使用常见的UTF-8编码
|
|
|
+ sb = sb.replace("%3D", "=").replace("%26", "&");
|
|
|
+
|
|
|
+ System.out.println("**"+sb);
|
|
|
+ String resultString = HashKit.md5(sb+"YgpxjVeIx0yoK6Atz413IAj7hU9dygH4");
|
|
|
+ return resultString;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
public static void main(String[] args) throws IOException {
|
|
|
// .url("http://wechat.pacsonline.cn/wx_patient/api/getQrcode?reportId=7e7a4cc7c93b4d2b")
|
|
|
|
|
|
- String response = run("http://www.baidu.com");
|
|
|
- System.out.println(response);
|
|
|
+// String response = run("http://www.baidu.com");
|
|
|
+// System.out.println(response);
|
|
|
+
|
|
|
+
|
|
|
+ Map<String, String> data = new HashMap<String, String>();
|
|
|
+ //医院id
|
|
|
+ data.put("hospital_id","15700002");
|
|
|
+ //影像所见
|
|
|
+ data.put("description","test");
|
|
|
+ //意见建议
|
|
|
+ data.put("impression","test");
|
|
|
+ //检查id
|
|
|
+ data.put("exam_id","116f463f179cd343ooo");
|
|
|
+ //患者id
|
|
|
+ data.put("patient_id","116f463f176844f7");
|
|
|
+ data.put("study_id","116f463f176c89a9");
|
|
|
+
|
|
|
+ //患者姓名
|
|
|
+ data.put("patient_name","zhangsan");
|
|
|
+ //患者性别
|
|
|
+ data.put("patient_sex","男");
|
|
|
+ //身份证号
|
|
|
+ data.put("card_num","");
|
|
|
+ //手机号
|
|
|
+ data.put("phone","");
|
|
|
+ //患者生日
|
|
|
+ data.put("birthday","");
|
|
|
+ //患者检查时年龄
|
|
|
+ data.put("patient_age","36");
|
|
|
+ //阴阳性 1阴性 2阳性
|
|
|
+ data.put("report_result","");
|
|
|
+ //报告时间 10位时间戳
|
|
|
+ data.put("report_datetime",String.valueOf(getSecondTimestamp(new Date())));
|
|
|
+ //报告医生id
|
|
|
+ data.put("report_doctor_id","");
|
|
|
+ //报告医生姓名
|
|
|
+ data.put("report_doctor_name","lisi");
|
|
|
+ //审核时间
|
|
|
+ data.put("review_datetime",String.valueOf(getSecondTimestamp(new Date())));
|
|
|
+ //审核医生id
|
|
|
+ data.put("review_doctor_id","");
|
|
|
+ //审核姓名
|
|
|
+ data.put("review_doctor_name","lisi");
|
|
|
+ //确认时间
|
|
|
+ data.put("confirm_datetime", String.valueOf(getSecondTimestamp(new Date())));
|
|
|
+ //确认医生id
|
|
|
+ data.put("confirm_doctor_id", "");
|
|
|
+ //确认医生姓名
|
|
|
+ data.put("confirm_doctor_name","wangwu");
|
|
|
+ System.out.println(data);
|
|
|
+
|
|
|
+ String jString = "{\"birthdate\":\"1964-05-09 00:00:00\",\"modality\":\"MR\",\"patientid\":\"030418249\",\"patientsex\":\"女\",\"reportPaperNum\":740168,\"reportdate\":\"2020-01-08 10:33:30\",\"diagnosis\":\"宫颈ca术后\",\"accessionNumber\":\"17772\",\"patientname\":\"金淑坤\",\"symptom\":\"宫颈ca术后二年余复查\",\"clinicaldoctor\":\"郑鑫\",\"phone\":\"15946362662\",\"DESCRIPTION\":\" 盆腔呈术后改变,子宫缺如。阴道断端未见明确肿瘤信号影,增强扫描未见明显异常强化。膀胱充盈尚可,壁尚光滑。盆腔内未见明确肿大淋巴结。未见盆腔积液。左侧骶骨可见小片状异常信号影,T1WI呈低信号,T2脂肪抑制呈稍高信号,增强扫描呈轻度强化,大小约为1.0*0.4cm。\\r\\n\\r\\n\",\"printreport\":false,\"idcard\":\"231025196405090621\",\"patientage\":\"55岁\",\"impression\":\"1、盆腔呈子宫术后改变,局部未见明确复发征象,建议定期复查。\\r\\n2、左侧骶骨小片状异常强化灶,请追随。\\r\\n\",\"regPaperNum\":\"893058\",\"reviewdoctor\":\"杨滨\",\"department\":\"妇瘤一科\",\"studyuid\":\"17772\",\"printfilm\":false,\"reportdoctor\":\"刘媛\"}";
|
|
|
+ Map maps = (Map)JSON.parse(jString);
|
|
|
+ System.out.println("这个是用JSON类来解析JSON字符串!!!");
|
|
|
+ for (Object map : maps.entrySet()){
|
|
|
+ System.out.println(((Map.Entry)map).getKey()+" " + ((Map.Entry)map).getValue());
|
|
|
+ }
|
|
|
+ String jsonObject = JSON.toJSONString(data);
|
|
|
+ System.out.println(jsonObject);
|
|
|
+ JSONObject record = JSON.parseObject(jString);
|
|
|
+ String dString = record.getString("PATIENTAGE");
|
|
|
+
|
|
|
+ post2(null, maps);
|
|
|
|
|
|
}
|
|
|
}
|