示例#1
0
        public async Task OnGetAsync()
        {
            Input = new TenantInfoModel();

            if (CurrentTenant.IsAvailable)
            {
                var tenant = await TenantStore.FindAsync(CurrentTenant.GetId());

                Input.Name = tenant?.Name;
            }
        }
示例#2
0
        public virtual async Task SetCurrentTenantAsync(UpdateSettingsDto input)
        {
            if (CurrentTenant.IsAvailable)
            {
                foreach (var setting in input.Settings)
                {
                    await SettingManager.SetForTenantAsync(CurrentTenant.GetId(), setting.Name, setting.Value);
                }

                await CurrentUnitOfWork.SaveChangesAsync();
            }
        }
示例#3
0
        public async Task <IViewComponentResult> InvokeAsync()
        {
            var model = new TenantSwitchViewModel
            {
                CurrentUser = CurrentUser
            };

            if (CurrentTenant.Id.HasValue)
            {
                model.Tenant = await TenantStore.FindAsync(CurrentTenant.GetId());
            }

            return(View("~/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Components/TenantSwitch/Default.cshtml", model));
        }
示例#4
0
        public virtual async Task SetCurrentTenantAsync(UpdateSettingsDto input)
        {
            if (CurrentTenant.IsAvailable)
            {
                foreach (var setting in input.Settings)
                {
                    await SettingManager.SetForTenantAsync(CurrentTenant.GetId(), setting.Name, setting.Value);

                    // 同步变更缓存配置
                    await SetCacheItemAsync(setting.Name, setting.Value, TenantSettingValueProvider.ProviderName, CurrentTenant.GetId().ToString());
                }

                await CurrentUnitOfWork.SaveChangesAsync();
            }
        }
示例#5
0
        public virtual async Task SetCurrentTenantAsync(UpdateSettingsDto input)
        {
            if (CurrentTenant.IsAvailable)
            {
                foreach (var setting in input.Settings)
                {
                    await SettingManager.SetForTenantAsync(CurrentTenant.GetId(), setting.Name, setting.Value);
                }

                CurrentUnitOfWork.OnCompleted(async() =>
                {
                    // 发送刷新用户缓存事件
                    await EventBus.PublishAsync(new CurrentApplicationConfigurationCacheResetEventData());
                });

                await CurrentUnitOfWork.SaveChangesAsync();
            }
        }
示例#6
0
        public virtual async Task <ListResultDto <SettingDto> > GetAllForCurrentTenantAsync()
        {
            if (CurrentTenant.IsAvailable)
            {
                // return GetAllSetting(await SettingManager.GetAllForTenantAsync(CurrentTenant.GetId(), false));

                return(await GetAllSettingAsync(TenantSettingValueProvider.ProviderName, CurrentTenant.GetId().ToString()));
            }
            return(new ListResultDto <SettingDto>());
        }
示例#7
0
 public virtual async Task <ListResultDto <SettingGroupDto> > GetAllForCurrentTenantAsync()
 {
     return(await GetAllForProviderAsync(TenantSettingValueProvider.ProviderName, CurrentTenant.GetId().ToString()));
 }
示例#8
0
    public virtual async Task <EmailSettingsDto> GetAsync()
    {
        await CheckFeatureAsync();

        var settingsDto = new EmailSettingsDto
        {
            SmtpHost                  = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Host),
            SmtpPort                  = Convert.ToInt32(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Port)),
            SmtpUserName              = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.UserName),
            SmtpPassword              = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Password),
            SmtpDomain                = await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.Domain),
            SmtpEnableSsl             = Convert.ToBoolean(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.EnableSsl)),
            SmtpUseDefaultCredentials = Convert.ToBoolean(await SettingProvider.GetOrNullAsync(EmailSettingNames.Smtp.UseDefaultCredentials)),
            DefaultFromAddress        = await SettingProvider.GetOrNullAsync(EmailSettingNames.DefaultFromAddress),
            DefaultFromDisplayName    = await SettingProvider.GetOrNullAsync(EmailSettingNames.DefaultFromDisplayName),
        };

        if (CurrentTenant.IsAvailable)
        {
            settingsDto.SmtpHost = await SettingManager.GetOrNullForTenantAsync(EmailSettingNames.Smtp.Host, CurrentTenant.GetId(), false);

            settingsDto.SmtpUserName = await SettingManager.GetOrNullForTenantAsync(EmailSettingNames.Smtp.UserName, CurrentTenant.GetId(), false);

            settingsDto.SmtpPassword = await SettingManager.GetOrNullForTenantAsync(EmailSettingNames.Smtp.Password, CurrentTenant.GetId(), false);

            settingsDto.SmtpDomain = await SettingManager.GetOrNullForTenantAsync(EmailSettingNames.Smtp.Domain, CurrentTenant.GetId(), false);
        }

        return(settingsDto);
    }