From 1511b9d68ffd8a3b733e2d3b2389f831bde4f796 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Thu, 29 Aug 2019 17:28:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E7=AD=9B=E6=97=A0=E5=88=9B=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/operate/web/Test.java | 36 ++++++++++++++++++++++ .../operate/web/facade/ApplyOrderFacade.java | 4 ++- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java index e5f1460..20644af 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java @@ -1,11 +1,13 @@ package com.lyms.platform.operate.web; +import com.lyms.platform.common.utils.MD5; import com.lyms.platform.pojo.BasicConfig; import net.sourceforge.pinyin4j.PinyinHelper; import org.apache.log4j.Logger; import sun.misc.Unsafe; import java.lang.reflect.Field; +import java.text.SimpleDateFormat; import java.util.*; /** @@ -15,8 +17,42 @@ public class Test { private static org.apache.log4j.Logger log = Logger.getLogger("HTTP-INVOKE"); public static void main(String[] args) throws Exception { + + Map resutl = getSignParams("bisp-czsfy", "czsfy123$"); + System.out.println(resutl); + + } + + public static Map getSignParams(String syscode, String secret) { + Map signParams = new HashMap<>(); + signParams.put("syscode", syscode); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + signParams.put("timestamp", sdf.format(new Date())); + String unencryptedStr = getUnencryptedStr(signParams); + String sign2 = MD5.getMD5(secret + unencryptedStr + secret);//获取数字签名 + signParams.put("sign", sign2); + return signParams; + } + + public static String getUnencryptedStr(Map signParams) { + List paramsList = new ArrayList<>(); + for (String key : signParams.keySet()) { + if ("sign".equals(key)) { + continue; + } + String value = (String) signParams.get(key); + paramsList.add(key + value);//将参数转换成key+value格式 + } + Object[] paramsArray = (Object[]) paramsList.toArray(); + Arrays.sort(paramsArray);//ascii码排序 + String unencryptedStr = "";//待加密字符串 + for (Object paramStr : paramsArray) { + unencryptedStr += paramStr; + } + return unencryptedStr; } + public static Integer getLevel(Integer total) { if (total == null) { return 0; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java index 116488c..5eb852d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java @@ -1631,7 +1631,9 @@ public class ApplyOrderFacade { timestamp = timestamp.replaceAll(" ", "%20");//空格替换成 %20 String syscode = signParams.get("syscode").toString(); String sign = signParams.get("sign").toString(); - System.out.println(sign + " saveSampleInfo param="+JsonUtil.obj2JsonString(map)); + System.out.println("timestamp"+timestamp+" syscode="+" sign="+sign); + + System.out.println("saveSampleInfo param="+JsonUtil.obj2JsonString(map)); String s = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=saveSampleInfo&" + "timestamp=" + timestamp + "&syscode=" + syscode + "&sign=" + sign, map); System.out.println(s); //{"code":"200","msg":"success","rows":{"successedList":[{"msg":"INSP190001417198 ,样例号: 18S4074733R 保存成功!","result":true,"canseqId":"2018101700007123"}],"failedList":[]}} -- 1.8.3.1