public async Task <IActionResult> EditInfoTeacher(EditInfoTeacherViewModel model) { if (ModelState.IsValid) { var result = await _teacherService.UpdateTeacherInfo(model.Input); if (result.IsSuccessed) { return(Redirect(model.ReturnUrl)); } var resultGetTeacher = await _teacherService.GetTeacherById(new EntityDto <long>(model.Input.TeacherId)); if (resultGetTeacher.IsSuccessed) { var teacher = resultGetTeacher.Value; var resultGetAcadSubjs = await _academicSubjectService.GetAcademicSubjects(new GetAcademicSubjectsInput()); if (resultGetAcadSubjs.IsSuccessed) { ViewBag.AcademicSubjects = new SelectList(resultGetAcadSubjs.Value.Items, "Id", "Name"); } var resultGetStudyGroups = await _studyGroupService.GetStudyGroups(new GetStudyGroupsInput()); if (resultGetStudyGroups.IsSuccessed) { var studyGroups = resultGetStudyGroups.Value; foreach (var studyGroup in studyGroups.Items) { var comboboxItem = new ComboboxItemDto(studyGroup.Id.ToString(), studyGroup.Name); var findedStudyGroup = teacher.StudyGroups.FirstOrDefault(studyGroup => studyGroup.Id == studyGroup.Id); if (findedStudyGroup != null) { comboboxItem.IsSelected = true; } model.Input.StudyGroupComboboxes.Add(comboboxItem); } } } AddResultErros(result); AddResultErros(resultGetTeacher); } return(View(model)); }
public async Task <IActionResult> EditInfoTeacher(long id) { var returnUrl = NormalizeReturnUrl(null, () => Url.Action("Index", "Teachers", new { Area = "Admin" })); var result = await _teacherService.GetTeacherById(new EntityDto <long>(id)); if (result.IsSuccessed) { var teacher = result.Value; var model = new EditInfoTeacherViewModel(); model.Input.TeacherId = teacher.Id; model.Input.AcademicSubjectId = teacher.AcademicSubject?.Id; model.FullName = teacher.FullName; model.ReturnUrl = returnUrl; var resultGetAcadSubjs = await _academicSubjectService.GetAcademicSubjects(new GetAcademicSubjectsInput()); if (resultGetAcadSubjs.IsSuccessed) { ViewBag.AcademicSubjects = new SelectList(resultGetAcadSubjs.Value.Items, "Id", "Name"); } var resultGetStudyGroups = await _studyGroupService.GetStudyGroups(new GetStudyGroupsInput()); if (resultGetStudyGroups.IsSuccessed) { var studyGroups = resultGetStudyGroups.Value; foreach (var studyGroup in studyGroups.Items) { var comboboxItem = new ComboboxItemDto(studyGroup.Id.ToString(), studyGroup.Name); var findedStudyGroup = teacher.StudyGroups.FirstOrDefault(studyGroup => studyGroup.Id == studyGroup.Id); if (findedStudyGroup != null) { comboboxItem.IsSelected = true; } model.Input.StudyGroupComboboxes.Add(comboboxItem); } } return(View(model)); } return(Redirect(returnUrl)); }
public JsonResult Edit(EditInfoTeacherViewModel teacherViewModel) { if (ModelState.IsValid) { using (var tran = _dbContext.Database.BeginTransaction()) { try { Teacher teacherChangeInfomation = _dbContext.Teachers.Include("ApplicationUser").SingleOrDefault(a => a.Id == teacherViewModel.Id); //Thong tin ca nhan teacherChangeInfomation.Id = teacherViewModel.Id; teacherChangeInfomation.name_Teacher = teacherViewModel.name_Teacher; teacherChangeInfomation.first_name = teacherViewModel.first_name; teacherChangeInfomation.sex = teacherViewModel.sex; teacherChangeInfomation.people = teacherViewModel.people; teacherChangeInfomation.address = teacherViewModel.address; teacherChangeInfomation.prefecture = teacherViewModel.prefecture; teacherChangeInfomation.city = teacherViewModel.city; teacherChangeInfomation.phuongxa = teacherViewModel.phuongxa; teacherChangeInfomation.birth_day = teacherViewModel.birth_day; teacherChangeInfomation.birth_place = teacherViewModel.birth_place; teacherChangeInfomation.matrimony = teacherViewModel.matrimony; teacherChangeInfomation.name_birth_place = teacherViewModel.name_birth_place; //thông tin liên lạc teacherChangeInfomation.phone_number = teacherViewModel.phone_number; teacherChangeInfomation.email = teacherViewModel.email; teacherChangeInfomation.identity_card_number = teacherViewModel.identity_card_number; //thông tin khác teacherChangeInfomation.status_heal = teacherViewModel.status_heal; teacherChangeInfomation.disabilities = teacherViewModel.disabilities; teacherChangeInfomation.numberBank = teacherViewModel.numberBank; teacherChangeInfomation.nameBank = teacherViewModel.nameBank; teacherChangeInfomation.start_date_social_insurance = teacherViewModel.start_date_social_insurance; teacherChangeInfomation.number_social_insurance = teacherViewModel.number_social_insurance; teacherChangeInfomation.gifted = teacherViewModel.gifted; teacherChangeInfomation.status_deleted = false; teacherChangeInfomation.Subject = _dbContext.Subjects.SingleOrDefault(a => a.Id == teacherViewModel.subject); teacherChangeInfomation.SubjectId = teacherViewModel.subject; //Get Id teacher _dbContext.SaveChanges(); // add completed tran.Commit(); if (!string.IsNullOrEmpty(teacherViewModel.passWord)) { UserManager.ChangePassword(teacherChangeInfomation.ApplicationUser.Id, teacherChangeInfomation.ApplicationUser.PasswordHash, teacherViewModel.passWord); } return(Json(new { result = new { resultCode = "10", message = "Sửa thông tin tài khoản và thông tin giáo viên thành công" } }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { tran.Rollback(); return(Json(new { result = new { resultCode = "02", message = "Sửa thông tin tài khoản và thông tin giáo viên không thành công" } }, JsonRequestBehavior.AllowGet)); } } } var errors = from modelstate in ModelState.AsQueryable().Where(f => f.Value.Errors.Count > 0) select new { Title = modelstate.Key }; return(Json(new { result = new { resultCode = "02", errors, message = ModelState.Values.SelectMany(x => x.Errors) .Select(x => x.ErrorMessage) } }, JsonRequestBehavior.AllowGet)); }