private void textBox1_TextChanged(object sender, EventArgs e) { Ctrl_EncodageRepas controle = new Ctrl_EncodageRepas(); // appelle la méthode liée à la procédure stockée controle.filtreEleve(ref dGdVw_DetailEleve, txtBx_RechNom.Text); }
private void verification_Periode() { DateTime dtDebutFactureActuelle = new DateTime(); DateTime dtFinFactureActuelle = new DateTime(); DateTime dtFinSemaine = new DateTime(); DateTime dtFactureSuivanteDebut = new DateTime(); DateTime dtFactureSuivanteFin = new DateTime(); Boolean factureMoisSuivant; dtFinSemaine = startDate.AddDays(4); Ctrl_EncodageRepas controle = new Ctrl_EncodageRepas(); Ctrl_EncodageRepas controle2 = new Ctrl_EncodageRepas(); //Récupération de la date de facture de début et de fin en fonction de la semaine //Si aucune période n'est comprise dans cette date, alors on prend la date max selon l'id tuteur dtDebutFactureActuelle = Convert.ToDateTime(controle.PeriodeDebut(id_eleve, startDate.ToString("yyyyMMdd"), false)); dtFinFactureActuelle = Convert.ToDateTime(controle.PeriodeFin(id_eleve, startDate.ToString("yyyyMMdd"), false)); //Test pour voir si la période est à cheval sur 2 factures, si oui, dtFactureSuivanteDebut et dtFactureSuivanteFin auront une valeur correspondant aux dates de début et de cloture de facutre du mois suivant, autrement elles vaudront 2000-01-01 (valeur arbitraire à tester) dtFactureSuivanteDebut = Convert.ToDateTime(controle2.PeriodeDebut(id_eleve, dtFinSemaine.ToString("yyyyMMdd"), true)); dtFactureSuivanteFin = Convert.ToDateTime(controle2.PeriodeFin(id_eleve, dtFinSemaine.ToString("yyyyMMdd"), true)); //test de la valeur retournée pour créer un flag faactureMoisSuivant if (dtFactureSuivanteDebut == Convert.ToDateTime("2000-01-01")) { factureMoisSuivant = false; } else { factureMoisSuivant = true; } //On regarde si la date de début de repas est comprise dans une période de facturation int debut = DateTime.Compare(startDate, dtDebutFactureActuelle); //si le resultat vaut 0 ou 1, la date est = ou supérieure à la periode de début de facture int fin = DateTime.Compare(startDate, dtFinFactureActuelle); //si le résultat vaut 1, on est au delà de la dernière facture, sinon on est dans la période if (fin == 1) { groupBoxLundi.Enabled = true; groupBoxMardi.Enabled = true; groupBoxMercredi.Enabled = true; groupBoxJeudi.Enabled = true; groupBoxVendredi.Enabled = true; } else if (fin <= 0) { //Procédure pour récupérer la différence de jour entre la fin de période facturée et la fin de semaine if (factureMoisSuivant == false) //si il n'y a pas de facture le mois suivant { TimeSpan ts = dtFinSemaine - dtFinFactureActuelle; int differenceInDays = ts.Days; affichageDifferenceJour(differenceInDays); } else //Si il y a une facture le mois suivant { TimeSpan ts = dtFinSemaine - dtFactureSuivanteFin; int differenceInDays = ts.Days; affichageDifferenceJour(differenceInDays); } } }
private void btConfirmation_Click(object sender, EventArgs e) { int resultat = 0; int modif = 0; DateTime startDate = Convert.ToDateTime(labelDebut.Text); for (int i = 0; i < 5; i++) { // On vérifie si la période a déjà été introduite dans la DB, si oui, on fait un update, sinon un insert if (labelEtat.Visible) { Ctrl_EncodageRepas controle = new Ctrl_EncodageRepas(); String valInsert = controle.ReqInsertRepas(startDate.AddDays(i).ToString("yyyyMMdd"), id_eleve.ToString(), tab_id_repas[i].ToString()); resultat = controle.insertData("tbl_relation_repas", valInsert); } else { String donnees; int id = 0; //recuperer l'id repas Ctrl_EncodageRepas controle = new Ctrl_EncodageRepas(); id = controle.recupIdERepas(startDate.AddDays(i).ToString("yyyyMMdd"), id_eleve.ToString()); donnees = controle.ReqUpdateRepas(startDate.AddDays(i).ToString("yyyyMMdd"), id_eleve.ToString(), tab_id_repas[i].ToString()); Ctrl_EncodageRepas controle1 = new Ctrl_EncodageRepas(); modif = controle1.update(donnees, "tbl_relation_repas", id); } } if (resultat > 0) { MessageBox.Show("Les repas de l'élève " + txtBx_Nom.Text + " " + txtBx_Prenom.Text + " ont bien été ajouté pour la semaine du " + labelDebut.Text + " au " + labelFin.Text); } if (modif > 0) { MessageBox.Show("Les repas de l'élève " + txtBx_Nom.Text + " " + txtBx_Prenom.Text + " ont bien été modifié pour la semaine du " + labelDebut.Text + " au " + labelFin.Text); } chargement_Repas(startDate); }