コード例 #1
0
ファイル: precreate.aspx.cs プロジェクト: bowena/faka
        /// <summary>
        /// 构造支付请求数据
        /// </summary>
        /// <returns>请求数据集</returns>
        private AlipayTradePrecreateContentBuilder BuildPrecreateContent()
        {
            //线上联调时,请输入真实的外部订单号。
            string out_trade_no = System.DateTime.Now.ToString("yyyyMMddHHmmss") + "0000" + (new Random()).Next(1, 10000).ToString();
            string total_fee    = "1";
            string subject      = "test";

            if (!string.IsNullOrEmpty(Request.QueryString["tid"]))
            {
                out_trade_no = Request.QueryString["tid"];
            }

            OrderViewModel order = BOrder.SearchByTradeNo(out_trade_no);

            if (order != null)
            {
                subject   = BProduct.ExecuteSql("select Name from Products where Id=" + order.Product_Id).ToString();
                total_fee = (order.Price * order.Count).ToString();
            }
            //if (String.IsNullOrEmpty(WIDout_request_no.Text.Trim()))
            //{
            //    out_trade_no = System.DateTime.Now.ToString("yyyyMMddHHmmss") + "0000" + (new Random()).Next(1, 10000).ToString();
            //}
            //else
            //{
            //out_trade_no = "WF87212910290";
            //}

            AlipayTradePrecreateContentBuilder builder = new AlipayTradePrecreateContentBuilder();

            //收款账号
            builder.seller_id = Config.pid;
            //订单编号
            builder.out_trade_no = out_trade_no;
            //订单总金额
            builder.total_amount = total_fee;
            //参与优惠计算的金额
            //builder.discountable_amount = "";
            //不参与优惠计算的金额
            //builder.undiscountable_amount = "";
            //订单名称
            builder.subject = subject;
            //自定义超时时间
            builder.timeout_express = "5m";
            //订单描述
            builder.body = "";
            //门店编号,很重要的参数,可以用作之后的营销
            builder.store_id = "test store id";
            //操作员编号,很重要的参数,可以用作之后的营销
            builder.operator_id = "test";

            //传入商品信息详情
            List <GoodsInfo> gList = new List <GoodsInfo>();

            if (order != null)
            {
                GoodsInfo goods = new GoodsInfo();
                goods.goods_id   = order.Product_Id.ToString();
                goods.goods_name = subject;
                goods.price      = order.Price.ToString();
                goods.quantity   = order.Count.ToString();;
                gList.Add(goods);
            }
            else
            {
                GoodsInfo goods = new GoodsInfo();
                goods.goods_id   = "520";
                goods.goods_name = "捐助";
                goods.price      = "0.1";
                goods.quantity   = "1";
                gList.Add(goods);
            }

            builder.goods_detail = gList;

            //系统商接入可以填此参数用作返佣
            //ExtendParams exParam = new ExtendParams();
            //exParam.sysServiceProviderId = "20880000000000";
            //builder.extendParams = exParam;

            return(builder);
        }