/// <summary> /// core method for update city plan year /// </summary> /// <param name="viewModel">view model for city plan year</param> /// <returns></returns> private async Task <IActionResult> EditMethod(CityPlanYearEditViewModel viewModel) { var pageRouteVersion = _pageRouteVersionRepository.GetPageRouteVersionByPageType(PageTypeConsts.CityPlan); if (ModelState.IsValid) { var cityPlanYearVersionByCityPlanYearId = _cityPlanYearVersionRepository.GetByCityYearId(viewModel.CityPlanYearId ?? 0); var cityPlanYearVersionById = _cityPlanYearVersionRepository.GetDetail(viewModel.Id); cityPlanYearVersionByCityPlanYearId = cityPlanYearVersionById == null ? cityPlanYearVersionByCityPlanYearId : cityPlanYearVersionById; var cityPlanYearVersionModel = viewModel.MapToCityPlanYearVersion(); if (viewModel.EnFile != null) { cityPlanYearVersionModel.EnFileUrl = _fileService.UploadFileUrlNew(viewModel.EnFile); } if (viewModel.ArFile != null) { cityPlanYearVersionModel.ArFileUrl = _fileService.UploadFileUrlNew(viewModel.ArFile); } var user = await _userManager.GetUserAsync(HttpContext.User); if (cityPlanYearVersionByCityPlanYearId == null || cityPlanYearVersionModel.VersionStatusEnum == VersionStatusEnum.Approved || cityPlanYearVersionModel.VersionStatusEnum == VersionStatusEnum.Ignored) { cityPlanYearVersionModel.CreatedById = user.Id; cityPlanYearVersionModel.CreationDate = DateTime.Now; cityPlanYearVersionModel.VersionStatusEnum = VersionStatusEnum.Draft; cityPlanYearVersionModel.ChangeActionEnum = ChangeActionEnum.Update; cityPlanYearVersionModel.Id = 0; cityPlanYearVersionModel.CityPlanYearId = viewModel.CityPlanYearId > 0 ? viewModel.CityPlanYearId : (int?)null; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; _cityPlanYearVersionRepository.Add(cityPlanYearVersionModel); _pageRouteVersionRepository.Update(pageRouteVersion); _toastNotification.AddSuccessToastMessage(ToasrMessages.EditSuccess); _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Update, "Static Page > Citizen Plan > Year Plan > Edit", "Year Plan ID " + cityPlanYearVersionModel.CityPlanYearId); return(RedirectToAction(nameof(Index), new { cityPlanVerId = cityPlanYearVersionModel.CityPlanVersionId })); } cityPlanYearVersionModel.Id = cityPlanYearVersionByCityPlanYearId != null ? cityPlanYearVersionByCityPlanYearId.Id : viewModel.Id; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; _cityPlanYearVersionRepository.Update(cityPlanYearVersionModel); _pageRouteVersionRepository.Update(pageRouteVersion); _toastNotification.AddSuccessToastMessage(ToasrMessages.EditSuccess); _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Update, "Static Page > Citizen Plan > Year Plan > Edit", "Year Plan ID " + cityPlanYearVersionModel.Id); return(RedirectToAction(nameof(Index), new { cityPlanVerId = cityPlanYearVersionModel.CityPlanVersionId })); } return(View(viewModel)); }
/// <summary> /// Core method for create or edit a city plan object /// </summary> /// <param name="viewModel">city plan view model</param> /// <returns></returns> private async Task <IActionResult> EditMethod(CityPlanEditViewModel viewModel) { var pageRouteVersion = _pageRouteVersionRepository.GetPageRouteVersionByPageType(PageTypeConsts.CityPlan); if (ModelState.IsValid) { var cityPlanVersionByCityPlanId = _cityPlanVersionRepository.GetByCityId(viewModel.CityPlanId ?? 0); var cityPlanVersionById = _cityPlanVersionRepository.GetDetail(viewModel.Id); cityPlanVersionByCityPlanId = cityPlanVersionById == null ? cityPlanVersionByCityPlanId : cityPlanVersionById; var cityPlanVersionModel = viewModel.MapToCityPlanVersion(); var user = await _userManager.GetUserAsync(HttpContext.User); if (cityPlanVersionByCityPlanId == null || cityPlanVersionModel.VersionStatusEnum == VersionStatusEnum.Approved || cityPlanVersionModel.VersionStatusEnum == VersionStatusEnum.Ignored) { cityPlanVersionModel.CreatedById = user.Id; cityPlanVersionModel.CreationDate = DateTime.Now; cityPlanVersionModel.VersionStatusEnum = VersionStatusEnum.Draft; cityPlanVersionModel.ChangeActionEnum = ChangeActionEnum.Update; cityPlanVersionModel.Id = 0; cityPlanVersionModel.CityPlanId = viewModel.CityPlanId > 0 ? viewModel.CityPlanId : (int?)null; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; _cityPlanVersionRepository.Add(cityPlanVersionModel); _pageRouteVersionRepository.Update(pageRouteVersion); _toastNotification.AddSuccessToastMessage(ToasrMessages.EditSuccess); return(RedirectToAction(nameof(Index))); } cityPlanVersionModel.Id = cityPlanVersionByCityPlanId != null ? cityPlanVersionByCityPlanId.Id : viewModel.Id; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; _cityPlanVersionRepository.Update(cityPlanVersionModel); _pageRouteVersionRepository.Update(pageRouteVersion); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); }
public async Task <IActionResult> Edit(EconomicIndicatorViewModel viewModel) { var pageRouteVersion = _pageRouteVersionRepository.GetPageRouteVersionByPageType(PageTypeConsts.EcnomicIndicators); viewModel.ImageDiscriptionAr1.ValidateHtml("ImageDiscriptionAr1", ModelState); viewModel.ImageDiscriptionAr2.ValidateHtml("ImageDiscriptionAr2", ModelState); viewModel.ImageDiscriptionAr3.ValidateHtml("ImageDiscriptionAr3", ModelState); ModelState.Remove(nameof(viewModel.ImageFile)); var user = await _userManager.GetUserAsync(HttpContext.User); if (ModelState.IsValid) { var eiv = _economicIndicatorVersionsRepository.GetByEcoIndiId(viewModel.Id); var ecoIndiVersion = viewModel.MapToEcoIndiVersionModel(); if (eiv == null || viewModel.VersionStatusEnum == VersionStatusEnum.Approved || viewModel.VersionStatusEnum == VersionStatusEnum.Ignored) { ecoIndiVersion.CreatedById = user.Id; ecoIndiVersion.CreationDate = DateTime.Now; ecoIndiVersion.VersionStatusEnum = VersionStatusEnum.Draft; ecoIndiVersion.ChangeActionEnum = ChangeActionEnum.Update; ecoIndiVersion.Id = 0; ecoIndiVersion.EconomicIndicatorsId = viewModel.Id; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; if (viewModel.ImageFile != null) { if (viewModel.order == 1) { ecoIndiVersion.ImageUrl1 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } if (viewModel.order == 2) { ecoIndiVersion.ImageUrl2 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } if (viewModel.order == 3) { ecoIndiVersion.ImageUrl3 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } } _economicIndicatorVersionsRepository.Add(ecoIndiVersion); _pageRouteVersionRepository.Update(pageRouteVersion); _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Update, "Economic Indicators Static Page > Update", null); return(RedirectToAction(nameof(Index))); } if (viewModel.ImageFile != null) { if (viewModel.order == 1) { ecoIndiVersion.ImageUrl1 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } if (viewModel.order == 2) { ecoIndiVersion.ImageUrl2 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } if (viewModel.order == 3) { ecoIndiVersion.ImageUrl3 = _fileService.UploadImageUrlNew(viewModel.ImageFile); } } ecoIndiVersion.CreationDate = DateTime.Now; ecoIndiVersion.Id = eiv.Id; ecoIndiVersion.VersionStatusEnum = VersionStatusEnum.Draft; ecoIndiVersion.ChangeActionEnum = ChangeActionEnum.Update; ecoIndiVersion.ApprovalDate = eiv.ApprovalDate; ecoIndiVersion.ApprovedById = eiv.ApprovedById; ecoIndiVersion.CreatedById = eiv.CreatedById; ecoIndiVersion.CreationDate = eiv.CreationDate; ecoIndiVersion.ModificationDate = eiv.ModificationDate; ecoIndiVersion.ModifiedById = eiv.ModifiedById; ecoIndiVersion.EconomicIndicatorsId = eiv.EconomicIndicatorsId; pageRouteVersion.ContentVersionStatusEnum = VersionStatusEnum.Draft; var update = _economicIndicatorVersionsRepository.Update(ecoIndiVersion); if (update) { _toastNotification.AddSuccessToastMessage(ToasrMessages.EditSuccess); _pageRouteVersionRepository.Update(pageRouteVersion); _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Update, "Economic Indicators Static Page > Update", null); return(RedirectToAction(nameof(Index))); } else { _toastNotification.AddErrorToastMessage(ToasrMessages.warning); ViewBag.order = viewModel.order; _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Warning, "Economic Indicators Static Page > Update", null); return(View(viewModel)); } } ViewBag.order = viewModel.order; return(View(viewModel)); }