Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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);
        }