public bool AddRequest(StoreBalanceDrawRequestInfo balanceDrawRequest)
        {
            bool result = false;

            using (DbConnection dbConnection = base.database.CreateConnection())
            {
                try
                {
                    dbConnection.Open();
                    using (DbTransaction dbTransaction = dbConnection.BeginTransaction())
                    {
                        try
                        {
                            if (this.Add(balanceDrawRequest, dbTransaction) > 0)
                            {
                                dbTransaction.Commit();
                                result = true;
                            }
                        }
                        catch (Exception)
                        {
                            dbTransaction.Rollback();
                        }
                    }
                }
                catch (Exception)
                {
                }
                finally
                {
                    dbConnection.Close();
                }
            }
            return(result);
        }
        public StoreBalanceDrawRequestInfo GetLastDrawRequest(int storeId)
        {
            StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = new StoreBalanceDrawRequestInfo();
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.AppendFormat("SELECT TOP 1 [AccountName],[BankName],[MerchantCode] FROM [dbo].[Hishop_StoreBalanceDrawRequest] WHERE StoreId = {0} AND IsAlipay = 0 ORDER BY Id desc;", storeId);
            stringBuilder.AppendFormat("SELECT TOP 1 [AlipayRealName] ,[AlipayCode] FROM  [dbo].[Hishop_StoreBalanceDrawRequest] WHERE StoreId = {0} AND IsAlipay = 1  ORDER BY Id desc", storeId);
            DbCommand sqlStringCommand = base.database.GetSqlStringCommand(stringBuilder.ToString());

            try
            {
                using (IDataReader dataReader = base.database.ExecuteReader(sqlStringCommand))
                {
                    if (dataReader.Read())
                    {
                        storeBalanceDrawRequestInfo.AccountName  = ((IDataRecord)dataReader)["AccountName"].ToString();
                        storeBalanceDrawRequestInfo.BankName     = ((IDataRecord)dataReader)["BankName"].ToString();
                        storeBalanceDrawRequestInfo.MerchantCode = ((IDataRecord)dataReader)["MerchantCode"].ToString();
                    }
                    if (dataReader.NextResult() && dataReader.Read())
                    {
                        storeBalanceDrawRequestInfo.AlipayRealName = ((IDataRecord)dataReader)["AlipayRealName"].ToString();
                        storeBalanceDrawRequestInfo.AlipayCode     = ((IDataRecord)dataReader)["AlipayCode"].ToString();
                    }
                }
            }
            catch (Exception)
            {
                storeBalanceDrawRequestInfo = null;
            }
            return(storeBalanceDrawRequestInfo);
        }
        public bool DeleteBalanceDrawRequestById(bool IsPass, decimal balance, StoreBalanceDrawRequestInfo balanceDrawRequest, string manageName, DbTransaction dbTran, string sReason = "")
        {
            StringBuilder stringBuilder = new StringBuilder("UPDATE [Hishop_StoreBalanceDrawRequest] SET IsPass = @IsPass, AccountDate = @AccountDate, ManagerRemark = @ManagerRemark, ManagerUserName = @ManagerUserName WHERE Id  = @Id;");

            if (IsPass)
            {
                StoreBalanceDetailInfo storeBalanceDetailInfo = new StoreBalanceDetailInfo();
                stringBuilder.Append("UPDATE Hishop_Stores SET Balance = Balance - @Balance WHERE StoreId = @StoreId");
                storeBalanceDetailInfo.StoreId         = balanceDrawRequest.StoreId;
                storeBalanceDetailInfo.TradeDate       = DateTime.Now;
                storeBalanceDetailInfo.TradeType       = StoreTradeTypes.DrawRequest;
                storeBalanceDetailInfo.Expenses        = balanceDrawRequest.Amount;
                storeBalanceDetailInfo.Balance         = balance - balanceDrawRequest.Amount;
                storeBalanceDetailInfo.Remark          = balanceDrawRequest.Remark;
                storeBalanceDetailInfo.ManagerUserName = manageName;
                storeBalanceDetailInfo.TradeNo         = balanceDrawRequest.Id.ToString();
                storeBalanceDetailInfo.CreateTime      = DateTime.Now;
                storeBalanceDetailInfo.Income          = default(decimal);
                storeBalanceDetailInfo.PlatCommission  = decimal.Zero;
                if (this.Add(storeBalanceDetailInfo, dbTran) <= 0)
                {
                    return(false);
                }
            }
            DbCommand sqlStringCommand = base.database.GetSqlStringCommand(stringBuilder.ToString());

            base.database.AddInParameter(sqlStringCommand, "Id", DbType.Int32, balanceDrawRequest.Id);
            base.database.AddInParameter(sqlStringCommand, "StoreId", DbType.Int32, balanceDrawRequest.StoreId);
            base.database.AddInParameter(sqlStringCommand, "IsPass", DbType.Boolean, IsPass);
            base.database.AddInParameter(sqlStringCommand, "AccountDate", DbType.DateTime, DateTime.Now);
            base.database.AddInParameter(sqlStringCommand, "ManagerRemark", DbType.String, sReason);
            base.database.AddInParameter(sqlStringCommand, "Balance", DbType.Decimal, balanceDrawRequest.Amount);
            base.database.AddInParameter(sqlStringCommand, "ManagerUserName", DbType.String, manageName);
            return(base.database.ExecuteNonQuery(sqlStringCommand, dbTran) > 0);
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!int.TryParse(this.Page.Request.QueryString["OrderId"], out this.orderId))
     {
         base.GotoResourceNotFound();
     }
     else if (!this.Page.IsPostBack)
     {
         this.lblUserName.Text = this.Page.Request.QueryString["Name"].ToNullString();
         StoreBalanceDrawRequestQuery query = new StoreBalanceDrawRequestQuery
         {
             Id        = this.orderId,
             PageSize  = 1,
             PageIndex = 1,
             IsCount   = false
         };
         PageModel <StoreBalanceDrawRequestInfo> balanceDrawRequests = StoreBalanceHelper.GetBalanceDrawRequests(query, false);
         if (balanceDrawRequests != null && balanceDrawRequests.Models.Count() > 0)
         {
             StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = balanceDrawRequests.Models.FirstOrDefault();
             this.lblAlipayCode.Text     = storeBalanceDrawRequestInfo.AlipayCode.ToNullString();
             this.lblAlipayRealName.Text = storeBalanceDrawRequestInfo.AlipayRealName.ToNullString();
             this.lblAccountName.Text    = storeBalanceDrawRequestInfo.AccountName.ToNullString();
             this.lblBankName.Text       = storeBalanceDrawRequestInfo.BankName.ToNullString();
             this.lblMerchantCode.Text   = storeBalanceDrawRequestInfo.MerchantCode.ToNullString();
             if (storeBalanceDrawRequestInfo.IsAlipay.ToBool())
             {
                 this.isAlipay = true;
             }
         }
     }
 }
        public static bool BalanceDrawRequest(StoreBalanceDrawRequestInfo balanceDrawRequest)
        {
            Globals.EntityCoding(balanceDrawRequest, true);
            StoreBalanceDao storeBalanceDao = new StoreBalanceDao();
            decimal         balanceLeft     = storeBalanceDao.GetBalanceLeft(balanceDrawRequest.StoreId);

            if (balanceLeft < balanceDrawRequest.Amount)
            {
                return(false);
            }
            return(storeBalanceDao.AddRequest(balanceDrawRequest));
        }
        public static void OnLineBalanceDrawRequest_API(int Id, bool IsSuccess, string sError)
        {
            bool                        flag                        = false;
            StoreBalanceDao             storeBalanceDao             = new StoreBalanceDao();
            StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = storeBalanceDao.Get <StoreBalanceDrawRequestInfo>(Id);

            if (storeBalanceDrawRequestInfo != null)
            {
                StoresInfo  storeById = StoresHelper.GetStoreById(storeBalanceDrawRequestInfo.StoreId);
                ManagerInfo manager   = HiContext.Current.Manager;
                string      text      = (manager == null) ? "" : manager.UserName;
                Database    database  = DatabaseFactory.CreateDatabase();
                using (DbConnection dbConnection = database.CreateConnection())
                {
                    dbConnection.Open();
                    DbTransaction dbTransaction = dbConnection.BeginTransaction();
                    try
                    {
                        OnLinePayment onLinePayment;
                        if (storeById == null)
                        {
                            if (IsSuccess)
                            {
                                flag = storeBalanceDao.DeleteBalanceDrawRequestById(true, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, "");
                            }
                            else
                            {
                                StoreBalanceDao storeBalanceDao2 = storeBalanceDao;
                                onLinePayment = OnLinePayment.PayFail;
                                flag          = storeBalanceDao2.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "未找到该门店,请拒绝该请求或做线下处理", text);
                            }
                            if (!flag)
                            {
                                dbTransaction.Rollback();
                            }
                            else
                            {
                                dbTransaction.Commit();
                            }
                        }
                        else
                        {
                            if (IsSuccess)
                            {
                                flag = storeBalanceDao.DeleteBalanceDrawRequestById(true, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, "");
                                if (!flag)
                                {
                                    dbTransaction.Rollback();
                                    goto end_IL_006f;
                                }
                            }
                            else
                            {
                                StoreBalanceDao storeBalanceDao3 = storeBalanceDao;
                                onLinePayment = OnLinePayment.PayFail;
                                flag          = storeBalanceDao3.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), sError, text);
                            }
                            if (!flag)
                            {
                                dbTransaction.Rollback();
                            }
                            else
                            {
                                string text2 = "";
                                text2 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode));
                                Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text2, storeBalanceDrawRequestInfo.RequestTime, false, sError);
                                dbTransaction.Commit();
                            }
                        }
                        end_IL_006f :;
                    }
                    catch (Exception ex)
                    {
                        IDictionary <string, string> dictionary = new Dictionary <string, string>();
                        dictionary.Add("ErrorMessage", ex.Message);
                        dictionary.Add("StackTrace", ex.StackTrace);
                        if (ex.InnerException != null)
                        {
                            dictionary.Add("InnerException", ex.InnerException.ToString());
                        }
                        if (ex.GetBaseException() != null)
                        {
                            dictionary.Add("BaseException", ex.GetBaseException().Message);
                        }
                        if (ex.TargetSite != (MethodBase)null)
                        {
                            dictionary.Add("TargetSite", ex.TargetSite.ToString());
                        }
                        dictionary.Add("ExSource", ex.Source);
                        Globals.WriteLog(dictionary, "", "", "", "AcceptDraw");
                        dbTransaction.Rollback();
                    }
                    finally
                    {
                        dbConnection.Close();
                    }
                }
            }
        }
        public static bool DealBalanceDrawRequestById(int Id, bool agree, ref string sError, string reason = "")
        {
            bool                        flag                        = false;
            StoreBalanceDao             storeBalanceDao             = new StoreBalanceDao();
            StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = storeBalanceDao.Get <StoreBalanceDrawRequestInfo>(Id);

            if (storeBalanceDrawRequestInfo == null)
            {
                return(false);
            }
            StoresInfo  storeById = StoresHelper.GetStoreById(storeBalanceDrawRequestInfo.StoreId);
            ManagerInfo manager   = HiContext.Current.Manager;
            string      text      = (manager == null) ? "" : manager.UserName;
            Database    database  = DatabaseFactory.CreateDatabase();

            using (DbConnection dbConnection = database.CreateConnection())
            {
                dbConnection.Open();
                DbTransaction dbTransaction = dbConnection.BeginTransaction();
                try
                {
                    if (agree)
                    {
                        if (storeBalanceDrawRequestInfo.IsPass.HasValue)
                        {
                            sError = "已处理该条记录";
                            dbTransaction.Rollback();
                            return(false);
                        }
                        OnLinePayment onLinePayment;
                        if (storeById == null)
                        {
                            sError = "未找到该门店";
                            StoreBalanceDao storeBalanceDao2 = storeBalanceDao;
                            onLinePayment = OnLinePayment.PayFail;
                            flag          = storeBalanceDao2.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "未找到该门店,请拒绝该用户的请求", text);
                            if (!flag)
                            {
                                dbTransaction.Rollback();
                                return(false);
                            }
                            dbTransaction.Commit();
                            return(false);
                        }
                        string text2 = storeBalanceDrawRequestInfo.RequestState.ToNullString().Trim();
                        onLinePayment = OnLinePayment.Paying;
                        if (text2.Equals(onLinePayment.GetHashCode().ToNullString()))
                        {
                            sError = "付款正在进行中";
                            dbTransaction.Rollback();
                            return(false);
                        }
                        if (storeBalanceDrawRequestInfo.IsAlipay.ToBool())
                        {
                            StoreBalanceDao storeBalanceDao3 = storeBalanceDao;
                            onLinePayment = OnLinePayment.Paying;
                            flag          = storeBalanceDao3.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "", text);
                            if (!flag)
                            {
                                dbTransaction.Rollback();
                                return(false);
                            }
                            EventLogs.WriteOperationLog(Privilege.MemberAccount, string.Format(CultureInfo.InvariantCulture, "给门店\"{0}\"处理提现申请(支付宝批量付款)", new object[1]
                            {
                                storeById.StoreName
                            }), false);
                            return(true);
                        }
                        flag = storeBalanceDao.DeleteBalanceDrawRequestById(agree, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, reason);
                        if (!flag)
                        {
                            dbTransaction.Rollback();
                            return(false);
                        }
                        string text3 = "";
                        text3 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode));
                        Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text3, storeBalanceDrawRequestInfo.RequestTime, true, "");
                    }
                    else
                    {
                        flag = storeBalanceDao.DeleteBalanceDrawRequestById(agree, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, reason);
                        if (!flag)
                        {
                            dbTransaction.Rollback();
                            return(false);
                        }
                        string text4 = "";
                        text4 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode));
                        Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text4, storeBalanceDrawRequestInfo.RequestTime, false, reason);
                    }
                    dbTransaction.Commit();
                    EventLogs.WriteOperationLog(Privilege.MemberAccount, string.Format(CultureInfo.InvariantCulture, "给门店\"{0}\"处理提现申请", new object[1]
                    {
                        storeById.StoreName
                    }), false);
                }
                catch (Exception ex)
                {
                    IDictionary <string, string> dictionary = new Dictionary <string, string>();
                    dictionary.Add("ErrorMessage", ex.Message);
                    dictionary.Add("StackTrace", ex.StackTrace);
                    if (ex.InnerException != null)
                    {
                        dictionary.Add("InnerException", ex.InnerException.ToString());
                    }
                    if (ex.GetBaseException() != null)
                    {
                        dictionary.Add("BaseException", ex.GetBaseException().Message);
                    }
                    if (ex.TargetSite != (MethodBase)null)
                    {
                        dictionary.Add("TargetSite", ex.TargetSite.ToString());
                    }
                    dictionary.Add("ExSource", ex.Source);
                    Globals.WriteLog(dictionary, "", "", "", "AcceptDraw");
                    sError = ex.Message;
                    dbTransaction.Rollback();
                }
                finally
                {
                    dbConnection.Close();
                }
                return(flag);
            }
        }
        public override void OnLoad(HttpContext context)
        {
            base.OnLoad(context);
            if (context.Request["flag"] == "Select")
            {
                StoreBalanceDrawRequestQuery storeBalanceDrawRequestQuery = new StoreBalanceDrawRequestQuery();
                int num = context.Request["PageIndex"].ToInt(0);
                if (num < 1)
                {
                    num = 1;
                }
                int num2 = context.Request["PageSize"].ToInt(0);
                if (num2 < 1)
                {
                    num2 = 10;
                }
                storeBalanceDrawRequestQuery.PageIndex = num;
                storeBalanceDrawRequestQuery.PageSize  = num2;
                storeBalanceDrawRequestQuery.SortBy    = "RequestTime";
                storeBalanceDrawRequestQuery.SortOrder = SortAction.Desc;
                storeBalanceDrawRequestQuery.StoreId   = base.CurrentManager.StoreId;
                PageModel <StoreBalanceDrawRequestInfo> balanceDrawRequests = StoreBalanceHelper.GetBalanceDrawRequests(storeBalanceDrawRequestQuery, false);
                string s = JsonConvert.SerializeObject(new
                {
                    Result = new
                    {
                        RecordCount = balanceDrawRequests.Total,
                        List        = balanceDrawRequests.Models.Select(delegate(StoreBalanceDrawRequestInfo b)
                        {
                            DateTime dateTime   = b.RequestTime;
                            string requestTime  = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
                            decimal amount      = b.Amount.F2ToString("f2").ToDecimal(0);
                            string drawType     = (b.IsAlipay.HasValue && b.IsAlipay.Value) ? "支付宝" : "银行卡";
                            string statusText   = b.IsPass.HasValue ? (b.IsPass.Value ? "已通过审核" : "拒绝") : "审核中";
                            string requestError = b.RequestError;
                            object accountDate;
                            if (!b.AccountDate.HasValue)
                            {
                                accountDate = "";
                            }
                            else
                            {
                                dateTime    = b.AccountDate.Value;
                                accountDate = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
                            }
                            return(new
                            {
                                RequestTime = requestTime,
                                Amount = amount,
                                DrawType = drawType,
                                StatusText = statusText,
                                RequestError = requestError,
                                AccountDate = (string)accountDate,
                                Id = b.Id,
                                ManagerRemark = b.ManagerRemark,
                                Remark = b.Remark
                            });
                        })
                    }
                });
                context.Response.Write(s);
                context.Response.End();
            }
            if (context.Request["flag"] == "GetDrawCardInfo")
            {
                StoresInfo       storeById    = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                StoreBalanceInfo storeBalance = StoreBalanceHelper.GetStoreBalance(storeById.StoreId, storeById.CommissionRate);
                decimal          num3         = storeBalance.Balance - storeBalance.BalanceForzen;
                if (num3 < decimal.Zero)
                {
                    num3 = default(decimal);
                }
                SiteSettings siteSettings = HiContext.Current.SiteSettings;
                string       s2           = JsonConvert.SerializeObject(new
                {
                    Result = new
                    {
                        Balance          = num3.F2ToString("f2").ToDecimal(0),
                        IsOpenAlipayDraw = siteSettings.EnableBulkPaymentAliPay,
                        AlipayAccount    = storeById.AlipayAccount,
                        AlipayRealName   = storeById.AlipayRealName,
                        BankName         = storeById.BankName,
                        BankAccountName  = storeById.BankAccountName,
                        BankCardNo       = storeById.BankCardNo
                    }
                });
                context.Response.Write(s2);
                context.Response.End();
            }
            if (context.Request["flag"] == "ValidTradePassword")
            {
                StoresInfo storeById2 = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                string     pass       = context.Request["Password"].ToNullString();
                if (storeById2.TradePassword == Users.EncodePassword(pass, storeById2.TradePasswordSalt))
                {
                    string s3 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "SUCCESS",
                            Msg    = "验证成功"
                        }
                    });
                    context.Response.Write(s3);
                    context.Response.End();
                }
                else
                {
                    string s4 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "FAIL",
                            Msg    = "验证失败"
                        }
                    });
                    context.Response.Write(s4);
                    context.Response.End();
                }
            }
            if (context.Request["flag"] == "ApplyBalanceRequest")
            {
                StoresInfo storeById3 = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                string     pass2      = context.Request["Password"].ToNullString();
                if (storeById3.TradePassword != Users.EncodePassword(pass2, storeById3.TradePasswordSalt))
                {
                    context.Response.Write(this.GetErrorJosn(521, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.TradePassword_Error, 0)));
                    context.Response.End();
                }
                int num4 = context.Request["CardType"].ToInt(0);
                if (num4 != 1 && num4 != 2)
                {
                    context.Response.Write(this.GetErrorJosn(133, "帐号类型" + EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.ValueUndefined, 0)));
                    context.Response.End();
                }
                if (num4 == 1 && !HiContext.Current.SiteSettings.EnableBulkPaymentAliPay)
                {
                    context.Response.Write(this.GetErrorJosn(134, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.PlatNotOpenAlipayDraw, 0)));
                    context.Response.End();
                }
                if (num4 == 1 && (string.IsNullOrEmpty(storeById3.AlipayAccount) || string.IsNullOrEmpty(storeById3.AlipayRealName)))
                {
                    context.Response.Write(this.GetErrorJosn(523, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.StoreNotBindAlipayInfo, 0)));
                    context.Response.End();
                }
                if (num4 == 2 && (string.IsNullOrEmpty(storeById3.BankAccountName) || string.IsNullOrEmpty(storeById3.BankCardNo) || string.IsNullOrEmpty(storeById3.BankName)))
                {
                    context.Response.Write(this.GetErrorJosn(524, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.StoreNotBindBankCardInfo, 0)));
                    context.Response.End();
                }
                decimal num5 = context.Request["RequestAmount"].ToDecimal(0);
                if (num5 <= decimal.Zero)
                {
                    context.Response.Write(this.GetErrorJosn(526, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.RequestAmountError, 0)));
                    context.Response.End();
                }
                if (num5 > storeById3.Balance)
                {
                    context.Response.Write(this.GetErrorJosn(525, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.BalanceNotEnough, 0)));
                    context.Response.End();
                }
                string text = Globals.StripAllTags(context.Request["Remark"].ToNullString());
                if (text.Length > 2000)
                {
                    text = text.Substring(0, 2000);
                }
                StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = new StoreBalanceDrawRequestInfo();
                if (num4 == 1)
                {
                    storeBalanceDrawRequestInfo.AlipayCode     = storeById3.AlipayAccount;
                    storeBalanceDrawRequestInfo.AlipayRealName = storeById3.AlipayRealName;
                    storeBalanceDrawRequestInfo.IsAlipay       = true;
                }
                else
                {
                    storeBalanceDrawRequestInfo.BankName     = storeById3.BankName;
                    storeBalanceDrawRequestInfo.AccountName  = storeById3.BankAccountName;
                    storeBalanceDrawRequestInfo.MerchantCode = storeById3.BankCardNo;
                    storeBalanceDrawRequestInfo.IsAlipay     = false;
                }
                storeBalanceDrawRequestInfo.RequestState = 1.ToString();
                storeBalanceDrawRequestInfo.Remark       = text;
                storeBalanceDrawRequestInfo.Amount       = num5;
                storeBalanceDrawRequestInfo.RequestTime  = DateTime.Now;
                storeBalanceDrawRequestInfo.StoreId      = storeById3.StoreId;
                if (StoreBalanceHelper.BalanceDrawRequest(storeBalanceDrawRequestInfo))
                {
                    string s5 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "SUCCESS",
                            Msg    = "申请提现成功"
                        }
                    });
                    context.Response.Write(s5);
                    context.Response.End();
                    goto IL_0738;
                }
                context.Response.Write(this.GetErrorJosn(0, ((Enum)(object)ApiErrorCode.Failed).ToDescription()));
                return;
            }
            goto IL_0738;
