Files
nimbusflow/frontend/Services/IApiService.cs

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();
}
}