public override async Task <ObjectsModel> GetObjectsData(ObjectsIdsModel request, ServerCallContext context) { var objects = await _objectGetter.GetObjectsByIds(request.ObjectsIds.ToList()); var objectsModel = new ObjectsModel(); objects.ForEach(o => objectsModel.Objects.Add(new ObjectModel { Id = o.Id, Description = o.Description, Name = o.Name, PhotoUrl = o.Photos.FirstOrDefault() })); return(objectsModel); }
public async Task <List <TransactionObjectDto> > GetObjectsByIds(List <int> objectsIds) { var objectsIdsModel = new ObjectsIdsModel(); objectsIds.ForEach(oid => objectsIdsModel.ObjectsIds.Add(oid)); var upstreamModel = await _objectsClient.GetObjectsDataAsync(objectsIdsModel); var objects = upstreamModel.Objects.Select(om => new TransactionObjectDto { Description = om.Description, Id = om.Id, Name = om.Name }).ToList(); return(objects); }