using Managing.Application.Workers.Abstractions;
using Managing.Domain.Workers;
using Microsoft.AspNetCore.Mvc;
using static Managing.Common.Enums;

namespace Managing.Api.Workers.Controllers;

[ApiController]
[Route("[controller]")]
[Produces("application/json")]
public class WorkerController : ControllerBase
{
    private readonly IWorkerService _workerService;

    public WorkerController(IWorkerService workerService)
    {
        _workerService = workerService;
    }

    [HttpGet]
    public ActionResult<List<Worker>> GetWorkers()
    {
        return Ok(_workerService.GetWorkers());
    }

    [HttpPatch]
    public async Task<ActionResult> ToggleWorker(WorkerType workerType)
    {
        return Ok(await _workerService.ToggleWorker(workerType));
    }
}
