/// <summary>
        /// Functie care adauga o noua rezervare
        /// </summary>
        /// <param name="cursaCurenta">Cursa la care se adauga rezervarea</param>
        /// <param name="numeAdaugare">Nume client</param>
        /// <param name="prenumeAdaugare">Prenume client</param>
        /// <param name="numarLocuriAdaugare">Numar locuri</param>
        internal static void AdaugaRezervare(Cursa cursaCurenta, string numeAdaugare, string prenumeAdaugare, int numarLocuriAdaugare)
        {
            //prima data cautam clientul in db dupa nume si prenume, daca nu exista adaugam unul nou
            var client = ServiceClienti.FindClinetDupaDetalii(numeAdaugare, prenumeAdaugare);

            if (client == null)
            {
                var clientDeAdaugat = new Client(DbRepoUtils.getMaxId(ServiceClienti.FindAllClienti()), numeAdaugare, prenumeAdaugare);
                ServiceClienti.addClient(clientDeAdaugat);
                client = clientDeAdaugat;
            }

            //verificam ca cursa sa aibe un numar de locuri mai mare sau egal e cat cel rezervat
            if (cursaCurenta.NrLocuriDisponibile <= numarLocuriAdaugare)
            {
                throw new ServiceException("Nu exista suficiete locuri disponibile!");
            }

            //modificam cursa la noul numarde locuri
            ServiceCursa.UpdateCursa(new Cursa(cursaCurenta.Id, cursaCurenta.Destinatie, cursaCurenta.DataPlecare, cursaCurenta.NrLocuriDisponibile - numarLocuriAdaugare, cursaCurenta.LocPlecare));

            //aduagam rezervarea
            var idRez = DbRepoUtils.getMaxId(ServiceRezervari.FindAll());
            var rezervareDeAdaugat = new Rezervare(idRez, client.Id, cursaCurenta.Id, numarLocuriAdaugare);

            ServiceRezervari.AddRezervare(rezervareDeAdaugat);
        }