Exemple #1
0
        //change le prix réel en fonction de la pièce sélectionnée dans ajoutReprésentation
        private void cbChoixPieceSaisieShow_TextChanged(object sender, EventArgs e)
        {
            //on affiche le prix
            TheaterPiece maPiece = ModulePiecesTheatre.GetOneTheaterPiece(cbChoixPieceSaisieShow.Text);

            if (maPiece != null)
            {
                lblPrixFixeAjoutRep.Text = maPiece.TheaterPiece_seatsPrice.ToString() + " €";
            }
        }
Exemple #2
0
        private void btnFiltrer_Click(object sender, EventArgs e)
        {
            List <Show> lesRepresentations = ModuleRepresentations.GetFilterShows(ModulePiecesTheatre.GetOneTheaterPiece(cbChoixPiece.Text).TheaterPiece_id, dtpDateDeb.Value, dtpDateFin.Value);

            DataTable dt = new DataTable();

            dgvListeRepresentations.DataSource = dt;

            dt.Columns.Add(new DataColumn("representation", typeof(Show)));

            dt.Columns.Add(new DataColumn("nom", typeof(string)));
            dgvListeRepresentations.Columns["Nom"].HeaderText = "Nom de la pièce";

            dt.Columns.Add(new DataColumn("date", typeof(string)));
            dgvListeRepresentations.Columns["Date"].HeaderText = "Date";

            dt.Columns.Add(new DataColumn("heure", typeof(string)));
            dgvListeRepresentations.Columns["Heure"].HeaderText = "Heure";

            dt.Columns.Add(new DataColumn("places", typeof(int)));
            dgvListeRepresentations.Columns["Places"].HeaderText = "Places";

            dt.Columns.Add(new DataColumn("durée", typeof(float)));
            dgvListeRepresentations.Columns["Durée"].HeaderText = "Durée";

            dt.Columns.Add(new DataColumn("tarif", typeof(float)));
            dgvListeRepresentations.Columns["Tarif"].HeaderText = "Tarif";

            dgvListeRepresentations.ReadOnly = true;


            //test dgv
            foreach (Show uneRepresentation in lesRepresentations)
            {
                string nomPiece = uneRepresentation.Show_theaterPiece.TheaterPiece_name;

                DateTime dateHeure = uneRepresentation.Show_dateTime;

                string date = dateHeure.ToString("dd/MM/yyyy");

                string heure = dateHeure.ToString("HH:mm");

                int places = uneRepresentation.Show_seats;

                float duree = uneRepresentation.Show_theaterPiece.TheaterPiece_duration;

                float prix = uneRepresentation.Show_theaterPiece.TheaterPiece_seatsPrice;

                dt.Rows.Add(uneRepresentation, nomPiece, date, heure, places, duree, prix);
            }

            // La première colonne contenant l'objet ne sera pas visible
            dgvListeRepresentations.Columns["representation"].Visible = false;
        }
Exemple #3
0
        //change le prix réel en fonction de la pièce sélectionnée dans ajoutReprésentation
        private void cbModifPiece_TextChanged(object sender, EventArgs e)
        {
            //on affiche le prix
            TheaterPiece maPiece = ModulePiecesTheatre.GetOneTheaterPiece(cbModifPiece.Text);

            if (maPiece != null)
            {
                lblPrixFixeModifRep.Text = maPiece.TheaterPiece_seatsPrice.ToString() + " €";
                //on récupère date saisie et heure à mettre en datetime
                string   mesdates = dateTimePickerModifDate.Text.ToString() + " " + textBoxModifHeure.Text.ToString();
                DateTime parsedDate;
                bool     retConv = DateTime.TryParse(mesdates, out parsedDate);
                if (retConv == true && dateTimePickerModifDate.Text.Trim() != "" && textBoxModifHeure.Text.Trim() != "")
                {
                    //on vérifie l'heure pour voir dans quelle tranche de pricerate on va
                    List <PriceRate> Lestaux = new List <PriceRate>();
                    Lestaux = ModuleRepresentations.GetPriceRate();
                    List <PriceRate> LestauxdansLHeure = new List <PriceRate>();
                    PriceRate        monTaux           = null;
                    foreach (PriceRate unTaux in Lestaux)
                    {
                        TimeSpan debutHeure = unTaux.PriceRate_startTime;
                        TimeSpan finHeure   = unTaux.PriceRate_endTime;
                        TimeSpan monHeure   = TimeSpan.Parse(textBoxModifHeure.Text.ToString());
                        if (debutHeure <= monHeure && monHeure <= finHeure)
                        {
                            LestauxdansLHeure.Add(unTaux);
                        }
                    }
                    //on vérifie le jour et on a le pricerate !!!!
                    string monJour = parsedDate.ToString("dddd");

                    foreach (PriceRate unTaux in LestauxdansLHeure)
                    {
                        foreach (WeekDays unJour in unTaux.PriceRate_weekDays)
                        {
                            if (unJour.WeekDays_name == monJour)
                            {
                                monTaux = unTaux;
                            }
                        }
                    }
                    if (monTaux != null)
                    {
                        float seatPrice = maPiece.TheaterPiece_seatsPrice;
                        float prixReel  = seatPrice + (seatPrice * monTaux.PriceRate_rate);
                        lblPrixReelModifRep.Text = prixReel.ToString() + " €";
                    }
                }
            }
        }
