public async Task <bool> UpdateUserAndProject(UserAndPojectDetailModel userAndPojectDetailModel) { var user = _userManager.FindByIdAsync(userAndPojectDetailModel.Id).Result; user.PhoneNumber = userAndPojectDetailModel.PhoneNumber; user.FirstName = userAndPojectDetailModel.FirstName.Trim(); user.LastName = userAndPojectDetailModel.LastName.Trim(); _appDbContext.Update(user); _appDbContext.SaveChanges(); var userProjects = _appDbContext.UserAndProjects.Where(u => u.UserId == userAndPojectDetailModel.Id).ToList(); _appDbContext.UserAndProjects.RemoveRange(userProjects); List <UserAndProjects> userAndProjects = new List <UserAndProjects>(); foreach (var item in userAndPojectDetailModel.Projects) { if (item.IsSelected) { userAndProjects.Add(new UserAndProjects() { UserId = userAndPojectDetailModel.Id, ProjectId = item.Id }); } } _appDbContext.UserAndProjects.AddRange(userAndProjects); return(_appDbContext.SaveChanges() > 0); }
public async Task <IActionResult> UpdateUserAndProject([FromBody] UserAndPojectDetailModel userAndPojectDetailModel) { bool isSuccess = await _userRepository.UpdateUserAndProject(userAndPojectDetailModel); if (isSuccess) { return(Ok(new Response <dynamic> { Code = HttpStatusCode.OK, Data = isSuccess, Message = ResponseMessageModel.UserAccount.UserUpdatedSuccessFully })); } return(BadRequest(new ErrorResponse(ResponseMessageModel.UserAccount.UserNotFound))); }
public async Task <UserAndPojectDetailModel> GetUserAddProjectDetail(string userId) { var user = _userManager.Users.Where(x => x.Id == userId).FirstOrDefault(); var projects = _appDbContext.UserAndProjects.Where(u => u.UserId == user.Id).ToList(); var allprojects = _appDbContext.Projects.OrderBy(p => p.Name).ToList(); if (user == null) { return(null); } else { var userAndProjects = new UserAndPojectDetailModel() { UserName = user.UserName, Email = user.Email, Id = user.Id, PhoneNumber = user.PhoneNumber, FirstName = user.FirstName, LastName = user.LastName, ProfilePhoto = user.ProfilePhoto, }; List <ProjectModel> listProjectModel = new List <ProjectModel>(); foreach (var item in allprojects) { ProjectModel project = new ProjectModel { Id = item.Id, Name = item.Name, IsSelected = (projects.Where(p => p.ProjectId == item.Id).ToList().Count > 0) ? true : false, }; listProjectModel.Add(project); } userAndProjects.Projects.AddRange(listProjectModel); return(userAndProjects); } }
public async Task <bool> UpdateUserAndProject(UserAndPojectDetailModel userAndPojectDetailModel) { return(await _userData.UpdateUserAndProject(userAndPojectDetailModel)); }