public IActionResult CreateSystem(CreateSystemViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(nameof(ListSystem), model));
            }
            var result = _monitor.CreateSystem(model, GetCurrentUserAsync().Result.UserName).Result;

            if (result.Succeeded)
            {
                _toastNotification.AddSuccessToastMessage(result.OkMessage, new ToastrOptions()
                {
                    PositionClass = ToastPositions.TopCenter
                });
                return(RedirectToAction("ListSystem"));
            }

            _toastNotification.AddErrorToastMessage(result.Errors, new ToastrOptions()
            {
                PositionClass = ToastPositions.TopCenter
            });
            ViewBag.VendorList = from v in  _monitor.VendorSelectList(-1)
                                 select new { VendorId = v.Id, VendorName = v.Name };
            ViewBag.EnvironmentList = _monitor.EnvironmentSelectList(-1);
            return(View(nameof(CreateSystem), model));
        }
コード例 #2
0
        public async Task <SystemSucceededTask> CreateSystem(CreateSystemViewModel model, string userName)
        {
            if (_configurationTypeRepository.GetById(model.ConfigTypeId) == null)
            {
                _logger.ErrorLog("Could not create system " + model.Name, "Create Database System", string.Empty,
                                 userName);
                return(SystemSucceededTask.Failed("Could not create system " + model.Name + "" +
                                                  ", Please select a configuration", string.Empty, false, true));
            }

            if (_vendorRepository.GetById(model.VendorId) == null)
            {
                _logger.ErrorLog("Could not create system " + model.Name, "Create Database System", string.Empty,
                                 userName);
                return(SystemSucceededTask.Failed("Could not create system {model.Name}, Please select a vendor",
                                                  string.Empty, false, true));
            }

            if (_dataBaseEnvironment.GetById(model.EnvironmentId) == null)
            {
                _logger.ErrorLog("Could not create system " + model.Name, "Create Database System", string.Empty,
                                 userName);
                return(SystemSucceededTask.Failed("Could not create system {model.Name}, Please select an rnvironment",
                                                  string.Empty, false, true));
            }
            try
            {
                var dbSysten = new DatabaseSystem()
                {
                    Name                = model.Name,
                    Description         = model.Description,
                    Active              = model.Active,
                    ConfigurationType   = _configurationTypeRepository.GetById(model.ConfigTypeId),
                    Vendor              = _vendorRepository.GetById(model.VendorId),
                    DatabaseEnvironment = _dataBaseEnvironment.GetById(model.EnvironmentId)
                };

                _systemRepository.Add(dbSysten);
                await _systemRepository.SaveChangesAsync();

                _logger.InformationLog("Create Database System " + model.Name + " successfully", "Create Database System",
                                       string.Empty, userName);
                return(SystemSucceededTask.Success("Database System " + model.Name + " created succesfully"));
            }
            catch (Exception ex)
            {
                if (ex.InnerException.Source.Contains("sql"))
                {
                    _logger.ErrorLog(ex.Message, "Create Database System", ex.InnerException.Message, userName);
                    return(SystemSucceededTask.Failed("Could not create system " + model.Name,
                                                      ex.InnerException.Message, false, true));
                }

                _logger.ErrorLog(ex.Message, "Create Database System", ex.InnerException.Message, userName);
                return(SystemSucceededTask.Failed("Could not create system " + model.Name, ex.InnerException.Message,
                                                  false, true));
            }
        }
        public IActionResult CreateSystem()
        {
            ViewBag.VendorList = from v in  _monitor.VendorSelectList(-1)
                                 select new { VendorId = v.Id, VendorName = v.Name };
            ViewBag.EnvironmentList = _monitor.EnvironmentSelectList(-1);
            var system = new CreateSystemViewModel {
                Active = true
            };

            return(View(system));
        }