first commit

This commit is contained in:
Dhananjaya99
2026-09-28 11:44:26 +05:30
parent 721743ae6b
commit bffc9b1686
424 changed files with 46474 additions and 0 deletions
+66
View File
@@ -0,0 +1,66 @@
using Fitness_core_BE.Models;
namespace Fitness_core_BE.Interfaces
{
public interface IPlatformBillingRepository
{
Task<List<ClientPackage>> GetPricingPlansAsync(CancellationToken ct = default);
Task<ClientPackage?> GetPackageByIdAsync(Guid packageId, CancellationToken ct = default);
Task AddPackageAsync(ClientPackage package, CancellationToken ct = default);
Task<List<ClientPackage>> GetOtherDefaultPackagesAsync(
Guid exceptPackageId,
CancellationToken ct = default);
Task<ClientPackage?> GetDefaultPackageAsync(CancellationToken ct = default);
Task<ClientPackage?> GetActivePackageForClientAsync(
Guid clientId,
CancellationToken ct = default);
Task<Client?> GetClientByIdAsync(Guid clientId, CancellationToken ct = default);
Task<List<ClientSubscription>> GetActiveClientSubscriptionsAsync(
Guid clientId,
CancellationToken ct = default);
Task<ClientSubscription?> GetActiveClientSubscriptionAsync(
Guid clientId,
CancellationToken ct = default);
Task AddClientSubscriptionAsync(
ClientSubscription subscription,
CancellationToken ct = default);
Task<List<ClientDeviceBilling>> GetActiveDeviceBillingsAsync(
Guid clientId,
CancellationToken ct = default);
Task<ClientDeviceBilling?> GetLatestActiveDeviceBillingAsync(
Guid clientId,
CancellationToken ct = default);
Task AddDeviceBillingAsync(
ClientDeviceBilling billing,
CancellationToken ct = default);
Task<bool> HasActiveDeviceAsync(Guid clientId, CancellationToken ct = default);
Task<List<Guid>> GetMonthlyBillingCandidatesAsync(
DateTime startOfMonth,
CancellationToken ct = default);
Task<List<ClientInvoice>> GetInvoicesByStatusAsync(
string status,
bool newestFirst,
CancellationToken ct = default);
Task<ClientInvoice?> GetInvoiceWithClientAsync(
Guid invoiceId,
bool includeBusinesses,
CancellationToken ct = default);
Task<ClientCard?> GetClientCardAsync(Guid clientId, CancellationToken ct = default);
Task<List<ClientCard>> GetClientCardsAsync(Guid clientId, CancellationToken ct = default);
Task<ClientCard?> GetClientCardByTokenAsync(Guid clientId, string cardToken, CancellationToken ct = default);
Task AddInvoiceAsync(
ClientInvoice invoice,
IReadOnlyCollection<ClientInvoiceItem> items,
CancellationToken ct = default);
Task<DevicePricingConfig?> GetDevicePricingConfigAsync(
CancellationToken ct = default);
Task AddDevicePricingConfigAsync(
DevicePricingConfig config,
CancellationToken ct = default);
}
}