/// <summary> /// Get account items /// </summary> /// <param name="account"></param> /// <returns></returns> public async Task <List <Model.AccountItem> > RetrieveItemsByAccount(Model.Account account) { List <Model.AccountItem> items = await this.baseURLAPI .AppendPathSegment("accounts") .AppendPathSegment(account.Id) .AppendPathSegment("items") .GetJsonAsync <List <Model.AccountItem> >(); if (items.Count > 0) { for (var i = 0; i < items.Count; i++) { Model.AccountItem accountItem = items[i]; // TODO: corrigir o construtor do metodo AccountItemAditionalController aditionalController = new AccountItemAditionalController(); accountItem.Aditionals = await aditionalController.RetrieveAditionalsByItem(account, accountItem); items[i] = accountItem; } } return(items); }
/// <summary> /// Get account item aditionals /// </summary> /// <param name="account"></param> /// <param name="item"></param> /// <returns></returns> public async Task <List <Model.AccountItemAditional> > RetrieveAditionalsByItem(Model.Account account, Model.AccountItem item) { List <Model.AccountItemAditional> aditionals = await this.baseURLAPI .AppendPathSegment("accounts") .AppendPathSegment(account.Id) .AppendPathSegment("items") .AppendPathSegment(item.Id) .AppendPathSegment("aditionals") .GetJsonAsync <List <Model.AccountItemAditional> >(); return(aditionals); }
/// <summary> /// Check ending item preparation /// </summary> /// <param name="account"></param> /// <param name="accountItem"></param> /// <returns></returns> public async Task <Model.APICallResponse> reportEndPreparation(Model.Account account, Model.AccountItem accountItem) { Model.APICallResponse callResponse = new Model.APICallResponse(); try { await this.baseURLAPI .AppendPathSegment("accounts") .AppendPathSegment(account.Id) .AppendPathSegment("items") .AppendPathSegment(accountItem.Id) .AppendPathSegment("end") .PutAsync(null); callResponse.StatusCode = HttpStatusCode.OK; } catch (FlurlHttpException ex) { callResponse.StatusCode = ex.Call.HttpStatus; callResponse.ResponseBody = ex.Call.Response.Content.ToString(); } return(callResponse); }