29 lines
1.2 KiB
Go
29 lines
1.2 KiB
Go
package fleetstatus
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
|
|
helicopterusage "wucher/internal/domain/helicopter_usage"
|
|
shareddto "wucher/internal/transport/http/dto/shared"
|
|
)
|
|
|
|
type OverdueInspection struct {
|
|
InspectionType string
|
|
Detail string
|
|
}
|
|
|
|
type Service interface {
|
|
Create(ctx context.Context, row *FleetStatus) error
|
|
Update(ctx context.Context, row *FleetStatus) error
|
|
Delete(ctx context.Context, id []byte, deletedBy []byte) error
|
|
GetByID(ctx context.Context, id []byte) (*FleetStatus, error)
|
|
List(ctx context.Context, filter, sort string, limit, offset int) ([]FleetStatus, int64, error)
|
|
LatestByHelicopterIDs(ctx context.Context, helicopterIDs [][]byte) (map[string]*FleetStatus, error)
|
|
MarkServiced(ctx context.Context, id []byte, servicedAt time.Time, actorID []byte) error
|
|
ListServiceHistoryByHelicopterID(ctx context.Context, helicopterID []byte, limit, offset int) ([]FleetStatusServiceLog, int64, error)
|
|
GetSummaryByHelicopterID(ctx context.Context, helicopterID []byte) (*shareddto.FleetStatusSummary, error)
|
|
ReviseSummary(ctx context.Context, helicopterID []byte, in helicopterusage.ManualSummaryInput, actor []byte) error
|
|
OverdueInspections(ctx context.Context, helicopterID []byte) ([]OverdueInspection, error)
|
|
}
|