/// <summary> /// Logins the asynchronous. /// </summary> /// <param name="email">The email.</param> /// <param name="password">The password.</param> /// <returns></returns> public async Task <UserDto> LoginAsync(string email, string password) { UserDto result = null; try { using (OrderAppEntities context = new OrderAppEntities()) { string passHash = AppCipher.EncryptCipher(password); result = await(from item in context.Users where item.Email == email && item.PasswordHash == passHash select new UserDto() { ID = item.Id, Email = item.Email, Firstname = item.Firstname, Lastname = item.Lastname, Phone = item.Phone, RegistedDate = item.RegistedDate, RoleId = item.RoleId, Role = new RoleDto() { ID = item.Role.Id, Name = item.Role.Name, Description = item.Role.Description }, }).SingleAsync(); } } catch (Exception ex) { _logService.Error(ex.Message, ex); result = null; } return(result); }
/// <summary> /// Adds the range asynchronous. /// </summary> /// <param name="entities">The entities.</param> /// <returns></returns> public async Task <SaveResult> AddRangeAsync(IEnumerable <UserResult> entities) { return(await ExecuteDbWithHandleAsync(_logService, async() => { using (var context = new TechOfficeEntities()) { User add; foreach (var entity in entities) { add = context.Users.Create(); add.UserName = entity.UserName; add.Password = AppCipher.EncryptCipher(entity.Password); add.IsLocked = entity.IsLocked; add.HoVaTen = entity.HoVaTen; add.ChucVuId = entity.ChucVuId; add.CoQuanId = entity.CoQuanId; add.IsDeleted = entity.IsDeleted; add.CreatedBy = entity.CreatedBy; add.CreateDate = DateTime.Now; context.Entry(add).State = EntityState.Added; } return await context.SaveChangesAsync() > 0 ? SaveResult.SUCCESS : SaveResult.FAILURE; } })); }
/// <summary> /// Adds the asynchronous. /// </summary> /// <param name="entity">The entity.</param> /// <returns></returns> public async Task <SaveResult> AddAsync(UserDto entity) { SaveResult result = SaveResult.FAILURE; try { using (OrderAppEntities context = new OrderAppEntities()) { User add = context.Users.Create(); add.Email = entity.Email; add.PasswordHash = AppCipher.EncryptCipher(entity.PasswordHash); add.RoleId = entity.RoleId; add.RegistedDate = entity.RegistedDate; add.Phone = entity.Phone; add.IsLocked = entity.IsLocked; add.Firstname = entity.Firstname; add.Lastname = entity.Lastname; add.LastLoginDate = entity.LastLoginDate; add.IsDeleted = entity.IsDeleted; add.LastUpdatedBy = entity.LastUpdatedBy; add.LastUpdate = DateTime.Now; context.Entry <User>(add).State = System.Data.Entity.EntityState.Added; result = await context.SaveChangesAsync() > 0 ? SaveResult.SUCCESS : SaveResult.FAILURE; } } catch (Exception ex) { _logService.Error(ex.Message, ex); result = SaveResult.FAILURE; } return(result); }
/// <summary> /// Resets the password asynchronous. /// </summary> /// <param name="id">The identifier.</param> /// <param name="newPassword">The new password.</param> /// <returns></returns> public async Task <SaveResult> ResetPasswordAsync(int id, string newPassword) { return(await ExecuteDbWithHandleAsync(_logService, async() => { using (var context = new TechOfficeEntities()) { var update = context.Users.Single(x => x.Id == id && x.IsDeleted == false); update.Password = AppCipher.EncryptCipher(newPassword); context.Entry(update).State = EntityState.Modified; return await context.SaveChangesAsync() > 0 ? SaveResult.SUCCESS : SaveResult.FAILURE; } })); }
public SaveResult AddUserWithRoles(UserResult entity) { return(ExecuteDbWithHandle(_logService, () => { var result = SaveResult.FAILURE; using (var context = new TechOfficeEntities()) { using (var transaction = context.BeginTransaction()) { var add = context.Users.Create(); add.UserName = entity.UserName; add.Password = AppCipher.EncryptCipher(entity.Password); add.IsLocked = entity.IsLocked; add.HoVaTen = entity.HoVaTen; add.ChucVuId = entity.ChucVuId; add.CoQuanId = entity.CoQuanId; add.IsDeleted = entity.IsDeleted; add.CreatedBy = entity.CreatedBy; add.CreateDate = DateTime.Now; context.Entry(add).State = EntityState.Added; UserRole role; foreach (var item in entity.UserRoles) { role = context.UserRoles.Create(); role.RoleId = item.RoleInfo.Id; role.UserId = add.Id; role.IsDeleted = entity.IsDeleted; role.CreatedBy = add.CreatedBy; role.CreateDate = add.CreateDate; context.Entry(role).State = EntityState.Added; } result = context.SaveChanges() > 0 ? SaveResult.SUCCESS : SaveResult.FAILURE; transaction.Commit(); } } return result; })); }
/// <summary> /// Logins the specified userName. /// </summary> /// <param name="userName">The userName.</param> /// <param name="password">The password.</param> /// <returns></returns> public UserResult Login(string userName, string password) { return(ExecuteDbWithHandle(_logService, () => { using (var context = new TechOfficeEntities()) { var passHash = AppCipher.EncryptCipher(password); return (from item in context.Users where item.UserName == userName && item.Password == passHash select item) .MakeQueryToDatabase() .Select(x => x.ToDataResult()) .SingleOrDefault(); } })); }
/// <summary> /// Logins the asynchronous. /// </summary> /// <param name="userName">The userName.</param> /// <param name="password">The password.</param> /// <returns></returns> public async Task <UserResult> LoginAsync(string userName, string password) { return(await ExecuteDbWithHandleAsync(_logService, async() => { using (var context = new TechOfficeEntities()) { var passHash = AppCipher.EncryptCipher(password); return await(from item in context.Users where item.UserName == userName && item.Password == passHash select item) .MakeQueryToDatabase() .Select(x => x.ToDataResult()) .AsQueryable() .SingleAsync(); } })); }
/// <summary> /// Adds the specified entity. /// </summary> /// <param name="entity">The entity.</param> /// <returns></returns> public SaveResult Add(UserResult entity) { return(ExecuteDbWithHandle(_logService, () => { using (var context = new TechOfficeEntities()) { var add = context.Users.Create(); add.UserName = entity.UserName; add.Password = AppCipher.EncryptCipher(entity.Password); add.IsLocked = entity.IsLocked; add.HoVaTen = entity.HoVaTen; add.ChucVuId = entity.ChucVuId; add.CoQuanId = entity.CoQuanId; add.IsDeleted = entity.IsDeleted; add.CreatedBy = entity.CreatedBy; add.CreateDate = DateTime.Now; context.Entry(add).State = EntityState.Added; return context.SaveChanges() > 0 ? SaveResult.SUCCESS : SaveResult.FAILURE; } })); }