public List <PutovanjaVM> GetSlicnaPutovanja(int putovanjeID) { UcitajPutovanja(putovanjeID); Putovanja trenutnoPutovanje = _context.Putovanja.Find(putovanjeID); List <PretragaVM> ocjenePosmatranogPutovanja = new List <PretragaVM>(); List <Pretrage> ocjeneIzBaze = _context.Pretrage.Where(x => x.RelacijaId == trenutnoPutovanje.RelacijaId).ToList(); _mapper.Map(ocjeneIzBaze, ocjenePosmatranogPutovanja); List <PretragaVM> tmpOcjene1 = new List <PretragaVM>(); List <PretragaVM> tmpOcjene2 = new List <PretragaVM>(); List <PutovanjaVM> preporucenaPutovanja = new List <PutovanjaVM>(); foreach (var item in putovanja) { foreach (PretragaVM p in ocjenePosmatranogPutovanja) { if (item.Value.Where(x => x.KupacId == p.KupacId).Count() > 0) { tmpOcjene1.Add(p); tmpOcjene2.Add(item.Value.Where(x => x.KupacId == p.KupacId).First()); } } double slicnosti = 0; slicnosti = GetSlicnost(tmpOcjene1, tmpOcjene2); if (slicnosti > 0.99) { Putovanja element = _context.Putovanja.Find(item.Key); PutovanjaVM elementPreporuceni = new PutovanjaVM(); _mapper.Map(element, elementPreporuceni); elementPreporuceni.Polaziste = _context.Relacije.Where(w => w.RelacijaId == element.RelacijaId).Select(s => s.ZeljeznickaStanicaOd.Naziv).FirstOrDefault(); elementPreporuceni.Odrediste = _context.Relacije.Where(w => w.RelacijaId == element.RelacijaId).Select(s => s.ZeljeznickaStanicaDo.Naziv).FirstOrDefault(); preporucenaPutovanja.Add(elementPreporuceni); } tmpOcjene1.Clear(); tmpOcjene2.Clear(); } return(preporucenaPutovanja); }
public PutovanjaVM Update(int id, PutovanjaInsertRequest request) { Putovanja putovanjaDB = _context.Putovanja.Find(id); PutovanjaVM putovanjaVM = new PutovanjaVM(); if (putovanjaDB != null) { putovanjaDB.Cijena = request.Cijena; putovanjaDB.DatumPolaska = request.DatumPolaska; putovanjaDB.VrijemeDolaska = request.VrijemeDolaska.Value.TimeOfDay; putovanjaDB.VrijemePolaska = request.VrijemePolaska.Value.TimeOfDay; _context.SaveChanges(); return(_mapper.Map <PutovanjaVM>(putovanjaDB)); } return(putovanjaVM); }