Skip to content

Commit a770164

Browse files
beyondnetPeruclaude
andcommitted
fix(identity): resolve tenant child-data seeding failures and branding panel enum mismatches
- Fix FindBranch/FindIdentityProvider in Tenant.cs to compare Props.Id instead of entity.Id (random GUID from Entity base constructor); this made ActivateIdentityProvider always return NotFound, leaving a lingering BrokenRule that silently aborted SetBranding - Add DomainEvents.MarkChangesAsCommitted() to InMemoryUserManagementDelegationRepository.Seed() - Replace monolithic DevDataSeeder with per-bounded-context seeders (Identity, Authorization, Approvals, Configuration, IGA, Audit) orchestrated by CoreDevDataSeeder - Fix BrandingPanel select values to match DomainEnumerationParser.FromName<> expectations: backgroundStyle SolidColor/Gradient/Image, logoFormat Png/Svg - Add brandBgImage i18n key (ES/EN) for Image background style option - Update MSW mock handlers and add mock data fixtures for tenants, user accounts, delegations Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent c7de0d5 commit a770164

18 files changed

Lines changed: 1258 additions & 246 deletions

File tree

src/apps/ums.api/Ums.Domain/Identity/Tenant/Tenant.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,7 @@ public Result Activate(ActorId updatedBy)
457457

458458
private Result<BranchEntity> FindBranch(IdValueObject branchId)
459459
{
460-
var branch = _branches.FirstOrDefault(b => b.Id.GetValue() == branchId.GetValue());
460+
var branch = _branches.FirstOrDefault(b => b.Props.Id.GetValue() == branchId.GetValue());
461461
if (branch is null)
462462
return Result<BranchEntity>.Failure(DomainErrors.Common.NotFound);
463463

@@ -466,7 +466,7 @@ private Result<BranchEntity> FindBranch(IdValueObject branchId)
466466

467467
private Result<IdentityProviderEntity> FindIdentityProvider(IdValueObject identityProviderId)
468468
{
469-
var identityProvider = _identityProviders.FirstOrDefault(ip => ip.Id.GetValue() == identityProviderId.GetValue());
469+
var identityProvider = _identityProviders.FirstOrDefault(ip => ip.Props.Id.GetValue() == identityProviderId.GetValue());
470470
if (identityProvider is null)
471471
return Result<IdentityProviderEntity>.Failure(DomainErrors.Common.NotFound);
472472

src/apps/ums.api/Ums.Infrastructure/Persistence/DevDataSeeder.cs

Lines changed: 0 additions & 195 deletions
This file was deleted.

src/apps/ums.api/Ums.Infrastructure/Persistence/InMemoryUserManagementDelegationRepository.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,12 @@ public Task AddAsync(UserManagementDelegationAggregate aggregate, CancellationTo
8989
return Task.CompletedTask;
9090
}
9191

92+
public void Seed(UserManagementDelegationAggregate aggregate)
93+
{
94+
aggregate.DomainEvents.MarkChangesAsCommitted();
95+
_store[aggregate.Props.Id.GetValue()] = aggregate;
96+
}
97+
9298
public Task UpdateAsync(UserManagementDelegationAggregate aggregate, CancellationToken cancellationToken = default)
9399
{
94100
_store[aggregate.Props.Id.GetValue()] = aggregate;

0 commit comments

Comments
 (0)