public bool AddNewUser(Models.Client.User user) { user.Id = Guid.NewGuid().ToString(); var userData = Mapper.Map <Models.Client.User, Models.Data.User>(user); this.Db.Users.Add(userData); return(this.Db.SaveChanges() > 0); }
public bool Create(Models.Client.User user) { if (user == null) { return(false); } user.Id = Extensions.GenerateId(); this._db.Users.Add(this._mapper.Map <Models.Data.User>(user)); return(this._db.SaveChanges() > 0); }
public bool UpdateUser(Models.Client.User newDetails, string id) { Models.Data.User oldDetails = this.Db?.Users?.FirstOrDefault(a => a.Id == id); if (oldDetails != null) { oldDetails.Name = newDetails.Name; oldDetails.Address = newDetails.Address; oldDetails.Mobile = newDetails.Mobile; return(this.Db.SaveChanges() > 0); } return(false); }
public Models.Client.User Authentication(Models.Client.Login credentials) { Models.Client.User user = Mapper.Map <Models.Data.User, Models.Client.User>(this.Db.Users?.FirstOrDefault(a => a.UserName == credentials.UserName && a.Password == credentials.Password)); if (user == null) { return(null); } var role = "User"; switch ((Models.Client.UserType)user.Role) { case Models.Client.UserType.Admin: role = "Admin"; break; case Models.Client.UserType.User: role = "User"; break; default: break; } var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes(_appSettings.Secret); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Name, user.Id.ToString()), new Claim(ClaimTypes.Role, role) }), Expires = DateTime.UtcNow.AddSeconds(30), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256) }; var token = tokenHandler.CreateToken(tokenDescriptor); user.Token = tokenHandler.WriteToken(token); return(user); }
public bool Update(Models.Client.User updateUser) { if (updateUser == null) { return(false); } Models.Data.User user = this._db.Users.FirstOrDefault(a => (!string.IsNullOrEmpty(a.Id)) && a.Id == updateUser.Id); if (user != null) { user.Name = updateUser.Name; user.Address = updateUser.Address; user.Mobile = updateUser.Mobile; return(this._db.SaveChanges() > 0); } return(false); }