public async Task <DataAccessResponse <IEnumerable <PurchasedItem> > > GetAll(string friendId) { DataAccessResponse <IEnumerable <PurchasedItem> > response = new DataAccessResponse <IEnumerable <PurchasedItem> >(); if (friendId == null) { return(response.NotFound()); } DataAccessResponse <Friend> friendResponse = await _friendRepo.Get(friendId); if (friendResponse.Status != HttpStatusCode.OK) { return(response.NotFound()); } Friend friend = friendResponse.Payload; if (friend.PurchasedItems == null) { return(response.NotFound()); } return(response.Ok(friendResponse.Payload.PurchasedItems)); }
public async Task <DataAccessResponse <IEnumerable <Friend> > > GetAll() { DataAccessResponse <IEnumerable <Friend> > response = new DataAccessResponse <IEnumerable <Friend> >(); ISearchResponse <Friend> searchResponse = await _esClient.SearchAsync <Friend>(s => s); if (searchResponse.Total == 0) { return(response.NotFound()); } if (!searchResponse.IsValid) { return(response.InternalServerError()); } IEnumerable <Friend> friends = searchResponse.Hits.Select(h => { Friend source = h.Source; source.Id = h.Id; return(source); }); if (friends == null) { return(response.NotFound()); } if (friends.Count() == 0) { return(response.NotFound()); } return(response.Ok(friends)); }
public async Task <DataAccessResponse <Friend> > Get(string id) { DataAccessResponse <Friend> response = new DataAccessResponse <Friend>(); IGetResponse <Friend> getResponse = await _esClient.GetAsync <Friend>(id); if (!getResponse.Found) { return(response.NotFound()); } if (!getResponse.IsValid) { return(response.InternalServerError()); } Friend friend = getResponse.Source; friend.Id = getResponse.Id; return(response.Ok(friend));; }
public async Task <DataAccessResponse <PurchasedItem> > Get(string friendId, Guid purchasedItemId) { DataAccessResponse <PurchasedItem> response = new DataAccessResponse <PurchasedItem>(); if (friendId == null) { return(response.NotFound()); } if (purchasedItemId == null) { return(response.NotFound()); } DataAccessResponse <Friend> friendResponse = await _friendRepo.Get(friendId); if (friendResponse.Status != HttpStatusCode.OK) { return(response.NotFound()); } Friend friend = friendResponse.Payload; if (friend.PurchasedItems == null) { return(response.BadRequest()); } PurchasedItem purchasedItem = friend.PurchasedItems.FirstOrDefault(p => p.Id == purchasedItemId); if (purchasedItem == null) { return(response.NotFound()); } purchasedItem.Id = purchasedItemId; return(response.Ok(purchasedItem)); }