public OperationResult UpdatedUser(UserInputDto inputDto) { if (!UserLoginRepository.CheckExists(m => m.Id == inputDto.Id)) { throw new Exception("id:用户信息不存在"); } else { var result = UserLoginRepository.TrackEntities.First(m => m.Id == inputDto.Id); var result_user = result.UserMany.First(); result_user.Email = inputDto.Email; result_user.PhoneNumber = inputDto.PhoneNumber; result_user.WeChat = inputDto.WeChat; result_user.Remark = inputDto.Remark; result_user.Theme = inputDto.Theme; result_user.RealName = inputDto.RealName; result_user.NickName = inputDto.NickName; result_user.Sex = inputDto.Sex; result_user.IsAlarm = inputDto.IsAlarm; result_user.IsSysReceive = inputDto.IsSysReceive; result_user.Language = inputDto.Language; result_user.LastUpdatedTime = DateTime.Now; result_user.LastUpdatorUserId = result.UserName; int n = UserLoginRepository.Update(result); if (n > 0) { return(new OperationResult(OperationResultType.Success, "更新用户基本信成功!")); } else { throw new Exception("id:更新用户数据失败"); } } }
/// <summary> /// 获取用户头像byte[] /// </summary> /// <param name="id">用户主键</param> /// <returns></returns> public byte[] GetHeadIconBits(Guid id) { if (!UserLoginRepository.CheckExists(m => m.Id == id)) { throw new Exception($"id:查询信息不能存在"); } else { var result = UserLoginRepository.TrackEntities.First(m => m.Id == id); var user = result.UserMany.First(); if (string.IsNullOrEmpty(user.HeadIconPath) && (user.HeadIcon?.Length <= 0 || user.HeadIcon == null)) { return(Properties.Resources._default.ToBytes()); } else { var imgPath = HttpContext.Current.Server.MapPath($"{user.HeadIconPath}"); if (File.Exists(imgPath)) { return(File.ReadAllBytes(imgPath)); } else { imgPath = HttpContext.Current.Server.MapPath($"~/HeadIconFiles\\{result.Id.ToString()}"); string str = user.HeadIcon.CreateImageFromBytes(imgPath); user.HeadIconPath = $"~/HeadIconFiles\\{str.Substring(str.LastIndexOf('\\') + 1)}"; UserLoginRepository.Update(result); return(user.HeadIcon); } } } }
public WebsiteUserStore() { _userRepository = new UserRepository <TUser>(); _userLoginRepository = new UserLoginRepository(); _userClaimRepository = new UserClaimRepository <TUser>(); _userRoleRepository = new UserRoleRepository <TUser>(); }
public UnitOfWork(ApplicationDbContext context) { _context = context; Attempts = new AttemptRepository(_context); Exams = new ExamRepository(_context); Images = new ImageRepository(_context); NoteParameters = new NoteParameterRepository(_context); Notifications = new NotificationRepository(_context); Notes = new NoteRepository(_context); Opinions = new OpinionRepository(_context); Options = new OptionRepository(_context); Passages = new PassageRepository(_context); Questions = new QuestionRepository(_context); Requirements = new RequirementRepository(_context); Roles = new RoleRepository(_context); RoleClaims = new RoleClaimRepository(_context); Standards = new StandardRepository(_context); Sittings = new SittingRepository(_context); Topics = new TopicRepository(_context); Users = new UserRepository(_context); UserClaims = new UserClaimRepository(_context); UserLogins = new UserLoginRepository(_context); UserRoles = new UserRoleRepository(_context); UserTokens = new UserTokenRepository(_context); }
/// <summary> /// 更新用户头像 /// </summary> /// <param name="id">用户主键ID</param> /// <param name="imageFile">图片文件</param> /// <returns>是否修改成功</returns> public async Task <OperationResult> SetUserHeadIcon(Guid id, Task <FileInfo> imageFile) { if (!UserLoginRepository.CheckExists(m => m.Id == id)) { throw new Exception($"id:用户主键{id}的账号不存在"); } else { var file = await imageFile; using (Bitmap bitmap = new Bitmap(file.FullName)) { byte[] HeadIcomBits = bitmap.ToBytes(); var user = UserLoginRepository.TrackEntities.FirstOrDefault(m => m.Id == id); user.UserMany.First().HeadIcon = HeadIcomBits; user.UserMany.First().HeadIconPath = Path.Combine("~/HeadIconFiles", file.Name); if (UserLoginRepository.Update(user) > 0) { return(new OperationResult(OperationResultType.Success, "操作成功!")); } else { return(new OperationResult(OperationResultType.Error, "操作失败!")); } } } }
public UserLoginTests() { // Arrange var options = new DbContextOptionsBuilder <TimeSheetDbContext>() .UseInMemoryDatabase(databaseName: "EmployeeDataBase") .Options; _ctx = new TimeSheetDbContext(options); _ctx.UserLogins.Add(new UserLogin { LoginTime = login1, UUId = "1" }); _ctx.UserLogouts.Add(new UserLogout { LogoutTime = logout1, UUId = "1" }); _ctx.UserLogins.Add(new UserLogin { LoginTime = login2, UUId = "1" }); _ctx.UserLogouts.Add(new UserLogout { LogoutTime = logout2, UUId = "1" }); _ctx.UserLogins.Add(new UserLogin { LoginTime = login3, UUId = "1" }); _ctx.UserLogouts.Add(new UserLogout { LogoutTime = logout3, UUId = "1" }); _ctx.SaveChanges(); _repo = new UserLoginRepository(_ctx); }
public virtual async Task RemoveLoginAsync(TUser user, UserLoginInfo login) { user.CheckNotNull("user"); login.CheckNotNull("login"); await UserLoginRepository.DeleteAsync( m => m.User.Id.Equals(user.Id) && m.LoginProvider == login.LoginProvider && m.ProviderKey == login.ProviderKey); }
/// <summary> /// 修改月用户密码 /// </summary> /// <param name="id">用户登录ID</param> /// <param name="od">旧密码</param> /// <param name="nd">新密码</param> /// <returns></returns> public OperationResult ChangePasswrod(Guid id, string od, string nd) { if (!UserLoginRepository.CheckExists(m => m.Id == id)) { throw new Exception("id:未查询到用户信息"); } else { var result = UserLoginRepository.TrackEntities.First(m => m.Id == id); if (result.Password != od.AESEncrypt128(result.SecretKey)) { throw new Exception("id:验证旧密码出错"); } else { result.SecretKey = new Random().NextLetterString(16).ToUpper(); result.Password = nd.AESEncrypt128(result.SecretKey); if (UserLoginRepository.Update(result) > 0) { //修改密码后移除登录缓存 ICache iCache = CacheManager.GetCacher <CacheUser>(); iCache.Remove(result.UserName.AESEncrypt128()); return(new OperationResult(OperationResultType.Success, $"修改用户{result.UserName}密码成功")); } else { throw new Exception($"id:修改用户{result.UserName}密码失败"); } } } }
public UserUnitOfWork(AyudaContext context) { Context = context; Users = new UserRepository(Context); UserTokens = new UserTokenRepository(context); UserLogins = new UserLoginRepository(context); UserProfiles = new UserProfileRepository(context); }
public FluentNHibernateUserStore(ProviderTypeEnum providerType, string nameOrConnectionString, FluentNHibernatePersistenceBuilderOptions options = null) { _userRepository = new UserRepository <TUser>(providerType, nameOrConnectionString, options); _userLoginRepository = new UserLoginRepository(_userRepository.SessionFactoryKey); _userClaimRepository = new UserClaimRepository <TUser>(_userRepository.SessionFactoryKey); _userRoleRepository = new UserRoleRepository <TUser>(_userRepository.SessionFactoryKey); }
public MySqlUserStore(string connectionStringName) { _connectionString = ConfigurationManager.ConnectionStrings[connectionStringName].ConnectionString; _userRepository = new UserRepository <TUser>(_connectionString); _userLoginRepository = new UserLoginRepository(_connectionString); _userClaimRepository = new UserClaimRepository <TUser>(_connectionString); _userRoleRepository = new UserRoleRepository <TUser>(_connectionString); }
public MySqlUserStore() { _connectionString = MySqlConnectionWrapper.ConnectionString; _userRepository = new UserRepository <TUser>(_connectionString); _userLoginRepository = new UserLoginRepository(_connectionString); _userClaimRepository = new UserClaimRepository <TUser>(_connectionString); _userRoleRepository = new UserRoleRepository <TUser>(_connectionString); }
public UsersController( UserLoginRepository userLoginRepository, GuestLoginRepository guestLoginRepository, UserConnectionsService userConnectionsService) { this.userLoginRepository = userLoginRepository; this.guestLoginRepository = guestLoginRepository; this.userConnectionsService = userConnectionsService; }
public UserSessionDto Login(string userId, string password) { if (string.IsNullOrEmpty(userId)) { throw new ArgumentException("User Id cannot be null", nameof(userId)); } if (string.IsNullOrEmpty(password)) { throw new ArgumentException("Password cannot be null", nameof(password)); } UserLogin userLoginEntity = null; using (UserLoginRepository userLoginRepository = new UserLoginRepository()) { string securePassword = password.Encrypt(); userLoginEntity = userLoginRepository.Find(x => x.UserId == userId && x.Password == securePassword); if (userLoginEntity == null) { throw new ApplicationException("Invalid UserId/Password"); } } using (UserInfoRepository repository = new UserInfoRepository()) { UserInfo userInfo = repository.Find(x => x.UserId == userId); if (userInfo == null) { throw new ApplicationException("User Info not found."); } string sessionId = Guid.NewGuid().ToString(); using (UserSessionRepository userSessionRepository = new UserSessionRepository()) { UserSession userSession = new UserSession { UserId = userId, SessionId = sessionId, ValidFrom = DateTime.Now, ExpiresOn = DateTime.Now.AddDays(1) }; userSessionRepository.Insert(userSession); } return(new UserSessionDto() { SessionId = sessionId, User = new UserInfoDto() { FirstName = userInfo.FirstName, LastName = userInfo.LastName, Email = userInfo.EMail, UserId = userInfo.UserId, Gender = userInfo.Gender } }); } }
private void MbtnLogin_Click(object sender, EventArgs e) { if (this.txtLoginPassword.Text != "" && this.txtLoginId.Text != "") { UserLoginEntity user = new UserLoginEntity(); user.UserId = txtLoginId.Text.Trim(); user.UserPassword = txtLoginPassword.Text; UserLoginRepository emp = new UserLoginRepository(); if (emp.UserLoginValidation(user)) { if (user.UserId.Substring(0, 1) == "A") { MessageBox.Show("Admin"); AdminDashboard admin = new AdminDashboard(this, user.UserId); this.Hide(); admin.Show(); Clear(); } else if (user.UserId.Substring(0, 1) == "W") { MessageBox.Show("Waiter"); Waiter_Dashboard wd = new Waiter_Dashboard(this, user.UserId); this.Hide(); wd.Show(); Clear(); } else if (user.UserId.Substring(0, 1) == "M") { MessageBox.Show("Manager"); Manager_Dashboard md = new Manager_Dashboard(this, user.UserId); this.Hide(); md.Show(); Clear(); } else { MessageBox.Show("Invalid Form Of Id!"); Clear(); } } else { MessageBox.Show("Invalid Id or Password", "Login Failed"); Clear(); } } else { MessageBox.Show("Insert ID or Password", "Login Failed"); Clear(); } }
public virtual async Task AddLoginAsync(TUser user, UserLoginInfo login) { user.CheckNotNull("user"); login.CheckNotNull("login"); TUserLogin userLogin = new TUserLogin() { LoginProvider = login.LoginProvider, ProviderKey = login.ProviderKey, User = user }; await UserLoginRepository.InsertAsync(userLogin); }
public long AddLoginAccount(string username, string password) { UserLoginTable user = new UserLoginTable { email = username, password = password }; return(UserLoginRepository.AddLoginAccount(user)); }
public UnitofWork(HousingVigilanceContext context) { Context = context; Vehicles = new VehicleRepository(context); Users = new UserRepository(context); Roles = new RoleRepository(context); Permissions = new PermissionRepository(context); GateEntries = new GateEntryRepository(context); QRcodes = new QRRepository(context); UserLogins = new UserLoginRepository(context); }
public long RegisterUser(UserTable user, UserLoginTable userLogin) { if (!UserLoginRepository.CheckEmail(userLogin.email)) { return(-1); } long ID = UR.Createuser(user); userLogin.userID = ID; return(UserLoginRepository.AddLoginAccount(userLogin)); }
/// <summary> /// 添加用户登录信息 /// </summary> /// <param name="inputDtos">要添加的用户登录信息Dtos集合</param> /// <param name="cacheUser">当前操作用户的缓存</param> /// <returns>业务操作结果</returns> public async Task <OperationResult> AddUserLogin(CacheUser cacheUser, params UserLoginInputDto[] inputDtos) { try { if (inputDtos.Length <= 0) { return(new OperationResult(OperationResultType.Error, "添加用户的数组不存在存数!")); } else { List <string> names = new List <string>(); UserLoginRepository.UnitOfWork.BeginTransaction(); foreach (UserLoginInputDto dto in inputDtos) { if (cacheUser.Level >= dto.Level) { return(new OperationResult(OperationResultType.ValidError, $"用户:{dto.UserName}权限等级参数设置错误")); } UserLogin value = dto.MapTo <UserLogin>(); value.SecretKey = new Random().NextLetterString(16); value.Password = value.Password.AESEncrypt128(key: value.SecretKey); value.UserMany.Add(new User { CreatedTime = DateTime.Now, CreatorUserId = cacheUser.UserName, LastUpdatedTime = DateTime.Now, UserLoginOne = value, }); await UserLoginRepository.InsertAsync(value); if (value.Level == 2) { int count = UserOrganizeMapRepository.CheckExists(m => m.Organize_Id == value.Organize_Id && m.UserLogin_Id == value.Id) ? 0 : UserOrganizeMapRepository.Insert(new UserOrganizeMap { Organize_Id = value.Organize_Id, UserLogin_Id = value.Id }); } names.Add(value.UserName); } UserLoginRepository.UnitOfWork.Commit(); if (names.Count == 0) { return(new OperationResult(OperationResultType.NoChanged, "未能添加任何用户")); } else { return(new OperationResult(OperationResultType.Success, "用户:{0}创建成功".FormatWith(names.ExpandAndToString()))); } } } catch (Exception ex) { throw new Exception($"id:{ex.InnerException.Message}"); } }
public UserAuthenticationService( UserLoginRepository userRepository, GuestLoginRepository guestLoginRepository, ForumUserRepository forumUserRepository, UserConnectionsService userConnectionsService) { authenticationServiceLock = new object(); this.userConnectionsService = userConnectionsService; this.userRepository = userRepository; this.guestLoginRepository = guestLoginRepository; this.forumUserRepository = forumUserRepository; }
public async Task <ActionResult> BindLoginCallback(string userid) { //判断当前微信账号是否已经绑定了用户 var count = await UserLoginRepository.GetAll().IgnoreQueryFilters() .CountAsync(o => o.LoginProvider == WeChatAuthProviderApi.Name && o.ProviderKey == WeUser.openid); if (count > 0) { return(Redirect("/WeiXin/Error?msg=" + "当前微信已经绑定了账号".UrlEncode())); } ViewBag.UserId = userid; return(View()); }
public User GetUserFromOpenId(int tenantId, string openId) { using (CurrentUnitOfWork.SetTenantId(tenantId)) { UserLogin userLogin = UserLoginRepository.GetAll().Where(model => model.ProviderKey == openId).FirstOrDefault(); if (userLogin == null) { return(null); } User user = UserRepository.Get(userLogin.UserId); return(user); } }
public long CheckCredentials(string username, string password) { if (!UserLoginRepository.CheckEmail(username)) { UserLoginTable userLoginTable = new UserLoginTable { email = username, password = password }; return(UserLoginRepository.CheckPassword(userLoginTable)); } return(-1); }
public SignInServiceTest() { var context = new MaktoobDbContext(new DbContextOptionsBuilder <MaktoobDbContext>().UseInMemoryDatabase("MaktoobDb").Options); _errorDescriber = new GErrorDescriber(); var keyNormalizer = new NameNormalizer(); var passwordHasher = new PasswordHasher(); var unitOfWork = new UnitOfWork(context); var userRepository = new UserRepository(context, unitOfWork); var userLoginRepository = new UserLoginRepository(context, unitOfWork); var userValidator = new IValidator <User>[] { new UserValidator(userRepository, keyNormalizer, _errorDescriber) }; _userService = new UserService(userRepository, _errorDescriber, keyNormalizer, passwordHasher, userValidator); var jsonWebTokenOptions = new JsonWebTokenOptions { Issuer = "issuer", Audience = "audience", Algorithm = "HS256", Key = "super secret key", Expires = TimeSpan.Parse("00:00:01"), // 1 seconds RefreshToken = new RefreshTokenOptions { Expires = TimeSpan.Parse("00:00:10"), // 10 seconds UpdateRequired = TimeSpan.Parse("00:00:05") // 5 seconds } }; var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jsonWebTokenOptions.Key)); JwtBearerOptions jwtBearerOptions = new JwtBearerOptions { TokenValidationParameters = new TokenValidationParameters { IssuerSigningKey = securityKey, ValidIssuer = jsonWebTokenOptions.Issuer, ValidAudience = jsonWebTokenOptions.Audience, ValidateAudience = !string.IsNullOrWhiteSpace(jsonWebTokenOptions.Audience), ValidateIssuer = !string.IsNullOrWhiteSpace(jsonWebTokenOptions.Issuer), ValidateIssuerSigningKey = true, ClockSkew = TimeSpan.Zero, ValidateLifetime = true } }; var jsonWebTokenCoder = new JsonWebTokenCoder(Options.Create(jsonWebTokenOptions)); var userClaimsFactory = new UserClaimsFactory(); var refreshTokenGenerator = new RefreshTokenGenerator(); _signInService = new SignInService(_userService, jsonWebTokenCoder, userLoginRepository, _errorDescriber, userClaimsFactory, refreshTokenGenerator, null, Options.Create(jsonWebTokenOptions)); }
public Task <TUser> FindAsync(UserLoginInfo login) { if (login == null) { throw new ArgumentNullException("login"); } var identityUserLogins = UserLoginRepository.GetByWhere(new Dictionary <string, object> { { "ProviderKey", login.ProviderKey }, { "LoginProvider", login.LoginProvider } }).ToList(); return(Task.FromResult(!identityUserLogins.Any() ? null : UserRepository.Get(identityUserLogins.First().UserId))); }
public Task <IList <UserLoginInfo> > GetLoginsAsync(TUser user) { if (user == null) { throw new ArgumentNullException("user"); } var logins = UserLoginRepository.GetByWhere(new Dictionary <string, object> { { "UserId", user.Id } }) .Select(x => new UserLoginInfo(x.LoginProvider, x.ProviderKey)).ToList(); return(Task.FromResult <IList <UserLoginInfo> >(logins)); }
public string GetOpenid(UserIdentifier userIdentifier) { using (CurrentUnitOfWork.SetTenantId(userIdentifier.TenantId)) { UserLogin weixinUserLogin = UserLoginRepository.GetAll().Where(model => model.UserId == userIdentifier.UserId && model.LoginProvider == "Weixin").FirstOrDefault(); if (weixinUserLogin == null) { return(null); } return(weixinUserLogin.ProviderKey); } }
public async Task <ActionResult> LoginCallback(string guid) { //判断当前微信账号是否已经绑定用户 var userLogin = await UserLoginRepository.GetAll().IgnoreQueryFilters() .Where(o => o.LoginProvider == WeChatAuthProviderApi.Name && o.ProviderKey == WeUser.openid) .FirstOrDefaultAsync(); //if (userLogin == null) //{ // return Redirect("/MES/BindError"); // return Redirect("/WeiXin/Error?msg=" + "当前微信尚未绑定账号".UrlEncode()); //} ViewBag.Guid = guid; return(View()); }
private void InitRepositories() { // Ubication Countries = new CountryRepository(this); States = new StateRepository(this); Cities = new CityRepository(this); // Authorization Users = new UserRepository(this); UsersRoles = new UserRoleRepository(this); UsersLogins = new UserLoginRepository(this); Roles = new RoleRepository(this); RoleControls = new RoleControlRepository(this); UserClaims = new UserClaimRepository(this); RefreshTokens = new RefreshTokenRepository(this); }