Exemplo n.º 1
0
        public async Task <IActionResult> Create([Required] CreateTenantViewModel data)
        {
            if (!ModelState.IsValid)
            {
                data.CountrySelectListItems = await _organizationService.GetCountrySelectListAsync();

                return(View(data));
            }
            var reqTenant = await _organizationService.CreateOrganizationAsync(data);

            if (reqTenant.IsSuccess)
            {
                var generateResult = await _service.GenerateTablesForTenantAsync(reqTenant.Result);

                if (generateResult.IsSuccess)
                {
                    return(RedirectToAction(nameof(Index)));
                }
                ModelState.AppendResultModelErrors(generateResult.Errors);

                return(View(reqTenant.Result));
            }

            ModelState.AppendResultModelErrors(reqTenant.Errors);

            return(View(reqTenant.Result));
        }
Exemplo n.º 2
0
        public async Task <PartialViewResult> CreateModal()
        {
            var editionItems = await _editionAppService.GetEditionComboboxItems();

            var viewModel = new CreateTenantViewModel(editionItems);

            return(PartialView("_CreateModal", viewModel));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Create()
        {
            var model = new CreateTenantViewModel
            {
                CountrySelectListItems = await _organizationService.GetCountrySelectListAsync()
            };

            return(View(model));
        }
Exemplo n.º 4
0
        public async Task <PartialViewResult> CreateModal()
        {
            var editionItems = await _editionAppService.GetEditionComboboxItems();

            var defaultEditionName = _commonLookupAppService.GetDefaultEditionName();
            var defaultEditionItem = editionItems.FirstOrDefault(e => e.DisplayText == defaultEditionName);

            if (defaultEditionItem != null)
            {
                defaultEditionItem.IsSelected = true;
            }

            var viewModel = new CreateTenantViewModel(editionItems);

            return(PartialView("_CreateModal", viewModel));
        }
Exemplo n.º 5
0
        public async Task <ActionResult> CreateTenant(CreateTenantViewModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var izendaAdminAuthToken = IzendaTokenAuthorization.GetIzendaAdminToken();
                var tenantName           = model.TenantName;

                var isTenantExist = IzendaUtilities.GetTenantByName(tenantName); // check user DB first

                if (isTenantExist == null)
                {
                    // try to create a new tenant at izenda DB
                    var success = await IzendaUtilities.CreateTenant(tenantName, model.TenantID, izendaAdminAuthToken);

                    if (success)
                    {
                        // save a new tenant at user DB
                        var newTenant = new Tenant()
                        {
                            Name = model.TenantID
                        };
                        await IzendaUtilities.SaveTenantAsync(newTenant);

                        return(RedirectToAction(returnUrl));
                    }
                    else
                    {
                        // Izenda DB has the same tenant name. Display Message at CreateTenant.cshtml
                        return(FailedTenantCreateAction(_defaultTenantFailureMessage));
                    }
                }
                else
                {
                    // user DB has the same tenant name. Display Message at CreateTenant.cshtml
                    return(FailedTenantCreateAction(_defaultTenantFailureMessage));
                }
            }

            // If we got this far, something failed
            return(FailedTenantCreateAction(_unknownFailureMessage));
        }