public static VIEW_TG_order ToViewModel(TG_order model) { VIEW_TG_order item = new VIEW_TG_order(); item.Id = model.Id; item.orderNum = model.orderNum; item.ThingNum = model.ThingNum; item.transaction_id = model.transaction_id; item.trade_type = model.trade_type; item.total_fee = model.total_fee; item.yunPrice = model.yunPrice; item.fenxiaoId = model.fenxiaoId; item.UserId = model.UserId; item.userOpenId = model.userOpenId; item.userName = model.userName; item.userSex = model.userSex; item.UserTel = model.UserTel; item.UserAddress = model.UserAddress; item.UserPostNum = model.UserPostNum; item.ispay = model.ispay; item.orderTime = model.orderTime; item.payTime = model.payTime; item.sendTime = model.sendTime; item.GetTime = model.GetTime; item.tuiHuoTime = model.tuiHuoTime; item.kdName = model.kdName; item.kdNum = model.kdNum; item.kdMailNum = model.kdMailNum; item.years = model.years; item.months = model.months; item.remark1 = model.remark1; item.remark2 = model.remark2; item.remark3 = model.remark3; item.flat1 = model.flat1; item.flat2 = model.flat2; item.remark4 = model.remark4; item.remark5 = model.remark5; item.remark6 = model.remark6; item.flat7 = model.flat7; item.flat8 = model.flat8; item.RegTim1 = model.RegTim1; item.RegTim2 = model.RegTim2; item.ssh_status = model.ssh_status; item.VERSION = model.VERSION; item.SYNCOPERATION = model.SYNCOPERATION; item.SYNCVERSION = model.SYNCVERSION; item.SYNCFLAG = model.SYNCFLAG; return(item); }
public ActionResult Notify() { MODEL.TG_order order = new TG_order(); LogHelper.WriteLog("XXXXXXXXXXXXXXXX"); //创建ResponseHandler实例 ShengUI.Helper.payCls.ResponseHandler resHandler = new ShengUI.Helper.payCls.ResponseHandler(HttpContext); resHandler.setKey(PayConfig.AppKey); //判断签名 try { string error = ""; if (resHandler.isWXsign(out error)) { #region 协议参数===================================== //--------------协议参数-------------------------------------------------------- //SUCCESS/FAIL此字段是通信标识,非交易标识,交易是否成功需要查 string return_code = resHandler.getParameter("return_code"); //返回信息,如非空,为错误原因签名失败参数格式校验错误 string return_msg = resHandler.getParameter("return_msg"); //微信分配的公众账号 ID string appid = resHandler.getParameter("appid"); //以下字段在 return_code 为 SUCCESS 的时候有返回-------------------------------- //微信支付分配的商户号 string mch_id = resHandler.getParameter("mch_id"); //微信支付分配的终端设备号 string device_info = resHandler.getParameter("device_info"); //微信分配的公众账号 ID string nonce_str = resHandler.getParameter("nonce_str"); //业务结果 SUCCESS/FAIL string result_code = resHandler.getParameter("result_code"); //错误代码 string err_code = resHandler.getParameter("err_code"); //结果信息描述 string err_code_des = resHandler.getParameter("err_code_des"); //以下字段在 return_code 和 result_code 都为 SUCCESS 的时候有返回--------------- //-------------业务参数--------------------------------------------------------- //用户在商户 appid 下的唯一标识 string openid = resHandler.getParameter("openid"); //用户是否关注公众账号,Y-关注,N-未关注,仅在公众账号类型支付有效 string is_subscribe = resHandler.getParameter("is_subscribe"); //JSAPI、NATIVE、MICROPAY、APP string trade_type = resHandler.getParameter("trade_type"); //银行类型,采用字符串类型的银行标识 string bank_type = resHandler.getParameter("bank_type"); //订单总金额,单位为分 string total_fee = resHandler.getParameter("total_fee"); //货币类型,符合 ISO 4217 标准的三位字母代码,默认人民币:CNY string fee_type = resHandler.getParameter("fee_type"); //微信支付订单号 string transaction_id = resHandler.getParameter("transaction_id"); //商户系统的订单号,与请求一致。 string out_trade_no = resHandler.getParameter("out_trade_no"); //商家数据包,原样返回 string attach = resHandler.getParameter("attach"); //支 付 完 成 时 间 , 格 式 为yyyyMMddhhmmss,如 2009 年12 月27日 9点 10分 10 秒表示为 20091227091010。时区为 GMT+8 beijing。该时间取自微信支付服务器 string time_end = resHandler.getParameter("time_end"); #endregion //支付成功 if (!out_trade_no.Equals("") && return_code.Equals("SUCCESS") && result_code.Equals("SUCCESS")) { LogHelper.WriteLog("Notify 页面 支付成功,支付信息:商家订单号:" + out_trade_no + "、支付金额(分):" + total_fee + "、自定义参数:" + attach); /** * 这里输入用户逻辑操作,比如更新订单的支付状态 * * **/ LogHelper.WriteLog("============ 单次支付结束 ==============="); var orderid = ""; if (out_trade_no.Contains("_")) { orderid = out_trade_no.Substring(0, out_trade_no.Length - 5); } else { orderid = out_trade_no; } LogHelper.WriteLog("============ 获取订单:" + orderid + "==============="); order = orderB.GetModelWithOutTrace(o => o.orderNum == orderid); if (order != null)//代表 { // string sql = "update TG_order set ispay=1,transaction_id='" + transaction_id + "',payTime='" + DateTime.Now + "' where orderNum='" + out_trade_no + "'";//支付成功,更新订单状态 LogHelper.WriteLog(out_trade_no.Substring(0, out_trade_no.Length - 5)); order.payTime = DateTime.Now; order.transaction_id = transaction_id; order.ispay = 3; order.ssh_status = 3; orderB.Modify(order, "ispay", "transaction_id", "payTime", "ssh_status"); LogHelper.WriteLog("============ 修改订单:" + orderid + "==============="); } total_fee = (Convert.ToInt32(total_fee) / 100).ToString(); } else { LogHelper.WriteLog("Notify 页面 支付失败,支付信息 total_fee= " + total_fee + "、err_code_des=" + err_code_des + "、result_code=" + result_code); } } else { LogHelper.WriteLog("Notify 页面 isWXsign= false ,错误信息:" + error); } } catch (Exception ee) { LogHelper.WriteLog("Notify 页面 发送异常错误:" + ee.Message); } return(Content("Notify 页面 ")); }