Merge branch 'master' into bugfix/db-data

This commit is contained in:
Nicolai Ort 2020-07-24 14:57:59 +02:00
commit 915f3f8d5d
7 changed files with 220 additions and 14 deletions

View File

@ -26,7 +26,15 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/category // GET: api/category
#nullable enable /// <summary>
/// Retrieve all Categories in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <param name="projectid">ID of created Project</param>
/// <param name="color">string value</param>
/// <returns>JSON list of all matching Categories</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumCategory>>> GetCategory([FromQuery]string? title, [FromQuery]int? projectid, [FromQuery] string? color) public async Task<ActionResult<IEnumerable<ScrumCategory>>> GetCategory([FromQuery]string? title, [FromQuery]int? projectid, [FromQuery] string? color)
{ {
@ -48,9 +56,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/category/1 // GET: api/category/1
/// <summary>
/// Retrieve the Category by it's ID.
/// </summary>
/// <param name="id">ID of searched Category</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumCategory>> GetCategory(int id) public async Task<ActionResult<ScrumCategory>> GetCategory(int id)
{ {
@ -65,6 +78,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/category/1 // PUT: api/category/1
/// <summary>
/// Update the Category identified by it's ID.
/// </summary>
/// <param name="id">to edit Category's ID</param>
/// <param name="category">modified Category</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutCategory(int id, ScrumCategory category) public async Task<IActionResult> PutCategory(int id, ScrumCategory category)
{ {
@ -99,6 +118,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/category // POST: api/category
/// <summary>
/// Create a new Category.
/// </summary>
/// <param name="category">new Category</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumUserstory>> PostCategory(ScrumCategory category) public async Task<ActionResult<ScrumUserstory>> PostCategory(ScrumCategory category)
{ {
@ -110,6 +134,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/category/1 // DELETE: api/category/1
/// <summary>
/// Delete a Category identified by it's ID.
/// </summary>
/// <param name="id">to delete Category's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumCategory>> DeleteCategory(int id) public async Task<ActionResult<ScrumCategory>> DeleteCategory(int id)
{ {

View File

@ -26,7 +26,14 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/projects // GET: api/projects
#nullable enable /// <summary>
/// Retrieve all Projects in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <param name="isprivate">boolean value</param>
/// <returns>JSON list of all matching Projects</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumProject>>> GetProject([FromQuery]string? title, [FromQuery]bool? isprivate) public async Task<ActionResult<IEnumerable<ScrumProject>>> GetProject([FromQuery]string? title, [FromQuery]bool? isprivate)
{ {
@ -43,9 +50,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/projects/5 // GET: api/projects/5
/// <summary>
/// Retrieve the Project by it's ID.
/// </summary>
/// <param name="id">ID of searched Project</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumProject>> GetProjects(int id) public async Task<ActionResult<ScrumProject>> GetProjects(int id)
{ {
@ -60,6 +72,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/Project/5 // PUT: api/Project/5
/// <summary>
/// Update the Project identified by it's ID.
/// </summary>
/// <param name="id">to edit Project's ID</param>
/// <param name="projects">modified Project</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutProject(int id, ScrumProject projects) public async Task<IActionResult> PutProject(int id, ScrumProject projects)
{ {
@ -94,6 +112,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/Project // POST: api/Project
/// <summary>
/// Create a new Project.
/// </summary>
/// <param name="projects">new Project</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumProject>> PostProject(ScrumProject projects) public async Task<ActionResult<ScrumProject>> PostProject(ScrumProject projects)
{ {
@ -105,6 +128,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/Project/5 // DELETE: api/Project/5
/// <summary>
/// Delete a Project identified by it's ID.
/// </summary>
/// <param name="id">to delete Project's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumProject>> DeleteProject(int id) public async Task<ActionResult<ScrumProject>> DeleteProject(int id)
{ {

View File

@ -26,7 +26,16 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/sprint // GET: api/sprint
#nullable enable /// <summary>
/// Retrieve all Sprints in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <param name="projectid">ID of created Project</param>
/// <param name="startDate">DateTime value</param>
/// <param name="endDate">DateTime value</param>
/// <returns>JSON list of all matching Sprints</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumSprint>>> GetSprint([FromQuery]string? title, [FromQuery]int? projectid, [FromQuery]DateTime? startDate, [FromQuery]DateTime? endDate) public async Task<ActionResult<IEnumerable<ScrumSprint>>> GetSprint([FromQuery]string? title, [FromQuery]int? projectid, [FromQuery]DateTime? startDate, [FromQuery]DateTime? endDate)
{ {
@ -51,9 +60,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/sprint/5 // GET: api/sprint/5
/// <summary>
/// Retrieve the Sprint by it's ID.
/// </summary>
/// <param name="id">ID of searched Sprint</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumSprint>> GetSprint(int id) public async Task<ActionResult<ScrumSprint>> GetSprint(int id)
{ {
@ -68,6 +82,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/sprint/5 // PUT: api/sprint/5
/// <summary>
/// Update the Sprint identified by it's ID.
/// </summary>
/// <param name="id">to edit Sprint's ID</param>
/// <param name="sprint">modified Sprint</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutSprint(int id, ScrumSprint sprint) public async Task<IActionResult> PutSprint(int id, ScrumSprint sprint)
{ {
@ -102,6 +122,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/Sprint // POST: api/Sprint
/// <summary>
/// Create a new Sprint.
/// </summary>
/// <param name="sprint">new Sprint</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumSprint>> PostSprint(ScrumSprint sprint) public async Task<ActionResult<ScrumSprint>> PostSprint(ScrumSprint sprint)
{ {
@ -113,6 +138,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/Sprint/5 // DELETE: api/Sprint/5
/// <summary>
/// Delete a Sprint identified by it's ID.
/// </summary>
/// <param name="id">to delete Sprint's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumSprint>> DeleteSprint(int id) public async Task<ActionResult<ScrumSprint>> DeleteSprint(int id)
{ {

View File

@ -25,7 +25,13 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/status // GET: api/status
#nullable enable /// <summary>
/// Retrieve all Status in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <returns>JSON list of all matching status</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumStatus>>> GetStatus([FromQuery]string? title) public async Task<ActionResult<IEnumerable<ScrumStatus>>> GetStatus([FromQuery]string? title)
{ {
@ -38,9 +44,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable enable #nullable enable
// GET: api/status/1 // GET: api/status/1
/// <summary>
/// Retrieve the Status by it's ID.
/// </summary>
/// <param name="id">ID of searched Status</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumStatus>> GetStatus(int id) public async Task<ActionResult<ScrumStatus>> GetStatus(int id)
{ {
@ -55,6 +66,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/status/1 // PUT: api/status/1
/// <summary>
/// Update the Status identified by it's ID.
/// </summary>
/// <param name="id">to edit Status' ID</param>
/// <param name="userstory">modified Userstory</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutStatus(int id, ScrumStatus userstory) public async Task<IActionResult> PutStatus(int id, ScrumStatus userstory)
{ {
@ -89,6 +106,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/status // POST: api/status
/// <summary>
/// Create a new Status.
/// </summary>
/// <param name="userstory">new Userstory</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumStatus>> PostTask(ScrumStatus userstory) public async Task<ActionResult<ScrumStatus>> PostTask(ScrumStatus userstory)
{ {
@ -100,6 +122,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/status/1 // DELETE: api/status/1
/// <summary>
/// Create a new Status.
/// </summary>
/// <param name="id">to delete Status' ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumStatus>> DeleteStatus(int id) public async Task<ActionResult<ScrumStatus>> DeleteStatus(int id)
{ {

View File

@ -26,7 +26,18 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/tasks // GET: api/tasks
#nullable enable /// <summary>
/// Retrieve all Tasks in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <param name="userstoryid">ID of created Userstory</param>
/// <param name="statusid">ID of created Status</param>
/// <param name="assignedtoid">ID of the Assignedto</param>
/// <param name="projectid">ID of created Project</param>
/// <param name="priority">enum value</param>
/// <returns>JSON list of all matching Tasks</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumTask>>> GetTasks([FromQuery]string? title, [FromQuery]int? userstoryid, [FromQuery]int? statusid, [FromQuery]int? assignedtoid, [FromQuery]int? projectid, [FromQuery]ScrumPrio? priority) public async Task<ActionResult<IEnumerable<ScrumTask>>> GetTasks([FromQuery]string? title, [FromQuery]int? userstoryid, [FromQuery]int? statusid, [FromQuery]int? assignedtoid, [FromQuery]int? projectid, [FromQuery]ScrumPrio? priority)
{ {
@ -60,9 +71,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/tasks/5 // GET: api/tasks/5
/// <summary>
/// Retrieve the Task by it's ID.
/// </summary>
/// <param name="id">ID of searched Task</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumTask>> GetTask(int id) public async Task<ActionResult<ScrumTask>> GetTask(int id)
{ {
@ -77,6 +93,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/tasks/5 // PUT: api/tasks/5
/// <summary>
/// Update the Task identified by it's ID.
/// </summary>
/// <param name="id">to edit Task's ID</param>
/// <param name="task">modified Task</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutTask(int id, ScrumTask task) public async Task<IActionResult> PutTask(int id, ScrumTask task)
{ {
@ -111,6 +133,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/tasks // POST: api/tasks
/// <summary>
/// Create a new Task.
/// </summary>
/// <param name="task">new Task</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumTask>> PostTask(ScrumTask task) public async Task<ActionResult<ScrumTask>> PostTask(ScrumTask task)
{ {
@ -122,6 +149,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/tasks/5 // DELETE: api/tasks/5
/// <summary>
/// Delete a Task identified by it's ID.
/// </summary>
/// <param name="id">to delete Task's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumTask>> DeleteTask(int id) public async Task<ActionResult<ScrumTask>> DeleteTask(int id)
{ {

View File

@ -25,7 +25,13 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/sprint // GET: api/sprint
#nullable enable /// <summary>
/// Retrieve all Users in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="name">string value</param>
/// <returns>JSON list of all matching Users</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumUser>>> GetUser([FromQuery]string? name) public async Task<ActionResult<IEnumerable<ScrumUser>>> GetUser([FromQuery]string? name)
{ {
@ -37,9 +43,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/sprint/5 // GET: api/sprint/5
/// <summary>
/// Retrieve the User by it's ID.
/// </summary>
/// <param name="id">ID of searched User</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumUser>> GetUser(int id) public async Task<ActionResult<ScrumUser>> GetUser(int id)
{ {
@ -54,6 +65,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/sprint/5 // PUT: api/sprint/5
/// <summary>
/// Update the User identified by it's ID.
/// </summary>
/// <param name="id">to edit User's ID</param>
/// <param name="sprint">modified Sprint</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutUser(int id, ScrumUser sprint) public async Task<IActionResult> PutUser(int id, ScrumUser sprint)
{ {
@ -88,6 +105,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/User // POST: api/User
/// <summary>
/// Create a new User.
/// </summary>
/// <param name="sprint">new Sprint</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumUser>> PostUser(ScrumUser sprint) public async Task<ActionResult<ScrumUser>> PostUser(ScrumUser sprint)
{ {
@ -99,6 +121,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/User/5 // DELETE: api/User/5
/// <summary>
/// Delete a User identified by it's ID.
/// </summary>
/// <param name="id">to delete User's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumUser>> DeleteUser(int id) public async Task<ActionResult<ScrumUser>> DeleteUser(int id)
{ {

View File

@ -26,7 +26,19 @@ namespace ScrumTaskboard.Controllers
} }
// GET: api/userstories // GET: api/userstories
#nullable enable /// <summary>
/// Retrieve all Userstories in DB.
/// Result can be filtered using the Params.
/// </summary>
/// <param name="title">string value</param>
/// <param name="statusid">ID of created Status</param>
/// <param name="categoryid">ID of created Category</param>
/// <param name="createdbyid">ID of the Author</param>
/// <param name="projectid">ID of created Project</param>
/// <param name="sprintid">ID of created Project</param>
/// <param name="priority">enum value</param>
/// <returns>JSON list of all matching Userstories</returns>
#nullable enable
[HttpGet] [HttpGet]
public async Task<ActionResult<IEnumerable<ScrumUserstory>>> GetUserstory([FromQuery]string? title, [FromQuery]int? statusid, [FromQuery]int? categoryid, [FromQuery]int? createdbyid, [FromQuery]int? projectid, [FromQuery]int? sprintid, [FromQuery]ScrumPrio? priority) public async Task<ActionResult<IEnumerable<ScrumUserstory>>> GetUserstory([FromQuery]string? title, [FromQuery]int? statusid, [FromQuery]int? categoryid, [FromQuery]int? createdbyid, [FromQuery]int? projectid, [FromQuery]int? sprintid, [FromQuery]ScrumPrio? priority)
{ {
@ -64,9 +76,14 @@ namespace ScrumTaskboard.Controllers
return await filtered.ToListAsync(); return await filtered.ToListAsync();
} }
#nullable disable #nullable disable
// GET: api/userstories/1 // GET: api/userstories/1
/// <summary>
/// Retrieve the Userstory by it's ID.
/// </summary>
/// <param name="id">ID of searched Userstory</param>
/// <returns>JSON object</returns>
[HttpGet("{id}")] [HttpGet("{id}")]
public async Task<ActionResult<ScrumUserstory>> GetUserstory(int id) public async Task<ActionResult<ScrumUserstory>> GetUserstory(int id)
{ {
@ -81,6 +98,12 @@ namespace ScrumTaskboard.Controllers
} }
// PUT: api/userstories/1 // PUT: api/userstories/1
/// <summary>
/// Update the Userstory identified by it's ID.
/// </summary>
/// <param name="id">to edit Userstory's ID</param>
/// <param name="userstory">modified Userstory</param>
/// <returns>the proper status code</returns>
[HttpPut("{id}")] [HttpPut("{id}")]
public async Task<IActionResult> PutUserstory(int id, ScrumUserstory userstory) public async Task<IActionResult> PutUserstory(int id, ScrumUserstory userstory)
{ {
@ -115,6 +138,11 @@ namespace ScrumTaskboard.Controllers
} }
// POST: api/userstories // POST: api/userstories
/// <summary>
/// Create a new Userstory.
/// </summary>
/// <param name="userstory">new Userstory</param>
/// <returns>the proper status code</returns>
[HttpPost] [HttpPost]
public async Task<ActionResult<ScrumUserstory>> PostTask(ScrumUserstory userstory) public async Task<ActionResult<ScrumUserstory>> PostTask(ScrumUserstory userstory)
{ {
@ -126,6 +154,11 @@ namespace ScrumTaskboard.Controllers
} }
// DELETE: api/userstories/1 // DELETE: api/userstories/1
/// <summary>
/// Delete a Userstory identified by it's ID.
/// </summary>
/// <param name="id">to delete Userstory's ID</param>
/// <returns>the proper status code</returns>
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult<ScrumUserstory>> DeleteUserstory(int id) public async Task<ActionResult<ScrumUserstory>> DeleteUserstory(int id)
{ {