public async Task FillEditViewMoel(EditTeacherViewModel viewModel, string path) { viewModel.StatesForBirthPlace = viewModel.BirthPlaceState == null ? new List<SelectListItem>() : _stateService.GetAsSelectListItemAsync(viewModel.BirthPlaceState, path); viewModel.StatesForTrainingCeneter = viewModel.TrainingCenterState == null ? new List<SelectListItem>() : _stateService.GetAsSelectListItemAsync(viewModel.TrainingCenterState, path); viewModel.CitiesForBirthPlace = viewModel.BirthPlaceState == null ? new List<SelectListItem>() : viewModel.BirthPlaceCity == null ? new List<SelectListItem>() : _cityService.GetAsSelectListByStateNameAsync(viewModel.BirthPlaceState, viewModel.BirthPlaceCity, path); viewModel.CitiesForTrainingCeneter = viewModel.TrainingCenterState == null ? new List<SelectListItem>() : viewModel.TrainingCenterCity == null ? new List<SelectListItem>() : _cityService.GetAsSelectListByStateNameAsync(viewModel.TrainingCenterState, viewModel.TrainingCenterCity, path); viewModel.TrainingCenters = viewModel.TrainingCenterCity == null ? new List<SelectListItem>() : viewModel.TrainingCenterId == null ? new List<SelectListItem>() : await _trainingCenterService.GetAsSelectListItemAsync(viewModel.TrainingCenterCity, viewModel.TrainingCenterId); viewModel.TrainingCourses = viewModel.TrainingCenterId == null ? new List<SelectListItem>() : viewModel.TrainingCourseId == null ? new List<SelectListItem>() : await _trainingCourseService.GetAsSelectListByTrainingCenterIdAsync(viewModel.TrainingCenterId.Value, viewModel.TrainingCourseId); viewModel.Positions = await _titleService.GetAsSelectListItemAsync(TitleType.TeacherPosition, viewModel.PositionId); }
public virtual async Task<ActionResult> Edit(EditTeacherViewModel viewModel) { if (!viewModel.NationalCode.IsValidNationalCode()) this.AddErrors("NationalCode", "لطفا کد ملی را به شکل صحیح وارد کنید"); if (await _TeacherService.IsTeacherNationalCodeExist(viewModel.NationalCode, viewModel.Id)) this.AddErrors("NationalCode", "یک استاد بااین کد ملی قبلا در سیستم ثبت شده است"); if (!ModelState.IsValid) { await _TeacherService.FillEditViewMoel(viewModel, IranCitiesPath); return View(viewModel); } if (!await _TeacherService.IsInDb(viewModel.Id)) this.AddErrors("FirstName", "استاد مورد نظر توسط یکی از کاربران در شبکه، حذف شده است"); if (!ModelState.IsValid) { await _TeacherService.FillEditViewMoel(viewModel, IranCitiesPath); return View(MVC.Teacher.Views.Edit, viewModel); } await _TeacherService.EditAsync(viewModel); var message = await _unitOfWork.ConcurrencySaveChangesAsync(); if (message.HasValue()) { this.AddErrors("FirstName", string.Format(message, "استاد")); } if (ModelState.IsValid) return _userManager.IsOperator() ? RedirectToAction(MVC.Teacher.Details(viewModel.Id)) : RedirectToAction(MVC.Teacher.List()); await _TeacherService.FillEditViewMoel(viewModel, IranCitiesPath); return View(MVC.Teacher.Views.Edit, viewModel); }
public async Task EditAsync(EditTeacherViewModel viewModel) { var Teacher = await _Teachers.FirstAsync(a => a.Id == viewModel.Id); _mappingEngine.Map(viewModel, Teacher); if (viewModel.PhotoScan.HasValue()) Teacher.Photo = Convert.FromBase64String(viewModel.PhotoScan).ResizeImageFile(150, 150); else if (viewModel.PhotoFile.HasFile()) { Teacher.Photo = viewModel.PhotoFile.InputStream.ResizeImageFile(150, 150); } if (viewModel.CopyOfBirthCertificateScan.HasValue()) Teacher.CopyOfBirthCertificate = Convert.FromBase64String(viewModel.CopyOfBirthCertificateScan).ResizeImageFile(A5Width, A5Height); else if (viewModel.CopyOfBirthCertificateFile.HasFile()) { Teacher.CopyOfBirthCertificate = viewModel.CopyOfBirthCertificateFile.InputStream.ResizeImageFile(A5Width, A5Height); } if (viewModel.CopyOfNationalCardScan.HasValue()) Teacher.CopyOfNationalCard = Convert.FromBase64String(viewModel.CopyOfNationalCardScan).ResizeImageFile(A6Width, A6Height); else if (viewModel.CopyOfNationalCardFile.HasFile()) { Teacher.CopyOfNationalCard = viewModel.CopyOfNationalCardFile.InputStream.ResizeImageFile(A6Width, A6Height); } Teacher.LasModifierId = _userManager.GetCurrentUserId(); }