public async Task <IActionResult> EditTeacher(TeacherEditDto teacherEditDto) { if (ModelState.IsValid) { /* Change Detection Update */ Teacher teacherToEdit = await _db.Teachers.FindAsync(teacherEditDto.Id); teacherToEdit.AcademicDegree = teacherEditDto.AcademicDegree; teacherToEdit.BirthDate = teacherEditDto.BirthDate; teacherToEdit.Email = teacherEditDto.Email; teacherToEdit.FirstName = teacherEditDto.FirstName; teacherToEdit.LastName = teacherEditDto.LastName; teacherToEdit.NationalCode = teacherEditDto.NationalCode; teacherToEdit.PhoneNumber = teacherEditDto.PhoneNumber; teacherToEdit.UserName = teacherEditDto.UserName; teacherToEdit.Gender = teacherEditDto.Gender; teacherToEdit.FieldOfStudy = teacherEditDto.FieldOfStudy; teacherToEdit.ConcurrencyStamp = Guid.NewGuid().ToString(); await _userManager.UpdateNormalizedEmailAsync(teacherToEdit); await _userManager.UpdateNormalizedUserNameAsync(teacherToEdit); await _db.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(teacherEditDto)); }
/// <summary> /// Updates a teacher. /// </summary> /// <param name="itemToSave">The item to save.</param> /// <param name="accountId">The account identifier.</param> /// <returns>The result.</returns> public ResultDto UpdateTeacher(TeacherEditDto itemToSave, Guid?accountId) { ResultDto result = new ResultDto(); using (BzsEntityContainer ctx = this.CreateContainer()) { TeacherEntity entity = ctx.TeacherSet.FirstOrDefault(f => f.Id == itemToSave.Id); if (entity == null) { result.Error = "ERR-TEACHER-NOT-EXISTS"; return(result); } if (entity.AccountId == null || entity.AccountId != accountId) { result.Error = "ERR-TEACHER-ACCOUNT-INVALID"; return(result); } entity.Code = itemToSave.Code.Length > 10 ? itemToSave.Code.Substring(0, 9) : itemToSave.Code; entity.Caption = itemToSave.Caption.Length > 50 ? itemToSave.Caption.Substring(0, 49) : itemToSave.Caption; entity.ModDate = DateTime.Now; entity.ModUser = Environment.UserName; ctx.SaveChanges(); result.Success = true; } return(result); }
/// <summary> /// Updates a teacher. /// </summary> /// <param name="itemToSave">The item to save.</param> /// <returns>The result.</returns> public ResultDto UpdateTeacher(TeacherEditDto itemToSave) { this.SetResponseHeaderCacheExpiration(); AccountPassword credentials = this.GetCredentialsFromRequest(); AccountServerService accountService = new AccountServerService(); Guid accountId = accountService.GetAccountId(credentials.Account); TeacherServerService service = new TeacherServerService(); return(service.UpdateTeacher(itemToSave, accountId)); }
public async Task <IActionResult> Edit(int id, [FromBody] TeacherEditDto model) { if (!ModelState.IsValid) { return(BadRequest(this.GetErrors(model))); } OperationResult result = await _service.Edit(model); if (result.HasError) { return(this.Unprocessable(result)); } return(Ok(result)); }