Exemplo n.º 1
0
        public async Task <IActionResult> Create(RGDPFormViewModel viewModel, [FromQuery] int sheetType)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(HttpContext.User);

                viewModel.CreatedById = user.Id;
                if (sheetType == (int)SheetTypeEnum.RGDP)
                {
                    viewModel.Indicator = (int)DFIndicatorEnum.RealGrowthRateGDPAtMarketPrices;
                    viewModel.Unit      = (int)DFUnitEnum.Percentage;
                    _rGDPRepository.AddVer(viewModel.MapToRGDPVerModel());
                    _toastNotification.AddSuccessToastMessage("Element has been Created successfully.");
                    _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Add, "Definitions > Economic Indicators > RGDP > Add", viewModel.Indicator.ToString());
                    return(RedirectToAction(nameof(Index), new { sheetType = (int)SheetTypeEnum.RGDP }));
                }
                if (sheetType == (int)SheetTypeEnum.RGDP1617)
                {
                    viewModel.Indicator = (int)DFIndicatorEnum.GDPAtMarketPricesConstantPricesFor1617;
                    viewModel.Unit      = (int)DFUnitEnum.BillionEGP;
                    _rGDP1617Repository.Add(viewModel.MapToRGDP1617Model());
                    _toastNotification.AddSuccessToastMessage("Element has been Created successfully.");
                    _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Add, "Definitions > Economic Indicators > RGDP1617 > Add", viewModel.Indicator.ToString());
                    return(RedirectToAction(nameof(Index), new { sheetType = (int)SheetTypeEnum.RGDP1617 }));
                }
            }
            CreateCommon(sheetType);
            return(View(viewModel));
        }
Exemplo n.º 2
0
        private IActionResult EditRGDP(RGDPFormViewModel viewModel, out int id, bool fromDelete = false)
        {
            var rgdpVersion = _rGDPRepository.GetByRGDPId(viewModel.RGDPId ?? 0);
            var rgdpById    = _rGDPRepository.GetVerById(viewModel.Id);

            rgdpVersion = rgdpById == null ? rgdpVersion : rgdpById;
            var rgdpVersionModel = viewModel.MapToRGDPVerModel();

            rgdpVersionModel.RGDPGrowthRateId = viewModel.RGDPId > 0 ? viewModel.RGDPId : (int?)null;
            if (!fromDelete)
            {
                rgdpVersionModel.ChangeActionEnum = ChangeActionEIEnum.Update;
                rgdpVersionModel.IsDeleted        = false;
            }
            else
            {
                rgdpVersionModel.ChangeActionEnum = ChangeActionEIEnum.Delete;
            }
            if (rgdpVersion == null || rgdpVersionModel.VersionStatusEnum == VersionStatusEIEnum.Approved || rgdpVersionModel.VersionStatusEnum == VersionStatusEIEnum.Ignored)
            {
                rgdpVersionModel.VersionStatusEnum = VersionStatusEIEnum.Draft;
                rgdpVersionModel.Id = 0;
                var user = _userManager.GetUserAsync(HttpContext.User);
                rgdpVersionModel.CreatedById = user.Result.Id;

                _rGDPRepository.AddVer(rgdpVersionModel);
                _toastNotification.AddSuccessToastMessage(ToasrMessages.EditSuccess);
                id = rgdpVersionModel.Id;
                return(RedirectToAction(nameof(Index), new { sheetType = (int)SheetTypeEnum.RGDP }));
            }

            rgdpVersionModel.Id = rgdpVersion != null ? rgdpVersion.Id : viewModel.Id;

            _rGDPRepository.UpdateVer(rgdpVersionModel);
            id = rgdpVersionModel.Id;
            _toastNotification.AddSuccessToastMessage("Element has been Edited successfully.");

            _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Update, "Definitions > Economic Indicators > RGDP > Edit", viewModel.Indicator.ToString());

            return(RedirectToAction(nameof(Index), new { sheetType = (int)SheetTypeEnum.RGDP }));
        }