public static LetDTO VratiLet(string id)
        {
            IMongoDatabase db = Session.MongoDatabase;
            Let            l  = db.GetCollection <Let>("let").Find(x => x.Id == new ObjectId(id)).FirstOrDefault();

            LetDTO pom = new LetDTO();

            if (l != null)
            {
                pom.Id = l.Id.ToString();
                pom.PolazniAerodrom = l.PolazniAerodrom;
                pom.DolazniAerodrom = l.DolazniAerodrom;
                pom.DatumLeta       = l.DatumLeta;
                pom.BrojSedista     = l.BrojSedista;

                pom.ListaRezervacija = new List <string>();
                foreach (var rez in l.ListaRezervacija)
                {
                    pom.ListaRezervacija.Add(rez.ToString());
                }
                if (l.AvioKompanija.CompareTo(ObjectId.Empty) == 0)
                {
                    pom.AvioKompanija = "";
                }
                else
                {
                    AvioKompanija mojaAvioKompanija = db.GetCollection <AvioKompanija>("avioKompanija").Find(x => x.Id == l.AvioKompanija).FirstOrDefault();
                    if (mojaAvioKompanija != null)
                    {
                        pom.AvioKompanija = mojaAvioKompanija.Id.ToString();
                    }
                }
            }
            return(pom);
        }
 public ActionResult AzurirajLet([FromRoute] string id, [FromBody] LetDTO let)
 {
     try
     {
         DataProvider.AzurirajLet(id, let);
         return(Ok());
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, ex.ToString()));
     }
 }
        public static void AzurirajLet(String id, LetDTO letDTO)
        {
            IMongoDatabase db = Session.MongoDatabase;

            Let pom = new Let();

            pom.Id = new ObjectId(id);
            pom.PolazniAerodrom = letDTO.PolazniAerodrom;
            pom.DolazniAerodrom = letDTO.DolazniAerodrom;
            pom.DolazniAerodrom = letDTO.DolazniAerodrom;
            pom.DatumLeta       = letDTO.DatumLeta;
            pom.BrojSedista     = letDTO.BrojSedista;

            pom.ListaRezervacija = new List <ObjectId>();
            foreach (var rez in letDTO.ListaRezervacija)
            {
                pom.ListaRezervacija.Add(new ObjectId(rez));
            }
            if (letDTO.AvioKompanija.Equals(""))
            {
                pom.AvioKompanija = ObjectId.Empty;
            }
            else
            {
                IMongoCollection <AvioKompanija> collectionAvioKompanija = db.GetCollection <AvioKompanija>("avioKompanija");

                AvioKompanija a = collectionAvioKompanija.Find(kompanija => kompanija.Id == new ObjectId(letDTO.AvioKompanija)).FirstOrDefault();

                if (a != null)
                {
                    if (!a.Letovi.Contains(pom.Id))
                    {
                        a.Letovi.Add(pom.Id);
                        collectionAvioKompanija.ReplaceOne(x => x.Id == a.Id, a);
                    }
                    pom.AvioKompanija = new ObjectId(letDTO.AvioKompanija);
                }
            }


            db.GetCollection <Let>("let").ReplaceOne(x => x.Id == new ObjectId(id), pom);
        }
 public ActionResult KreirajLet([FromBody] LetDTO let)
 {
     try
     {
         Let newLet = new Let()
         {
             PolazniAerodrom = let.PolazniAerodrom,
             DolazniAerodrom = let.DolazniAerodrom,
             DatumLeta       = let.DatumLeta,
             BrojSedista     = let.BrojSedista,
             AvioKompanija   = new ObjectId(let.AvioKompanija)
         };
         DataProvider.KreirajLet(newLet);
         return(Ok());
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, ex.ToString()));
     }
 }
        public static IList <LetDTO> VratiTrenutneLetove()
        {
            IMongoDatabase db     = Session.MongoDatabase;
            IList <Let>    letovi = db.GetCollection <Let>("let").Find(x => x.DatumLeta > DateTime.Now).ToList <Let>();


            IList <LetDTO> letoviDTO = new List <LetDTO>();

            foreach (var l in letovi)
            {
                LetDTO pom = new LetDTO();
                pom.Id = l.Id.ToString();
                pom.PolazniAerodrom = l.PolazniAerodrom;
                pom.DolazniAerodrom = l.DolazniAerodrom;
                pom.DatumLeta       = l.DatumLeta;
                pom.BrojSedista     = l.BrojSedista;

                pom.ListaRezervacija = new List <string>();
                foreach (var rez in l.ListaRezervacija)
                {
                    pom.ListaRezervacija.Add(rez.ToString());
                }
                if (l.AvioKompanija.CompareTo(ObjectId.Empty) == 0)
                {
                    pom.AvioKompanija = "";
                }
                else
                {
                    AvioKompanija mojaAvioKompanija = db.GetCollection <AvioKompanija>("avioKompanija").Find(x => x.Id == l.AvioKompanija).FirstOrDefault();
                    if (mojaAvioKompanija != null)
                    {
                        pom.AvioKompanija = mojaAvioKompanija.Id.ToString();
                    }
                }
                letoviDTO.Add(pom);
            }

            return(letoviDTO);
        }