public string UserTranAcc(string Type, string UserId, string ToUserId, string Money, string PassWord) { if (Convert.ToDecimal(Money) < new Decimal(0)) { return(this.GetJsonResult(0, "转账金额不正确!")); } using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "id=@id"; dbOperHandler.AddConditionParameter("@id", (object)UserId); object[] fields = dbOperHandler.GetFields("N_User", "Money,PayPass"); if (fields.Length <= 0) { return(this.GetJsonResult(0, "账号出现问题,请您重新登陆!")); } if (Convert.ToDecimal(Money) > Convert.ToDecimal(fields[0])) { return(this.GetJsonResult(0, "您的可用余额不足")); } if (!MD5.Last64(MD5.Lower32(PassWord)).Equals(fields[1].ToString())) { return(this.GetJsonResult(0, "您的取款密码错误")); } if (new UserChargeDAL().SaveUpCharge(Type, UserId, ToUserId, Convert.ToDecimal(Money)) <= 0) { return(this.GetJsonResult(0, "转账失败!")); } new LogSysDAL().Save("会员管理", "Id为" + UserId + "的会员转账给Id为" + ToUserId + "的会员!"); return(this.GetJsonResult(1, "转账成功!")); } }
public int Check(string _cashId, string _Msg, int State) { int num = 0; using (SqlConnection sqlConnection = new SqlConnection(ComData.connectionString)) { sqlConnection.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; try { object[] objArray = new object[2]; using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "id=" + _cashId; objArray = dbOperHandler.GetFields("N_UserGetCash", "UserId,Money,ssId,STime"); } if (State == 1) { SqlParameter[] values = new SqlParameter[3] { new SqlParameter("@Id", (object)_cashId), new SqlParameter("@Msg", (object)_Msg), new SqlParameter("@State", (object)1) }; cmd.CommandText = "update N_UserGetCash set Msg=@Msg,STime2=getdate(),State=1 where Id=" + _cashId; cmd.Parameters.AddRange(values); num = Convert.ToInt32(cmd.ExecuteScalar()); cmd.Parameters.Clear(); new UserMessageDAL().Save(cmd, int.Parse(objArray[0].ToString()), "提现成功", "您的" + objArray[1].ToString() + "元提现已处理,请注意查收,如有疑问请联系在线客服!"); } if (State == 2) { if (new UserTotalTran().MoneyOpers(objArray[2].ToString(), objArray[0].ToString(), -Convert.ToDecimal(objArray[1].ToString()), 0, 0, 0, 2, 99, "提现失败", "您的" + objArray[1].ToString() + "元提现被拒绝,拒绝理由:(" + _Msg + "),如有疑问请联系在线客服!", "提现失败", objArray[3].ToString()) <= 0) { return(0); } SqlParameter[] values = new SqlParameter[3] { new SqlParameter("@Id", (object)_cashId), new SqlParameter("@Msg", (object)_Msg), new SqlParameter("@State", (object)2) }; cmd.CommandText = "update N_UserGetCash set Msg=@Msg,STime2=getdate(),State=2 where Id=" + _cashId; cmd.Parameters.AddRange(values); num = Convert.ToInt32(cmd.ExecuteScalar()); cmd.Parameters.Clear(); } } catch (Exception ex) { new LogExceptionDAL().Save("系统异常", ex.Message); } } return(num); }
public string UserTranAcc(string Type, string UserId, string ToUserId, string Money, string PassWord) { if (Convert.ToDecimal(Money) < 0m) { return(base.GetJsonResult(0, "转账金额不正确!")); } string jsonResult; using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "id=@id"; dbOperHandler.AddConditionParameter("@id", UserId); object[] fields = dbOperHandler.GetFields("N_User", "Money,PayPass"); if (fields.Length > 0) { if (Convert.ToDecimal(Money) > Convert.ToDecimal(fields[0])) { jsonResult = base.GetJsonResult(0, "您的可用余额不足"); } else if (!MD5.Last64(MD5.Lower32(PassWord)).Equals(fields[1].ToString())) { jsonResult = base.GetJsonResult(0, "您的取款密码错误"); } else if (new UserChargeDAL().SaveUpCharge(Type, UserId, ToUserId, Convert.ToDecimal(Money)) > 0) { new LogSysDAL().Save("会员管理", string.Concat(new string[] { "Id为", UserId, "的会员转账给Id为", ToUserId, "的会员!" })); jsonResult = base.GetJsonResult(1, "转账成功!"); } else { jsonResult = base.GetJsonResult(0, "转账失败!"); } } else { jsonResult = base.GetJsonResult(0, "账号出现问题,请您重新登陆!"); } } return(jsonResult); }
/// <summary> /// 获取订单状态 /// </summary> /// <param name="userId">用户Id</param> /// <param name="orderId">订单号</param> /// <returns></returns> public int GetState(int userId, string orderId) { using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "SsId=@orderId and UserId=@userId"; dbOperHandler.AddConditionParameter("@orderId", orderId); dbOperHandler.AddConditionParameter("@userId", userId); object[] fields = dbOperHandler.GetFields("N_UserCharge", "State"); if (fields == null || fields.Length != 1) { throw new Exception("无效订单"); } return(Convert.ToInt32(fields[0])); } }
public string UserGetCash(string UserId, string UserBankId, string BankId, string Money, string PassWord) { string result; using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = "select top 1 * from Sys_Bank where id=" + BankId; DataTable dataTable = dbOperHandler.GetDataTable(); if (Convert.ToInt32(dataTable.Rows[0]["IsUsed"]) == 1) { result = "取款失败,当前银行禁止取款!"; } else { dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "id=@id"; dbOperHandler.AddConditionParameter("@id", UserId); object[] fields = dbOperHandler.GetFields("N_User", "Money,PayPass,IsGetCash,EnableSeason,UserGroup"); if (fields.Length > 0) { int num = Convert.ToInt32(fields[2]); fields[3].ToString(); if (num != 0) { result = "取款失败,您的帐号禁止取款!"; } else if (Convert.ToDecimal(Money) > Convert.ToDecimal(fields[0])) { result = "您的可用余额不足"; } else if (!MD5.Last64(MD5.Lower32(PassWord)).Equals(fields[1].ToString())) { result = "您的提现密码错误"; } else { dbOperHandler.Reset(); dbOperHandler.SqlCmd = string.Format("select STime from Act_ActiveRecord where UserId={0} and ActiveType='Charge' and Convert(varchar(10),STime,120)=Convert(varchar(10),Getdate(),120)", UserId); DataTable dataTable2 = dbOperHandler.GetDataTable(); if (dataTable2.Rows.Count > 0) { if (Convert.ToDecimal(fields[0]) - Convert.ToDecimal(Money) < 50m) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = string.Format("SELECT cast(round(isnull(Sum(Total*Times),0),4) as numeric(20,4)) as bet FROM [N_UserBet]\r\n where UserId={0} and (state=2 or state=3) and STime>'{1}' ", UserId, dataTable2.Rows[0]["STime"].ToString()); dataTable2 = dbOperHandler.GetDataTable(); if (dataTable2.Rows.Count > 0 && Convert.ToDecimal(dataTable2.Rows[0]["bet"]) < 800m) { result = "首充佣金50元不能体现,您的消费未满800元!"; return(result); } } } else if (Convert.ToInt32(fields[4].ToString()) < 2) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = "SELECT (isnull(sum(Bet),0)-isnull(sum(Cancellation),0)) as bet,isnull(sum(charge),0) as charge FROM [N_UserMoneyStatAll] with(nolock) where userId=" + UserId; DataTable dataTable3 = dbOperHandler.GetDataTable(); double num2 = Convert.ToDouble(dataTable3.Rows[0]["bet"].ToString()); double num3 = Convert.ToDouble(dataTable3.Rows[0]["charge"].ToString()); if (num3 > 0.0 && num2 * 100.0 / num3 < Convert.ToDouble(dataTable.Rows[0]["BetPerCheck"])) { result = "对不起,您未消费到充值的" + dataTable.Rows[0]["BetPerCheck"] + "%,不能提现!"; return(result); } } if (Convert.ToDecimal(Money) < Convert.ToDecimal(dataTable.Rows[0]["MinCharge"])) { result = "提现金额不能小于单笔最小金额"; } else if (Convert.ToDecimal(Money) > Convert.ToDecimal(dataTable.Rows[0]["MaxCharge"])) { result = "提现金额不能大于单笔最大金额"; } else { DateTime t = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " " + dataTable.Rows[0]["StartTime"]); DateTime t2 = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " " + dataTable.Rows[0]["EndTime"]); DateTime now = DateTime.Now; if (t.Hour >= t2.Hour) { if (now < t && now > t2) { result = string.Concat(new object[] { "提现时间为", dataTable.Rows[0]["StartTime"], "至", dataTable.Rows[0]["EndTime"] }); return(result); } } else if (now < t || now > t2) { result = string.Concat(new object[] { "提现时间为", dataTable.Rows[0]["StartTime"], "至", dataTable.Rows[0]["EndTime"] }); return(result); } string value = "0"; dbOperHandler.Reset(); dbOperHandler.SqlCmd = "select count(*) as txcs,isnull(sum(Money),0) as txje from N_UserGetCash where userId=" + UserId + " and datediff(d,STime,getdate())=0 and State<>2"; DataTable dataTable4 = dbOperHandler.GetDataTable(); if (dataTable4.Rows.Count > 0) { value = dataTable4.Rows[0]["txcs"].ToString(); dataTable4.Rows[0]["txje"].ToString(); } if (Convert.ToDecimal(value) > Convert.ToDecimal(dataTable.Rows[0]["MaxGetCash"])) { result = "今日提现已得到最大提现次数"; } else { dbOperHandler.Reset(); dbOperHandler.SqlCmd = "SELECT [PayBank],[PayAccount],[PayName] FROM [N_UserBank] where UserId=" + UserId + " and Id=" + UserBankId; dataTable4 = dbOperHandler.GetDataTable(); if (dataTable4.Rows.Count > 0) { if (this.Save(UserId, UserBankId, dataTable4.Rows[0]["PayBank"].ToString(), dataTable4.Rows[0]["PayAccount"].ToString(), dataTable4.Rows[0]["PayName"].ToString(), Convert.ToDecimal(Money)) > 0) { new LogSysDAL().Save("会员管理", "Id为" + UserId + "的会员申请提现!"); result = "申请提现成功!"; } else { result = "申请提现失败!"; } } else { result = "申请提现失败!"; } } } } } else { result = "账号出现问题,请您重新登陆!"; } } } return(result); }
public string UserGetCash(string UserId, string UserBankId, string BankId, string Money, string PassWord) { using (DbOperHandler dbOperHandler = new ComData().Doh()) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = "select top 1 * from Sys_Bank where id=" + BankId; DataTable dataTable1 = dbOperHandler.GetDataTable(); //每日最大提款金额 decimal minCharge = Convert.ToDecimal(dataTable1.Rows[0]["MinCharge"]); decimal maxCharge = Convert.ToDecimal(dataTable1.Rows[0]["MaxCharge"]); maxCharge = maxCharge > 20000M ? 20000M : maxCharge; if (Convert.ToDecimal(Money) > maxCharge || Convert.ToDecimal(Money) < minCharge) { return(string.Format("提款金额最大{0}元,最小{0}元", maxCharge, minCharge)); } //每日最大提现次数 int maxCashCount = Convert.ToInt32(dataTable1.Rows[0]["MaxGetCash"]); maxCashCount = maxCashCount > 5 ? 5 : maxCashCount; //充值消费额度 double betPerCheck = Convert.ToDouble(dataTable1.Rows[0]["BetPerCheck"]); betPerCheck = betPerCheck < 50.0 ? 50.0 : betPerCheck; //绑卡时间提现期限, 至少绑定24小时,才能提现 int bindTime = Convert.ToInt32(dataTable1.Rows[0]["BindTime"]); bindTime = bindTime < 24 ? 24 : bindTime; //是否允许银行卡提现 if (Convert.ToInt32(dataTable1.Rows[0]["IsUsed"]) == 1) { return("取款失败,当前银行禁止取款!"); } //会员信息 dbOperHandler.Reset(); dbOperHandler.ConditionExpress = "id=@id"; dbOperHandler.AddConditionParameter("@id", (object)UserId); object[] fields = dbOperHandler.GetFields("N_User", "Money,PayPass,IsGetCash,EnableSeason,UserGroup"); if (fields.Length <= 0) { return("账号出现问题,请您重新登陆!"); } //会员是否允许提现 int int32 = Convert.ToInt32(fields[2]); //IsGetCash if (int32 != 0) { return("取款失败,您的帐号禁止取款!"); } //提款金额是否大于会员余额 if (Convert.ToDecimal(Money) > Convert.ToDecimal(fields[0])) { return("您的可用余额不足"); } //提款密码是否正确 if (!MD5.Last64(MD5.Lower32(PassWord)).Equals(fields[1].ToString())) { return("您的提现密码错误"); } //会员银行卡信息 dbOperHandler.Reset(); dbOperHandler.SqlCmd = "SELECT [PayBank],[PayAccount],[PayName], AddTime FROM [N_UserBank] where UserId=" + UserId + " and Id=" + UserBankId; DataTable dataTable5 = dbOperHandler.GetDataTable(); if (dataTable5.Rows.Count <= 0) { return("您的银行卡无效"); } //检查绑定时间 DateTime addTime = Convert.ToDateTime(dataTable5.Rows[0]["AddTime"]); if ((DateTime.Now - addTime).TotalHours <= bindTime) { return(string.Format("您的银行卡绑定还未满{0}小时", bindTime)); } //今天的充值记录 dbOperHandler.Reset(); dbOperHandler.SqlCmd = string.Format(@"select STime from Act_ActiveRecord where UserId={0} and ActiveType='Charge' and Convert(varchar(10),STime,120)=Convert(varchar(10),Getdate(),120)", (object)UserId); DataTable dataTable2 = dbOperHandler.GetDataTable(); if (dataTable2.Rows.Count > 0) { if (Convert.ToDecimal(fields[0]) - Convert.ToDecimal(Money) < new Decimal(50)) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = string.Format("SELECT cast(round(isnull(Sum(Total*Times),0),4) as numeric(20,4)) as bet FROM [N_UserBet]\r\n where UserId={0} and (state=2 or state=3) and STime>'{1}' ", (object)UserId, (object)dataTable2.Rows[0]["STime"].ToString()); DataTable dataTable3 = dbOperHandler.GetDataTable(); if (dataTable3.Rows.Count > 0 && Convert.ToDecimal(dataTable3.Rows[0]["bet"]) < new Decimal(800)) { return("首充佣金50元不能体现,您的消费未满800元!"); } } } else if (Convert.ToInt32(fields[4].ToString()) < 2) { dbOperHandler.Reset(); dbOperHandler.SqlCmd = "SELECT (isnull(sum(Bet),0)-isnull(sum(Cancellation),0)) as bet,isnull(sum(charge),0) as charge FROM [N_UserMoneyStatAll] with(nolock) where userId=" + UserId; DataTable dataTable3 = dbOperHandler.GetDataTable(); double num1 = Convert.ToDouble(dataTable3.Rows[0]["bet"].ToString()); //消费金额, 下注金额 double num2 = Convert.ToDouble(dataTable3.Rows[0]["charge"].ToString()); //充值金额总数 if (num2 > 0.0 && num1 * 100.0 / num2 < betPerCheck) { return("对不起,您未消费到充值的" + betPerCheck + "%,不能提现!"); } } if (Convert.ToDecimal(Money) < Convert.ToDecimal(dataTable1.Rows[0]["MinCharge"])) { return("提现金额不能小于单笔最小金额"); } if (Convert.ToDecimal(Money) > Convert.ToDecimal(dataTable1.Rows[0]["MaxCharge"])) { return("提现金额不能大于单笔最大金额"); } DateTime dateTime1 = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " " + dataTable1.Rows[0]["StartTime"]); DateTime dateTime2 = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " " + dataTable1.Rows[0]["EndTime"]); DateTime now = DateTime.Now; if (dateTime1.Hour >= dateTime2.Hour) { if (now < dateTime1 && now > dateTime2) { return("提现时间为" + dataTable1.Rows[0]["StartTime"] + "至" + dataTable1.Rows[0]["EndTime"]); } } else if (now < dateTime1 || now > dateTime2) { return("提现时间为" + dataTable1.Rows[0]["StartTime"] + "至" + dataTable1.Rows[0]["EndTime"]); } int cashCount = 0; //已提现次数 dbOperHandler.Reset(); dbOperHandler.SqlCmd = "select count(*) as txcs,isnull(sum(Money),0) as txje from N_UserGetCash where userId=" + UserId + " and datediff(d,STime,getdate())=0 and State<>2"; DataTable dataTable4 = dbOperHandler.GetDataTable(); if (dataTable4.Rows.Count > 0) { cashCount = Convert.ToInt32(dataTable4.Rows[0]["txcs"]); dataTable4.Rows[0]["txje"].ToString(); } if (cashCount > maxCashCount) { return(string.Format("今日提现已得到最大提现次数{0}次", maxCashCount)); } if (dataTable5.Rows.Count <= 0 || this.Save(UserId, UserBankId, dataTable5.Rows[0]["PayBank"].ToString(), dataTable5.Rows[0]["PayAccount"].ToString(), dataTable5.Rows[0]["PayName"].ToString(), Convert.ToDecimal(Money)) <= 0) { return("申请提现失败!"); } new LogSysDAL().Save("会员管理", "Id为" + UserId + "的会员申请提现!"); return("申请提现成功!"); } }