public RspSigninData GetSinginData(ReqSignin _reqData) { RspSigninData _rspData = new RspSigninData(); //验证用户ID格式 if (_reqData.userId < 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspData); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspData); } BCW.Model.User model = new BCW.BLL.User().GetSignData(_reqData.userId); int SignKeep = 0; if (model.SignTime >= DateTime.Parse(DateTime.Now.ToLongDateString()).AddDays(-1)) { SignKeep = model.SignKeep; } _rspData.keepDay = SignKeep; _rspData.totalDay = model.SignTotal; _rspData.cobi = new BCW.BLL.User().GetGold(_reqData.userId); _rspData.header.status = ERequestResult.success; return(_rspData); }
public static Error.MOBILE_ERROR_CODE CheckGroupLimit(int _forumId, int _meid) { //论坛限制性 BCW.Model.Forum Forummodel = new BCW.BLL.Forum().GetForum(_forumId); //圈子限制性 BCW.Model.Group modelgr = null; if (Forummodel.GroupId > 0) { modelgr = new BCW.BLL.Group().GetGroupMe(Forummodel.GroupId); if (modelgr == null) { return(Error.MOBILE_ERROR_CODE.BBS_GROUP_NOT_EXISTS); } else if (DT.FormatDate(modelgr.ExTime, 0) != "1990-01-01 00:00:00" && modelgr.ExTime < DateTime.Now) { return(Error.MOBILE_ERROR_CODE.BBS_GROUP_EXPIRE); } if (modelgr.ForumStatus == 2) { return(Error.MOBILE_ERROR_CODE.BBS_GROUP_CLOSED); } if (modelgr.ForumStatus == 1) { string GroupId = new BCW.BLL.User().GetGroupId(_meid); if (GroupId.IndexOf("#" + Forummodel.GroupId + "#") == -1 && IsCTID(_meid) == false) { return(Error.MOBILE_ERROR_CODE.BBS_GROUP_VISIT_NO_LIMIT); } } } return(Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE); //无错误 }
/// <summary> /// 锁定/解锁 /// </summary> public void UpdateIsLock(int ID, int IsLock) { dal.UpdateIsLock(ID, IsLock); try { string xmlPath = "/Controls/winners.xml"; string TextForUbb = (ub.GetSub("TextForUbb", xmlPath)); //设置内线提示的文字 string WinnersStatus = (ub.GetSub("WinnersStatus", xmlPath)); //状态1维护2测试0正常 string WinnersOpenOrClose = (ub.GetSub("WinnersOpenOrClose", xmlPath)); //0|停止放送机会|1|开启放送机会 string WinnersOpenChoose = (ub.GetSub("WinnersOpenChoose", xmlPath)); //1全社区2社区3仅游戏 string WinnersGuessOpen = (ub.GetSub("WinnersGuessOpen", xmlPath)); //1发内线2不发内线 int usid = dal.GetUsID(ID); string username = new BCW.BLL.User().GetUsName(usid); string Notes = "帖子锁定/解锁"; int id = new BCW.BLL.Action().GetMaxId(); int isHit = new BCW.winners.winners().CheckActionForAll(0, 0, usid, username, Notes, id); if (isHit == 1) { if (WinnersGuessOpen == "1") { new BCW.BLL.Guest().Add(0, usid, username, TextForUbb);//发内线到该ID } } } catch { } }
/// <summary> /// 增加一条数据 /// 上存照片活跃抽奖入口---姚志光 /// </summary> public int Add(BCW.Model.Upfile model) { //return dal.Add(model); int ID = dal.Add(model); try { string xmlPath = "/Controls/winners.xml"; string TextForUbb = (ub.GetSub("TextForUbb", xmlPath)); //设置内线提示的文字 string WinnersStatus = (ub.GetSub("WinnersStatus", xmlPath)); //状态1维护2测试0正常 string WinnersOpenOrClose = (ub.GetSub("WinnersOpenOrClose", xmlPath)); //0|停止放送机会|1|开启放送机会 string WinnersOpenChoose = (ub.GetSub("WinnersOpenChoose", xmlPath)); //1全社区2社区3仅游戏 string WinnersGuessOpen = (ub.GetSub("WinnersGuessOpen", xmlPath)); //1发内线2不发内线 int usid = model.UsID; string username = new BCW.BLL.User().GetUsName(usid); string Notes = "上传照片"; int id = new BCW.BLL.Action().GetMaxId(); int isHit = new BCW.winners.winners().CheckActionForAll(0, 0, usid, username, Notes, id); if (isHit == 1) { if (WinnersGuessOpen == "1") { new BCW.BLL.Guest().Add(0, usid, username, TextForUbb);//发内线到该ID } } return(ID); } catch { return(ID); } }
public override bool UpdateiGold(int userId, long _val, string AcText) { string UsName = new BCW.BLL.User().GetUsName(userId); new BCW.BLL.User().UpdateiGold(userId, UsName, _val, AcText); return(true); }
//查询某个帐户余额 public UserAccount GetUserAccount(EUserAccount _accountName, int _userId) { long _val = 0; switch (_accountName) { case EUserAccount.cobi: _val = new BCW.BLL.User().GetGold(_userId); break; case EUserAccount.money: _val = new BCW.BLL.User().GetMoney(_userId); break; case EUserAccount.bank: _val = new BCW.BLL.User().GetBank(_userId); break; default: return(null); } UserAccount _userAccount = new UserAccount(); _userAccount.accountName = _accountName; _userAccount.value = _val; return(_userAccount); }
/// <summary> /// 检查会员是否登录 /// </summary> /// <param name="_userId">会员ID</param> /// <param name="_userKey">会员Key</param> /// <returns></returns> public static int CheckLogin(int _userId, string _userKey) { BCW.Model.User _user = new BCW.BLL.User().GetKey(_userId); if (_user != null && _user.UsKey == _userKey) { return(_user.ID); } return(0); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(BCW.Model.Reply model) { int id = dal.Add(model); try { int usid = model.UsID; string username = new BCW.BLL.User().GetUsName(usid); string Notes = "回复帖子"; new BCW.Draw.draw().AddjfbyTz(usid, username, Notes);//点值抽奖 } catch { } return(id); }
/// <summary> /// 登录同时绑定第三方登录平台信息 /// </summary> /// <param name="_account">登录用户名</param> /// <param name="_pwd">登录密码</param> /// <param name="_type">绑定的第三方平台类型(1:微信 2:QQ 3:新浪微博)</param> /// <param name="_assessToken"></param> public void Login(string _account, string _pwd, EMobileLoginType _type, string _assessToken) { //绑定第三方登录 Model.UserPlatform _userPlatform = new BLL.UserPlatform().GetModel(_assessToken, ( int )this.loginType); if (_userPlatform == null) { //检查用户密码是否正确 int _userRow = 0; string _md5Pwd = Utils.MD5Str(_pwd); BCW.Model.User _user = new BCW.Model.User(); _user.UsPwd = _md5Pwd; if (_account.ToString().Length == 11) { _user.Mobile = _account; _userRow = new BCW.BLL.User().GetRowByMobile(_user); } else { _user.ID = int.Parse(_account); _userRow = new BCW.BLL.User().GetRowByID(_user); } if (_userRow <= 0) { rspLoginData.header.status = ERequestResult.faild; rspLoginData.header.statusCode = MOBILE_ERROR_CODE.LOGIN_USER_PWD_ERROR; return; } _user = new BCW.BLL.User().GetKey(_userRow); Model.UserPlatform _newUserPlatform = new BCW.Mobile.Model.UserPlatform(); try { _newUserPlatform.platformId = _assessToken; _newUserPlatform.platformType = ( int )_type; _newUserPlatform.userId = _user.ID; rspLoginData.user.platformId = _assessToken; new BLL.UserPlatform().Add(_newUserPlatform); } catch (Exception e) { ; } } base.Login(_account, _pwd); }
public RspUserModifyPwd UserModifyPwd(ReqUserModifyPwd _reqData) { RspUserModifyPwd _rspData = new RspUserModifyPwd(); //验证用户ID格式 if (_reqData.userId < 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspData); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspData); } //检查密码是否合法 if (Regex.IsMatch(_reqData.newPwd, @"^[A-Za-z0-9]{6,20}$") == false) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = MOBILE_ERROR_CODE.REGEDIT_PWD_VERIFY; return(_rspData); } //旧密码是否正确 string ordPwd = new BCW.BLL.User().GetUsPwd(_reqData.userId); if (!Utils.MD5Str(_reqData.oldPwd).Equals(ordPwd)) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = MOBILE_ERROR_CODE.SYS_USER_OLDPWD_ERROR; return(_rspData); } new BCW.BLL.User().UpdateUsPwd(_reqData.userId, Utils.MD5Str(_reqData.newPwd)); _rspData.header.status = ERequestResult.success; return(_rspData); }
/// <summary> /// 增加一条派币帖 /// </summary> public int AddPricesLimit(BCW.Model.Text model) { int id = dal.AddPricesLimit(model); try { string xmlPath = "/Controls/winners.xml"; string TextForUbb = (ub.GetSub("TextForUbb", xmlPath)); //设置内线提示的文字 string WinnersStatus = (ub.GetSub("WinnersStatus", xmlPath)); //状态1维护2测试0正常 string WinnersOpenOrClose = (ub.GetSub("WinnersOpenOrClose", xmlPath)); //0|停止放送机会|1|开启放送机会 string WinnersOpenChoose = (ub.GetSub("WinnersOpenChoose", xmlPath)); //1全社区2社区3仅游戏 string WinnersGuessOpen = (ub.GetSub("WinnersGuessOpen", xmlPath)); //1发内线2不发内线 int usid = (model.UsID); string username = model.UsName; string Notes = "帖子币"; int ID = new BCW.BLL.Action().GetMaxId(); int isHit = new BCW.winners.winners().CheckActionForAll(0, 0, usid, username, Notes, ID); if (isHit == 1) { if (WinnersGuessOpen == "1") { new BCW.BLL.Guest().Add(0, usid, username, TextForUbb);//发内线到该ID } } } catch { } try { int usid = model.UsID; string username = new BCW.BLL.User().GetUsName(usid); string Notes = "发表帖子"; new BCW.Draw.draw().AddjfbyTz(usid, username, Notes);//点值抽奖 } catch { } return(id); }
/// <summary> /// 增加一条系统消息 /// </summary> public int Add(int Types, int ToId, string ToName, string Content) { bool flag = true; string ForumSet = new BCW.BLL.User().GetForumSet(ToId); if (ForumSet != "") { if (Types == 0)//系统消息 { int xTotal = GetForumSet(ForumSet, 15); if (xTotal == 1) { flag = false; } } else if (Types == 1)//游戏PK结果消息 { int gTotal = GetForumSet(ForumSet, 16); if (gTotal == 1) { flag = false; } } else if (Types == 2)//推荐邀请提醒消息 { int tTotal = GetForumSet(ForumSet, 14); if (tTotal == 1) { flag = false; } } else if (Types == 3)//空间留言提醒消息 { int bTotal = GetForumSet(ForumSet, 20); if (bTotal == 1) { flag = false; } } else if (Types == 4)//闲聊私聊提醒消息/竞猜走地成功失败提醒 { int sTotal = GetForumSet(ForumSet, 33); if (sTotal == 1) { flag = false; } } if (flag) { return(dal.Add(Types, ToId, ToName, Content)); } else { return(0); } } else { return(0); } }
public RspAddSuona AddSuonaItem(ReqAddSuona _reqData) { RspAddSuona _rspAddSuona = new RspAddSuona(); //验证用户ID格式 if (_reqData.userId < 0) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspAddSuona); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspAddSuona); } int RegDay = Utils.ParseInt(ub.GetSub("NetworkRegDay", xmlPath)); int Grade = Utils.ParseInt(ub.GetSub("NetworkGrade", xmlPath)); if (RegDay > 0 || Grade > 0) { DataSet ds = new BCW.BLL.User().GetList("RegTime,Leven", "id=" + _reqData.userId + ""); if (ds != null && ds.Tables[0].Rows.Count > 0) { DateTime RegTime = DateTime.Parse(ds.Tables[0].Rows[0]["RegTime"].ToString()); int Leven = int.Parse(ds.Tables[0].Rows[0]["Leven"].ToString()); if (RegDay > 0 && RegTime > DateTime.Now.AddDays(-RegDay)) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.NETWORK_SUONA_REGDAY_NOT_ENOUGH; _rspAddSuona.header.statusMsg = string.Format(_rspAddSuona.header.statusMsg, (ub.GetSub("NetworkRegDay", xmlPath))); return(_rspAddSuona); } if (Grade > 0 && Leven < Grade) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.NETWORK_SUONA_LEVEL_NOT_ENOUGH; _rspAddSuona.header.statusMsg = string.Format(_rspAddSuona.header.statusMsg, ub.GetSub("NetworkGrade", xmlPath)); return(_rspAddSuona); } } } //自身权限不足 if (new BCW.User.Limits().IsUserLimit(BCW.User.Limits.enumRole.Role_NetWork, _reqData.userId) == true) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_LIMIT_NOT_ENOUGH; return(_rspAddSuona); } string mename = new BCW.BLL.User().GetUsName(_reqData.userId); long megold = new BCW.BLL.User().GetGold(_reqData.userId); //每分钟收费多少 int bMinute = Convert.ToInt32(ub.GetSub("NetworkiGold", xmlPath)); //检查内容是否超限 if (Regex.IsMatch(_reqData.content, @"^[^\^]{" + ub.GetSub("NetworksLength", xmlPath) + "," + ub.GetSub("NetworkbLength", xmlPath) + "}$") == false) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.NETWORK_SUONA_CONTENT_LENGTH_ERROR; _rspAddSuona.header.statusMsg = string.Format(_rspAddSuona.header.statusMsg, ub.GetSub("NetworksLength", xmlPath), ub.GetSub("NetworkbLength", xmlPath)); return(_rspAddSuona); } //检查显示时限 if (Regex.IsMatch(_reqData.minute.ToString(), @"^[0-9]\d*$") == false) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.NETWORK_SUONA_TIME_LENGTH_ERROR; _rspAddSuona.header.statusMsg = string.Format(_rspAddSuona.header.statusMsg, ub.GetSub("NetworkbMinute", xmlPath)); return(_rspAddSuona); } if (_reqData.minute < 1 || _reqData.minute > Convert.ToInt32(ub.GetSub("NetworkbMinute", xmlPath))) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.NETWORK_SUONA_TIME_LENGTH_ERROR; _rspAddSuona.header.statusMsg = string.Format(_rspAddSuona.header.statusMsg, ub.GetSub("NetworkbMinute", xmlPath)); return(_rspAddSuona); } //扣币 if (megold < Convert.ToInt64(_reqData.minute * bMinute)) { _rspAddSuona.header.status = ERequestResult.faild; _rspAddSuona.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_COBI_NOT_ENOUGH; return(_rspAddSuona); } new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, -Convert.ToInt64(_reqData.minute * bMinute), "发布广播"); BCW.Model.Network model = new BCW.Model.Network(); model.Title = _reqData.content; model.Types = 0; model.UsID = _reqData.userId; model.UsName = mename; model.OverTime = DateTime.Now.AddMinutes(_reqData.minute); model.AddTime = DateTime.Now; model.OnIDs = ""; int _id = new BCW.BLL.Network().Add(model); _rspAddSuona.header.status = ERequestResult.success; _rspAddSuona.suonaId = _id; _rspAddSuona.cobi = -(_reqData.minute * bMinute); _rspAddSuona.totalCobi = new BCW.BLL.User().GetGold(_reqData.userId); return(_rspAddSuona); }
public RspAddReplyThread AddReplyThread(ReqAddReplyThread _reqData) { RspAddReplyThread _rspData = new RspAddReplyThread(); //验证用户ID格式 if (_reqData.userId < 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspData); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspData); } //检查帖子有效性 BCW.Model.Text threadModel = new BCW.BLL.Text().GetText(_reqData.threadId);//GetTextMe if (threadModel == null) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_NOT_FOUND; return(_rspData); } //检查自身权限不足 if (Common.Common.IsUserLimit(BCW.User.Limits.enumRole.Role_Reply, _reqData.userId) == true) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_LIMIT_NOT_ENOUGH; return(_rspData); } //板块权限不足 if (Common.Common.CheckUserFLimit(BCW.User.FLimits.enumRole.Role_Reply, _reqData.userId, threadModel.ForumId)) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_FORUM_LIMIT_NOT_ENOUGH; return(_rspData); } BCW.Model.Forum Forummodel = new BCW.BLL.Forum().GetForum(threadModel.ForumId); //检查圈子访问限制 Error.MOBILE_ERROR_CODE _groupError = Common.Common.CheckGroupLimit(threadModel.ForumId, _reqData.userId); if (_groupError != Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = _groupError; return(_rspData); } //检查论坛访问限制 Error.MOBILE_ERROR_CODE _visitError = Common.Common.ShowForumLimit(_reqData.userId, Forummodel.Gradelt, Forummodel.Visitlt, Forummodel.VisitId, Forummodel.IsPc); if (_visitError != Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = _visitError; return(_rspData); } //检查论坛回帖限制 Error.MOBILE_ERROR_CODE _replyError = Common.Common.ShowAddReply(_reqData.userId, Forummodel.Replylt); if (_replyError != Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = _replyError; return(_rspData); } BCW.Model.Text p = new BCW.BLL.Text().GetText(_reqData.threadId); if (p.IsOver == 1) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_IS_OVER; return(_rspData); } if (p.IsLock == 1) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_IS_LOCK; return(_rspData); } if (p.IsTop == -1) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_IS_BOTTOM; return(_rspData); } string Content = _reqData.replyContent; if (Regex.IsMatch(Content, @"^[\s\S]{1," + ub.GetSub("BbsReplyMax", xmlPath) + "}$") == false) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_CONTENT_LENGTH_ERROR; _rspData.header.statusMsg = string.Format(_rspData.header.statusMsg, 1, ub.GetSub("BbsReplyMax", xmlPath)); return(_rspData); } int Remind = _reqData.Remind; //提醒的ID. int reid = _reqData.replyId; int ReplyNum = Utils.ParseInt(ub.GetSub("BbsReplyNum", xmlPath)); if (ReplyNum > 0) { int ToDayCount = new BCW.BLL.Forumstat().GetCount(_reqData.userId, 2);//今天发布回帖数 if (ToDayCount >= ReplyNum) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_REPLY_NUM; return(_rspData); } } string mename = new BCW.BLL.User().GetUsName(_reqData.userId); int Floor = new BCW.BLL.Reply().GetFloor(_reqData.threadId); //派币帖 string CentText = string.Empty; string PbCent = string.Empty; int iTypes = p.Types; if (iTypes == 3) { BCW.Model.Text model1 = new BCW.BLL.Text().GetText(_reqData.threadId); if (p.Prices - p.Pricel > 0) { string bzText = string.Empty; if (p.BzType == 0) { bzText = ub.Get("SiteBz"); } else { bzText = ub.Get("SiteBz2"); } long zPrice = 0; if (p.Price2 > 0) { zPrice = Convert.ToInt64(new Random().Next(p.Price, (p.Price2 + 1)));//随机得到奖币值 } else { zPrice = Convert.ToInt64(p.Price); } long GetPrice = 0; if (p.Prices - p.Pricel < zPrice) { GetPrice = p.Prices - p.Pricel; } else { GetPrice = zPrice; } bool a = ("#" + p.IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1; if (p.PayCi == "0") //判断派币楼层 { if (!string.IsNullOrEmpty(model1.PricesLimit)) //如果要求回复特殊内容 { // builder.Append("判断的TF"+a); // if (model1.PricesLimit.Equals(Content)) //如果回帖正确 if (model1.PricesLimit.Replace(" ", "").Equals(Content.Replace(" ", ""))) //如果回复附言正确 { if (("#" + p.IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) //判断是否存在已派币ID { if (p.BzType == 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } else { new BCW.BLL.User().UpdateiMoney(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } //更新已派 new BCW.BLL.Text().UpdatePricel(_reqData.threadId, GetPrice); CentText = "" + GetPrice + "" + bzText + ""; PbCent = "楼主派" + GetPrice + "" + bzText + ""; //更新派币ID string IsPriceID = p.IsPriceID; if (("#" + IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) { string sPriceID = string.Empty; if (string.IsNullOrEmpty(IsPriceID)) { sPriceID = _reqData.userId.ToString(); } else { sPriceID = IsPriceID + "#" + _reqData.userId; } new BCW.BLL.Text().UpdateIsPriceID(_reqData.threadId, sPriceID); } } } } else //不需要回复内容 { //builder.Append("判断的TF" + a); if (("#" + p.IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) //判断是否存在已派币ID { if (p.BzType == 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } else { new BCW.BLL.User().UpdateiMoney(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } //更新已派 new BCW.BLL.Text().UpdatePricel(_reqData.threadId, GetPrice); CentText = "" + GetPrice + "" + bzText + ""; PbCent = "楼主派" + GetPrice + "" + bzText + ""; //更新派币ID string IsPriceID = p.IsPriceID; if (("#" + IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) { string sPriceID = string.Empty; if (string.IsNullOrEmpty(IsPriceID)) { sPriceID = _reqData.userId.ToString(); } else { sPriceID = IsPriceID + "#" + _reqData.userId; } new BCW.BLL.Text().UpdateIsPriceID(_reqData.threadId, sPriceID); } } } } else { if (!string.IsNullOrEmpty(model1.PricesLimit)) //如果要求回复特殊内容 { if (("#" + p.PayCi + "#").IndexOf("#" + Utils.Right(Floor.ToString(), 1) + "#") != -1) //判断要求派币的楼层 { if (model1.PricesLimit.Replace(" ", "").Equals(Content.Replace(" ", ""))) //如果回复附言正确 // if (model1.PricesLimit.Equals(Content)) //如果回帖正确 { // builder.Append("判断的TF" + a); //if (("#" + p.IsPriceID + "#").IndexOf("#" + meid + "#") == -1) //判断是否存在已派币ID //{ if (p.BzType == 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } else { new BCW.BLL.User().UpdateiMoney(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } //更新已派 new BCW.BLL.Text().UpdatePricel(_reqData.threadId, GetPrice); CentText = "" + GetPrice + "" + bzText + ""; PbCent = "踩中楼层" + Utils.Right(Floor.ToString(), 1) + "尾,楼主派" + GetPrice + "" + bzText + ""; //更新派币ID string IsPriceID = p.IsPriceID; if (("#" + IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) { string sPriceID = string.Empty; if (string.IsNullOrEmpty(IsPriceID)) { sPriceID = _reqData.userId.ToString(); } else { sPriceID = IsPriceID + "#" + _reqData.userId; } new BCW.BLL.Text().UpdateIsPriceID(_reqData.threadId, sPriceID); } //} } } } else //不需要回复内容 { if (("#" + p.PayCi + "#").IndexOf("#" + Utils.Right(Floor.ToString(), 1) + "#") != -1) { // builder.Append("判断的TF" + a); //if (("#" + p.IsPriceID + "#").IndexOf("#" + meid + "#") == -1) //判断是否存在已派币ID //{ if (p.BzType == 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } else { new BCW.BLL.User().UpdateiMoney(_reqData.userId, mename, GetPrice, "派币帖回帖获得"); } //更新已派 new BCW.BLL.Text().UpdatePricel(_reqData.threadId, GetPrice); CentText = "" + GetPrice + "" + bzText + ""; PbCent = "踩中楼层" + Utils.Right(Floor.ToString(), 1) + "尾,楼主派" + GetPrice + "" + bzText + ""; //更新派币ID string IsPriceID = p.IsPriceID; if (("#" + IsPriceID + "#").IndexOf("#" + _reqData.userId + "#") == -1) { string sPriceID = string.Empty; if (string.IsNullOrEmpty(IsPriceID)) { sPriceID = _reqData.userId.ToString(); } else { sPriceID = IsPriceID + "#" + _reqData.userId; } new BCW.BLL.Text().UpdateIsPriceID(_reqData.threadId, sPriceID); } //} } } } //检测15天前的派币帖,如果没有派完则自动清0并自动结帖 if (Utils.GetTopDomain().Contains("tuhao") || Utils.GetTopDomain().Contains("th")) { BCW.Data.SqlHelper.ExecuteSql("update tb_Text set Pricel=Prices,IsOver=1 where Types=3 and AddTime<'" + DateTime.Now.AddDays(-15) + "'"); } else { BCW.Data.SqlHelper.ExecuteSql("update tb_Text set Pricel=Prices,IsOver=1 where Types=3 and AddTime<'" + DateTime.Now.AddDays(-7) + "'"); } } else { //派完币即结帖 new BCW.BLL.Text().UpdateIsOver(_reqData.threadId, 1); } } BCW.Model.Reply model = new BCW.Model.Reply(); model.Floor = Floor; model.ForumId = threadModel.ForumId; model.Bid = _reqData.threadId; model.UsID = _reqData.userId; model.UsName = mename; model.Content = Content; model.FileNum = 0; model.ReplyId = reid; model.AddTime = DateTime.Now; model.CentText = CentText; new BCW.BLL.Reply().Add(model); //builder.Append("p.IsPriceID=" + p.IsPriceID); //更新回复ID string sReplyID = p.ReplyID; if (("#" + sReplyID + "#").IndexOf("#" + _reqData.userId + "#") == -1) { string ReplyID = string.Empty; if (string.IsNullOrEmpty(sReplyID)) { ReplyID = _reqData.userId.ToString(); } else { ReplyID = sReplyID + "#" + _reqData.userId; } new BCW.BLL.Text().UpdateReplyID(_reqData.threadId, ReplyID); } //更新回复数 new BCW.BLL.Text().UpdateReplyNum(_reqData.threadId, 1); //回复提醒:0|不提醒|1|帖子作者|2|回帖作者|3|全部提醒 string strRemind = string.Empty; //提醒费用 long Tips = Convert.ToInt64(ub.GetSub("BbsReplyTips", xmlPath)); if (Remind == 1 || Remind == 3) { if (!p.UsID.Equals(_reqData.userId)) { string pForumSet = new BCW.BLL.User().GetForumSet(p.UsID); if (BCW.User.Users.GetForumSet(pForumSet, 14) == 0) { if (new BCW.BLL.User().GetGold(_reqData.userId) >= Tips) { new BCW.BLL.Guest().Add(p.UsID, p.UsName, "[url=/bbs/uinfo.aspx?uid=" + _reqData.userId + "]" + mename + "[/url]回复了您的帖子[url=/bbs/topic.aspx?forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "]" + p.Title + "[/url]"); if (Tips > 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, -Tips, "回帖提醒帖子作者"); } } } else { strRemind = "帖子作者拒绝接收提醒消息.<br />"; } } } if (Remind == 2 || Remind == 3) { //回帖用户实体 BCW.Model.Reply m = new BCW.BLL.Reply().GetReplyMe(_reqData.threadId, reid); if (!m.UsID.Equals(_reqData.userId)) { string mForumSet = new BCW.BLL.User().GetForumSet(m.UsID); if (BCW.User.Users.GetForumSet(mForumSet, 14) == 0) { if (new BCW.BLL.User().GetGold(_reqData.userId) >= Tips) { string neirong = new BCW.BLL.Reply().GetContent(_reqData.threadId, reid); if (neirong.Length > 30) { neirong = neirong.Substring(0, 30); neirong += "..."; //builder.Append(":" + neirong); } else { // builder.Append(":" + neirong); } if (Content.Length > 30) { Content = Content.Substring(0, 30); Content += "..."; //builder.Append(":" + neirong); } // 修改这里 // builder.Append("<a href=\"" + Utils.getUrl("reply.aspx?act=reply&forumid=" + forumid + "&bid=" + bid + "&reid=" + reid + "&backurl=" + Utils.getPage(0) + "") + "\">点评回复</a>|"); new BCW.BLL.Guest().Add(m.UsID, m.UsName, "[url=/bbs/uinfo.aspx?uid=" + _reqData.userId + "]" + mename + "[/url]点评了您的回帖[url=/bbs/reply.aspx?act=view&forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "&reid=" + reid + "]" + reid + "楼[/url]:" + neirong + "<br/>回复内容为:" + Content + "[url=/bbs/reply.aspx?act=view&forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "&reid=" + Floor + "]更多[/url]<br/>[url=/bbs/reply.aspx?act=reply&forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "&reid=" + Floor + "]点评回复[/url]"); if (Tips > 0) { new BCW.BLL.User().UpdateiGold(_reqData.userId, mename, -Tips, "回帖提醒回帖作者"); } } } else { if (!string.IsNullOrEmpty(strRemind)) { strRemind = "帖子作者与回帖作者拒绝接收提醒消息.<br />"; } else { strRemind = "回帖作者拒绝接收提醒消息.<br />"; } } } } //论坛统计 BCW.User.Users.UpdateForumStat(2, _reqData.userId, mename, threadModel.ForumId); //动态记录 if (Forummodel.GroupId == 0) { new BCW.BLL.Action().Add(-1, 0, _reqData.userId, mename, "在" + Forummodel.Title + "回复帖子[URL=/bbs/topic.aspx?forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "]" + new BCW.BLL.Text().GetTitle(_reqData.threadId) + "[/URL]"); } else { new BCW.BLL.Action().Add(-2, 0, _reqData.userId, mename, "在圈坛-" + Forummodel.Title + "回复帖子[URL=/bbs/topic.aspx?forumid=" + threadModel.ForumId + "&bid=" + _reqData.threadId + "]" + new BCW.BLL.Text().GetTitle(_reqData.threadId) + "[/URL]"); } //积分操作/论坛统计/圈子论坛不进行任何奖励 int IsAcc = -1; if (Forummodel.GroupId == 0) { IsAcc = new BCW.User.Cent().UpdateCent2(BCW.User.Cent.enumRole.Cent_Reply, _reqData.userId, true); } else { if (!Utils.GetDomain().Contains("th")) { IsAcc = new BCW.User.Cent().UpdateCent2(BCW.User.Cent.enumRole.Cent_Reply, _reqData.userId, false); } } _rspData.header.status = ERequestResult.success; if (IsAcc >= 0) { _rspData.rewardItem = BCW.User.Users.GetWinCent(1, _reqData.userId); } _rspData.header.status = ERequestResult.success; return(_rspData); }
public rspAction GetActionData(reqAction _reqData) { rspAction _rspData = new rspAction(); //验证用户ID格式 if (_reqData.userId < 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspData); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspData); } BCW.Model.User model = new BCW.BLL.User().GetBasic(_reqData.userId); _rspData.totalClick = model.Click + "/今天" + new BCW.BLL.Visitor().GetTodayCount(_reqData.userId) + "/" + new BCW.BLL.User().GetClickTop(_reqData.userId) + "名"; _rspData.onLineTime = BCW.User.Users.ChangeDayff(model.OnTime); //获取动态列表 string strWhere = string.Empty; string strOrder = " order by AddTime desc"; strWhere += "UsId = " + _reqData.userId; if (_reqData.actionId > 0) { strWhere += " and ID<" + _reqData.actionId; //因为是倒序显示,所以是< } DataSet _ds = new BCW.BLL.Action().GetList("TOP 10 ID,Types,UsId,UsName,Notes,AddTime", strWhere + strOrder); if (_ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < _ds.Tables[0].Rows.Count; i++) { ActionData _actionData = new ActionData(); _actionData.actionId = int.Parse(_ds.Tables[0].Rows[i]["ID"].ToString()); _actionData.userId = int.Parse(_ds.Tables[0].Rows[i]["UsId"].ToString()); _actionData.userName = _ds.Tables[0].Rows[i]["UsName"].ToString(); _actionData.content = Out.SysUBB(_ds.Tables[0].Rows[i]["Notes"].ToString()); _actionData.addTime = Common.Common.GetLongTime(DateTime.Parse(_ds.Tables[0].Rows[i]["AddTime"].ToString())); _rspData.lstAction.Add(_actionData); //检查是否到底 if (i == _ds.Tables[0].Rows.Count - 1) { if (strWhere.Contains("1=1") == false) { strWhere += " and 1=1"; } DataSet _dsCheck = new BCW.BLL.Action().GetList(" TOP 10 ID,Types,UsId,UsName,Notes,AddTime ", strWhere.Replace("1=1", "ID<" + _reqData.actionId) + strOrder); _rspData.isFinish = _dsCheck.Tables[0].Rows.Count <= 0; } } } _rspData.serverTime = Common.Common.GetLongTime(DateTime.Now); _rspData.header.status = ERequestResult.success; return(_rspData); }
public void Login(string _account, string _pwd, bool platform = false) { //检查用户密码是否正确 int _userRow = 0; string _md5Pwd = platform == true ? _pwd : Utils.MD5Str(_pwd); BCW.Model.User _user = new BCW.Model.User(); _user.UsPwd = _md5Pwd; if (_account.ToString().Length == 11) { _user.Mobile = _account; _userRow = new BCW.BLL.User().GetRowByMobile(_user); } else { _user.ID = int.Parse(_account); _userRow = new BCW.BLL.User().GetRowByID(_user); } if (_userRow <= 0) { rspLoginData.header.status = ERequestResult.faild; rspLoginData.header.statusCode = MOBILE_ERROR_CODE.LOGIN_USER_PWD_ERROR; return; } _user = new BCW.BLL.User().GetKey(_userRow); int UsId = _user.ID; string UsKey = _user.UsKey; string UsPwd = _user.UsPwd; BCW.Model.User modelgetbasic = new BCW.BLL.User().GetBasic(_user.ID); //设置keys string keys = ""; keys = BCW.User.Users.SetUserKeys(UsId, UsPwd, UsKey); string bUrl = string.Empty; if (Utils.getPage(1) != "") { bUrl = Utils.getUrl(Utils.removeUVe(Utils.getPage(1))); } else { bUrl = Utils.getUrl("/default.aspx"); } //更新识别串 string SID = ConfigHelper.GetConfigString("SID"); bUrl = UrlOper.UpdateParam(bUrl, SID, keys); //----------------------写入日志文件作永久保存 new BCW.BLL.User().UpdateTime(UsId); //APP全部在线登录 new BCW.BLL.User().UpdateState(UsId, 0); TimeSpan timediff = DateTime.Now - Convert.ToDateTime("1970-01-01 00:00:00"); long stt = (Int64)timediff.TotalMilliseconds; rspLoginData.header.status = ERequestResult.success; rspLoginData.user.keys = keys; rspLoginData.user.userId = UsId; rspLoginData.user.userName = modelgetbasic.UsName; rspLoginData.user.userImg = "http://" + Utils.GetDomain() + modelgetbasic.Photo; rspLoginData.user.userKey = UsKey; //获取用户管理版块 int GroupId = new BCW.BLL.Group().GetID(UsId); DataSet ds = new BCW.BLL.Role().GetList("ID,UsName,RoleName,ForumID,ForumName,Include", "UsID=" + UsId + " and (OverTime>='" + DateTime.Now + "' OR OverTime='1990-1-1 00:00:00') and Status=0 ORDER BY FORUMID ASC"); if (ds != null && ds.Tables[0].Rows.Count > 0 || GroupId > 0) { if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { rspLoginData.user.lstFLimit.Add(int.Parse(ds.Tables[0].Rows[i]["ForumID"].ToString())); } } } }
/// <summary> /// 增加一条数据 /// 活跃抽奖入口1 /// </summary> public int Add(int UsId, string Notes) { string UsName = new BCW.BLL.User().GetUsName(UsId); int id = dal.Add(0, 0, UsId, UsName, Notes); string xmlPath = "/Controls/winners.xml"; string TextForUbb = (ub.GetSub("TextForUbb", xmlPath)); //设置内线提示的文字 string WinnersStatus = (ub.GetSub("WinnersStatus", xmlPath)); //状态1维护2测试0正常 string WinnersOpenOrClose = (ub.GetSub("WinnersOpenOrClose", xmlPath)); //0|停止放送机会|1|开启放送机会 string WinnersOpenChoose = (ub.GetSub("WinnersOpenChoose", xmlPath)); //1全社区2社区3仅游戏 string WinnersGuessOpen = (ub.GetSub("WinnersGuessOpen", xmlPath)); //1发内线2不发内线 string ActionText = (ub.GetSub("ActionText", xmlPath)); //Action语句 string ActionOpen = (ub.GetSub("ActionOpen", xmlPath)); //Action语句开关 //活跃抽奖开关 if (WinnersStatus != "1" && WinnersOpenOrClose == "1") { try { string games = new BCW.winners.winners().getTypesForGameName(Notes); if (games.Contains("多人剪刀") || games.Contains("虚拟球类") || games.Contains("球彩") || games.Contains("虚拟") || games.Contains("彩票") || games.Contains("幸运28") || games.Contains("幸运二八") || games.Contains("挖宝") || games.Contains("大小庄") || games.Contains("跑马") || games.Contains("上证指数") || games.Contains("竞拍") || games.Contains("拾物") || games.Contains("时时彩") || games.Contains("吹牛") || games.Contains("捕鱼达人") || games.Contains("闯荡全城") || games.Contains("新快3") || games.Contains("快乐扑克3") || games.Contains("云购") || games.Contains("德州扑克") || games.Contains("农场") || games.Contains("活跃抽奖") || games.Contains("点值抽奖") || games.Contains("百家欢乐") || games.Contains("宠物") || games.Contains("红包群聊") || games.Contains("大小掷骰")) { return(id); } else { if (UsId == 0)//会员ID为空返回3 { //url=/bbs/uinfo.aspx?uid=" + meid + Match m; Match m1; string reg = "uid=[0-9]\\d*"; string reg1 = "[0-9]\\d*"; m = Regex.Match(Notes, reg); m1 = Regex.Match(m.Groups[0].ToString(), reg1); UsId = Convert.ToInt32(m1.Groups[0].ToString()); try { if (!new BCW.BLL.tb_WinnersLists().ExistsUserID(UsId)) { return(id); } } catch { } } //是否中奖:返回1中将 int isHit = new BCW.winners.winners().CheckActionForAll(0, 0, UsId, UsName, Notes, id); if (isHit == 1) { if (WinnersGuessOpen == "1") { new BCW.BLL.Guest().Add(0, UsId, UsName, TextForUbb);//发内线到该ID //if (ActionOpen == "1") //{ // Add(UsId, ActionText); //} } } return(id); } } catch { return(id); } } else { return(id); } }
/// <summary> /// 增加一条数据 /// 婚恋动态加入活跃抽奖20160528 /// </summary> public int Add(BCW.Model.MarryAction model) { int id = dal.Add(model); string Notes = model.Content; int UsId = 0; string xmlPath = "/Controls/winners.xml"; string TextForUbb = (ub.GetSub("TextForUbb", xmlPath)); //设置内线提示的文字 string WinnersStatus = (ub.GetSub("WinnersStatus", xmlPath)); //状态1维护2测试0正常 string WinnersOpenOrClose = (ub.GetSub("WinnersOpenOrClose", xmlPath)); //0|停止放送机会|1|开启放送机会 string WinnersOpenChoose = (ub.GetSub("WinnersOpenChoose", xmlPath)); //1全社区2社区3仅游戏 string WinnersGuessOpen = (ub.GetSub("WinnersGuessOpen", xmlPath)); //1发内线2不发内线 string ActionText = (ub.GetSub("ActionText", xmlPath)); //Action语句 string ActionOpen = (ub.GetSub("ActionOpen", xmlPath)); //Action语句开关 //活跃抽奖开关 if (WinnersStatus != "1" && WinnersOpenOrClose == "1") { try { if (UsId == 0)//会员ID为空返回3 { //url=/bbs/uinfo.aspx?uid=" + meid + Match m; Match m1; string reg = "uid=[0-9]\\d*"; string reg1 = "[0-9]\\d*"; m = Regex.Match(Notes, reg); m1 = Regex.Match(m.Groups[0].ToString(), reg1); UsId = Convert.ToInt32(m1.Groups[0].ToString()); try { if (!new BCW.BLL.tb_WinnersLists().ExistsUserID(UsId)) { return(id); } } catch { } } if (UsId == 0)//会员ID为空返回 { return(id); } //是否中奖:返回1中将 string UsName = new BCW.BLL.User().GetUsName(UsId); int isHit = new BCW.winners.winners().CheckActionForAll(0, 0, UsId, UsName, Notes, id); if (isHit == 1) { if (WinnersGuessOpen == "1") { new BCW.BLL.Guest().Add(0, UsId, UsName, TextForUbb);//发内线到该ID //if (ActionOpen == "1") //{ // Add(UsId, ActionText); //} } } return(id); } catch { return(id); } } else { return(id); } }
/// <summary> /// 处理环迅接口返回数据 /// </summary> /// <param name="Resultstr">返回字符串</param> /// <param name="isTips">是否提示处理状态</param> public static void updateorder(string Resultstr, bool isTips) { if (Resultstr != "") { #region 返回处理 Resultstr = Resultstr.Replace("<![CDATA[", "").Replace("]]>", ""); string MerBillNostr = ""; //单号 string CurrencyType = ""; //币种 decimal Amount = 0; //订单金额 string date = ""; //订单日期 string Status = ""; //交易状态 string RspCode = ""; //返回码 string Attach = ""; //商户数据包 string IpsBillNo = ""; //IPS订单号 string IpsTradeNo = ""; //交易流水号 string BankBillNo = ""; //银行订单号 #region 获取订单号 MerBillNostr //获取订单号 string strpattern = @"<MerBillNo>([\s\S]{1,20})</MerBillNo>";//单号 Match mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { MerBillNostr = mtitle.Groups[1].Value; } #endregion if (MerBillNostr != "") { #region 获取订单金额 Amount strpattern = @"<Amount>([\s\S]{1,10})</Amount>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { Amount = decimal.Parse(mtitle.Groups[1].Value); } #endregion #region 获取订单日期 date strpattern = @"<date>([\s\S]{1,10})</date>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { date = mtitle.Groups[1].Value; } #endregion #region 获取支付币种 CurrencyType strpattern = @"<CurrencyType>([\s\S]{1,10})</CurrencyType>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { CurrencyType = mtitle.Groups[1].Value; } #endregion #region 交易状态 Status //Y#交易成功;N#交易失败;P#交易处理中 strpattern = @"<Status>([\s\S]{1,10})</Status>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { Status = mtitle.Groups[1].Value; } #endregion #region 商户数据包 Attach strpattern = @"<Attach>([\s\S]*)</Attach>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { Attach = mtitle.Groups[1].Value; } #endregion #region 商户数据包 Attach strpattern = @"<BankBillNo>([\s\S]*)</BankBillNo>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { BankBillNo = mtitle.Groups[1].Value; } #endregion #region 返回码 RspCode strpattern = @"<RspCode>([\s\S]*)</RspCode>"; mtitle = Regex.Match(Resultstr, strpattern, RegexOptions.IgnoreCase); if (mtitle.Success) { RspCode = mtitle.Groups[1].Value; } #endregion #region 充值到账户 try { Attach = BCW.Common.DESEncrypt.Decrypt(Attach, BCW.IPSPay.IPSPayMent.IpsKey); } catch { } if (Attach.Split(',').Length == 5) { int id = 0; try { id = int.Parse(Attach.Split(',')[0].ToString()); } catch { } if (id != 0) { ///shop开头的订单,是属于商城的订单,无任何字符开头的订单,是属于网上充值的订单 int typeMer = 0;//订单类型0默认订单 1商城订单 if (MerBillNostr.StartsWith("Shop")) { typeMer = 1; } else if (MerBillNostr.Contains("AGENC")) { typeMer = 2; } switch (typeMer) { case 2: { #region 更新到中介充值数据库 BCW.Model.Payrmb model = new BCW.BLL.Payrmb().GetPayrmb(id); if (model != null && model.State == 0) { //对比订单 if (model.MerBillNo == MerBillNostr) { ////对比日期 //if (model.AddTime.ToString("yyyyMMdd") == date) //{ //对比金额 if (model.Amount.ToString("0.00") == Amount.ToString("0.00")) { //以上都对,则更新数据库 if (Status == "Y") { //成功 model.State = 1; } else { //错误 model.State = 2; } model.GatewayType = CurrencyType; model.Attach = Attach; model.BankCode = Attach.Split(',')[3].ToString(); model.ProductType = "1"; new BCW.BLL.Payrmb().Update_ips(model); #region 中介过币 //开始过币 string toname = new BCW.BLL.User().GetUsName(model.UsID); string Coin = ub.GetSub("FinanceSZXTar", xmlPath); long uGoid = long.Parse((model.Amount * decimal.Parse(Coin)).ToString("0")); string[] sArray = Regex.Split(MerBillNostr, "AGENC", RegexOptions.IgnoreCase); int Cid = int.Parse(sArray[0]); string mename = new BCW.BLL.User().GetUsName(Cid); new BCW.BLL.User().UpdateiGold(Cid, mename, -uGoid, "过户给ID" + model.UsID + "(中介专用网充链接)"); new BCW.BLL.User().UpdateiGold(model.UsID, toname, uGoid, "来自ID" + Cid + "过户(中介专用网充链接)"); BCW.Model.Transfer T_model = new BCW.Model.Transfer(); T_model.Types = 0; T_model.FromId = Cid; T_model.FromName = mename; T_model.ToId = model.UsID; T_model.ToName = toname; T_model.AcCent = uGoid; T_model.AddTime = DateTime.Now; T_model.zfbNo = MerBillNostr; new BCW.BLL.Transfer().Add(T_model); //系统内线消息 new BCW.BLL.Guest().Add(model.UsID, toname, "[url=/bbs/uinfo.aspx?uid=" + Cid + "]" + mename + "[/url]过户" + uGoid + "" + ub.Get("SiteBz") + "给您(网," + MerBillNostr + ")"); new BCW.BLL.Guest().Add(Cid, mename, "您过户" + uGoid + "" + ub.Get("SiteBz") + "给[url=/bbs/uinfo.aspx?uid=" + model.UsID + "] " + toname + " [/url]成功(网," + MerBillNostr + ")"); #endregion if (isTips) { new BCW.BLL.Guest().Add(10086, "客服", "ID:" + model.UsID + "商城购物支付,订单支付成功,单号:" + model.MerBillNo); Utils.Success("充值成功", "充值成功", Attach.Split(',')[4].ToString(), "1"); } } //} } } else { if (isTips) { Utils.Success("订单已处理", "订单已处理", Attach.Split(',')[4].ToString(), "1"); } } #endregion } break; case 1: { #region 更新商城订单 BCW.Model.Shopkeep model = new BCW.BLL.Shopkeep().GetShopkeep(id); if (model != null && model.State == 0) { //对比订单 if (model.MerBillNo == MerBillNostr) { ////对比日期 //if (model.AddTime.ToString("yyyyMMdd") == date) //{ //对比金额 if (model.Amount.ToString("0.00") == Amount.ToString("0.00")) { //以上都对,则更新数据库 if (Status == "Y") { //成功 model.State = 1; } else { //错误 model.State = 2; } model.GatewayType = CurrencyType; model.Attach = Attach; model.BankCode = Attach.Split(',')[3].ToString(); model.ProductType = "1"; new BCW.BLL.Shopkeep().Update_ips(model); string Coin = model.Para; long uGoid = long.Parse((model.Total * decimal.Parse(Coin)).ToString("0")); //充值酷币 new BCW.BLL.User().UpdateiGold(model.UsID, new BCW.BLL.User().GetUsName(model.UsID), uGoid, "商品" + model.Title + "(" + model.GiftId + ")支付成功,订单号:" + MerBillNostr); new BCW.BLL.Guest().Add(model.UsID, new BCW.BLL.User().GetUsName(model.UsID), "支付订单:" + model.MerBillNo + "成功[url=" + Attach.Split(',')[4].ToString() + "]查看[/url]"); if (isTips) { new BCW.BLL.Guest().Add(10086, "客服", "ID:" + model.UsID + "商城购物支付,订单支付成功,单号:" + model.MerBillNo); Utils.Success("支付成功", "支付成功", Attach.Split(',')[4].ToString(), "1"); } } //} } } else { if (isTips) { Utils.Success("订单已处理", "订单已处理", Attach.Split(',')[4].ToString(), "1"); } } #endregion } break; case 0: { #region 更新到网上支付数据库 BCW.Model.Payrmb model = new BCW.BLL.Payrmb().GetPayrmb(id); if (model != null && model.State == 0) { //对比订单 if (model.MerBillNo == MerBillNostr) { ////对比日期 //if (model.AddTime.ToString("yyyyMMdd") == date) //{ //对比金额 if (model.Amount.ToString("0.00") == Amount.ToString("0.00")) { //以上都对,则更新数据库 if (Status == "Y") { //成功 model.State = 1; } else { //错误 model.State = 2; } model.GatewayType = CurrencyType; model.Attach = Attach; model.BankCode = Attach.Split(',')[3].ToString(); model.ProductType = "1"; new BCW.BLL.Payrmb().Update_ips(model); if (ub.GetSub("FinanceSZXType", xmlPath) == "0") { string Coin = ub.GetSub("FinanceSZXTar", xmlPath); long uGoid = long.Parse((model.Amount * decimal.Parse(Coin)).ToString("0")); //充值酷币 new BCW.BLL.User().UpdateiGold(model.UsID, new BCW.BLL.User().GetUsName(model.UsID), uGoid, "网上支付成功,订单号:" + MerBillNostr); new BCW.BLL.Guest().Add(model.UsID, new BCW.BLL.User().GetUsName(model.UsID), "网上支付订单:" + model.MerBillNo + "成功[url=" + Attach.Split(',')[4].ToString() + "]查看[/url]"); //点值抽奖 try { new BCW.Draw.draw().Addjfbychongzhi(model.UsID, new BCW.BLL.User().GetUsName(model.UsID), model.Amount, "网上充值" + model.Amount + "奖励"); } catch { } } else { } if (isTips) { new BCW.BLL.Guest().Add(10086, "客服", "ID:" + model.UsID + "商城购物支付,订单支付成功,单号:" + model.MerBillNo); Utils.Success("充值成功", "充值成功", Attach.Split(',')[4].ToString(), "1"); } } //} } } else { if (isTips) { Utils.Success("订单已处理", "订单已处理", Attach.Split(',')[4].ToString(), "1"); } } #endregion } break; } } } #endregion } #endregion } else { //Utils.Success("数据错误", "提交数据错误", "Default.aspx", "1"); } }
public RspSignin UserSignin(ReqSignin _reqData) { RspSignin _rspData = new RspSignin(); //验证用户ID格式 if (_reqData.userId < 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspData); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspData); } BCW.Model.User model = new BCW.BLL.User().GetSignData(_reqData.userId); if (string.IsNullOrEmpty(model.SignTime.ToString())) { model.SignTime = DateTime.Now.AddDays(-1); } if (model.SignTime > DateTime.Parse(DateTime.Now.ToLongDateString())) { _rspData.header.status = ERequestResult.faild; _rspData.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_SIGNIN_HAS_TODAY; return(_rspData); } int SignKeep = 1; int SignTotal = model.SignTotal + 1; if (model.SignTime >= DateTime.Parse(DateTime.Now.ToLongDateString()).AddDays(-1)) { SignKeep = model.SignKeep + 1; } //更新签到信息 new BCW.BLL.User().UpdateSingData(_reqData.userId, SignTotal, SignKeep); _rspData.signinRewardStr = BCW.User.Users.GetWinCent(12, _reqData.userId); _rspData.cobi = new BCW.BLL.User().GetGold(_reqData.userId); _rspData.header.status = ERequestResult.success; //积分操作 new BCW.User.Cent().UpdateCent(BCW.User.Cent.enumRole.Cent_Sign, _reqData.userId); if (SignKeep % 30 == 0) //连续签到1个月奖励 { _rspData.monthRewardStr = BCW.User.Users.GetWinCent(14, _reqData.userId); //动态记录 new BCW.BLL.Action().Add(_reqData.userId, "在空间连续一个月签到获得奖励"); //积分操作 new BCW.User.Cent().UpdateCent(BCW.User.Cent.enumRole.Cent_Sign3, _reqData.userId); } else if (SignKeep % 7 == 0) { _rspData.weekRewardStr = BCW.User.Users.GetWinCent(13, _reqData.userId); //动态记录 new BCW.BLL.Action().Add(_reqData.userId, "在空间连续一周签到获得奖励"); //积分操作 new BCW.User.Cent().UpdateCent(BCW.User.Cent.enumRole.Cent_Sign2, _reqData.userId); } else { //动态记录 new BCW.BLL.Action().Add(_reqData.userId, "在空间签到获得奖励"); } _rspData.keepDay = SignKeep; _rspData.totalDay = SignTotal; //银行利息更新 string ForumSet = new BCW.BLL.User().GetForumSet(_reqData.userId); object BankTime = BCW.User.Users.GetForumSet2(ForumSet, 10); if (BankTime != null) { int iDay = 1; if (ub.GetSub("FinanceBankType", xmlPath) == "0") { iDay = 7; } DateTime getBankTime = Convert.ToDateTime(BankTime); if (DT.TwoDateDiff(DateTime.Now, getBankTime) >= iDay) { long iBank = new BCW.BLL.User().GetBank(_reqData.userId); double iTar = Convert.ToDouble(ub.GetSub("FinanceBankTar", xmlPath)); long intBank = Convert.ToInt64(iBank * (iTar / 1000)); new BCW.BLL.User().UpdateiBank(_reqData.userId, intBank); string GetForumSet = BCW.User.Users.GetForumSetData(ForumSet, DateTime.Now.ToString(), 10); new BCW.BLL.User().UpdateForumSet(_reqData.userId, GetForumSet); } } //VIP成长更新 BCW.Model.User vip = new BCW.BLL.User().GetVipData(_reqData.userId); if (vip != null) { if (string.IsNullOrEmpty(vip.UpdateDayTime.ToString()) || DT.TwoDateDiff(DateTime.Now, vip.UpdateDayTime) >= 1) { if (vip.VipDate > DateTime.Now) { new BCW.BLL.User().UpdateVipGrow(_reqData.userId, vip.VipDayGrow); } } } return(_rspData); }
/// <summary> /// 检查论坛访问限制 /// </summary> /// <param name="meid">会员ID</param> /// <param name="Gradelt">可以访问的级别</param> /// <param name="Visitlt">特定访问对象(如管理员、版主)</param> /// <param name="VisitId">特定访问IP</param> /// <param name="IsPc">是否PC</param> /// <returns></returns> public static BCW.Mobile.Error.MOBILE_ERROR_CODE ShowForumLimit(int meid, int Gradelt, int Visitlt, string VisitId, int IsPc) { bool flag = false; #region Gradelt flag = (Gradelt <= 0); if (!flag) { if (meid == 0) { return(Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN); } // int leven = new BCW.BLL.User().GetLeven(meid); flag = (leven >= Gradelt); if (!flag) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_LEVEL); } } #endregion // #region Visitlt flag = (Visitlt <= 0); if (!flag) { if (meid == 0) { return(Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN); } // switch (Visitlt) { case 2: int num2 = BCW.User.Users.VipLeven(meid); if (num2 == 0) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_VIP); } break; case 3: flag = new BCW.BLL.Role().IsAllModeNoGroup(meid); if (!flag) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_BBS_MODERATOR); } break; case 4: flag = new BCW.BLL.Role().IsAdmin(meid); if (!flag) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_ADMIN); } break; default: break; } } #endregion // #region VisitID flag = string.IsNullOrEmpty(VisitId); if (!flag) { if (meid == 0) { return(Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN); } // VisitId = "#" + VisitId + "#"; flag = (VisitId.IndexOf("#" + meid + "#") != -1); if (!flag) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_IP); } } #endregion // #region IsPc flag = (IsPc != 1); if (!flag) { flag = Utils.IsMobileUa(); if (!flag) { return(Error.MOBILE_ERROR_CODE.BBS_FORUM_VISIT_LIMIT_MOBILE); } } return(Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE); #endregion }
/// <summary> /// 发贴 /// </summary> /// <param name="ForumId"></param> /// <returns>发表贴子结果类</returns> public RspAddThread AddThread(ReqAddThread _reqData) { RspAddThread _rspAddThread = new RspAddThread(); //验证用户ID格式 if (_reqData.userId < 0) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.MOBILE_PARAMS_ERROR; return(_rspAddThread); } //验证帖子类型 if (Regex.IsMatch(_reqData.pType.ToString(), @"^[0-4]$|^6$|^7$|^8$") == false) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_TYPE_ERROR; return(_rspAddThread); } //验证帖子类型 if (Regex.IsMatch(_reqData.forumId.ToString(), @"^[0-9]\d*$") == false) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_TYPE_ERROR; return(_rspAddThread); } //验证贴子标题长度 if (Regex.IsMatch(_reqData.title, @"^[\s\S]{" + ub.GetSub("BbsThreadMin", xmlPath) + "," + ub.GetSub("BbsThreadMax", xmlPath) + "}$") == false) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_TITLE_LENGTH_ERROR; _rspAddThread.header.statusMsg = string.Format(_rspAddThread.header.statusMsg, ub.GetSub("BbsThreadMin", xmlPath), ub.GetSub("BbsThreadMax", xmlPath)); return(_rspAddThread); } //验证内容长度 if (Regex.IsMatch(_reqData.content, @"^[\s\S]{" + ub.GetSub("BbsContentMin", xmlPath) + "," + ub.GetSub("BbsContentMax", xmlPath) + "}$") == false) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_CONTENT_LENGTH_ERROR; _rspAddThread.header.statusMsg = string.Format(_rspAddThread.header.statusMsg, ub.GetSub("BbsContentMin", xmlPath), ub.GetSub("BbsContentMax", xmlPath)); return(_rspAddThread); } //检查是否登录状态 if (Common.Common.CheckLogin(_reqData.userId, _reqData.userKey) == 0) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_NOLOGIN; return(_rspAddThread); } //版块是否可用 if (!new BCW.BLL.Forum().Exists2(_reqData.forumId)) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_FORUM_NOT_FOUND; return(_rspAddThread); } //自身权限不足 if (new BCW.User.Limits().IsUserLimit(BCW.User.Limits.enumRole.Role_Text, _reqData.userId) == true) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.SYS_USER_LIMIT_NOT_ENOUGH; return(_rspAddThread); } //板块权限不足 if (Common.Common.CheckUserFLimit(BCW.User.FLimits.enumRole.Role_Text, _reqData.userId, _reqData.forumId)) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_FORUM_LIMIT_NOT_ENOUGH; return(_rspAddThread); } string mename = new BCW.BLL.User().GetUsName(_reqData.userId); int ThreadNum = Utils.ParseInt(ub.GetSub("BbsThreadNum", xmlPath)); if (ThreadNum > 0) { int ToDayCount = new BCW.BLL.Forumstat().GetCount(_reqData.userId, 1);//今天发布帖子数 if (ToDayCount >= ThreadNum) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = Error.MOBILE_ERROR_CODE.BBS_THREAD_THREAD_NUM; return(_rspAddThread); } } BCW.Model.Forum model = new BCW.BLL.Forum().GetForum(_reqData.forumId); //论坛限制性 //BCW.User.Users.ShowForumLimit(_reqData.userId, model.Gradelt, model.Visitlt, model.VisitId, model.IsPc); //浏览限制 //发贴限制 Error.MOBILE_ERROR_CODE _result = Common.Common.ShowAddThread(_reqData.userId, model.Postlt); if (_result != Error.MOBILE_ERROR_CODE.MOBILE_MSG_NONE) { _rspAddThread.header.status = ERequestResult.faild; _rspAddThread.header.statusCode = _result; return(_rspAddThread); } //判断玩家是否刷屏 string Hide = string.Empty; int Price = 0; int Price2 = 0; long Prices = 0; int BzType = 0; int HideType = 0; int IsSeen = 0; string PayCi = string.Empty; string Vote = string.Empty; DateTime VoteExTime = DateTime.Now; int LabelId = 0; BCW.Model.Text addmodel = new BCW.Model.Text(); addmodel.ForumId = _reqData.forumId; addmodel.Types = _reqData.pType; addmodel.LabelId = LabelId; addmodel.Title = _reqData.title; addmodel.Content = _reqData.content; addmodel.HideContent = Hide; addmodel.UsID = _reqData.userId; addmodel.UsName = mename; addmodel.Price = Price; addmodel.Price2 = Price2; addmodel.Prices = Prices; addmodel.HideType = HideType; addmodel.BzType = BzType; addmodel.PayCi = PayCi; addmodel.IsSeen = IsSeen; addmodel.IsDel = 0; addmodel.AddTime = DateTime.Now; addmodel.ReTime = DateTime.Now; addmodel.PricesLimit = ""; addmodel.Gaddnum = 0; addmodel.Gqinum = 0; int k = 0; k = new BCW.BLL.Text().Add(addmodel); //论坛统计 BCW.User.Users.UpdateForumStat(1, _reqData.userId, mename, _reqData.forumId); //动态记录 if (model.GroupId > 0) { new BCW.BLL.Action().Add(-2, 0, _reqData.userId, mename, "在圈坛-" + model.Title + "发表了[URL=/bbs/topic.aspx?forumid=" + _reqData.forumId + "&bid=" + k + "]" + _reqData.title + "[/URL]的帖子"); } else { new BCW.BLL.Action().Add(-1, 0, _reqData.userId, mename, "在" + model.Title + "发表了[URL=/bbs/topic.aspx?forumid=" + _reqData.forumId + "&bid=" + k + "]" + _reqData.title + "[/URL]的帖子"); } //积分操作/论坛统计/圈子论坛不进行任何奖励 int GroupId = new BCW.BLL.Forum().GetGroupId(_reqData.forumId); int IsAcc = -1; if (GroupId == 0) { IsAcc = new BCW.User.Cent().UpdateCent2(BCW.User.Cent.enumRole.Cent_Text, _reqData.userId, true); } else { if (!Utils.GetDomain().Contains("th")) { IsAcc = new BCW.User.Cent().UpdateCent2(BCW.User.Cent.enumRole.Cent_Text, _reqData.userId, false); } } #region 这里开始修改提醒ID 发内线 string remind = ub.GetSub("remindid" + _reqData.forumId, xmlPath); //获取XML的值 if (remind != "") //如果有提醒ID { string[] IDS = remind.Split('#'); for (int i = 0; i < IDS.Length; i++) { if (model.GroupId > 0) { new BCW.BLL.Guest().Add(0, int.Parse(IDS[i]), new BCW.BLL.User().GetUsName(int.Parse(IDS[i])), "请注意!用户[url=/bbs/uinfo.aspx?uid=" + _reqData.userId + "]" + mename + "(" + _reqData.userId + ")[/url]在圈坛-" + model.Title + "发表了[URL=/bbs/topic.aspx?forumid=" + _reqData.forumId + "&bid=" + k + "]" + _reqData.title + "[/URL]的帖子"); } else { new BCW.BLL.Guest().Add(0, int.Parse(IDS[i]), new BCW.BLL.User().GetUsName(int.Parse(IDS[i])), "请注意!用户[url=/bbs/uinfo.aspx?uid=" + _reqData.userId + "]" + mename + "(" + _reqData.userId + ")[/url]在" + model.Title + "发表了[URL=/bbs/topic.aspx?forumid=" + _reqData.forumId + "&bid=" + k + "]" + _reqData.title + "[/URL]的帖子"); } } } #endregion _rspAddThread.header.status = ERequestResult.success; _rspAddThread.threadId = k; return(_rspAddThread); }