using Brizco.Domain.Dtos.LargeDtos;

namespace Brizco.Domain.CommandQueries.Commands;

public sealed record CreateActivityCommand(
    TaskType Type,
    string Title,
    string Description,
    bool IsDisposable,
    DateTime SetFor,
    bool HasDisposed,
    int Amount,
    PurchaseAmountType AmountType,
    TaskScheduleType ScheduleType,
    Guid ShiftPlanId,
    Guid UserId) : IRequest<ActivityLDto>;

public sealed record UpdateActivityCommand(Guid Id,
    ActivityStatus Status,
    DateTime DoneAt,
    string PerformanceDescription,
    TaskType Type,
    string Title,
    string Description,
    bool IsDisposable,
    DateTime SetFor,
    bool HasDisposed,
    int Amount,
    PurchaseAmountType AmountType,
    TaskScheduleType ScheduleType,
    Guid ShiftPlanId,
    Guid UserId) : IRequest<bool>;


public sealed record DeleteActivityCommand(Guid Id)
    : IRequest<bool>;