This commit is contained in:
2020-01-21 23:39:24 +00:00
parent 8b8824cabb
commit 95e6acc178
3 changed files with 70 additions and 71 deletions

View File

@@ -43,7 +43,7 @@ namespace AyaNova.Api.Controllers
/// <summary> /// <summary>
/// Get list of data for selection / viewing /// Get list of data for selection / viewing
/// ///
/// Required roles: Varies by list /// Required roles: Varies by list, if not allowed will return 403 - Not Authorized
/// ///
/// </summary> /// </summary>
/// <param name="listOptions">List key, Paging, filtering and sorting options</param> /// <param name="listOptions">List key, Paging, filtering and sorting options</param>
@@ -57,10 +57,9 @@ namespace AyaNova.Api.Controllers
if (!ModelState.IsValid) if (!ModelState.IsValid)
return BadRequest(new ApiErrorResponse(ModelState)); return BadRequest(new ApiErrorResponse(ModelState));
var UserId = UserIdFromContext.Id(HttpContext.Items);
long UserId = UserIdFromContext.Id(HttpContext.Items);
var UserRoles = UserRolesFromContext.Roles(HttpContext.Items); var UserRoles = UserRolesFromContext.Roles(HttpContext.Items);
try try
{ {
ApiPagedResponse pr = await DataListFetcher.GetResponse(listOptions.DataListKey, ct, Url, nameof(List), listOptions, UserId, UserRoles); ApiPagedResponse pr = await DataListFetcher.GetResponse(listOptions.DataListKey, ct, Url, nameof(List), listOptions, UserId, UserRoles);

View File

@@ -84,57 +84,57 @@ namespace AyaNova.Api.Controllers
} }
//COMMENTED OUT, FOR NOW UNTIL I GET THE FULLY WORKING TEST LIST BELOW THEN COME BACK AND LOOK AT THIS
/// <summary>
/// Get list for selection / viewing
///
/// Required roles: Any in-house staff (some roles might have restrictions on exact fields that are returned)
///
/// </summary>
/// <param name="pagingOptions">Paging, filtering and sorting options</param>
/// <returns>Collection with paging data</returns>
[HttpGet("List", Name = nameof(List))]
public ActionResult List([FromQuery] ListOptions pagingOptions)
{
if (serverState.IsClosed)
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
if (!ModelState.IsValid) // /// <summary>
return BadRequest(new ApiErrorResponse(ModelState)); // /// Get list for selection / viewing
// ///
// /// Required roles: Any in-house staff (some roles might have restrictions on exact fields that are returned)
// ///
// /// </summary>
// /// <param name="pagingOptions">Paging, filtering and sorting options</param>
// /// <returns>Collection with paging data</returns>
// [HttpGet("List", Name = nameof(List))]
// public ActionResult List([FromQuery] ListOptions pagingOptions)
// {
// if (serverState.IsClosed)
// return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
//Instantiate the business object handler // if (!ModelState.IsValid)
WidgetBiz biz = WidgetBiz.GetBiz(ct, HttpContext); // return BadRequest(new ApiErrorResponse(ModelState));
ApiPagedResponse pr = biz.GetList(Url, nameof(List), pagingOptions).Result; // //Instantiate the business object handler
return Ok(new ApiOkWithPagingResponse(pr)); // WidgetBiz biz = WidgetBiz.GetBiz(ct, HttpContext);
} // ApiPagedResponse pr = biz.GetList(Url, nameof(List), pagingOptions).Result;
// return Ok(new ApiOkWithPagingResponse(pr));
/// <summary> // }
/// TEST list with relationships
///
/// Required roles: Any in-house staff (some roles might have restrictions on exact fields that are returned)
///
/// </summary>
/// <param name="pagingOptions">Paging, filtering and sorting options</param>
/// <returns>Collection with paging data</returns>
[HttpGet("TestGetWidgetUserEmailList", Name = nameof(TestGetWidgetUserEmailList))]
public ActionResult TestGetWidgetUserEmailList([FromQuery] ListOptions pagingOptions)
{
if (serverState.IsClosed)
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
if (!ModelState.IsValid) // /// <summary>
return BadRequest(new ApiErrorResponse(ModelState)); // /// TEST list with relationships
// ///
// /// Required roles: Any in-house staff (some roles might have restrictions on exact fields that are returned)
// ///
// /// </summary>
// /// <param name="pagingOptions">Paging, filtering and sorting options</param>
// /// <returns>Collection with paging data</returns>
// [HttpGet("TestGetWidgetUserEmailList", Name = nameof(TestGetWidgetUserEmailList))]
// public ActionResult TestGetWidgetUserEmailList([FromQuery] ListOptions pagingOptions)
// {
// if (serverState.IsClosed)
// return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
//Instantiate the business object handler // if (!ModelState.IsValid)
WidgetBiz biz = WidgetBiz.GetBiz(ct, HttpContext); // return BadRequest(new ApiErrorResponse(ModelState));
ApiPagedResponse pr = biz.TestGetWidgetUserEmailList(Url, nameof(TestGetWidgetUserEmailList), pagingOptions).Result; // //Instantiate the business object handler
return Ok(new ApiOkWithPagingResponse(pr)); // WidgetBiz biz = WidgetBiz.GetBiz(ct, HttpContext);
// string ret= biz.GetList(Url, nameof(List), pagingOptions).Result;
// return Ok(ret); // ApiPagedResponse pr = biz.TestGetWidgetUserEmailList(Url, nameof(TestGetWidgetUserEmailList), pagingOptions).Result;
} // return Ok(new ApiOkWithPagingResponse(pr));
// // string ret= biz.GetList(Url, nameof(List), pagingOptions).Result;
// // return Ok(ret);
// }

