public OknoRezerwacji(MainWindow parent, SeanceData dane) : this()
        {
            this.parent        = parent;
            DaneSeansu         = dane;
            TytulLabel.Content = DaneSeansu.Title;
            DataLabel.Content  = DaneSeansu.SeanceDate;
            SalaLabel.Content  = "Sala nr " + DaneSeansu.SalaID;
            using (ClientServiceClient cs = new ClientServiceClient())
            {
                DaneSali = cs.GetCinemaHall(DaneSeansu.SalaID);
            }
            List <int> numeryRzedow = new List <int>();

            for (int i = 1; i <= DaneSali.Rows; i++)
            {
                numeryRzedow.Add(i);
            }
            List <int> numeryMiejsc = new List <int>();

            for (int i = 1; i <= DaneSali.Positions; i++)
            {
                numeryMiejsc.Add(i);
            }
            RządComboBox.ItemsSource    = numeryRzedow;
            MiejsceComboBox.ItemsSource = numeryMiejsc;
            MiejscaDoZarezerwowania     = new ObservableCollection <PositionData>();
            Rezerwacje.ItemsSource      = MiejscaDoZarezerwowania;
        }
Beispiel #2
0
        public async Task <string> Post([FromBody] SeanceData value)
        {
            Seance   seance    = new Seance();
            Guid     guid      = Guid.NewGuid();
            DateTime startDate = DateTime.ParseExact(value.StartTime.Replace(' ', 'T'), "yyyy-MM-ddTHH:mm:ss", null);
            DateTime endDate   = DateTime.ParseExact(value.EndTime.Replace(' ', 'T'), "yyyy-MM-ddTHH:mm:ss", null);

            using var db = new CinemaContext();
            {
                if ((await db.Seance.Where(x => x.HallId == value.HallId).ToListAsync())?.All(x => startDate.CompareTo(x.StartTime) == -1 && endDate.CompareTo(x.StartTime) == -1 ||
                                                                                              startDate.CompareTo(x.EndTime) == 1) == true) //&& !db.Seance.Any(u=>u.HallId.Equals(value.HallId)))
                {
                    seance.StartTime   = DateTime.ParseExact(value.StartTime, "yyyy-MM-dd HH:mm:ss", null);
                    seance.EndTime     = DateTime.ParseExact(value.EndTime, "yyyy-MM-dd HH:mm:ss", null);
                    seance.HallId      = value.HallId;
                    seance.FilmId      = value.FilmId;
                    seance.Id          = guid;
                    seance.TicketPrice = value.TicketPrice;
                    try
                    {
                        cinemaContext.Add(seance);
                        await cinemaContext.SaveChangesAsync();

                        return(guid.ToString());
                    }
                    catch (Exception ex)
                    {
                        return(JsonConvert.SerializeObject(ex.Message));
                    }
                }
                else
                {
                    return("Сеанс уже существует");
                }
            }
        }