refactor(commerce): split administration services

This commit is contained in:
2026-08-04 09:29:20 +08:00
parent 4d85463a87
commit 0bd075e20d
29 changed files with 1187 additions and 952 deletions

View File

@@ -280,7 +280,7 @@ public sealed record UpdateReconciliationIssueCommand(
string? Note,
Guid? AssignedTo = null);
public interface ICommerceAdminService
public interface IPaymentConfigurationService
{
Task<IReadOnlyCollection<TenantPaymentProviderItem>> GetPaymentAccountsAsync(
CommerceAdminActor actor,
@@ -296,7 +296,10 @@ public interface ICommerceAdminService
CommerceAdminActor actor,
UpsertTenantSecretCommand command,
CancellationToken cancellationToken = default);
}
public interface ICommerceOrderAdministrationService
{
Task<AdminOrderList> GetOrdersAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
@@ -306,7 +309,10 @@ public interface ICommerceAdminService
CommerceAdminActor actor,
CommerceAdminQuery query,
CancellationToken cancellationToken = default);
}
public interface IActivationCodeAdministrationService
{
Task<CodeBatchItem> CreateCodeBatchAsync(
CommerceAdminActor actor,
CreateCodeBatchCommand command,
@@ -321,42 +327,10 @@ public interface ICommerceAdminService
CommerceAdminActor actor,
RedeemActivationCodeCommand command,
CancellationToken cancellationToken = default);
}
Task<TenantPointTaskList> GetPointTasksAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointActivityTask> UpsertPointTaskAsync(
CommerceAdminActor actor,
UpsertPointTaskCommand command,
CancellationToken cancellationToken = default);
Task<TenantPointClaimList> GetPointClaimsAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<TenantPointExchangeItemList> GetPointExchangeItemsAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointExchangeItem> UpsertPointExchangeItemAsync(
CommerceAdminActor actor,
UpsertPointExchangeItemCommand command,
CancellationToken cancellationToken = default);
Task<TenantPointExchangeOrderList> GetPointExchangeOrdersAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointExchangeOrder> UpdatePointExchangeOrderStatusAsync(
CommerceAdminActor actor,
UpdatePointExchangeOrderStatusCommand command,
CancellationToken cancellationToken = default);
public interface ICouponAdministrationService
{
Task<TenantCouponList> GetCouponsAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
@@ -376,7 +350,10 @@ public interface ICommerceAdminService
CommerceAdminActor actor,
CommerceAdminQuery query,
CancellationToken cancellationToken = default);
}
public interface IRefundAdministrationService
{
Task<TenantRefundList> GetRefundsAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
@@ -397,6 +374,14 @@ public interface ICommerceAdminService
Guid refundRequestId,
CancellationToken cancellationToken = default);
Task<CommerceRefundRequest> ProcessRefundNotificationAsync(
Guid tenantId,
RefundNotificationCommand command,
CancellationToken cancellationToken = default);
}
public interface IReconciliationAdministrationService
{
Task<TenantReconciliationBatchList> GetReconciliationBatchesAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
@@ -427,10 +412,29 @@ public interface ICommerceAdminService
Guid issueId,
CancellationToken cancellationToken = default);
Task<TenantCommerceAnomalySummary> GetAnomalySummaryAsync(
Task<ReconciliationImportPreview> PreviewReconciliationImportAsync(
CommerceAdminActor actor,
PreviewReconciliationImportCommand command,
CancellationToken cancellationToken = default);
Task<CommerceReconciliationBatch> ImportReconciliationAsync(
CommerceAdminActor actor,
ImportReconciliationCommand command,
CancellationToken cancellationToken = default);
Task<BackgroundJobItem> RequestProviderBillJobAsync(
CommerceAdminActor actor,
RequestProviderBillJobCommand command,
CancellationToken cancellationToken = default);
Task<IReadOnlyCollection<BackgroundJobItem>> GetProviderBillJobsAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
CancellationToken cancellationToken = default);
}
public interface ICommerceAdjustmentService
{
Task<TenantAdjustmentVoucherList> GetAdjustmentVouchersAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
@@ -460,28 +464,7 @@ public interface ICommerceAdminService
CommerceAdminActor actor,
CancellationToken cancellationToken = default);
Task<ReconciliationImportPreview> PreviewReconciliationImportAsync(
Task<TenantCommerceAnomalySummary> GetAnomalySummaryAsync(
CommerceAdminActor actor,
PreviewReconciliationImportCommand command,
CancellationToken cancellationToken = default);
Task<CommerceReconciliationBatch> ImportReconciliationAsync(
CommerceAdminActor actor,
ImportReconciliationCommand command,
CancellationToken cancellationToken = default);
Task<BackgroundJobItem> RequestProviderBillJobAsync(
CommerceAdminActor actor,
RequestProviderBillJobCommand command,
CancellationToken cancellationToken = default);
Task<IReadOnlyCollection<BackgroundJobItem>> GetProviderBillJobsAsync(
CommerceAdminActor actor,
CommerceAdminQuery query,
CancellationToken cancellationToken = default);
Task<CommerceRefundRequest> ProcessRefundNotificationAsync(
Guid tenantId,
RefundNotificationCommand command,
CancellationToken cancellationToken = default);
}
}

View File

@@ -0,0 +1,42 @@
using Tiku.Application.Commerce;
using Tiku.Domain.Commerce;
namespace Tiku.Application.Points;
public interface IPointAdministrationService
{
Task<TenantPointTaskList> GetPointTasksAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointActivityTask> UpsertPointTaskAsync(
CommerceAdminActor actor,
UpsertPointTaskCommand command,
CancellationToken cancellationToken = default);
Task<TenantPointClaimList> GetPointClaimsAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<TenantPointExchangeItemList> GetPointExchangeItemsAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointExchangeItem> UpsertPointExchangeItemAsync(
CommerceAdminActor actor,
UpsertPointExchangeItemCommand command,
CancellationToken cancellationToken = default);
Task<TenantPointExchangeOrderList> GetPointExchangeOrdersAsync(
CommerceAdminActor actor,
TenantPointQuery query,
CancellationToken cancellationToken = default);
Task<PointExchangeOrder> UpdatePointExchangeOrderStatusAsync(
CommerceAdminActor actor,
UpdatePointExchangeOrderStatusCommand command,
CancellationToken cancellationToken = default);
}