public HttpResponseMessage UpdateChannelinformation(parm reparm) { string result = string.Empty; try { int count = 0; RuletblChannelinformation ruletbl = new RuletblChannelinformation(); ruletbl.UpdateChannelinformation(reparm.fldbuckle, reparm.fldAutoID, out count); if (count > 0) { result = rule.JsonStr("ok", "成功", ""); } else { result = rule.JsonStr("error", "失败", ""); } } catch (Exception e) { //错误保存日志 throw new InsertException(e.Message, "tblChannelinformation", "GetChannelinformation", ""); } return(new HttpResponseMessage { Content = new StringContent(result, System.Text.Encoding.UTF8, "application/json") }); }
public HttpResponseMessage Accept_ZCSub(zcpram zcpram) { string retext = "error"; try { sysLogMsg.OperationTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); sysLogMsg.MerchantId = ""; sysLogMsg.MethodName = "Accept_ZCSub"; sysLogMsg.Parameter = JsonHelper.SerializeObject(zcpram); sysLogMsg.Content = "再创代付异步"; Retunr = LogHelp.logMessage(sysLogMsg); LogHelp.fatal(Retunr); string aa = Request.Content.Headers.ToString(); RuletblChannelinformation ruletbl = new RuletblChannelinformation(); //渠道信息 string fldChannelnum = zcpram.order_no; DataSet alldt = ruletbl.selechannebycid(fldChannelnum); //渠道信息表 DataTable dt = alldt.Tables[0]; //订单表 DataTable oerderdt = alldt.Tables[1]; //商户表 DataTable Merchant = alldt.Tables[2]; string keystring = zcpram.mch_id + zcpram.order_no + zcpram.money + zcpram.status + dt.Rows[0]["fldUpstreamSecretKey"].ToString(); //加密字符串 string sign = PayBehavior.EncryptionMd5(keystring, "x2"); if (dt.Rows.Count > 0) { if (zcpram.sign == sign && oerderdt.Rows[0]["fldStaute"].ToString() != "支付成功") { RuleOldOrdertable ruleOldOrdertable = new RuleOldOrdertable(); bool IsSuccess = false; DataTable dataTable = ruleOldOrdertable.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "支付成功", out IsSuccess, decimal.Parse(zcpram.money) / 100); if (!IsSuccess) { retext = "error"; } else { //写入日志 sysLogMsg.OperationTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); sysLogMsg.MerchantId = oerderdt.Rows[0]["fldMerchID"].ToString(); sysLogMsg.MethodName = "Accept_ZCSub"; sysLogMsg.Parameter = JsonHelper.SerializeObject(zcpram); sysLogMsg.Content = "再创代付异步通知地址"; Retunr = LogHelp.logMessage(sysLogMsg); LogHelp.fatal(Retunr); retext = "success"; } } } HttpResponseMessage responseMessage = new HttpResponseMessage { Content = new StringContent(retext, Encoding.GetEncoding("UTF-8"), "text/plain") }; return(responseMessage); } catch (Exception e) { throw new InsertException(e.Message, "SubAcceptInterfaceController", "Accept_ZCSub", "再创代付返回结果解析失败"); } }
/// <summary> /// 汇通代付查询返回的结果 /// </summary> /// <returns></returns> public string Query_HTSUb(string result) { try { string retext = ""; Dictionary <string, string> valuePairs = new Dictionary <string, string>(); //先按& 转换成数组 string[] jsontext = result.Split('&'); RuletblPayfailMessageLog messageLog = new RuletblPayfailMessageLog(); messageLog.inserttblPayfailMessageLog("亿点", "888017", "查询代付", "代付", result, DateTime.Now, result); for (int i = 0; i < jsontext.Length; i++) { //在进行=的截取 获得key值很Value值 string[] keyvalue = jsontext[i].Split('='); valuePairs.Add(keyvalue[0], keyvalue[1]); } //判断是否成功 if (valuePairs["RspCod"].ToString() == "00000") { string fldChannelnum = valuePairs["TxSN"].ToString(); RuletblChannelinformation ruletbl = new RuletblChannelinformation(); DataSet alldt = ruletbl.selechannebycidsub(fldChannelnum); //渠道信息表 DataTable dt = alldt.Tables[0]; //订单表 DataTable oerderdt = alldt.Tables[1]; //商户表 DataTable Merchant = alldt.Tables[2]; //判断数据库里面是否有订单号 if (oerderdt.Rows.Count > 0) { //判断状态 如果是3和4 标记为异常 不退款 由人工审核 if (valuePairs["Status"].ToString() == "3") { RuletblAgentPay ruletblAgent = new RuletblAgentPay(); bool IsSuccess = false; ruletblAgent.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "异常", out IsSuccess); if (!IsSuccess) { retext = "error"; } else { retext = "ok"; } } //如果是1 修改状态 扣款 if (valuePairs["Status"].ToString() == "1" && oerderdt.Rows[0]["fldPayState"].ToString() != "代付成功") { RuletblAgentPay ruleOldOrdertable = new RuletblAgentPay(); bool IsSuccess = false; DataTable dataTable = ruleOldOrdertable.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "代付成功", out IsSuccess, decimal.Parse(valuePairs["EntrustPayAmt"].ToString()) / 100); if (!IsSuccess) { retext = "error"; } else { retext = "ok"; } } else { retext = "error"; } } else { retext = "error"; } } return(retext); } catch (Exception e) { throw new InsertException(e.Message, "QueryRetuenResult", "Query_HTSUb", result); } }
/// <summary> /// 海付代付查询返回的结果 /// </summary> /// <returns></returns> public string Query_HFSUb(string result, string orid) { try { string retext = "error"; //先按& 转换成数组 JToken jToken = JsonConvert.DeserializeObject(result) as JObject; RuletblPayfailMessageLog messageLog = new RuletblPayfailMessageLog(); messageLog.inserttblPayfailMessageLog("海付", "734641", "查询代付", "代付", result, DateTime.Now, result); if (jToken["respCode"].ToString() == "0000") { string fldChannelnum = jToken["pay_number"].ToString(); RuletblChannelinformation ruletbl = new RuletblChannelinformation(); DataSet alldt = ruletbl.selechannebycidsub(fldChannelnum); //渠道信息表 DataTable dt = alldt.Tables[0]; //订单表 DataTable oerderdt = alldt.Tables[1]; //商户表 DataTable Merchant = alldt.Tables[2]; //判断是否成功 if (jToken["status"].ToString() == "00") { //判断数据库里面是否有订单号 if (oerderdt.Rows.Count > 0 && oerderdt.Rows[0]["fldPayState"].ToString() != "代付成功") { RuletblAgentPay ruleOldOrdertable = new RuletblAgentPay(); bool IsSuccess = false; DataTable dataTable = ruleOldOrdertable.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "代付成功", out IsSuccess, decimal.Parse(oerderdt.Rows[0]["fldPayAmount"].ToString())); if (!IsSuccess) { retext = "error"; } else { retext = "ok"; } } else { retext = "error"; } } if (jToken["status"].ToString() == "02") { RuletblAgentPay ruletblAgent = new RuletblAgentPay(); bool IsSuccess = false; ruletblAgent.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "异常", out IsSuccess); if (!IsSuccess) { retext = "error"; } else { retext = "ok"; } } } return(retext); } catch (Exception e) { throw new InsertException(e.Message, "QueryRetuenResult", "Query_HFSUb", result); } }
/// <summary> /// 万通代付查询返回的结果 /// </summary> /// <returns></returns> public string Query_QJSUb(string result) { try { string Ownresult = "error"; JToken rejson = JToken.Parse(result); messageLog.inserttblPayfailMessageLog("万通", "1550473045", "查询代付", "代付", result, DateTime.Now, result); string aa = rejson["status"].ToString(); if (aa == "True") { string statecode = rejson["resp_code"].ToString(); string fldChannelnum = rejson["order_no"].ToString(); RuletblChannelinformation ruletbl = new RuletblChannelinformation(); DataSet alldt = ruletbl.selechannebycidsub(fldChannelnum); //渠道信息表 DataTable dt = alldt.Tables[0]; //订单表 DataTable oerderdt = alldt.Tables[1]; //商户表 DataTable Merchant = alldt.Tables[2]; //代付失败 修改成异常状态 if (statecode == "F") { RuletblAgentPay ruletblAgent = new RuletblAgentPay(); bool IsSuccess = false; ruletblAgent.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "异常", out IsSuccess); if (!IsSuccess) { Ownresult = "error"; } else { Ownresult = "ok"; } } //代付成功 且异步还没有通知 if (statecode == "S" && oerderdt.Rows[0]["fldPayState"].ToString() != "代付成功") { RuletblAgentPay ruleOldOrdertable = new RuletblAgentPay(); bool IsSuccess = false; DataTable dataTable = ruleOldOrdertable.updatestate(oerderdt.Rows[0]["fldMerchID"].ToString(), fldChannelnum, "代付成功", out IsSuccess, decimal.Parse(rejson["order_amount"].ToString())); if (!IsSuccess) { Ownresult = "error"; } else { Ownresult = "ok"; } } else { Ownresult = "ok"; } } return(Ownresult); } catch (Exception e) { throw new InsertException(e.Message, "QueryRetuenResult", "Query_HTSUb", result); } }