36 lines
1.3 KiB
C#
36 lines
1.3 KiB
C#
using NimbusFlow.Frontend.Models;
|
|
|
|
namespace NimbusFlow.Frontend.Services
|
|
{
|
|
public interface IApiService
|
|
{
|
|
// Member operations
|
|
Task<List<Member>> GetMembersAsync();
|
|
Task<Member?> GetMemberAsync(int id);
|
|
Task<Member> CreateMemberAsync(Member member);
|
|
Task<Member> UpdateMemberAsync(Member member);
|
|
Task<bool> DeleteMemberAsync(int id);
|
|
|
|
// Classification operations
|
|
Task<List<Classification>> GetClassificationsAsync();
|
|
|
|
// Service operations
|
|
Task<List<Service>> GetServicesAsync();
|
|
Task<Service?> GetServiceAsync(int id);
|
|
Task<Service> CreateServiceAsync(Service service);
|
|
|
|
// Schedule operations
|
|
Task<List<Schedule>> GetSchedulesAsync();
|
|
Task<List<Schedule>> GetMemberSchedulesAsync(int memberId);
|
|
Task<Schedule?> GetScheduleAsync(int id);
|
|
Task<Schedule> AcceptScheduleAsync(int scheduleId);
|
|
Task<Schedule> DeclineScheduleAsync(int scheduleId, string? reason = null);
|
|
Task<bool> RemoveScheduleAsync(int scheduleId);
|
|
|
|
// Scheduling operations
|
|
Task<Schedule?> ScheduleNextMemberAsync(int serviceId, List<int> classificationIds);
|
|
|
|
// Service Types
|
|
Task<List<ServiceType>> GetServiceTypesAsync();
|
|
}
|
|
} |