Exemple #1
0
        /// <summary>
        /// 提交刷卡支付 请求参数
        /// </summary>
        /// <param name="appId"></param>
        /// <param name="mchId"></param>
        /// <param name="key"></param>
        /// <param name="nonceStr"></param>
        /// <param name="deviceInfo"></param>
        /// <param name="body"></param>
        /// <param name="detail"></param>
        /// <param name="attach"></param>
        /// <param name="outTradeNo"></param>
        /// <param name="totalFee"></param>
        /// <param name="feeType"></param>
        /// <param name="spbillCreateIp"></param>
        /// <param name="goodsTag"></param>
        /// <param name="authCode"></param>
        /// <param name="signType"></param>
        public TenPayV3MicroPayRequestData(string appId, string mchId, string key, string nonceStr, string deviceInfo,
                                           string body, string detail, string attach, string outTradeNo, string totalFee, string feeType,
                                           string spbillCreateIp, string goodsTag, string authCode, string signType = "MD5")
        {
            AppId          = appId;
            MchId          = mchId;
            NonceStr       = nonceStr;
            DeviceInfo     = deviceInfo;
            Body           = body;
            Detail         = detail;
            Attach         = attach;
            OutTradeNo     = outTradeNo;
            TotalFee       = totalFee;
            FeeType        = feeType;
            SpbillCreateIp = spbillCreateIp;
            GoodsTag       = goodsTag;
            AuthCode       = authCode;
            SignType       = signType;
            Key            = key;

            #region 设置RequestHandler

            //创建支付应答对象
            PackageRequestHandler = new RequestHandler(null);
            //初始化
            PackageRequestHandler.Init();
            //设置package订单参数
            PackageRequestHandler.SetParameter("appid", this.AppId);                     //公众账号ID
            PackageRequestHandler.SetParameter("mch_id", this.MchId);                    //商户号
            PackageRequestHandler.SetParameter("device_info", this.DeviceInfo);          //终端设备号
            PackageRequestHandler.SetParameter("nonce_str", this.NonceStr);              //随机字符串
            PackageRequestHandler.SetParameter("sign_type", this.SignType);              //签名类型
            PackageRequestHandler.SetParameter("body", this.Body);                       //商品简单描述
            PackageRequestHandler.SetParameter("detail", this.Detail);                   //商品详细列表
            PackageRequestHandler.SetParameter("attach", this.Attach);                   //附加数据
            PackageRequestHandler.SetParameter("out_trade_no", this.OutTradeNo);         //商户系统内部的订单号
            PackageRequestHandler.SetParameter("total_fee", this.TotalFee);              //订单总金额
            PackageRequestHandler.SetParameter("fee_type", this.FeeType);                //货币类型
            PackageRequestHandler.SetParameter("spbill_create_ip", this.SpbillCreateIp); //终端IP
            PackageRequestHandler.SetParameter("goods_tag", this.GoodsTag);              //商品标记
            PackageRequestHandler.SetParameter("auth_code", this.AuthCode);              //授权码

            // TODO:★554393109 修改
            //***************************************************************************************
            Sign = "MD5".Equals(signType, System.StringComparison.OrdinalIgnoreCase)
                ? PackageRequestHandler.CreateMd5Sign("key", this.Key)
                : PackageRequestHandler.CreateSha256Sign("key", this.Key);
            //***************************************************************************************

            PackageRequestHandler.SetParameter("sign", Sign); //签名

            #endregion
        }