public async Task <IActionResult> Details(LanguageDetailViewModel formData) { try { if (ModelState.IsValid) { await _languageServices.UpdateLanguageAsync(new Language { DateTimeModified = DateTimeOffset.Now, EmployeeId = formData.EmployeeId, WrittenProficiency = formData.WrittenProficiency, SpeechProficiency = formData.SpeechProficiency, ReadProficiency = formData.ReadProficiency, UserAccount = User.Identity.Name, Id = formData.Id }); TempData["Message"] = "Changes saved successfully"; _logger.LogInformation($"Successfully updated employee language {formData.SpeechProficiency + ' ' + formData.WrittenProficiency} record by user={@User.Identity.Name.Substring(4)}"); return(RedirectToAction("details", new { id = formData.Id })); } } catch (ApplicationException error) { _logger.LogError( error, $"FAIL: failed to update employee language details {formData.EmployeeId}. Internal Application Error.; user={@User.Identity.Name.Substring(4)}"); ModelState.AddModelError("Language", $"Failed to update employee language record {formData.SpeechProficiency + ' ' + formData.WrittenProficiency}. Contact IT ServiceDesk for support thank you."); } await LoadSelectListsAsync(); return(View(formData)); }
public LanguageDetailViewModelTests() { eventAggregatorMock = new Mock <IEventAggregator>(); metroDialogServiceMock = new Mock <IMetroDialogService>(); languagesRepoMock = new Mock <IRepository <Language> >(); languageLookupServiceMock = new Mock <ILanguageLookupDataService>(); viewModel = new LanguageDetailViewModel(eventAggregatorMock.Object, metroDialogServiceMock.Object, languagesRepoMock.Object, languageLookupServiceMock.Object); }
public async Task <LanguageDetailViewModel> GetInfo(string id, bool isReadOnly = false) { var language = await _languageRepository.GetAsync(isReadOnly, x => x.Id == id); var result = new LanguageDetailViewModel() { Id = language.Id, Name = language.Name, Description = language.Description, IsActive = language.IsActive }; return(result); }
public LanguageDetailViewModelTests() { var eventAggregatorMock = new Mock <IEventAggregator>(); var loggerMock = new Mock <ILogger>(); var languageLookupServiceMock = new Mock <ILanguageLookupDataService>(); var languageRepoMock = new Mock <IRepository <Language> >(); var domainService = new LanguageService(languageRepoMock.Object); var dialogService = new DialogService(); viewModel = new LanguageDetailViewModel(eventAggregatorMock.Object, loggerMock.Object, domainService, languageLookupServiceMock.Object, dialogService); }
public IActionResult Index(int page = 0, string langCode = "") { LanguageDetailViewModel viewModel = new LanguageDetailViewModel(); LanguageDetailFilterInput filterInput = GetFilterInSession <LanguageDetailFilterInput>(ConstantConfig.SessionName.LanguageDetailSession); filterInput.PageNumber = page; filterInput.LangCode = langCode; viewModel.PagingResult = languageDetailService.GetAllByPaging(filterInput); viewModel.LangCode = langCode; viewModel.FilterInput = filterInput; ViewData["langCode"] = langCode; SetFilterToSession(ConstantConfig.SessionName.LanguageDetailSession, filterInput); InitAdminBaseViewModel(viewModel); return(View(viewModel)); }
public async Task <IActionResult> Details(Guid id) { _logger.LogInformation($"Initializing the Edit Employee Language Action, user={@User.Identity.Name.Substring(4)}"); var languageQuery = await _languageServices.GetLanguageById(id); if (languageQuery == null) { return(NotFound()); } var model = new LanguageDetailViewModel { Id = languageQuery.Id, WrittenProficiency = languageQuery.WrittenProficiency, SpeechProficiency = languageQuery.SpeechProficiency, ReadProficiency = languageQuery.ReadProficiency, EmployeeId = languageQuery.EmployeeId ?? Guid.Empty }; await LoadSelectListsAsync(); return(View(model)); }