using AutoMapper; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; using PARR.API.Contracts.V1; using PARR.API.Contracts.V1.Responses; using PARR.API.Contracts.V1.Responses.Base; using PARR.API.Controllers.V1.Base; using PARR.DAL.Services.Interfaces; using PARR.Domain.Common.Roles; namespace PARR.API.Controllers.V1 { [Authorize(Roles = ParrRoles.Administrator.Role)] public class RobotController : BaseApiController { private readonly IMapper mapper; private readonly IRobotService robotService; public RobotController( IMapper mapper, IRobotService robotService ) { this.mapper = mapper; this.robotService = robotService; } /// /// Получить список роботов /// /// [HttpGet(ApiRoutes.Robot.GetAll)] public async Task GetAll() { var robots = await robotService.Get().OrderBy(t => t.Code).ToListAsync(); if (!robots.Any()) return NoContent(); var response = mapper.Map>(robots); return Ok(new Response>(response, true)); } } }