IL_0738:
            if (context.Request["flag"] == "CheckPasswordInfo")
            {
                StoresInfo storeById4 = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                if (storeById4.TradePassword == null || storeById4.TradePassword == "")
                {
                    string s6 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "FAIL",
                            Msg    = "未设置交易密码"
                        }
                    });
                    context.Response.Write(s6);
                    context.Response.End();
                }
                else
                {
                    string s7 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "SUCCESS",
                            Msg    = "已设置交易密码"
                        }
                    });
                    context.Response.Write(s7);
                    context.Response.End();
                }
            }
            if (context.Request["flag"] == "BindDrawCardInfo")
            {
                StoresInfo storeById5 = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                string     pass3      = context.Request["Password"].ToNullString();
                if (storeById5.TradePassword != Users.EncodePassword(pass3, storeById5.TradePasswordSalt))
                {
                    context.Response.Write(this.GetErrorJosn(521, EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.TradePassword_Error, 0)));
                    context.Response.End();
                }
                string text2 = "";
                string text3 = "";
                string text4 = "";
                string text5 = "";
                string text6 = "";
                if (base.CurrentSiteSetting.EnableBulkPaymentAliPay)
                {
                    text2 = Globals.StripAllTags(context.Request["AlipayAccount"].ToNullString());
                    text3 = Globals.StripAllTags(context.Request["AlipayRealName"].ToNullString());
                    if ((string.IsNullOrEmpty(text2) && !string.IsNullOrEmpty(text3)) || (!string.IsNullOrEmpty(text3) && string.IsNullOrEmpty(text3)))
                    {
                        context.Response.Write(this.GetErrorJosn(104, "支付宝帐号和真实姓名" + EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.Empty_Error, 0)));
                        context.Response.End();
                    }
                    if (!string.IsNullOrEmpty(text2) && !string.IsNullOrEmpty(text3))
                    {
                        storeById5.AlipayAccount  = text2;
                        storeById5.AlipayRealName = text3;
                    }
                }
                text4 = Globals.StripAllTags(context.Request["BankName"].ToNullString());
                text5 = Globals.StripAllTags(context.Request["BankAccountName"].ToNullString());
                text6 = Globals.StripAllTags(context.Request["BankCardNo"].ToNullString());
                if (!base.CurrentSiteSetting.EnableBulkPaymentAliPay && (string.IsNullOrEmpty(text4) || string.IsNullOrEmpty(text5) || string.IsNullOrEmpty(text6)))
                {
                    context.Response.Write(this.GetErrorJosn(104, "银行卡帐号" + EnumDescription.GetEnumDescription((Enum)(object)ApiErrorCode.Empty_Error, 0)));
                    context.Response.End();
                }
                storeById5.BankName        = text4;
                storeById5.BankAccountName = text5;
                storeById5.BankCardNo      = text6;
                if (StoresHelper.UpdateStore(storeById5))
                {
                    string s8 = JsonConvert.SerializeObject(new
                    {
                        Result = new
                        {
                            Status = "SUCCESS",
                            Msg    = "更新成功"
                        }
                    });
                    context.Response.Write(s8);
                    context.Response.End();
                    goto IL_0af6;
                }
                context.Response.Write(this.GetErrorJosn(0, ((Enum)(object)ApiErrorCode.Failed).ToDescription()));
                return;
            }
            goto IL_0af6;
