public RoasterInfoViewModel( RoasterDT roaster, AddressDT address, List <TagDT> tagsList) { Roaster = roaster; Address = address; Tags = tagsList; }
public async Task <IList <RoasterInfoViewModel> > GetRoastersAsync() { var roasters = await _roasterRepository.GetListAsync(); var roastertags = await _roasterTagRepository.GetListAsync(); foreach (var i in roasters) { i.RoasterTags = roastertags.Where(rt => rt.RoasterId == i.Id).ToList(); } var roastersViewModels = new List <RoasterInfoViewModel>(); foreach (var i in roasters) { var tags = i.RoasterTags == null ? new List <TagDT>() : i.RoasterTags.Select(t => TagDT.New(t.Tag.Id, t.Tag.TagTitle)).ToList(); roastersViewModels.Add(new RoasterInfoViewModel(RoasterDT.New(i.Id, i.ContactPersonName, i.ContactPersonPhone, i.Name, i.ContactNumber, i.ContactEmail, i.WebSiteLink, i.VkProfileLink, i.InstagramProfileLink, i.TelegramProfileLink, new byte[0], i.Description), AddressDT.New( i.OfficeAddress.Id, i.OfficeAddress.AddressStr, i.OfficeAddress.OpeningHours, i.OfficeAddress.Latitude, i.OfficeAddress.Longitude), tags)); } return(roastersViewModels); }
public async Task <RoasterInfoViewModel> GetRoasterViewModel(Guid id) { var roaster = await _roasterRepository.GetSingleAsync(id); var tags = roaster.RoasterTags == null ? new List <TagDT>() : roaster.RoasterTags.Select(t => TagDT.New(t.Tag.Id, t.Tag.TagTitle)).ToList(); if (roaster.Picture == null) { roaster.Picture = Picture.New(new byte[0]); } else if (roaster.Picture.Bytes == null) { roaster.Picture.Bytes = new byte[0]; } return(new RoasterInfoViewModel(RoasterDT.New(roaster.Id, roaster.ContactPersonName, roaster.ContactPersonPhone, roaster.Name, roaster.ContactNumber, roaster.ContactEmail, roaster.WebSiteLink, roaster.VkProfileLink, roaster.InstagramProfileLink, roaster.TelegramProfileLink, roaster.Picture.Bytes, roaster.Description), AddressDT.New(roaster.OfficeAddress.Id, roaster.OfficeAddress.AddressStr, roaster.OfficeAddress.OpeningHours, roaster.OfficeAddress.Latitude, roaster.OfficeAddress.Longitude), tags)); }