|
@@ -296,14 +296,53 @@ namespace PTMedicalInsurance.Helper
|
|
|
|
|
|
|
|
|
|
public JObject invokeMPService(string funNO, string data)
|
|
public JObject invokeMPService(string funNO, string data)
|
|
|
|
+ {
|
|
|
|
+ return invokeMPService(funNO, JObject.Parse(data));
|
|
|
|
+ }
|
|
|
|
+ public JObject invokeMPService(string funNO, JObject joInput)
|
|
{
|
|
{
|
|
JObject joRtn = new JObject();
|
|
JObject joRtn = new JObject();
|
|
String outPar = "";
|
|
String outPar = "";
|
|
try
|
|
try
|
|
{
|
|
{
|
|
|
|
+ EncryptHelper encrypt = new EncryptHelper();
|
|
|
|
+ string data = JsonHelper.setMPCenterInpar(funNO, joInput);
|
|
|
|
+
|
|
Global.curEvt.URL = Global.inf.centerURL + funNO;
|
|
Global.curEvt.URL = Global.inf.centerURL + funNO;
|
|
joRtn = invokeCenterService(data);
|
|
joRtn = invokeCenterService(data);
|
|
- outPar = JsonHelper.Compress(joRtn);
|
|
+
|
|
|
|
+ Global.writeLog(funNO + "【密文出参】:\r\n" + joRtn.ToString());
|
|
|
|
+
|
|
|
|
+ string encData = JsonHelper.getDestValue(joRtn, "encData");
|
|
|
|
+ string signData = JsonHelper.getDestValue(joRtn, "signData");
|
|
|
|
+ if (!string.IsNullOrEmpty(encData) && !string.IsNullOrEmpty(signData))
|
|
|
|
+ {
|
|
|
|
+ joRtn.Remove("encData");
|
|
|
|
+ joRtn.Remove("signData");
|
|
|
|
+ joRtn.Remove("data");
|
|
|
|
+
|
|
|
|
+ string decData = encrypt.decrypt(encData);
|
|
|
|
+
|
|
|
|
+ JsonConvert.DefaultSettings = () => new JsonSerializerSettings
|
|
|
|
+ {
|
|
|
|
+ FloatParseHandling = FloatParseHandling.Decimal
|
|
|
|
+ };
|
|
|
|
+ joRtn.Add("data", JToken.FromObject(JsonConvert.DeserializeObject(decData)));
|
|
|
|
+
|
|
|
|
+ bool rtn = encrypt.verify(joRtn, signData);
|
|
|
|
+ if (rtn)
|
|
|
|
+ {
|
|
|
|
+ Global.writeLog(funNO + "【明文出参】:\r\n" + decData);
|
|
|
|
+
|
|
|
|
+ joRtn = JObject.Parse(decData);
|
|
|
|
+ joRtn.Add("success", "True");
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ Global.writeLog("验签失败,请核查!");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
return joRtn;
|
|
return joRtn;
|
|
|
|
|
|
|
|
|
|
@@ -320,8 +359,8 @@ namespace PTMedicalInsurance.Helper
|
|
}
|
|
}
|
|
finally
|
|
finally
|
|
{
|
|
{
|
|
- Global.writeLog(funNO + "(" + Global.curEvt.URL + ")", JsonHelper.Compress(data), joRtn.ToString());
|
|
+ Global.writeLog(funNO + "(" + Global.curEvt.URL + ")", joInput.ToString(), joRtn.ToString());
|
|
- this.saveCenterLog(JsonHelper.Compress(data), joRtn.ToString(), JsonHelper.Compress(data), joRtn.ToString());
|
|
+ this.saveCenterLog(joInput.ToString(), joRtn.ToString(), joInput.ToString(), joRtn.ToString());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|