Пример #1
0
        /// <summary>
        /// Evénement lors du clic sur le bouton Ajout Prof
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddProf_Click(object sender, EventArgs e)
        {
            int _lastSelected = 0;
            InfosClasse _infoClass = (InfosClasse)cmbClasse.SelectedItem;
            // Si la classe est nulle on est dans le cas d'une création sans liste
            if (_infoClass == null) { _infoClass = new InfosClasse(); }

            // On ajoute une Person
            Person _newPerson = new Person();
            _newPerson.Class = _infoClass.nameClass;
            _newPerson.ClassId = _infoClass.idClass;
            _newPerson.TypePerson = Constantes.cstProf;   // on crée un Prof
            int _maxId = ClassOutils.getMaxId(p_applClass.School.getListFromType(Constantes.cstIndividu));
            _newPerson.NumElement = ClassOutils.getMaxNumElement(p_SessionBase.Content.ListElement);
            _newPerson.Name = "P" + _newPerson.NumElement.ToString("D4");
            _newPerson.FirstName = String.Empty;
            _newPerson.Id = _maxId.ToString("D4");
            _newPerson.InfosPDV.IsGratis = true;    // Pour les PROFS, la photo est gratuite par défaut
            ListePersons.frmEditIndividu frmEdit = new ListePersons.frmEditIndividu(_newPerson, p_applClass.School, ModeAppel.Create);
            if (frmEdit.ShowDialog(this) == DialogResult.OK)
            {
                // On ajoute le Groupe dans la Session.
                // Il faut aussi l'ajouter dans la liste des éléments
                p_applClass.School.ListElement.Add(_newPerson);
                p_applClass.School.IsChanged = true;
                ClassOutils.saveSchoolFile(p_applClass);
                p_SessionBase.Content.ListElement.Add(_newPerson);

                // Dans le cas où on est en double vue on duplique l'élément
                if (p_applClass.School.DoubleView && p_SessionBase.Content.TypeSession == Constantes.cstIndividu)
                {
                    IElement _newElement = (IElement)_newPerson.Clone();
                    _newElement.Id = _newPerson.Id + "B";
                    _newElement.FirstName += "(BIS)";
                    _newElement.Photos = new List<FilePhoto>();
                    p_SessionBase.Content.ListElement.Add(_newElement);
                }
                // Il faut trier la liste pour etre cohérent à la liste affichée
                p_SessionBase.Content.ListElement = p_SessionBase.Content.ListElement.OrderBy(o => o.KeyAsc).ToList();
                _lastSelected = this.searchElement(_newPerson);
                this.ClearListe();
                this.ChargeListe(p_SessionBase.Content.ListElement);
            }
            if (lstPupils.Items.Count > 0)
            {
                lstPupils.Items[_lastSelected].Selected = true;
                lstPupils.Items[_lastSelected].EnsureVisible();
            }
            this.actualiseCompteurs();
        }
