shoc-backend/SeaHaven.Services/Interfaces/IPMScheduleService.cs

19 lines
879 B
C#
Raw Normal View History

2026-04-28 18:55:14 -05:00
using SeaHaven.Services.DTOs;
namespace SeaHaven.Services.Interfaces
{
public interface IPMScheduleService
{
Task<PMScheduleDTO?> GetPMScheduleByIdAsync(int id);
Task<PMScheduleDTO?> GetPMScheduleByIdWithDetailsAsync(int id);
Task<IEnumerable<PMScheduleDTO>> GetAllPMSchedulesAsync();
Task<IEnumerable<PMScheduleDTO>> GetPMSchedulesByLocationIdAsync(int locationId);
Task<PagedResult<PMScheduleDTO>> GetPMSchedulesPagedAsync(int page, int pageSize, string? search = null);
Task<PMScheduleDTO> CreatePMScheduleAsync(CreatePMScheduleDTO dto, string userId);
Task<PMScheduleDTO> UpdatePMScheduleAsync(int id, UpdatePMScheduleDTO dto, string userId);
Task DeletePMScheduleAsync(int id, string userId);
Task<bool> PMScheduleExistsAsync(int id);
Task<int> GetTotalPMScheduleCountAsync();
}
}