public PutovanjaVM Insert(PutovanjaInsertRequest request) { Relacije entityRelation = new Relacije { ZeljeznickaStanicaDoid = request.ZeljeznickaStanicaDOID, ZeljeznickaStanicaOdid = request.ZeljeznickaStanicaODID }; _context.Add(entityRelation); _context.SaveChanges(); request.RelacijaId = entityRelation.RelacijaId; Putovanja entityPutovanje = new Putovanja { Cijena = request.Cijena, DatumPolaska = request.DatumPolaska, RelacijaId = request.RelacijaId, VrijemeDolaska = request.VrijemeDolaska.Value.TimeOfDay, VrijemePolaska = request.VrijemePolaska.Value.TimeOfDay }; _context.Add(entityPutovanje); _context.SaveChanges(); return(_mapper.Map <PutovanjaVM>(entityPutovanje)); }
public List <RelacijeTopSearchResponse> GetTopRelations() { var top5 = _context.Putovanja .GroupBy(q => q.RelacijaId) .OrderByDescending(gp => gp.Count()) .Take(5) .Select(g => g.Key) .ToList(); List <Relacije> relacije = new List <Relacije>(); foreach (var item in top5) { Relacije rel = _context.Relacije.Where(w => w.RelacijaId == item.Value).FirstOrDefault(); relacije.Add(rel); } //var relacije = _context.Relacije.Where(w => top5.Contains(w.RelacijaId)).ToList(); List <RelacijeTopSearchResponse> response = new List <RelacijeTopSearchResponse>(); foreach (var item in relacije) { response.Add(new RelacijeTopSearchResponse() { NazivRelacije = (_context.ZeljeznickeStanice.Where(w => w.ZeljeznickaStanicaId == item.ZeljeznickaStanicaOdid).Select(s => s.Naziv).FirstOrDefault() + " - " + _context.ZeljeznickeStanice.Where(w => w.ZeljeznickaStanicaId == item.ZeljeznickaStanicaDoid).Select(s => s.Naziv).FirstOrDefault()), BrojRelacija = _context.Putovanja.Where(w => w.RelacijaId == item.RelacijaId).Count(), }); } return(response); }