View File

@@ -273,20 +273,20 @@ namespace AyaNova.Biz
//Generic list of widgets //Generic list of widgets
#region GetList #region GetList
//COMMENTED OUT, FOR NOW UNTIL I GET THE FULLY WORKING TEST LIST BELOW THEN COME BACK AND LOOK AT THIS
internal async Task<ApiPagedResponse> GetList(IUrlHelper Url, string routeName, ListOptions listOptions)
{
//TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT) // internal async Task<ApiPagedResponse> GetList(IUrlHelper Url, string routeName, ListOptions listOptions)
// {
var MOCK_WIDGET_DISPLAY_TEMPLATE_JSON = @" // //TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT)
{
""full"":[""widgetname"",""widgetserial"",""widgetdollaramount"",""widgetroles"",""widgetstartdate"",""widgetactive"",""username""], // var MOCK_WIDGET_DISPLAY_TEMPLATE_JSON = @"
""mini"":[""widgetname"",""widgetserial""] // {
} // ""full"":[""widgetname"",""widgetserial"",""widgetdollaramount"",""widgetroles"",""widgetstartdate"",""widgetactive"",""username""],
"; // ""mini"":[""widgetname"",""widgetserial""]
return await DataListFetcher.GetResponse(nameof(WidgetDataList), ct, Url, routeName, listOptions, MOCK_WIDGET_DISPLAY_TEMPLATE_JSON, UserId); // }
} // ";
// return await DataListFetcher.GetResponse(nameof(WidgetDataList), ct, Url, routeName, listOptions, MOCK_WIDGET_DISPLAY_TEMPLATE_JSON, UserId);
// }
#endregion #endregion
@@ -294,20 +294,20 @@ namespace AyaNova.Biz
//once this is working can replicate at will //once this is working can replicate at will
#region TestGetWidgetUserEmailList #region TestGetWidgetUserEmailList
internal async Task<ApiPagedResponse> TestGetWidgetUserEmailList(IUrlHelper Url, string routeName, ListOptions listOptions) // internal async Task<ApiPagedResponse> TestGetWidgetUserEmailList(IUrlHelper Url, string routeName, ListOptions listOptions)
{ // {
//var dlist=AyaNova.DataList.DataListFactory.GetListOfAllDataListKeyNames(); // //var dlist=AyaNova.DataList.DataListFactory.GetListOfAllDataListKeyNames();
//TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT) // //TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT)
var MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON = @" // var MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON = @"
{ // {
""full"":[""widgetname"",""username"",""emailaddress"",""widgetactive""], // ""full"":[""widgetname"",""username"",""emailaddress"",""widgetactive""],
""mini"":[""widgetname"",""username"",""emailaddress""] // ""mini"":[""widgetname"",""username"",""emailaddress""]
} // }
"; // ";
return await DataListFetcher.GetResponse(nameof(TestWidgetUserEmailDataList), ct, Url, routeName, listOptions, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON, UserId); // return await DataListFetcher.GetResponse(nameof(TestWidgetUserEmailDataList), ct, Url, routeName, listOptions, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON, UserId);
} // }
#endregion #endregion