/// <summary>
        /// 将查询结果实体加签
        /// </summary>
        /// <param name="rsp"></param>
        public static RspObj BuildSignRspObj(RspObj rsp, string APPKEY)
        {
            Dictionary <String, String> param = new Dictionary <string, string>();

            if (!String.IsNullOrEmpty(rsp.appid))
            {
                param.Add("appid", rsp.appid);
            }
            if (!String.IsNullOrEmpty(rsp.cusid))
            {
                param.Add("cusid", rsp.cusid);
            }
            if (!String.IsNullOrEmpty(rsp.trxcode))
            {
                param.Add("trxcode", rsp.trxcode);
            }
            if (!String.IsNullOrEmpty(rsp.timestamp))
            {
                param.Add("timestamp", rsp.timestamp);
            }
            if (!String.IsNullOrEmpty(rsp.randomstr))
            {
                param.Add("randomstr", rsp.randomstr);
            }
            if (!String.IsNullOrEmpty(rsp.bizseq))
            {
                param.Add("bizseq", rsp.bizseq);
            }
            if (!String.IsNullOrEmpty(rsp.retcode))
            {
                param.Add("retcode", rsp.retcode);
            }
            if (!String.IsNullOrEmpty(rsp.retmsg))
            {
                param.Add("retmsg", rsp.retmsg);
            }
            if (!String.IsNullOrEmpty(rsp.amount))
            {
                param.Add("amount", rsp.amount);
            }
            if (!String.IsNullOrEmpty(rsp.trxreserve))
            {
                param.Add("trxreserve", rsp.trxreserve);
            }
            param.Add("key", APPKEY);
            string blankStr = BuildParamStr(param);
            string sign     = Framework.Security.Crypt.MD5(blankStr);

            rsp.sign = sign;
            return(rsp);
        }
        public void GetOrderMsg()
        {
            string bizseq = "";
            string cusid  = "";
            RspObj rsp    = new RspObj();

            for (int i = 0; i < Request.Form.Count; i++)
            {
                if (Request.Form.Keys[i] == "bizseq")
                {
                    bizseq = Request.Form[i].ToString();
                }
                if (Request.Form.Keys[i] == "cusid")
                {
                    cusid = Request.Form[i].ToString();
                }
            }

            var orderpaid = iOrderPaidService.Get(t => t.OrderNumber == bizseq);

            Preferences preferences = iPreferencesService.Get(t => t.POSBaoMerchant == cusid);

            if (orderpaid == null)
            {
                rsp.init("9999", "订单不存在", preferences.APPID, preferences.POSBaoMerchant);
                rsp.amount     = "";
                rsp.trxreserve = "";
                rsp.bizseq     = "";
                rsp            = BuildSignRspObj(rsp, preferences.POSBaoKey);//签名
                Response.Write(JsonHelper.Serialize(rsp));
                return;
            }

            //Preferences preferences = iPreferencesService.Get(t => t.MerchantID == orderpaid.MerchantID);
            this.vspExec = new VSPExec(preferences.POSBaoMerchant, preferences.POSBaoKey, preferences.APPID);

            //获取支付参数
            string formString = HttpUtility.UrlDecode(Request.Form.ToString());
            Dictionary <String, String> dicReqeust = formString.ToDictionary(true);

            if (vspExec.IsVerify(dicReqeust))//验签成功
            {
                if (DateTime.Now > orderpaid.Project.Deadline)
                {
                    rsp.init("9999", "订单已过期", preferences.APPID, preferences.POSBaoMerchant);
                    rsp.amount     = "";//由于nettonsoft.json会自动将空字段转化为null,因此手动赋值空字符串
                    rsp.trxreserve = "";
                    rsp.bizseq     = "";
                }
                else
                {
                    rsp.init("0000", "查询成功", preferences.APPID, preferences.POSBaoMerchant);
                    rsp.amount = ((int)(orderpaid.TransactionAmount * 100)).ToString();
                    // rsp.trxreserve = "05(业务类型)##订购人姓名#广州体育西(订购人地址)#15820335584(联系电话)#TN000001#01#440992198709257433(跟踪订单号)####";
                    rsp.trxreserve = "05##" + orderpaid.Member.Name + "#" + orderpaid.MemberMobile + "#" + orderpaid.OrderNumber + "#######";
                    //rsp.trxreserve = "05##" + "AAA" + "#" + orderpaid.MemberMobile + "#" + orderpaid.OrderNumber + "#######";
                    rsp.bizseq = orderpaid.OrderNumber;//业务流水号
                }
            }
            else //验签失败
            {
                rsp.init("9999", "验签失败", preferences.APPID, preferences.POSBaoMerchant);
                rsp.amount     = "";//由于nettonsoft.json会自动将空字段转化为null,因此手动赋值空字符串
                rsp.trxreserve = "";
                rsp.bizseq     = "";
            }

            rsp = BuildSignRspObj(rsp, preferences.POSBaoKey);//签名

            Response.Write(JsonHelper.Serialize(rsp));
        }