29 lines
925 B
C#
29 lines
925 B
C#
using Tiku.Api.Contracts;
|
|
using Tiku.Application.Commerce;
|
|
using Tiku.Application.Security;
|
|
|
|
namespace Tiku.Api.Controllers;
|
|
|
|
public sealed class CommerceAdminActorResolver(
|
|
ICurrentUser currentUser,
|
|
ITenantContext currentTenant)
|
|
{
|
|
internal CommerceAdminActor Resolve()
|
|
{
|
|
if (currentTenant.TenantId is null || currentUser.UserId is null)
|
|
throw new CommerceException("Tenant commerce actor was not resolved.", "tenant_admin_access_denied");
|
|
|
|
return new CommerceAdminActor(currentTenant.TenantId.Value, currentUser.UserId.Value);
|
|
}
|
|
|
|
internal CommerceAdminQuery ToQuery(TenantCommerceQueryDto query)
|
|
{
|
|
return new CommerceAdminQuery(query.Provider, query.Status, query.Limit);
|
|
}
|
|
|
|
internal TenantPointQuery ToPointQuery(TenantCommerceQueryDto query)
|
|
{
|
|
return new TenantPointQuery(query.Status, query.Limit, query.UserId, query.RegionId);
|
|
}
|
|
}
|