public virtual async Task CreateAsync(SettingInfo settingInfo) { using (_unitOfWorkManager.Current.SetTenantId(settingInfo.TenantId)) { using (_unitOfWorkManager.Current.DisableFilter(AbpDataFilters.MayHaveTenant)) { await _settingRepository.InsertAsync(settingInfo.ToSetting()); await _unitOfWorkManager.Current.SaveChangesAsync(); } } }
public virtual async Task UpdateAsync(SettingInfo settingInfo) { var setting = await _settingRepository.FirstOrDefaultAsync( s => s.TenantId == settingInfo.TenantId && s.UserId == settingInfo.UserId && s.Name == settingInfo.Name ); if (setting != null) { setting.Value = settingInfo.Value; } }
public virtual async Task DeleteAsync(SettingInfo settingInfo) { using (_unitOfWorkManager.Current.SetTenantId(settingInfo.TenantId)) { using (_unitOfWorkManager.Current.DisableFilter(AbpDataFilters.MayHaveTenant)) { await _settingRepository.DeleteAsync( s => s.UserId == settingInfo.UserId && s.Name == settingInfo.Name && s.TenantId == settingInfo.TenantId ); await _unitOfWorkManager.Current.SaveChangesAsync(); } } }
public virtual async Task DeleteAsync(SettingInfo settingInfo) { await _settingRepository.DeleteAsync( s => s.TenantId == settingInfo.TenantId && s.UserId == settingInfo.UserId && s.Name == settingInfo.Name ); }
#pragma warning restore 1998 #pragma warning disable 1998 /// <inheritdoc/> public async Task UpdateAsync(SettingInfo setting) { //TODO: Call should be async and use await LogHelper.Logger.Warn("ISettingStore is not implemented, using DefaultConfigSettingStore which does not support UpdateAsync."); }
/// <inheritdoc/> public async Task UpdateAsync(SettingInfo setting) { LogHelper.Logger.Warn("ISettingStore is not implemented, using DefaultConfigSettingStore which does not support UpdateAsync."); }
/// <inheritdoc/> public void Delete(SettingInfo setting) { }
/// <summary> /// 插入或更新或删除设置值-异步 /// </summary> /// <param name="name">设置名称</param> /// <param name="value"></param> /// <param name="tenantId">租户Id</param> /// <param name="userId">用户Id</param> /// <returns></returns> private async Task<SettingInfo> InsertOrUpdateOrDeleteSettingValueAsync(string name, string value, int? tenantId, long? userId) { if (tenantId.HasValue && userId.HasValue) { //租户Id和用户Id不能同时设置 throw new ApplicationException("Both of tenantId and userId can not be set!"); } var settingDefinition = _settingDefinitionManager.GetSettingDefinition(name); var settingValue = await SettingStore.GetSettingOrNullAsync(tenantId, userId, name); //Determine defaultValue //确定默认值 var defaultValue = settingDefinition.DefaultValue; if (settingDefinition.IsInherited) { //For Tenant and User, Application's value overrides Setting Definition's default value. //租户和用户,应用程序的值会重写设置定义的默认值。 if (tenantId.HasValue || userId.HasValue) { var applicationValue = await GetSettingValueForApplicationOrNullAsync(name); if (applicationValue != null) { defaultValue = applicationValue.Value; } } //For User, Tenants's value overrides Application's default value. //用户、租户的值会重写应用程序的默认值。 if (userId.HasValue && AbpSession.TenantId.HasValue) { var tenantValue = await GetSettingValueForTenantOrNullAsync(AbpSession.TenantId.Value, name); if (tenantValue != null) { defaultValue = tenantValue.Value; } } } //No need to store on database if the value is the default value //如果值是默认值,则不需要再数据库中存储 if (value == defaultValue) { if (settingValue != null) { await SettingStore.DeleteAsync(settingValue); } return null; } //If it's not default value and not stored on database, then insert it //如果不是默认值并且不存储在数据库中,然后插入它 if (settingValue == null) { settingValue = new SettingInfo { TenantId = tenantId, UserId = userId, Name = name, Value = value }; await SettingStore.CreateAsync(settingValue); return settingValue; } //It's same value in database, no need to update //在数据库中同样的值,不需要更新 if (settingValue.Value == value) { return settingValue; } //Update the setting on database. //更新数据库的设置。 settingValue.Value = value; await SettingStore.UpdateAsync(settingValue); return settingValue; }
#pragma warning restore 1998 #pragma warning disable 1998 /// <summary> /// 异步更新 /// </summary> /// <param name="setting">设置信息</param> /// <returns></returns> public async Task UpdateAsync(SettingInfo setting) { //TODO: Call should be async and use await LogHelper.Logger.Warn("ISettingStore is not implemented, using DefaultConfigSettingStore which does not support UpdateAsync."); }
public virtual async Task CreateAsync(SettingInfo settingInfo) { await _settingRepository.InsertAsync(settingInfo.ToSetting()); }
/// <inheritdoc/> public async Task UpdateAsync(SettingInfo setting) { }
/// <inheritdoc/> public async Task CreateAsync(SettingInfo setting) { }
/// <inheritdoc/> public async Task DeleteAsync(SettingInfo setting) { }
public async Task CreateAsync(SettingInfo setting) { _settings.Add(setting); }
public virtual void Create(SettingInfo settingInfo) { _settingRepository.Insert(settingInfo.ToSetting()); }
/// <inheritdoc/> public void Create(SettingInfo setting) { }
/// <inheritdoc/> public void Update(SettingInfo setting) { }
/// <inheritdoc/> public Task UpdateAsync(SettingInfo setting) { LogHelper.Logger.Warn("ISettingStore is not implemented, using DefaultConfigSettingStore which does not support UpdateAsync."); return(AbpTaskCache.CompletedTask); }
/// <inheritdoc/> public void Update(SettingInfo setting) { LogHelper.Logger.Warn("ISettingStore is not implemented, using DefaultConfigSettingStore which does not support UpdateAsync."); }
public virtual async Task UpdateAsync(SettingInfo settingInfo) { using (_unitOfWorkManager.Current.SetTenantId(settingInfo.TenantId)) { using (_unitOfWorkManager.Current.DisableFilter(AbpDataFilters.MayHaveTenant)) { var setting = await _settingRepository.FirstOrDefaultAsync( s => s.TenantId == settingInfo.TenantId && s.UserId == settingInfo.UserId && s.Name == settingInfo.Name ); if (setting != null) { setting.Value = settingInfo.Value; } await _unitOfWorkManager.Current.SaveChangesAsync(); } } }
public void Create(SettingInfo setting) { _settings.Add(setting); }
private async Task<SettingInfo> InsertOrUpdateOrDeleteSettingValueAsync(string name, string value, Guid? userId) { if (userId.HasValue) { throw new ApplicationException("Both of tenantId and userId can not be set!"); } var settingDefinition = _settingDefinitionManager.GetSettingDefinition(name); var settingValue = await SettingStore.GetSettingOrNullAsync(userId, name); //Determine defaultValue var defaultValue = settingDefinition.DefaultValue; if (settingDefinition.IsInherited) { //For Tenant and User, Application's value overrides Setting Definition's default value. if (userId.HasValue) { var applicationValue = await GetSettingValueForApplicationOrNullAsync(name); if (applicationValue != null) { defaultValue = applicationValue.Value; } } } //No need to store on database if the value is the default value if (value == defaultValue) { if (settingValue != null) { await SettingStore.DeleteAsync(settingValue); } return null; } //If it's not default value and not stored on database, then insert it if (settingValue == null) { settingValue = new SettingInfo { UserId = userId, Name = name, Value = value }; await SettingStore.CreateAsync(settingValue); return settingValue; } //It's same value in database, no need to update if (settingValue.Value == value) { return settingValue; } //Update the setting on database. settingValue.Value = value; await SettingStore.UpdateAsync(settingValue); return settingValue; }
public void Delete(SettingInfo setting) { _settings.RemoveAll(s => s.TenantId == setting.TenantId && s.UserId == setting.UserId && s.Name == setting.Name); }
public void Update(SettingInfo setting) { var s = GetSettingOrNull(setting.TenantId, setting.UserId, setting.Name); if (s != null) { s.Value = setting.Value; } }
public async Task DeleteAsync(SettingInfo setting) { _settings.RemoveAll(s => s.TenantId == setting.TenantId && s.UserId == setting.UserId && s.Name == setting.Name); }
private async Task <SettingInfo> InsertOrUpdateOrDeleteSettingValueAsync(string name, string value, int?tenantId, long?userId) { if (tenantId.HasValue && userId.HasValue) { throw new ApplicationException("Both of tenantId and userId can not be set!"); } var settingDefinition = _settingDefinitionManager.GetSettingDefinition(name); var settingValue = await SettingStore.GetSettingOrNullAsync(tenantId, userId, name); //Determine defaultValue var defaultValue = settingDefinition.DefaultValue; if (settingDefinition.IsInherited) { //For Tenant and User, Application's value overrides Setting Definition's default value. if (tenantId.HasValue || userId.HasValue) { var applicationValue = GetSettingValueForApplicationOrNull(name); if (applicationValue != null) { defaultValue = applicationValue.Value; } } //For User, Tenants's value overrides Application's default value. if (userId.HasValue && AbpSession.TenantId.HasValue) { var tenantValue = await GetSettingValueForTenantOrNull(AbpSession.TenantId.Value, name); if (tenantValue != null) { defaultValue = tenantValue.Value; } } } //No need to store on database if the value is the default value if (value == defaultValue) { if (settingValue != null) { await SettingStore.DeleteAsync(settingValue); } return(null); } //If it's not default value and not stored on database, then insert it if (settingValue == null) { settingValue = new SettingInfo { TenantId = tenantId, UserId = userId, Name = name, Value = value }; await SettingStore.CreateAsync(settingValue); return(settingValue); } //It's same value in database, no need to update if (settingValue.Value == value) { return(settingValue); } //Update the setting on database. settingValue.Value = value; await SettingStore.UpdateAsync(settingValue); return(settingValue); }
public async Task UpdateAsync(SettingInfo setting) { var s = await GetSettingOrNullAsync(setting.TenantId, setting.UserId, setting.Name); if (s != null) { s.Value = setting.Value; } }
public virtual void Delete(SettingInfo settingInfo) { _settingRepository .Delete(s => s.TenantId == settingInfo.TenantId && s.UserId == settingInfo.UserId && s.Name == settingInfo.Name); }