Exemple #4
0
        //bouton valider
        private void button5_Click(object sender, EventArgs e)
        {
            if (dateTimePickerModifDate.Text.Trim() != "" && textBoxModifHeure.Text.Trim() != "" && textBoxModifPlaces.Text.Trim() != "" && cbModifPiece.Text.Trim() != "")
            {
                //on récupère date saisie et heure à mettre en datetime
                string   mesdates   = dateTimePickerModifDate.Text.ToString() + " " + textBoxModifHeure.Text.ToString();
                DateTime parsedDate = DateTime.Parse(mesdates);
                //on vérifie l'heure pour voir dans quelle tranche de pricerate on va
                List <PriceRate> Lestaux = new List <PriceRate>();
                Lestaux = ModuleRepresentations.GetPriceRate();
                List <PriceRate> LestauxdansLHeure = new List <PriceRate>();
                PriceRate        monTaux           = null;
                foreach (PriceRate unTaux in Lestaux)
                {
                    TimeSpan debutHeure = unTaux.PriceRate_startTime;
                    TimeSpan finHeure   = unTaux.PriceRate_endTime;
                    TimeSpan monHeure   = TimeSpan.Parse(textBoxModifHeure.Text.ToString());
                    if (debutHeure <= monHeure && monHeure <= finHeure)
                    {
                        LestauxdansLHeure.Add(unTaux);
                    }
                }
                //on vérifie le jour et on a le pricerate !!!!
                int monJour = (int)parsedDate.DayOfWeek;
                if (monJour == 0)
                {
                    monJour = 7;
                }
                foreach (PriceRate unTaux in LestauxdansLHeure)
                {
                    foreach (WeekDays unJour in unTaux.PriceRate_weekDays)
                    {
                        if (unJour.WeekDays_id == monJour)
                        {
                            monTaux = unTaux;
                        }
                    }
                }
                //on récupère nb places
                int mesPlaces = int.Parse(textBoxModifPlaces.Text.ToString());
                //on récupère la pièce de théâtre
                TheaterPiece maPiece = ModulePiecesTheatre.GetOneTheaterPiece(cbModifPiece.Text);
                float        duree   = maPiece.TheaterPiece_duration;
                //on récupère l'id
                dgvListeRepresentations.CurrentRow.Selected = true;
                int indexRow = dgvListeRepresentations.CurrentRow.Index;
                if (dgvListeRepresentations.Rows[indexRow].Cells[0].Value != DBNull.Value)
                {
                    Show laRepres = (Show)dgvListeRepresentations.Rows[indexRow].Cells[0].Value;
                    int  idShow   = laRepres.Show_id;

                    // Création de l'objet Show
                    Show show = new Show(idShow, parsedDate, mesPlaces, monTaux, maPiece);

                    //TimeSpan madureeShowFin = TimeSpan.FromHours((double)duree) + show.Show_dateTime.TimeOfDay;
                    //récupérer les datetime de toutes représentations
                    bool        trouve             = false;
                    List <Show> lesRepresentations = ModuleRepresentations.GetShows();
                    //s'il existe déjà une représentation à la date afficher message d'erreur
                    foreach (Show uneRepresentation in lesRepresentations)
                    {
                        TimeSpan madureeFin = TimeSpan.FromHours((double)duree) + uneRepresentation.Show_dateTime.TimeOfDay;


                        if (uneRepresentation.Show_dateTime.Date == show.Show_dateTime.Date && uneRepresentation.Show_id != idShow)
                        {
                            if (uneRepresentation.Show_dateTime.TimeOfDay <= show.Show_dateTime.TimeOfDay && show.Show_dateTime.TimeOfDay < madureeFin)
                            {
                                trouve = true;
                            }
                        }
                    }
                    if (trouve == true)
                    {
                        MessageBox.Show("Vous ne pouvez pas ajouter 2 représentations au même moment.", "Modification de la représentation", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        DialogResult result1 = MessageBox.Show("Etes vous sur de vouloir modifier cette représentation ?", "Modification de la représentation", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                        if (result1 == DialogResult.Yes)
                        {
                            // Appel de la méthode ModifierUtilisateur de la couche BLL
                            ModuleRepresentations.EditShow(show);
                            MessageBox.Show("La représentation a bien été modifiée.", "Modification de la représentation", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            grbModifRepresentation.Visible = false;
                            grbDetails.Visible             = true;
                            textBoxModifHeure.Text         = "";
                            textBoxModifPlaces.Text        = "";
                            DateTime today = DateTime.Today;
                            dateTimePickerModifDate.Text = today.ToString();
                            afficherRepresentations();


                            grbFiltres.Enabled = true;
                            dgvListeRepresentations.Enabled = true;
                        }
                    }
                }
            }
        }