forked from gongxuegit/tiku-backend.net
feat: modularize external providers
This commit is contained in:
@@ -299,21 +299,6 @@ internal sealed class CouponRedemptionConfiguration : IEntityTypeConfiguration<C
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class TenantPaymentAccountConfiguration : IEntityTypeConfiguration<TenantPaymentAccount>
|
||||
{
|
||||
public void Configure(EntityTypeBuilder<TenantPaymentAccount> builder)
|
||||
{
|
||||
builder.ConfigureTenantEntity("tenant_payment_accounts");
|
||||
builder.ConfigureTimestamps();
|
||||
builder.Property(entity => entity.Provider).HasMaxLength(50);
|
||||
builder.Property(entity => entity.Mode).HasSnakeCaseEnum();
|
||||
builder.Property(entity => entity.DisplayName).HasMaxLength(200);
|
||||
builder.Property(entity => entity.Status).HasSnakeCaseEnum();
|
||||
builder.Property(entity => entity.ConfigPublic).IsJson("{}");
|
||||
builder.HasIndex(entity => new { entity.TenantId, entity.Provider }).IsUnique();
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class TenantSubscriptionConfiguration : IEntityTypeConfiguration<TenantSubscription>
|
||||
{
|
||||
public void Configure(EntityTypeBuilder<TenantSubscription> builder)
|
||||
|
||||
@@ -6,18 +6,21 @@ using Tiku.Domain.Tenancy;
|
||||
|
||||
namespace Tiku.Infrastructure.Persistence.Configurations;
|
||||
|
||||
internal sealed class TenantAuthProviderConfiguration : IEntityTypeConfiguration<TenantAuthProvider>
|
||||
internal sealed class TenantExternalProviderConfiguration : IEntityTypeConfiguration<TenantExternalProvider>
|
||||
{
|
||||
public void Configure(EntityTypeBuilder<TenantAuthProvider> builder)
|
||||
public void Configure(EntityTypeBuilder<TenantExternalProvider> builder)
|
||||
{
|
||||
builder.ConfigureTenantEntity("tenant_auth_providers");
|
||||
builder.ConfigureTenantEntity("tenant_external_providers");
|
||||
builder.ConfigureTimestamps();
|
||||
builder.Property(entity => entity.Capability).HasSnakeCaseEnum();
|
||||
builder.Property(entity => entity.Provider).HasMaxLength(50);
|
||||
builder.Property(entity => entity.Status).HasSnakeCaseEnum();
|
||||
builder.Property(entity => entity.DisplayName).HasMaxLength(200);
|
||||
builder.Property(entity => entity.SecretRef).HasMaxLength(300);
|
||||
builder.Property(entity => entity.ConfigPublic).IsJson("{}");
|
||||
builder.HasIndex(entity => new { entity.TenantId, entity.Provider }).IsUnique();
|
||||
builder.HasIndex(entity => new { entity.TenantId, entity.Provider, entity.Status });
|
||||
builder.Property(entity => entity.Metadata).IsJson("{}");
|
||||
builder.HasIndex(entity => new { entity.TenantId, entity.Capability, entity.Provider }).IsUnique();
|
||||
builder.HasIndex(entity => new { entity.TenantId, entity.Capability, entity.Status, entity.Priority });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user