Example #1
0
        public string NapraviRezervaciju(RezervacijaModel rezervacija)
        {
            DateTime    rezDate = DateTime.ParseExact(rezervacija.PocetniDatum, "yyyy-MM-dd", CultureInfo.InvariantCulture);
            Rezervacija rez     = new Rezervacija(rezervacija);
            int         broj    = Rezervacija.GetBrojObjekta();

            rez.Id = broj + 1;
            Apartman apartman = ApartmanGetter.GetApartmanByNazivIStatus(rezervacija.RezervisaniApartman, "AKTIVAN");

            DateTime pomocni = rezDate.Date;



            for (int i = 0; i < rezervacija.BrojNocenja; i++)
            {
                if (!apartman.DatumiZaIzdavanje.Contains(rezDate.Date.AddDays(i)))
                {
                    return("Apartman nije u ponudi za odabrani period.");
                }
            }

            //prepis cene

            rez.UkupnaCena = 0;
            string putanjaDatumi = HostingEnvironment.MapPath("~/Files/Praznici.txt");
            string datumi        = File.ReadAllText(putanjaDatumi);

            string[]        prazniciPom = datumi.Split(',');
            List <DateTime> praznici    = new List <DateTime>();

            foreach (var datum in prazniciPom)
            {
                praznici.Add(DateTime.ParseExact(datum, "yyyy-MM-dd", CultureInfo.InvariantCulture));
            }

            for (int i = 0; i < rezervacija.BrojNocenja; i++)
            {
                pomocni = rezDate.AddDays(i);
                if (pomocni.DayOfWeek == DayOfWeek.Saturday || pomocni.DayOfWeek == DayOfWeek.Sunday || pomocni.DayOfWeek == DayOfWeek.Friday)
                {
                    rez.UkupnaCena += 0.9 * apartman.CenaPoNocenju;
                    continue;
                }
                else if (praznici.Contains(pomocni))
                {
                    rez.UkupnaCena += 1.05 * apartman.CenaPoNocenju;
                }
                else
                {
                    rez.UkupnaCena += apartman.CenaPoNocenju;
                }
            }

            RezervacijaFileWritter.UpisiRezervaciju(rez);
            return("zapisano");
        }
Example #2
0
 public string RezervacijaZavrsi(Rezervacija rez)
 {
     if (RezervacijaGetter.GetRezervacijaById(rez.Id) != null)
     {
         Rezervacija zapis = RezervacijaGetter.GetRezervacijaById(rez.Id);
         zapis.Status = StatusRezervacije.ZAVRSENA;
         int linija = RezervacijaFileWritter.GetBrojLinije(zapis.Id);
         RezervacijaFileWritter.ZapisiIzmenjen(linija, zapis);
         return("Rezervacija zavrsena.");
     }
     else
     {
         return("Nismo uspeli da nadjemo vasu rezervaciju.");
     }
 }
Example #3
0
 public string RezervacijaOdustani(Rezervacija rez)
 {
     if (RezervacijaGetter.GetRezervacijaById(rez.Id) != null)
     {
         Rezervacija zapis = RezervacijaGetter.GetRezervacijaById(rez.Id);
         zapis.Status = StatusRezervacije.ODUSTANAK;
         int linija = RezervacijaFileWritter.GetBrojLinije(zapis.Id);
         RezervacijaFileWritter.ZapisiIzmenjen(linija, zapis);
         return("Odustanak potvrdjen.");
     }
     else
     {
         return("Nismo uspeli da nadjemo vasu rezervaciju.");
     }
 }
Example #4
0
        public string IzmeniApartman(Apartman zaIzmenu)
        {
            Apartman apartman = ApartmanGetter.GetApartmanByNaziv(apartmanZaIzmenu);

            apartman.BrGostiju        = zaIzmenu.BrGostiju;
            apartman.Tip              = zaIzmenu.Tip;
            apartman.BrSoba           = zaIzmenu.BrSoba;
            apartman.CenaPoNocenju    = zaIzmenu.CenaPoNocenju;
            apartman.Naziv            = zaIzmenu.Naziv;
            apartman.Status           = zaIzmenu.Status;
            apartman.Prijava          = zaIzmenu.Prijava;
            apartman.Odjava           = zaIzmenu.Odjava;
            apartman.SadrzajApartmana = zaIzmenu.SadrzajApartmana;
            int brLinije = ApartmanGetter.GetBrojLinije(apartmanZaIzmenu);

            ApartmanFileWritter.ZapisiIzmenjen(brLinije, apartman);
            RezervacijaFileWritter.IzmeniNazivApartmana(apartmanZaIzmenu, apartman.Naziv);
            KomentarFileWritter.IzmeniNazivApartmana(apartmanZaIzmenu, apartman.Naziv);
            return("uspesno");
        }
Example #5
0
        public IHttpActionResult Izmeni(Gost korisnik)
        {
            if (username == korisnik.KorisnickoIme || KorisnikGetter.GetKorisnikByIme(korisnik.KorisnickoIme) == null)
            {
                Korisnik gost     = KorisnikGetter.GetKorisnikByIme(username);
                int      brLinije = KorisnikGetter.GetBrojLinije(username);
                gost.Ime           = korisnik.Ime;
                gost.Prezime       = korisnik.Prezime;
                gost.KorisnickoIme = korisnik.KorisnickoIme;
                gost.Lozinka       = korisnik.Lozinka;
                gost.Pol           = korisnik.Pol;

                KorisnikFileWriter.Zapisi(brLinije, gost);
                RezervacijaFileWritter.IzmeniKorisnika(username, gost.KorisnickoIme);
                KomentarFileWritter.IzmeniKorisnickoIme(username, gost.KorisnickoIme);
                username = korisnik.KorisnickoIme;
                return(Ok());
            }
            else
            {
                return(BadRequest());
            }
        }
Example #6
0
        public string IzmeniApartman(Apartman zaIzmenu)
        {
            if (ApartmanGetter.GetApartmanByNaziv(zaIzmenu.Naziv) == null)
            {
                Apartman apartman = ApartmanGetter.GetApartmanByNaziv(apartmanZaIzmenu);
                apartman.BrGostiju     = zaIzmenu.BrGostiju;
                apartman.Tip           = zaIzmenu.Tip;
                apartman.BrSoba        = zaIzmenu.BrSoba;
                apartman.CenaPoNocenju = zaIzmenu.CenaPoNocenju;
                apartman.Naziv         = zaIzmenu.Naziv;
                apartman.Status        = zaIzmenu.Status;
                apartman.Prijava       = zaIzmenu.Prijava;
                apartman.Odjava        = zaIzmenu.Odjava;
                if (zaIzmenu.SadrzajApartmana.Count != 0)
                {
                    apartman.SadrzajApartmana = zaIzmenu.SadrzajApartmana;
                }
                if (zaIzmenu.DatumiZaIzdavanje.Count != 0)
                {
                    apartman.DatumiZaIzdavanje = zaIzmenu.DatumiZaIzdavanje;
                }
                if (zaIzmenu.Slike.Count != 0)
                {
                    apartman.Slike = zaIzmenu.Slike;
                }
                int brLinije = ApartmanGetter.GetBrojLinije(apartmanZaIzmenu);

                ApartmanFileWritter.ZapisiIzmenjen(brLinije, apartman);
                RezervacijaFileWritter.IzmeniNazivApartmana(apartmanZaIzmenu, apartman.Naziv);
                KomentarFileWritter.IzmeniNazivApartmana(apartmanZaIzmenu, apartman.Naziv);
                return("uspesno");
            }
            else
            {
                return("Apartman sa tim nazivom vec postoji.");
            }
        }