/// <summary> /// Function for add a new fiche in BDD /// </summary> /// <param name="ctx"> dbDataContext </param> /// <param name="idUser"> String </param> /// <param name="date"> String </param> /// <param name="submit"> Boolean </param> public static void insertNewFiche(dbDataContext ctx, string idUser, string date, bool submit) { var fiche = new fichefrais { idVisiteur = idUser, mois = date, nbJustificatifs = 0, montantValide = 0, dateModif = DateTime.Now, idEtat = "CR" }; ctx.fichefrais.InsertOnSubmit(fiche); var req = from f in ctx.fraisforfait select f; foreach (var element in req) { var ligneFrais = new lignefraisforfait { idVisiteur = idUser, mois = date, idFraisForfait = element.id, quantite = 0 }; ctx.lignefraisforfait.InsertOnSubmit(ligneFrais); } if (submit) { ctx.SubmitChanges(); } }
partial void Updatefichefrais(fichefrais instance);
partial void Deletefichefrais(fichefrais instance);
partial void Insertfichefrais(fichefrais instance);
private void detach_fichefrais(fichefrais entity) { this.SendPropertyChanging(); entity.etat = null; }
private void attach_fichefrais(fichefrais entity) { this.SendPropertyChanging(); entity.visiteur = this; }
/// <summary> /// Function for init datas in inputs /// </summary> private void initDatas() { var fiche = from f in this.ctx.fichefrais where f.idVisiteur == viewUser.Value && f.mois == viewDate && f.idEtat == "CL" select f; if (!fiche.Any()) { MessageBox.Show("Pas de fiche de frais pour ce visiteur ce mois-ci"); } else { this.ficheValider = fiche.First(); setInfosValidate(this.ficheValider.dateModif, this.ficheValider.etat.libelle); getLignesForfaits(); getLignesHorsForfaits(); this.labelDate.Visible = true; this.labelEtat.Visible = true; this.textBoxEtat.Visible = true; this.textBoxDate.Visible = true; this.labelForfaitiseViewComptable.Visible = true; this.labelNonForfaitiseViewComptable.Visible = true; this.dataGridViewComptableForfaitise.Visible = true; this.dataGridViewComptableNonForfaitise.Visible = true; this.buttonValidateComptableView.Visible = true; this.buttonResetComptableView.Visible = true; dataGridViewComptableForfaitise.CellMouseDown += dataGridViewComptableForfaitise_CellMouseDown; } }
/// <summary> /// Function to start on click in buttonValiderSuivi button /// </summary> /// <param name="sender"> Object </param> /// <param name="e"> Events </param> private void buttonValiderSuivi_Click(object sender, EventArgs e) { if (this.comboBoxSelectUserSuivi.SelectedIndex == -1) { MessageBox.Show("Veuillez sélectionner un utilisateur"); } else { viewUser = (Functions.Item)this.comboBoxSelectUserSuivi.SelectedItem; viewDate = this.dateTimePickerSelectDateSuivi.Value.ToString("MMyyyy"); var listFiche = from f in this.ctx.fichefrais join E in this.ctx.etat on f.idEtat equals E.id where f.idVisiteur == viewUser.Value && f.mois == viewDate && (f.idEtat == "VA" || f.idEtat == "MP" || f.idEtat == "RB") select f; if (!listFiche.Any()) { MessageBox.Show("Pas de fiche de frais pour ce visiteur ce mois"); } else { this.ficheSuivi = listFiche.First(); this.textBoxEtatSuivi.Text = this.ficheSuivi.etat.libelle; this.textBoxDateSuivi.Text = string.Format(format, this.ficheSuivi.dateModif); //Init datagridview's this.dataGridViewFraisSuivi.DataSource = null; var lignesForfaits = Functions.getLignesForfaits(this.ctx, viewUser, viewDate); this.dataGridViewFraisSuivi.DataSource = lignesForfaits; this.dataGridViewFraisSuivi.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; this.dataGridViewNonFraisSuivi.DataSource = null; var lignesHorsForfaits = Functions.getLignesHorsForfaits(this.ctx, viewUser, viewDate); this.dataGridViewNonFraisSuivi.DataSource = lignesHorsForfaits; this.dataGridViewNonFraisSuivi.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; this.labelComboDateSuivi.Visible = true; this.labelComboEtatSuivi.Visible = true; this.textBoxEtatSuivi.Visible = true; this.textBoxDateSuivi.Visible = true; this.dataGridViewFraisSuivi.Visible = true; this.dataGridViewNonFraisSuivi.Visible = true; if (this.ficheSuivi.idEtat == "VA") { this.buttonSuiviPaiement.Visible = true; this.buttonSuiviRembourse.Visible = true; } else if (this.ficheSuivi.idEtat == "MP") { this.buttonSuiviRembourse.Visible = true; } } } }