From 2e46692fb8a76691a706a275d2b12e4709ff448a Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Thu, 7 May 2020 19:07:45 +0000 Subject: [PATCH] --- devdocs/todo.txt | 2 ++ server/AyaNova/Controllers/WorkOrderController.cs | 12 ++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/devdocs/todo.txt b/devdocs/todo.txt index dee2172e..2254cbf5 100644 --- a/devdocs/todo.txt +++ b/devdocs/todo.txt @@ -15,6 +15,8 @@ todo: check attachment NOTES property is actually supported todo: search tables in schema, I think there is a missing index here, need to look at the search query section again as it was changed several times from the original schema creation +API REFACTORING +todo: all api route parameters, post object sb "newObject", put="updatedObject" todo: all api routes, re-arrange code in controller in this order POST (and postlike such as duplicate), GET, PUT, DELETE for consistency and logicality todo: all api route URI's sb lower case with dashes if necessary (use plural noun scheme) https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#organize-the-api-around-resources diff --git a/server/AyaNova/Controllers/WorkOrderController.cs b/server/AyaNova/Controllers/WorkOrderController.cs index e6a500d9..f236e0a5 100644 --- a/server/AyaNova/Controllers/WorkOrderController.cs +++ b/server/AyaNova/Controllers/WorkOrderController.cs @@ -45,11 +45,11 @@ namespace AyaNova.Api.Controllers /// /// Create Workorder /// - /// + /// /// Automatically filled from route path, no need to specify in body /// [HttpPost] - public async Task PostWorkOrder([FromBody] WorkOrder inObj, ApiVersion apiVersion) + public async Task PostWorkOrder([FromBody] WorkOrder newObj, ApiVersion apiVersion) { if (!serverState.IsOpen) return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); @@ -65,7 +65,7 @@ namespace AyaNova.Api.Controllers return BadRequest(new ApiErrorResponse(ModelState)); //Create and validate - WorkOrder o = await biz.CreateAsync(inObj); + WorkOrder o = await biz.CreateAsync(newObj); if (o == null) return BadRequest(new ApiErrorResponse(biz.Errors)); else @@ -159,10 +159,10 @@ namespace AyaNova.Api.Controllers /// Put (update) WorkOrder /// /// - /// + /// /// [HttpPut("{id}")] - public async Task PutWorkOrder([FromRoute] long id, [FromBody] WorkOrder inObj) + public async Task PutWorkOrder([FromRoute] long id, [FromBody] WorkOrder updatedObject) { if (!serverState.IsOpen) return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); @@ -182,7 +182,7 @@ namespace AyaNova.Api.Controllers try { - if (!await biz.PutAsync(o, inObj)) + if (!await biz.PutAsync(o, updatedObject)) return BadRequest(new ApiErrorResponse(biz.Errors)); } catch (DbUpdateConcurrencyException)