/// <summary> /// 后台支付交易查询 /// </summary> /// <returns></returns> public static string UUnionAPI_OrderQueryData(string customerId, string orderID) { com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("customerId", customerId); //会员号,商户自行生成 input.put("orderId", orderID); KeyedCollection recv = new KeyedCollection(); String businessCode = "UnionAPI_OrderQuery"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbUnionUrl + "UnionAPI_OrderQuery.do"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); return(output.getDataValue("status").toString()); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); return(output.getDataValue("errorMsg").toString()); } return(output.toString()); }
/// <summary> /// 已开通银行卡列表查询 /// </summary> /// <param name="customerId"></param> /// <returns></returns> public static string UnionAPI_OpenedData(string customerId) { com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("customerId", customerId); //会员号,商户自行生成 KeyedCollection recv = new KeyedCollection(); String businessCode = "UnionAPI_Opened"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbUnionUrl + "UnionAPI_Opened.do"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); String OpenId = null; String accNo = null; String plantBankName = null; String plantBankId = null; List <UnionBankModel> Mlist = new List <UnionBankModel>(); IndexedCollection icoll = (IndexedCollection)output.getDataElement("unionInfo"); for (int i = 0; i < icoll.size(); i++) { //取出index为i的一条记录,结构为KeyedCollection com.ecc.emp.data.KeyedCollection kcoll = (com.ecc.emp.data.KeyedCollection)icoll.getElementAt(i); OpenId = (String)kcoll.getDataValue("OpenId"); accNo = (String)kcoll.getDataValue("accNo"); plantBankName = (String)kcoll.getDataValue("plantBankName"); plantBankId = (String)kcoll.getDataValue("plantBankId"); UnionBankModel m = new UnionBankModel(); m.OpenId = OpenId; m.accNo = accNo; m.plantBankName = plantBankName; m.plantBankId = plantBankId; Mlist.Add(m); } return(DynamicJson.Serialize(Mlist)); // return output.getDataValue("status").toString(); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); return(output.getDataValue("errorMsg").toString()); } return(output.toString()); }
/// <summary> /// 发起后台支付交易 /// </summary> /// <returns></returns> public static string UnionAPI_SubmitData(string customerId, string OpenId, decimal amount, string orderID, string timestamp, string verifyCode) { // String datetamp = timestamp.substring(0, 8); //日期 com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("customerId", customerId); //会员号,商户自行生成 input.put("orderId", orderID); input.put("currency", "RMB"); input.put("OpenId", OpenId); input.put("amount", amount); input.put("paydate", timestamp); input.put("remark", "unionpay01 "); input.put("objectName", "unionpay01"); input.put("validtime", "0"); input.put("NOTIFYURL", SDKConfig.BackUrl);//异步通知地址 input.put("verifyCode", verifyCode); KeyedCollection recv = new KeyedCollection(); String businessCode = "UnionAPI_Submit"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbUnionUrl + "UnionAPI_Submit.do"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); MicroWeb.General.Common.LogResult("UnionAPI_SubmitData output为" + output); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); return(output.getDataValue("status").toString()); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); return(output.getDataValue("errorMsg").toString()); } return(output.toString()); }
/// <summary> /// 发送短信 /// </summary> /// <param name="customerId"></param> /// <param name="OpenId"></param> /// <param name="amount"></param> /// <returns></returns> public static string UnionAPI_SSMSData(string customerId, string OpenId, decimal amount) { String timestamp = $"{DateTime.Now:yyyyMMddHHmmss}"; String datetamp = timestamp.substring(0, 8); //日期 com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("customerId", customerId); //会员号,商户自行生成 var fixOrderID = SDKConfig.MasterID + datetamp + getOrderId(); input.put("orderId", fixOrderID); input.put("currency", "RMB"); input.put("OpenId", OpenId); input.put("amount", amount); input.put("paydate", timestamp); KeyedCollection recv = new KeyedCollection(); String businessCode = "UnionAPI_SSMS"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbUnionUrl + "UnionAPI_SSMS.do"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); return(output.toString() + " 订单号" + fixOrderID + ",下单时间" + timestamp); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); return(output.getDataValue("errorMsg").toString()); } return(output.toString()); }
/// <summary> /// 单笔订单状态查询 /// </summary> /// <param name="orderId"></param> /// <returns></returns> public static string KH0001Data(string orderId) { com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("orderId", orderId); //订单号,严格遵守格式:商户号+8位日期YYYYMMDD+8位流水 KeyedCollection recv = new KeyedCollection(); String businessCode = "KH0001"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbQueryUrl + "KH0001.pay"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { // return output.getDataValue("status").ToString(); //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); //System.out.println("---手续费金额---" + output.getDataValue("charge")); //System.out.println("---商户号---" + output.getDataValue("masterId")); //System.out.println("---订单号---" + output.getDataValue("orderId")); //System.out.println("---币种---" + output.getDataValue("currency")); //System.out.println("---订单金额---" + output.getDataValue("amount")); //System.out.println("---下单时间---" + output.getDataValue("paydate")); //System.out.println("---商品描述---" + output.getDataValue("objectName")); //System.out.println("---订单有效期---" + output.getDataValue("validtime")); //System.out.println("---备注---" + output.getDataValue("remark")); //System.out.println("---本金清算标志---" + output.getDataValue("settleflg")); //1已清算,0待清算 //System.out.println("---本金清算时间---" + output.getDataValue("settletime")); //System.out.println("---手续费清算标志---" + output.getDataValue("chargeflg")); //1已清算,0待清算 //System.out.println("---手续费清算时间---" + output.getDataValue("chargetime")); } else { // return output.getDataValue("errorCode").ToString()+ output.getDataValue("errorMsg").ToString(); // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); } return(output.toString()); }
/// <summary> /// 单个银行卡开通查询 /// </summary> /// <returns></returns> public static string UnionAPI_QueryOPNData(string customerId, string accNo) { com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("customerId", customerId); //会员号,商户自行生成 input.put("accNo", accNo); //银行卡号 KeyedCollection recv = new KeyedCollection(); String businessCode = "UnionAPI_QueryOPN"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbUnionUrl + "UnionAPI_QueryOPN.do"; MicroWeb.General.Common.LogResult("单个银行卡businessCode" + businessCode); MicroWeb.General.Common.LogResult("单个银行卡toOrig" + toOrig); MicroWeb.General.Common.LogResult("单个银行卡toUrl" + toUrl); output = NETExecute(businessCode, toOrig, toUrl); MicroWeb.General.Common.LogResult("单个银行卡output" + output); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { //System.out.println("---订单状态---" + output.getDataValue("status")); //System.out.println("---支付完成时间---" + output.getDataValue("date")); return(output.getDataValue("status").toString()); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); return(output.getDataValue("errorMsg").toString()); } return(output.toString()); }
/// <summary> /// 订单列表信息查询 /// </summary> /// <returns></returns> public static List <KH0002ResultModel> KH0002DataList(string beginDate, string endDate) { com.ecc.emp.data.KeyedCollection input = new com.ecc.emp.data.KeyedCollection("input"); com.ecc.emp.data.KeyedCollection output = new com.ecc.emp.data.KeyedCollection("output"); input.put("masterId", SDKConfig.MasterID); //商户号,注意生产环境上要替换成商户自己的生产商户号 input.put("beginDate", beginDate); //查询开始时间(支付完成时间)YYYYMMDDHHMMSS input.put("endDate", endDate); //查询结束时间(支付完成时间)YYYYMMDDHHMMSS KeyedCollection recv = new KeyedCollection(); String businessCode = "KH0002"; String toOrig = input.toString().replace("\n", "").replace("\t", ""); String toUrl = SDKConfig.sdbQueryUrl + "KH0002.pay"; output = NETExecute(businessCode, toOrig, toUrl); String errorCode = (String)output.getDataValue("errorCode"); String errorMsg = (String)output.getDataValue("errorMsg"); List <KH0002ResultModel> Mlist = new List <KH0002ResultModel>(); if ((errorCode == null || errorCode.Equals("")) && (errorMsg == null || errorMsg.Equals(""))) { string status = null; string date = null; string charge = null; string masterId = null; string orderId = null; string currency = null; string amount = null; string paydate = null; string objectName = null; string validtime = null; string remark = null; string settleflg = null; string settletime = null; string chargeflg = null; string chargetime = null; com.ecc.emp.data.IndexedCollection icoll = (com.ecc.emp.data.IndexedCollection)output.getDataElement("iOrderListDetail"); for (int i = 0; i < icoll.size(); i++) { com.ecc.emp.data.KeyedCollection kcoll = (com.ecc.emp.data.KeyedCollection)icoll.getElementAt(i); status = (String)kcoll.getDataValue("status"); date = (String)kcoll.getDataValue("date"); charge = (String)kcoll.getDataValue("charge"); masterId = (String)kcoll.getDataValue("masterId"); orderId = (String)kcoll.getDataValue("orderId"); currency = (String)kcoll.getDataValue("currency"); amount = (String)kcoll.getDataValue("amount"); paydate = (String)kcoll.getDataValue("paydate"); objectName = (String)kcoll.getDataValue("objectName"); validtime = (String)kcoll.getDataValue("validtime"); remark = (String)kcoll.getDataValue("remark"); settleflg = (String)kcoll.getDataValue("settleflg"); settletime = (String)kcoll.getDataValue("settletime"); chargeflg = (String)kcoll.getDataValue("chargeflg"); chargetime = (String)kcoll.getDataValue("chargetime"); KH0002ResultModel m = new KH0002ResultModel(); m.status = status; m.date = date; m.charge = charge; m.masterId = masterId; m.orderId = orderId; m.currency = currency; m.amount = amount; m.paydate = paydate; m.objectName = objectName; m.validtime = validtime; m.remark = remark; m.settleflg = settleflg; m.settletime = settletime; m.chargeflg = chargeflg; m.chargetime = chargetime; Mlist.Add(m); } return(Mlist); } else { // System.out.println("---错误码---" + output.getDataValue("errorCode")); // System.out.println("---错误说明---" + output.getDataValue("errorMsg")); } return(Mlist); }