Example #1
0
        /// <summary>
        /// 写苹果返回记录
        /// </summary>
        /// <param name="detialInfo"></param>
        /// <param name="receipt"></param>
        public void WriteReturnAppDetail(ShareDetialInfo detialInfo, AppReceiptInfo receipt)
        {
            StringBuilder sqlQuery = new StringBuilder();

            sqlQuery.Append("INSERT INTO ReturnAppDetailInfo(UserID,OrderID,PayAmount,Status,quantity,product_id,transaction_id,purchase_date,original_transaction_id,");
            sqlQuery.Append("original_purchase_date,app_item_id,version_external_identifier,bid,bvrs)");
            sqlQuery.Append(" VALUES(");
            sqlQuery.Append("@UserID,@OrderID,@PayAmount,@Status,@quantity,@product_id,@transaction_id,@purchase_date,@original_transaction_id,");
            sqlQuery.Append("@original_purchase_date,@app_item_id,@version_external_identifier,@bid,@bvrs)");

            List <DbParameter> prams = new List <DbParameter>();

            prams.Add(Database.MakeInParam("UserID", detialInfo.UserID));
            prams.Add(Database.MakeInParam("OrderID", detialInfo.OrderID));
            prams.Add(Database.MakeInParam("PayAmount", detialInfo.PayAmount));
            prams.Add(Database.MakeInParam("Status", receipt.Status));
            prams.Add(Database.MakeInParam("quantity", receipt.Receipt.quantity));
            prams.Add(Database.MakeInParam("product_id", receipt.Receipt.product_id));
            prams.Add(Database.MakeInParam("transaction_id", receipt.Receipt.transaction_id));
            prams.Add(Database.MakeInParam("purchase_date", receipt.Receipt.purchase_date));
            prams.Add(Database.MakeInParam("original_transaction_id", receipt.Receipt.original_transaction_id));
            prams.Add(Database.MakeInParam("original_purchase_date", receipt.Receipt.original_purchase_date));
            prams.Add(Database.MakeInParam("app_item_id", receipt.Receipt.app_item_id));
            prams.Add(Database.MakeInParam("version_external_identifier", receipt.Receipt.version_external_identifier));
            prams.Add(Database.MakeInParam("bid", receipt.Receipt.bid));
            prams.Add(Database.MakeInParam("bvrs", receipt.Receipt.bvrs));

            Database.ExecuteNonQuery(CommandType.Text, sqlQuery.ToString(), prams.ToArray());
        }
Example #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                StreamReader sr = new StreamReader(Request.InputStream);
                receiptData = sr.ReadToEnd();

                //苹果返回数据
                string         rValue  = AppInfo(receiptData);
                AppReceiptInfo receipt = AppReceiptInfo.DeserializeObject(rValue);

                //订单数据
                ShareDetialInfo detailInfo = new ShareDetialInfo();
                detailInfo.UserID    = userID;
                detailInfo.OrderID   = orderID;
                detailInfo.PayAmount = payAmount;
                detailInfo.ShareID   = 100;

                //处理数据
                TreasureFacade treasureFacade = new TreasureFacade();
                treasureFacade.WriteReturnAppDetail(detailInfo, receipt);

                if (receipt.Status == 0)
                {
                    DataSet ds = treasureFacade.GetAppInfoByProductID(receipt.Receipt.product_id);
                    if (ds.Tables[0].Rows.Count == 0)
                    {
                        Response.Write("失败");
                        return;
                    }

                    //写充值记录
                    try
                    {
                        Message msg = treasureFacade.FilliedApp(detailInfo);
                        if (msg.Success)
                        {
                            Response.Write("0");
                        }
                        else
                        {
                            Response.Write(msg.Content);
                        }
                    }
                    catch (Exception ex)
                    {
                        Response.Write(ex.Message);
                    }
                }
                else
                {
                    Response.Write("失败");
                }
            }
        }
 protected void Page_Load(object sender, System.EventArgs e)
 {
     if (!base.IsPostBack)
     {
         System.IO.StreamReader streamReader = new System.IO.StreamReader(base.Request.InputStream);
         this.receiptData = streamReader.ReadToEnd();
         string          jsonText        = this.AppInfo(this.receiptData);
         AppReceiptInfo  appReceiptInfo  = AppReceiptInfo.DeserializeObject(jsonText);
         ShareDetialInfo shareDetialInfo = new ShareDetialInfo();
         shareDetialInfo.UserID    = this.userID;
         shareDetialInfo.OrderID   = this.orderID;
         shareDetialInfo.PayAmount = this.payAmount;
         shareDetialInfo.ShareID   = 100;
         TreasureFacade treasureFacade = new TreasureFacade();
         treasureFacade.WriteReturnAppDetail(shareDetialInfo, appReceiptInfo);
         if (appReceiptInfo.Status == 0)
         {
             try
             {
                 Message message = treasureFacade.FilliedApp(shareDetialInfo, appReceiptInfo.Receipt.product_id);
                 if (message.Success)
                 {
                     base.Response.Write("0");
                 }
                 else
                 {
                     base.Response.Write(message.Content);
                 }
                 return;
             }
             catch (System.Exception ex)
             {
                 base.Response.Write(ex.Message);
                 return;
             }
         }
         base.Response.Write("失败");
     }
 }
Example #4
0
 /// <summary>
 /// 写苹果返回记录
 /// </summary>
 /// <param name="detialInfo"></param>
 /// <param name="receipt"></param>
 public void WriteReturnAppDetail(ShareDetialInfo detialInfo, AppReceiptInfo receipt)
 {
     treasureData.WriteReturnAppDetail(detialInfo, receipt);
 }