public RespondWebViewData <RespondOnlineSigninUserViewModel> GetOnlineSigninUserByUserID_g(RequestOnlineSigninUserViewModel request) { return(MemcacheHelper.Get(() => { var parameter = new OnlineSigninUserParameter { SGuid = request.SGuid, UserIP = request.AddressIP }; var dataModel = this.mSiginUserDataAccess.GetOnlineSigninUserByUserID_g(parameter); if (dataModel == null) { return new RespondWebViewData <RespondOnlineSigninUserViewModel>(WebViewErrorCode.LoginRequired); } return new RespondWebViewData <RespondOnlineSigninUserViewModel> { rows = new RespondOnlineSigninUserViewModel { UserID = dataModel.userid, LoginName = dataModel.username, SGuid = dataModel.sguid, ExpTime = dataModel.exptime, UserIP = dataModel.userip } }; }, string.Format(preCacheKey, "GetOnlineSigninUserByUserID_g"), DateTime.Now.AddMinutes(WebConfigHelper.MemCachedExpTime()), false, request.SGuid, request.AddressIP)); }
public SigninUserDataModel FindSininUserDataModelByUserID(OnlineSigninUserParameter parameter) { this.ExecuteSQL = "SELECT * FROM sysuser WHERE UserID=@UserID"; this.DataParameter = new IDbDataParameter[] { new SqlParameter("@UserID", parameter.UserID) }; return(this.ExecuteReadSqlToSigninUserDataModel()); }
public OnlineSigninUserDataModel GetOnlineSigninUserByUserID_g(OnlineSigninUserParameter parameter) { var nowDate = DateTime.Now; this.ExecuteSQL = "SELECT * FROM [online] WHERE sguid=@sguid AND userip=@userip AND overtime<@overtime AND status=0"; this.DataParameter = new IDbDataParameter[] { new SqlParameter("@sguid", parameter.SGuid), new SqlParameter("@userip", parameter.UserIP), new SqlParameter("@overtime", new DateTime(nowDate.Year, nowDate.Month, nowDate.Day).AddDays(1)) }; return(this.ExecuteReadSqlToOnlineSigninUserDataModel()); }
public RespondWebViewData <RespondSigninUserViewModel> FindSininUserDataModelByUserID(RequestOnlineSigninUserViewModel request) { var parameter = new OnlineSigninUserParameter { UserID = request.UserID }; var dataModel = this.mSiginUserDataAccess.FindSininUserDataModelByUserID(parameter); if (dataModel == null) { return(new RespondWebViewData <RespondSigninUserViewModel>(WebViewErrorCode.NotExistUserInfo)); } var companyInfoRequest = new RequestCompanyInfoViewModel { CompanyID = dataModel.comid }; var companyInfo = this.mCompanyInfoViewService.GetCompanyInfoViewModel(companyInfoRequest); var connectionConfig = new DbConnectionConfig { ConnectTimeout = companyInfo.ConnectTimeout, Database = companyInfo.Database, Password = companyInfo.Password, Server = companyInfo.Server, UserID = companyInfo.UserID }; FormsAuthenticationTicketManage.RenewTicketIfOld(request.SGuid); var respond = new RespondWebViewData <RespondSigninUserViewModel> { rows = new RespondSigninUserViewModel { CurrentUser = new SigninUser { CompanySerialNum = dataModel.comid, UserID_g = request.SGuid, UserID = dataModel.userid, UserName = dataModel.username, AddressIP = UserIPAddressTool.GetRealUserIPAddress(), ConnectionConfig = connectionConfig, IsManager = dataModel.ismanager, IsSystem = dataModel.issystem } } }; HttpContext.Current.Items.Add(BeforeCompileConstDefined.HttpContext_Login_User, respond.rows.CurrentUser); return(respond); }
public bool SaveLoginUserToOnline(OnlineSigninUserParameter parameter) { this.ExecuteSQL = "INSERT INTO dbo.Online(userid, username, userip, browser, logintime, overtime, exptime, status, sguid) VALUES (@userid, @username, @userip, @browser, @logintime, @overtime, @exptime, 0, @sguid)"; this.DataParameter = new IDbDataParameter[] { new SqlParameter("@userid", parameter.UserID), new SqlParameter("@username", parameter.LoginName), new SqlParameter("@userip", parameter.UserIP), new SqlParameter("@browser", parameter.Browser), new SqlParameter("@logintime", parameter.LoginTime), new SqlParameter("@overtime", parameter.OverTime), new SqlParameter("@exptime", parameter.ExpTime), new SqlParameter("@sguid", parameter.SGuid) }; return(this.ExecuteNonQuery() > 0); }
/// <summary> /// 将登陆用户保存至在线列表内 /// </summary> /// <param name="request"></param> /// <returns></returns> public bool SaveLoginUserToOnline(RequestSigninUserViewModel request) { var context = HttpContext.Current; var now = DateTime.Now; var expTime = now.ToShortDateString().ToDateTime().AddDays(1).AddSeconds(-1);//当日23:59:59 var _parameter = new OnlineSigninUserParameter { UserID = request.UserID, Browser = context.Request.Browser.Browser, ExpTime = expTime, LoginName = request.UserName, LoginTime = now, OverTime = expTime, SGuid = request.UserID_g, UserIP = UserIPAddressTool.GetRealUserIPAddress() }; return(this.mSiginUserDataAccess.SaveLoginUserToOnline(_parameter)); }