diff --git a/Controllers/InventarController.cs b/Controllers/InventarController.cs new file mode 100644 index 0000000..a9fc7b2 --- /dev/null +++ b/Controllers/InventarController.cs @@ -0,0 +1,69 @@ +using System.Collections.Generic; +using BuecherwurmAPI.Models; +using Microsoft.AspNetCore.Mvc; +using System.Linq; +using Microsoft.EntityFrameworkCore; +using BuecherwurmAPI.Data; + +namespace BuecherwurmAPI.Controllers +{ + [Route("inventar")] + [ApiController] + public class InventarController : ControllerBase + { + private readonly IBookRepo _repository; + + public InventarController(IBookRepo repository) + { + _repository = repository; + } + // GET Inventar + [HttpGet] + public ActionResult> GetAllItems() + { + var items = _repository.GetAllItems(); + return Ok(items); + } + + // POST Inventar + [HttpPost] + public ActionResult> NewItem(Item item) + { + return Ok(new Item + { + Id = item.Id, + BookId = book.ProductId, + }); + } + + + // GET Inventar/{id} + [HttpGet("{id}", Name = "GetItemByID")] + public ActionResult> GetItemByID(int id) + { + var item = _repository.GetItemById(id); + if (item != null) + { + return Ok(item); + } + return NoContent(); + + } + + + // DELETE inventory/{id} + [HttpDelete("id")] + public ActionResult> DeleteItem(int id) + { + var item = _repository.GetItemById(id); + if (item == null) + { + return NotFound(); + } + _repository.DeleteItem(Item); + return NoContent(); + } + + } + +} diff --git a/Models/Item.cs b/Models/Item.cs new file mode 100644 index 0000000..c6e6012 --- /dev/null +++ b/Models/Item.cs @@ -0,0 +1,14 @@ +using System.ComponentModel.DataAnnotations; + +namespace BuecherwurmAPI.Models +{ + public class Item + { + [Key] + [Required] + public int Id { get; set; } + [Required] + public int BookId { get; set; } + } + +} \ No newline at end of file