diff --git a/SessionCompanion/SessionCompanion/Controllers/ArmorController.cs b/SessionCompanion/SessionCompanion/Controllers/ArmorController.cs new file mode 100644 index 0000000..c690275 --- /dev/null +++ b/SessionCompanion/SessionCompanion/Controllers/ArmorController.cs @@ -0,0 +1,42 @@ +using Microsoft.AspNetCore.Mvc; +using SessionCompanion.Extensions.EitherType; +using SessionCompanion.Services.Interfaces; +using SessionCompanion.ViewModels.ApiResponses; +using SessionCompanion.ViewModels.ArmorViewModels; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace SessionCompanion.Controllers +{ + [Route("api/armor")] + [ApiController] + public class ArmorController : Controller + { + private readonly IArmorService _service; + public ArmorController(IArmorService service) => _service = service; + + /// + /// Metoda zwraca wszystkie dostępne pancerze + /// + /// Lista wszystkich pancerzy w bazie danych + [HttpGet("getAllArmor")] + public async Task, ErrorResponse>> GetArmors() + { + try + { + var armors = _service.Get().ToList(); + return armors; + } + catch (Exception e) + { + return new ErrorResponse() + { + StatusCode = 204, + Message = e.Message + }; + } + } + } +} diff --git a/SessionCompanion/SessionCompanion/SessionCompanion.xml b/SessionCompanion/SessionCompanion/SessionCompanion.xml index 40a51a1..0e731fe 100644 --- a/SessionCompanion/SessionCompanion/SessionCompanion.xml +++ b/SessionCompanion/SessionCompanion/SessionCompanion.xml @@ -4,6 +4,12 @@ SessionCompanion + + + Metoda zwraca wszystkie dostępne pancerze + + Lista wszystkich pancerzy w bazie danych + Metoda zwraca postać ze wskazanym identyfikatorem