Пример #2
0
        /// <summary>
        /// Evénement lors du clic sur le bouton Ajout Eleve
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddEleve_Click(object sender, EventArgs e)
        {
            int _numElement;
            int _lastSelected = 0;
            InfosClasse _infoClass = (InfosClasse)cmbClasse.SelectedItem;
            // Si la classe est nulle on est dans le cas d'une création sans liste
            if (_infoClass == null) { _infoClass = new InfosClasse(); }

            switch (tabPriseDeVue.SelectedIndex)
            {
                case 0:
                    // On ajoute une Person
                    Person _newPerson = new Person();
                    _newPerson.Class = _infoClass.nameClass;
                    _newPerson.ClassId = _infoClass.idClass;
                    // Si la classe est toppé come gratuite, on ajoute tous les éléments en Gratuit
                    if (_infoClass.allGratis) { _newPerson.InfosPDV.IsGratis = true; }
                    _newPerson.TypePerson = Constantes.cstEleve;   // Par défaut, on crée un élève
                    int _maxId = ClassOutils.getMaxId(p_applClass.School.getListFromType(Constantes.cstIndividu));
                    _newPerson.Id = _maxId.ToString("D4");
                    _numElement = ClassOutils.getMaxNumElement(p_SessionBase.Content.ListElement);
                    _newPerson.NumElement = _numElement;
                    _newPerson.Name = "E" + _numElement.ToString("D4");
                    _newPerson.FirstName = String.Empty;
                    ListePersons.frmEditIndividu frmEdit = new ListePersons.frmEditIndividu(_newPerson, p_applClass.School, ModeAppel.Create);
                    if (frmEdit.ShowDialog(this) == DialogResult.OK)
                    {
                        // On ajoute le Groupe dans la Session.
                        // Il faut aussi l'ajouter dans la liste des éléments
                        p_applClass.School.ListElement.Add(_newPerson);
                        p_applClass.School.IsChanged = true;
                        ClassOutils.saveSchoolFile(p_applClass);
                        p_SessionBase.Content.ListElement.Add(_newPerson);

                        // Dans le cas où on est en double vue on duplique l'élément
                        if (p_applClass.School.DoubleView && p_SessionBase.Content.TypeSession == Constantes.cstIndividu)
                        {
                            _maxId++;
                            IElement _newElement = (IElement)_newPerson.Clone();
                            _newElement.Id = _newPerson.Id + "B";
                            _newElement.FirstName += "(BIS)";
                            _newElement.Photos = new List<FilePhoto>();
                            _newElement.InfosPDV = new InfoPdV();
                            p_SessionBase.Content.ListElement.Add(_newElement);
                        }
                        // Il faut trier la liste pour etre cohérent à la liste affichée
                        p_SessionBase.Content.ListElement = p_SessionBase.Content.ListElement.OrderBy(o => o.KeyAsc).ToList();
                        _lastSelected = this.searchElement(_newPerson);
                        this.ClearListe();
                        this.ChargeListe(p_SessionBase.Content.ListElement);
                    }
                    break;
                case 1:
                    // On ajoute un Group
                    Group _newGroup = new Group();
                    _newGroup.Class = _infoClass.nameClass;
                    _newGroup.ClassId = _infoClass.idClass;
                    // Si la classe est toppé come gratuite, on ajoute tous les éléments en Gratuit
                    if (_infoClass.allGratis) { _newGroup.InfosPDV.IsGratis = true; }
                    _newGroup.TypePerson = Constantes.cstGroup;   // Par défaut, on crée un élève
                    int _maxGrpId = ClassOutils.getMaxId(p_SessionBase.Content.ListElement);
                    _newGroup.NumElement = ClassOutils.getMaxNumElement(p_SessionBase.Content.ListElement);
                    _newGroup.Id = _maxGrpId.ToString("D4");
                    _newGroup.Name = "G" + _newGroup.NumElement.ToString("D4");
                    _newGroup.FirstName = String.Empty;
                    ListePersons.frmEditGroupe frmEditGrp = new ListePersons.frmEditGroupe(_newGroup, p_applClass.School, ModeAppel.Create);
                    if (frmEditGrp.ShowDialog(this) == DialogResult.OK)
                    {
                        // On ajoute le Groupe dans la Session.
                        // Il faut aussi l'ajouter dans la liste des éléments
                        p_applClass.School.ListElement.Add(_newGroup);
                        p_applClass.School.IsChanged = true;
                        ClassOutils.saveSchoolFile(p_applClass);
                        p_SessionBase.Content.ListElement.Add(_newGroup);
                        // Il faut trier la liste pour etre cohérent à la liste affichée
                        p_SessionBase.Content.ListElement = p_SessionBase.Content.ListElement.OrderBy(o => o.KeyAsc).ToList();
                        _lastSelected = this.searchElement(_newGroup);
                        this.ClearListe();
                        this.ChargeListe(p_SessionBase.Content.ListElement);
                    }
                    break;
                case 2:
                    // On ajoute une Fratrie
                    Person _newFratrie = new Person();
                    _newFratrie.Class = Constantes.cstFratrie;
                    _newFratrie.ClassId = 99999;
                    _newFratrie.TypePerson = Constantes.cstEleve;   // Une Fratrie est un Elève
                    int _maxFraId = ClassOutils.getMaxId(p_SessionBase.Content.ListElement);
                    _newFratrie.NumElement = ClassOutils.getMaxNumElement(p_SessionBase.Content.ListElement);
                    _newFratrie.Id = _maxFraId.ToString("D4");
                    _newFratrie.Name = "F" + _newFratrie.NumElement.ToString("D4");
                    _newFratrie.FirstName = String.Empty;
                    ListePersons.frmEditGroupe frmEditFratrie = new ListePersons.frmEditGroupe(_newFratrie, p_applClass.School, ModeAppel.Create);
                    if (frmEditFratrie.ShowDialog(this) == DialogResult.OK)
                    {
                        // On ajoute le Groupe dans la Session.
                        // Il faut aussi l'ajouter dans la liste des éléments
                        p_applClass.School.ListElement.Add(_newFratrie);
                        p_applClass.School.IsChanged = true;
                        ClassOutils.saveSchoolFile(p_applClass);
                        p_SessionBase.Content.ListElement.Add(_newFratrie);
                        // Il faut trier la liste pour etre cohérent à la liste affichée
                        p_SessionBase.Content.ListElement = p_SessionBase.Content.ListElement.OrderBy(o => o.KeyAsc).ToList();
                        _lastSelected = this.searchElement(_newFratrie);
                        this.ClearListe();
                        this.ChargeListe(p_SessionBase.Content.ListElement);
                    }
                    break;
            }
            if (lstPupils.Items.Count > 0)
            {
                lstPupils.Items[_lastSelected].Selected = true;
                lstPupils.Items[_lastSelected].EnsureVisible();
            }
            this.actualiseCompteurs();
        }
