mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 17:43:12 +00:00
56 lines
1.7 KiB
C#
56 lines
1.7 KiB
C#
namespace SeaHaven.DataServices.Interfaces
|
|
{
|
|
using Data.SeaHavenIndustries.Enums;
|
|
|
|
public interface IDashboardDataService
|
|
{
|
|
Task<DashboardCounts> GetWorkOrderCountsAsync(
|
|
int? accountId,
|
|
CancellationToken cancellationToken);
|
|
|
|
Task<IReadOnlyList<DashboardWorkOrder>> GetDashboardWorkOrdersAsync(
|
|
int? accountId,
|
|
string? dispatcherId,
|
|
DateOnly? dateFrom,
|
|
DateOnly? dateTo,
|
|
CancellationToken cancellationToken);
|
|
|
|
Task<IReadOnlyList<DashboardDispatcherWorkload>> GetDispatcherWorkloadAsync(
|
|
int? accountId,
|
|
string? dispatcherId,
|
|
DateOnly? dateFrom,
|
|
DateOnly? dateTo,
|
|
CancellationToken cancellationToken);
|
|
}
|
|
|
|
public sealed record DashboardWorkOrder(
|
|
int Id,
|
|
string? AssignTo,
|
|
WorkOrderType? WorkOrderType,
|
|
LifecycleStatus? LifecycleStatus,
|
|
string? LegacyStatus,
|
|
DateTime? ScheduledDate,
|
|
DateOnly? OriginalDate,
|
|
DateTime? CompletedDate,
|
|
string? LocationState = null,
|
|
int RescheduleCount = 0,
|
|
int? VendorCompanyId = null,
|
|
string? VendorCompanyName = null,
|
|
bool VendorIsActive = false,
|
|
bool VendorCompanyIsDeleted = false);
|
|
|
|
public sealed record DashboardDispatcherWorkload(
|
|
string DispatcherId,
|
|
string DispatcherName,
|
|
string? Color,
|
|
int TotalCount,
|
|
int OpenCount);
|
|
|
|
public class DashboardCounts
|
|
{
|
|
public int Total { get; set; }
|
|
public int Open { get; set; }
|
|
public int NotDispatched { get; set; }
|
|
public int Completed { get; set; }
|
|
}
|
|
}
|