2026-07-24 17:35:34 -03:00
|
|
|
using Data.SeaHavenIndustries;
|
|
|
|
|
|
|
|
|
|
namespace SeaHaven.DataServices.Interfaces
|
|
|
|
|
{
|
|
|
|
|
public interface IWorkOrderMediaDataService
|
|
|
|
|
{
|
2026-08-06 10:26:04 -03:00
|
|
|
/// <summary>AsNoTracking base (+ optional account) scoped load for pre-mutation auth.</summary>
|
2026-08-06 09:47:34 -03:00
|
|
|
Task<WorkOrder?> GetWorkOrderForMediaAuthAsync(
|
|
|
|
|
int workOrderId,
|
|
|
|
|
int? accountId,
|
|
|
|
|
CancellationToken cancellationToken);
|
|
|
|
|
|
|
|
|
|
Task<WorkOrder?> GetTrackedWorkOrderAsync(
|
|
|
|
|
int workOrderId,
|
|
|
|
|
int? accountId,
|
|
|
|
|
CancellationToken cancellationToken);
|
|
|
|
|
|
2026-07-24 17:35:34 -03:00
|
|
|
Task<WorkOrderAttachments?> GetTrackedAttachmentAsync(int mediaId, int workOrderId, CancellationToken cancellationToken);
|
|
|
|
|
void TrackAttachment(WorkOrderAttachments attachment);
|
2026-08-04 09:30:09 -03:00
|
|
|
void SetExpectedWorkOrderVersion(WorkOrder workOrder, byte[] version);
|
|
|
|
|
void MarkWorkOrderModified(WorkOrder workOrder);
|
2026-07-24 17:35:34 -03:00
|
|
|
Task SaveAsync(CancellationToken cancellationToken);
|
|
|
|
|
}
|
|
|
|
|
}
|