internal static bool Update(ExtractMoney item)
        {
            string commandText = @"UPDATE ExtractMoney SET
                                        SellerId = ?SellerId,
                                        CardNumber = ?CardNumber,
                                        Bank = ?Bank,
                                        Balance = ?Balance,
                                        Money = ?Money,
                                        AccountName = ?AccountName,
                                        CreateTime = ?CreateTime,
                                        Status = ?Status,
                                        Fee = ?Fee,
                                        SendTime = ?SendTime
                                    WHERE
                                        Id = ?Id";

            List <MySqlParameter> parameters = new List <MySqlParameter>();

            parameters.Add(new MySqlParameter("?Id", item.Id));
            parameters.Add(new MySqlParameter("?SellerId", item.SellerId));
            parameters.Add(new MySqlParameter("?CardNumber", item.CardNumber));
            parameters.Add(new MySqlParameter("?Bank", item.Bank));
            parameters.Add(new MySqlParameter("?Balance", item.Balance));
            parameters.Add(new MySqlParameter("?Money", item.Money));
            parameters.Add(new MySqlParameter("?CreateTime", item.CreateTime));
            parameters.Add(new MySqlParameter("?AccountName", item.AccountName));
            parameters.Add(new MySqlParameter("?Status", item.Status));
            parameters.Add(new MySqlParameter("?Fee", item.Fee));
            parameters.Add(new MySqlParameter("?SendTime", item.SendTime));

            return(MySqlHelper.ExecuteNonQuery(GlobalConfig.DbConn, CommandType.Text, commandText, parameters.ToArray()) > 0);
        }
        public static void Create(ExtractMoney item)
        {
            string connectionString = GlobalConfig.DbConn;
            string commandText      = @"INSERT INTO ExtractMoney 
                                            ( 
                                            SellerId, 
                                            CardNumber,
                                            Bank,
                                            Balance,
                                            Money,
                                            CreateTime,
                                            AccountName,
                                            Status,
                                            Fee,
                                            UserAccount
                                            )
                                            VALUES
                                            ( 
                                            ?SellerId, 
                                            ?CardNumber, 
                                            ?Bank,
                                            ?Balance,
                                            ?Money,
                                            ?CreateTime,
                                            ?AccountName,
                                            ?Status,
                                            ?Fee,
                                            ?UserAccount
                                            )"    ;

            List <MySqlParameter> parameters = new List <MySqlParameter>();

            parameters.Add(new MySqlParameter("?SellerId", item.SellerId));
            parameters.Add(new MySqlParameter("?CardNumber", item.CardNumber));
            parameters.Add(new MySqlParameter("?Bank", item.Bank));
            parameters.Add(new MySqlParameter("?Balance", item.Balance));
            parameters.Add(new MySqlParameter("?Money", item.Money));
            parameters.Add(new MySqlParameter("?CreateTime", item.CreateTime));
            parameters.Add(new MySqlParameter("?AccountName", item.AccountName));
            parameters.Add(new MySqlParameter("?Status", item.Status));
            parameters.Add(new MySqlParameter("?Fee", item.Fee));
            parameters.Add(new MySqlParameter("?UserAccount", item.UserAccount));

            MySqlHelper.ExecuteNonQuery(connectionString, CommandType.Text, commandText, parameters.ToArray());
        }
        public static ExtractMoney GetItem(int id)
        {
            ExtractMoney          e           = null;
            string                commandText = @"select * from ExtractMoney where id = ?id";
            List <MySqlParameter> parameters  = new List <MySqlParameter>();

            parameters.Add(new MySqlParameter("?id", id));
            try
            {
                using (var conn = Utility.ObtainConn(Utility._gameDbConn))
                {
                    MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text,
                                                                       commandText, parameters.ToArray());
                    while (reader.Read())
                    {
                        e             = new ExtractMoney();
                        e.Id          = reader.GetInt32(0);
                        e.SellerId    = (int)reader["SellerId"];
                        e.CardNumber  = (long)reader["CardNumber"];
                        e.Bank        = reader["Bank"].ToString();
                        e.Balance     = (float)reader["Balance"];
                        e.CreateTime  = (DateTime)reader["CreateTime"];
                        e.Money       = (float)reader["Money"];
                        e.AccountName = reader["AccountName"].ToString();
                        e.Status      = (int)reader["Status"];
                        e.Fee         = (float)reader["Fee"];
                        e.UserAccount = reader["UserAccount"].ToString();
                        e.SendTime    = (DateTime)reader["SendTime"];
                    }
                }
            }
            catch (System.Exception ex)
            {
                throw;
            }
            return(e);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="sellId"></param>
        /// <param name="type"></param>
        /// <param name="index"></param>
        /// <param name="size"></param>
        /// <param name="order">排序sql</param>
        /// <returns></returns>
        public static PagResults <ExtractMoney> GetPagings(int sellerId, int index, int size, string order = "", string sqlwhere = "")
        {
            var results = new PagResults <ExtractMoney>();

            results.Results = new List <ExtractMoney>();
            List <MySqlParameter> parameters = new List <MySqlParameter>();

            if (order == "")
            {
                order = "order by CreateTime desc";
            }

            string commandText = "";

            if (sellerId != 0)
            {
                commandText = @"select * from ExtractMoney where sellerId = ?sellerId " + sqlwhere + order + " LIMIT ?index,?size";
                parameters.Add(new MySqlParameter("?sellerId", sellerId));
            }
            else
            {
                commandText = @"select * from ExtractMoney " + sqlwhere + order + " LIMIT ?index,?size";
            }

            parameters.Add(new MySqlParameter("?index", index));
            parameters.Add(new MySqlParameter("?size", size));

            try
            {
                using (var conn = Utility.ObtainConn(Utility._gameDbConn))
                {
                    MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text,
                                                                       commandText, parameters.ToArray());
                    while (reader.Read())
                    {
                        ExtractMoney e = new ExtractMoney();
                        e.Id          = reader.GetInt32(0);
                        e.SellerId    = (int)reader["SellerId"];
                        e.CardNumber  = (long)reader["CardNumber"];
                        e.Bank        = reader["Bank"].ToString();
                        e.Balance     = (float)reader["Balance"];
                        e.CreateTime  = (DateTime)reader["CreateTime"];
                        e.Money       = (float)reader["Money"];
                        e.AccountName = reader["AccountName"].ToString();
                        e.Status      = (int)reader["Status"];
                        e.Fee         = (float)reader["Fee"];
                        e.UserAccount = reader["UserAccount"].ToString();
                        e.SendTime    = (DateTime)reader["SendTime"];

                        results.Results.Add(e);
                    }

                    //一个函数有两次连接数据库 先把连接断开 然后重连
                    conn.Close();
                    conn.Dispose();
                    conn.Open();

                    commandText = "select count(*) from ExtractMoney where sellerId = ?sellerId";
                    parameters.Clear();
                    parameters.Add(new MySqlParameter("?sellerId", sellerId));
                    reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText,
                                                       parameters.ToArray());
                    if (reader.HasRows)
                    {
                        if (reader.Read())
                        {
                            results.TotalCount = reader.GetInt32(0);
                        }
                    }
                }
            }
            catch (System.Exception ex)
            {
                throw;
            }
            return(results);
        }
