using System.Collections.Generic; using BuecherwurmAPI.Models; using Microsoft.AspNetCore.Mvc; using System.Linq; //using Microsoft.EntityFrameworkCore; using BuecherwurmAPI.Data; namespace BuecherwurmAPI.Controllers { [Route("katalog") ] [ApiController] public class KatalogController :ControllerBase { private readonly IBookRepo _repository; public KatalogController (IBookRepo repository) { _repository=repository; } // GET Katalog [HttpGet] public ActionResult> GetAllBooks() { var books =_repository.GetAllBooks(); return Ok(books); } // POST Katalog [HttpPost] public ActionResult> NeuesBuch(Book book) { return Ok(new Book { Name = book.Name, Author= book.Author, Country= book.Country, Link= book.Link, Language= book.Language, Pages= book.Pages, Year=book.Year, ProductId =book.ProductId, Category= book.Category, ImageLink =book.ImageLink, LendTime =book.LendTime, LendType = book.LendType }); } // GET katalog/{id} [HttpGet("{id}", Name ="GetBookByID")] public ActionResult > GetBookByID(int id) { var book = _repository.GetBookById(id); if (book != null) { return Ok(book); } return NoContent(); } // PUT Katalog/{id} [HttpPut("id")] public ActionResult> BuchBearbeiten(Book book) { return Ok(new Book { Name = book.Name, Author= book.Author, Country= book.Country, Link= book.Link, Language= book.Language, Pages= book.Pages, Year=book.Year, ProductId =book.ProductId, Category= book.Category, ImageLink =book.ImageLink, LendTime =book.LendTime, LendType = book.LendType }); } // DELETE katalog/{id} [HttpDelete("id")] public ActionResult> BuchEntfernen (int id) { var book = _repository.GetBookById(id); if(book == null) { return NotFound(); } _repository.BuchEntfernen(book); return NoContent(); } } }