Пример #3
0
 /// <summary>
 /// Modifier un élément dans la liste
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void modifyItemMenu_Click(object sender, EventArgs e)
 {
     IElement _selectedItem = (IElement)ctxItemMenu.Tag;
     Form frmEdit;
     if (_selectedItem.TypeElement.Equals(Constantes.cstIndividu))
     {
         frmEdit = new ListePersons.frmEditIndividu(_selectedItem, p_applClass.School, ModeAppel.Update);
     }
     else
     {
         frmEdit = new ListePersons.frmEditGroupe(_selectedItem, p_applClass.School, ModeAppel.Append);
     }
     if (frmEdit.ShowDialog(this) == DialogResult.OK)
     {
         lstPupils.BeginUpdate();
         lstPupils.FocusedItem.SubItems[colFirstName.Index].Text = _selectedItem.GetStringDisplay(colFirstName.Index);
         lstPupils.FocusedItem.SubItems[colName.Index].Text = _selectedItem.GetStringDisplay(colName.Index);
         lstPupils.EndUpdate();
         lstPupils.Refresh();
         p_applClass.School.updateElement(_selectedItem);
         this.RenamePhoto(_selectedItem);
     }
 }
        /// <summary>
        /// Supprimer un élève
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void supprimerToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string _className = treeView.SelectedNode.Parent.Text;
            string _idInd = treeView.SelectedNode.Name;
            Log.Debug("Ouverture du Formulaire [Supprimer un élève] {NAME:" + _idInd + " - CLASS:" + _className + "}");
            IElement _indiv = ClassOutils.getItemFromId(p_appClass.School.getListFromType(Constantes.cstIndividu), _idInd, _className);

            ListePersons.frmEditIndividu frmEdit = new ListePersons.frmEditIndividu(_indiv, p_appClass.School, ModeAppel.Delete);
            if (frmEdit.ShowDialog(this) == DialogResult.OK)
            {
                this.deleteIndividu((Person)_indiv);
                this.refreshList();
            }
        }
 /// <summary>
 /// Ajout d'un individu
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnAdd_Click(object sender, EventArgs e)
 {
     Person _newPerson = new Person();
     _newPerson.TypePerson = Constantes.cstEleve;   // Par défaut, on crée un élève
     int _maxId = ClassOutils.getMaxId(p_appClass.School.getListPerson(Constantes.cstEleve));
     _newPerson.Id = _maxId.ToString("D4");
     ListePersons.frmEditIndividu frmEdit = new ListePersons.frmEditIndividu(_newPerson, p_appClass.School, ModeAppel.Create);
     if (frmEdit.ShowDialog(this) == DialogResult.OK) { this.addIndividu(_newPerson); this.refreshList(); }
 }
 /// <summary>
 /// Ajouter un élève depuis le menu contextuel
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void addToolStripMenuItem_Click(object sender, EventArgs e)
 {
     string _nodeValue;
     if (this.treeView.SelectedNode.Parent == null) { _nodeValue = this.treeView.SelectedNode.Text; }
     else { _nodeValue = this.treeView.SelectedNode.Parent.Text; }
     Person _newPerson = new Person();
     _newPerson.TypePerson = Constantes.cstEleve;   // Par défaut, on crée un élève
     _newPerson.Class = _nodeValue;
     _newPerson.ClassId = p_appClass.School.GetIdClasse(_nodeValue);
     int _maxId = ClassOutils.getMaxId(p_appClass.School.getListPerson(Constantes.cstEleve));
     _newPerson.Id = _maxId.ToString("D4");
     _newPerson.NumElement = _maxId;
     Log.Debug("Ouverture du Formulaire [Ajouter un élève] {CLASS:" + _nodeValue + "}");
     ListePersons.frmEditIndividu frmEdit = new ListePersons.frmEditIndividu(_newPerson, p_appClass.School, ModeAppel.Create);
     if (frmEdit.ShowDialog(this) == DialogResult.OK) { this.addIndividu(_newPerson); this.refreshList(); }
 }