示例#5
0
        private void Withdraw()
        {
            var item = new ExtractMoney();

            item.SellerId    = GetInt("sellerId");
            item.Money       = GetFloat("money");
            item.Bank        = GetString("bank");
            item.CardNumber  = GetLong("cardnumber");
            item.AccountName = GetString("accountname");
            item.CreateTime  = DateTime.Now;

            var user = AccountHelper.GetUser(item.SellerId);

            if (user == null)
            {
                throw new ArgumentNullException("user为空:" + item.SellerId);
            }
            if (item.CardNumber <= 0 || item.Bank.Length < 1 || item.AccountName.Length < 1)
            {
                ReturnErrorMsg("提现失败,卡号、开户行、开户名等信息是必填项,请填写正确");
            }


            //目前商户的用户信息分三张表存储
            //提现确认打款后才扣钱
            //user.Money -= item.Money;
            //AccountHelper.SaveAccount(user);

            //商家更新
            var seller = MerchantHelper.GetMerchant(item.SellerId);

            seller.CardNumber  = item.CardNumber;
            seller.Bank        = item.Bank;
            seller.AccountName = item.AccountName;
            float fee = ParamHelper.PlatformCfgData.SignList.FirstOrDefault(s => s.Id == seller.Sid).Prec *item.Money / 100;

            item.Fee = fee;
            if (seller.Money < (item.Money + item.Fee))
            {
                ReturnErrorMsg(string.Format("提现失败,没有这么多的资金可以提现,提现金额:{0},手续费:{1}", item.Money, item.Fee));
                return;
            }

            seller.Money = seller.Money - item.Money - item.Fee;
            MerchantHelper.SaveMerchant(seller);



            //提现表更新
            item.Balance     = seller.Money;
            item.UserAccount = user.UserName;//存储商户账户
            ExtractMoneyHelper.Create(item);
            ReturnCorrectMsg(string.Format("提现{0}申请成功,手续费:{1},请耐心等待后台人员处理", item.Money, item.Fee));

            //发短信
            if (Utility._msg_opensend == "1")
            //Utility.SendMsg(verificationCode.Code, verificationCode.Phone, Utility._modifyphone_message);
            {
                SendMsgClass4 jsobject = new SendMsgClass4();

                jsobject.param1 = string.IsNullOrEmpty(seller.Name) ? "商户名称为空" : seller.Name;
                jsobject.param2 = item.Money.ToString();
                jsobject.param3 = "3~5";
                jsobject.param4 = Utility._3vurl;

                if (Utility.SendMsg(seller.Phone, MsgTempleId.MerchantWithdraw, jsobject) != "发送成功")
                {
                    logger.InfoFormat("短信模板:{0},Phone:{3},发送失败merchantId:{1},Name:{2}",
                                      (int)MsgTempleId.MerchantWithdraw, seller.Id, seller.Name, seller.Phone);
                    //ReturnErrorMsg("短信发送失败");
                    //return;
                }
            }
            ReturnCorrectMsg(string.Format("提现{0}申请成功,手续费:{1},请耐心等待后台人员处理", item.Money, item.Fee));
        }