IL_0af6:
            if (context.Request["flag"] == "SetTradePassword")
            {
                StoresInfo storeById6 = StoresHelper.GetStoreById(base.CurrentManager.StoreId);
                if (!string.IsNullOrEmpty(storeById6.TradePassword))
                {
                    context.Response.Write(this.GetErrorJosn(519, ((Enum)(object)ApiErrorCode.TradePasswordAlreadySet).ToDescription()));
                }
                else
                {
                    string text7 = context.Request["Password"].ToNullString();
                    string b2    = context.Request["RePassword"].ToNullString();
                    if (text7 != b2)
                    {
                        context.Response.Write(this.GetErrorJosn(213, ((Enum)(object)ApiErrorCode.RePasswordNoEqualsPassword).ToDescription()));
                    }
                    else if (string.IsNullOrEmpty(text7) || text7.Length < 6)
                    {
                        context.Response.Write(this.GetErrorJosn(212, ((Enum)(object)ApiErrorCode.Password_Error).ToDescription()));
                    }
                    else
                    {
                        storeById6.TradePasswordSalt = Globals.RndStr(128, true);
                        storeById6.TradePassword     = Users.EncodePassword(text7, storeById6.TradePasswordSalt);
                        if (StoresHelper.UpdateStore(storeById6))
                        {
                            string s9 = JsonConvert.SerializeObject(new
                            {
                                Result = new
                                {
                                    Status = "SUCCESS",
                                    Msg    = ""
                                }
                            });
                            context.Response.Write(s9);
                            context.Response.End();
                        }
                        else
                        {
                            context.Response.Write(this.GetErrorJosn(0, ((Enum)(object)ApiErrorCode.Failed).ToDescription()));
                        }
                    }
                }
            }
        }