refactor(architecture): harden module boundaries
Some checks failed
ci / release-gate (push) Has been cancelled

This commit is contained in:
2026-08-04 12:10:36 +08:00
parent b38f12e60b
commit 33375a38d7
218 changed files with 5124 additions and 3828 deletions

View File

@@ -14,13 +14,13 @@ internal sealed partial class ReconciliationAdministrationService
CancellationToken cancellationToken = default)
{
await AssertAdminAsync(actor, cancellationToken);
var batchExists = await dbContext.CommerceReconciliationBatches.AnyAsync(
var batchExists = await commercePersistence.CommerceReconciliationBatches.AnyAsync(
item => item.TenantId == actor.TenantId && item.Id == batchId,
cancellationToken);
if (!batchExists)
throw new CommerceException("Reconciliation batch was not found.", "reconciliation_batch_not_found");
var items = await dbContext.CommerceReconciliationItems.AsNoTracking()
var items = await commercePersistence.CommerceReconciliationItems.AsNoTracking()
.Where(item => item.TenantId == actor.TenantId && item.BatchId == batchId)
.OrderBy(item => item.RowNo)
.Take(500)
@@ -34,13 +34,13 @@ internal sealed partial class ReconciliationAdministrationService
CancellationToken cancellationToken = default)
{
await AssertAdminAsync(actor, cancellationToken);
var issueExists = await dbContext.CommerceReconciliationIssues.AnyAsync(
var issueExists = await commercePersistence.CommerceReconciliationIssues.AnyAsync(
item => item.TenantId == actor.TenantId && item.Id == issueId,
cancellationToken);
if (!issueExists)
throw new CommerceException("Reconciliation issue was not found.", "reconciliation_issue_not_found");
var events = await dbContext.CommerceReconciliationIssueEvents.AsNoTracking()
var events = await commercePersistence.CommerceReconciliationIssueEvents.AsNoTracking()
.Where(item => item.TenantId == actor.TenantId && item.IssueId == issueId)
.OrderBy(item => item.CreatedAt)
.ToArrayAsync(cancellationToken);
@@ -89,16 +89,16 @@ internal sealed partial class ReconciliationAdministrationService
preview.InvalidCount
})
};
dbContext.CommerceReconciliationBatches.Add(batch);
commercePersistence.CommerceReconciliationBatches.Add(batch);
var rowNo = 0;
foreach (var row in EnumerateImportRows(command.Rows))
{
rowNo++;
var item = CreateReconciliationItem(actor.TenantId, batch.Id, rowNo, NormalizeProvider(command.Provider),
row);
dbContext.CommerceReconciliationItems.Add(item);
commercePersistence.CommerceReconciliationItems.Add(item);
if (item.MatchStatus != ReconciliationMatchStatus.Matched)
dbContext.CommerceReconciliationIssues.Add(new CommerceReconciliationIssue
commercePersistence.CommerceReconciliationIssues.Add(new CommerceReconciliationIssue
{
TenantId = actor.TenantId,
BatchId = batch.Id,
@@ -129,7 +129,7 @@ internal sealed partial class ReconciliationAdministrationService
await AddAuditAsync(actor, "commerce.reconciliation.imported", "commerce_reconciliation_batches", batch.Id,
new { batch.Provider, batch.BillDate, batch.TotalCount }, cancellationToken);
await dbContext.SaveChangesAsync(cancellationToken);
await unitOfWork.SaveChangesAsync(cancellationToken);
return batch;
}
@@ -154,7 +154,7 @@ internal sealed partial class ReconciliationAdministrationService
cancellationToken);
await AddAuditAsync(actor, "commerce.reconciliation.provider_bill_requested", "background_jobs", job.Id,
new { command.Provider, command.BillDate, command.BillType }, cancellationToken);
await dbContext.SaveChangesAsync(cancellationToken);
await unitOfWork.SaveChangesAsync(cancellationToken);
return job;
}