示例#1
0
        /// <summary>
        /// renvoie la liste des adhérents
        /// </summary>
        /// <returns></returns>
        public List <Adherent> ListeAdherent()
        {
            List <Adherent> liste_adherents = new List <Adherent>();
            StreamReader    st2             = new StreamReader(Adherents);
            string          ligne           = "";

            while (st2.Peek() > 0)
            {
                ligne = st2.ReadLine();
                string[] mot      = ligne.Split(';');
                Adherent individu = new Adherent(Convert.ToInt32(mot[0]), mot[1], mot[4], mot[2], mot[3], mot[5]);

                liste_adherents.Add(individu);
            }
            st2.Close();
            return(liste_adherents);
        }
示例#2
0
        /// <summary>
        /// permet d'ajouter une personna adhérente ou bénéficiaire
        /// </summary>
        public void Ajouterpersonne()
        {
            Console.WriteLine("quel type de personne voulez-vous ajouter ?");
            int reponse = 0;

            while (reponse != 1 && reponse != 2)
            {
                Console.WriteLine("tapez 1 pour modifier un adhérent");
                Console.WriteLine("tapez 2 pour modifier un bénéficiaire");
                reponse = Convert.ToInt32(Console.ReadLine());
            }
            Console.WriteLine("saisissez son identifiant");
            int identifiant = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("saisissez son nom");
            string nom = Console.ReadLine();

            Console.WriteLine("saisissez son prénom");
            string prenom = Console.ReadLine();

            Console.WriteLine("saisissez son adresse");
            string adresse = Console.ReadLine();

            Console.WriteLine("saisissez son numéro de téléphone");
            string tel = Console.ReadLine();

            if (reponse == 1)
            {
                Console.WriteLine("saisissez sa fonction");
                string   fonction = Console.ReadLine();
                Adherent adhe     = new Adherent(identifiant, nom, prenom, adresse, tel, fonction);
                Ecrire(adhe.Tostring2(), Adherents);
            }
            else
            {
                Console.WriteLine("saisissez sa Date de naissance en jj/mm/aaaa");
                DateTime     date  = Convert.ToDateTime(Console.ReadLine());
                Beneficiaire benef = new Beneficiaire(identifiant, nom, prenom, adresse, tel, date);
                Ecrire(benef.ToString2(), Beneficiaires);
            }
        }
示例#3
0
        /// <summary>
        /// demande à un adhérent de s'identifier
        /// </summary>
        public Adherent Utilisateur()
        {
            int      retour = -1;
            int      ID;
            Adherent user = null;

            while (retour == -1)
            {
                int compteur = 0;
                Console.WriteLine("Quel est votre identifiant d'adhérents?");
                ID = Convert.ToInt32(Console.ReadLine());
                while (compteur < ListeAdherents.Count)
                {
                    if (ListeAdherents[compteur].Identifiant == ID)//on trouve la ligne dont l'identifiant est le même
                    {
                        user     = new Adherent(ListeAdherents[compteur].Identifiant, ListeAdherents[compteur].Nom, ListeAdherents[compteur].Prenom, ListeAdherents[compteur].Coordonnes, ListeAdherents[compteur].Tel, "Association");
                        compteur = ListeAdherents.Count;
                        retour++;
                    }
                    compteur++;
                }
            }
            return(user);
        }
示例#4
0
        /// <summary>
        /// permet de modifier les coordonnées d'une personne (adhérente ou bénéficiaire)
        /// </summary>
        public void ModifierPersonne()
        {
            Console.WriteLine("quel type de personne voulez-vous modifier ?");
            int reponse = 0;

            while (reponse != 1 && reponse != 2)
            {
                Console.WriteLine("tapez 1 pour modifier un adhérent");
                Console.WriteLine("tapez 2 pour modifier un bénéficiaire");
                reponse = Convert.ToInt32(Console.ReadLine());
            }
            string fichier;

            if (reponse == 1)
            {
                fichier = Adherents;
                List <Adherent> Liste       = listes.ListeAdherent();
                List <int>      NumAdherent = new List <int>();
                foreach (Adherent adh in Liste)
                {
                    NumAdherent.Add(adh.Identifiant);
                }
                Liste.ForEach(x => Console.WriteLine(x));
                Console.WriteLine("saisissez l'identifiant de l'adhérent que vous souhaitez modifier");
                int ID     = Convert.ToInt32(Console.ReadLine());
                int indice = NumAdherent.IndexOf(ID);
                while (indice == -1)
                {
                    Console.WriteLine("identifiant introuvable, ressaisissez le");
                    ID     = Convert.ToInt32(Console.ReadLine());
                    indice = NumAdherent.IndexOf(ID);
                }
                Console.WriteLine("saisissez son nom");
                string nom = Console.ReadLine();
                Console.WriteLine("saisissez son prénom");
                string prenom = Console.ReadLine();
                Console.WriteLine("saisissez son adresse");
                string adreses = Console.ReadLine();
                Console.WriteLine("saisissez son numéro de téléphone");
                string tel = Console.ReadLine();
                Console.WriteLine("saisissez sa fonction");
                string   fonction = Console.ReadLine();
                Adherent adhe     = new Adherent(ID, nom, prenom, adreses, tel, fonction);
                string   ligne    = adhe.Tostring2();
                int      Numligne = chercher(Convert.ToString(ID), Adherents);
                ModifierLigne(Adherents, Numligne, ligne);
            }
            else
            {
                fichier = Beneficiaires;
                List <Beneficiaire> Liste    = listes.ListeBenef();
                List <int>          NumBenef = new List <int>();
                foreach (Beneficiaire benef in Liste)
                {
                    NumBenef.Add(benef.Identifiant);
                }
                Liste.ForEach(x => Console.WriteLine(x));
                Console.WriteLine("saisissez l'identifiant du bénéficiaire que vous souhaitez modifier");
                int ID     = Convert.ToInt32(Console.ReadLine());
                int indice = NumBenef.IndexOf(ID);
                while (indice == -1)
                {
                    Console.WriteLine("identifiant introuvable, ressaisissez le");
                    ID     = Convert.ToInt32(Console.ReadLine());
                    indice = NumBenef.IndexOf(ID);
                }
                Console.WriteLine("saisissez son nom");
                string nom = Console.ReadLine();
                Console.WriteLine("saisissez son prénom");
                string prenom = Console.ReadLine();
                Console.WriteLine("saisissez son adresse");
                string adreses = Console.ReadLine();
                Console.WriteLine("saisissez son numéro de téléphone");
                string tel = Console.ReadLine();
                Console.WriteLine("saisissez sa date de naissance");
                DateTime     DateNaissance = Convert.ToDateTime(Console.ReadLine());
                int          Numligne      = chercher(Convert.ToString(ID), Beneficiaires);
                Beneficiaire benef2        = new Beneficiaire(ID, nom, prenom, adreses, tel, DateNaissance);
                string       ligne         = benef2.ToString2();
                ModifierLigne(Beneficiaires, Numligne, ligne);
            }
        }
示例#5
0
        /// <summary>
        /// permet à un adhérent de transférer un don à un bénéficiaire, cela enregistre alors le don dans les archives
        /// </summary>
        public void TransfertDonBeneficiaire()
        {
            Adherent user = Utilisateur();

            Console.WriteLine("où se trouve le don à transférer ?");
            int reponse = 0;

            while (reponse != 1 && reponse != 2 && reponse != 3)
            {
                Console.WriteLine("tapez 1 pour le garde-meuble");
                Console.WriteLine("tapez 2 pour le depot-vente");
                Console.WriteLine("tapez 3 pour l'association");
                reponse = Convert.ToInt32(Console.ReadLine());
            }
            if (reponse == 1)
            {
                List <Objet_volumineux> Liste = listes.List_Objet_volumineux(GardeMeuble);
                Liste.ForEach(x => Console.WriteLine(x.Tostring1()));     //affiche la liste des dons
                Console.WriteLine("Saisissez le numéro de référence du don que vous voulez récupérer");
                //création d'une liste contenant uniquement les identifiants des objets

                List <int> NumListe = new List <int>();
                foreach (Objet_volumineux obj in Liste)
                {
                    NumListe.Add(obj.Ref_objet);
                }
                int numero = Convert.ToInt32(Console.ReadLine());
                int indice = NumListe.IndexOf(numero);    //la fonction Indexof permet de vérifier si un élément existe et renvoie dans ce cas son indice dans la liste (renvoie -1 sinon)
                while (indice == -1)
                {
                    Console.WriteLine("objet introuvable, ressaisissez son numéro de référence");
                    numero = Convert.ToInt32(Console.ReadLine());
                    indice = NumListe.IndexOf(numero);
                }

                string   objet = ExtraireString(Convert.ToString(numero), GardeMeuble);
                string[] mots  = objet.Split(";");
                mots[mots.Length - 1] = Convert.ToString(DateTime.Now);
                objet = "";
                for (int i = 0; i < mots.Length - 1; i++)
                {
                    objet += mots[i] + ";";
                }
                objet += mots[mots.Length - 1];
                int NumLigne = chercher(Convert.ToString(numero), GardeMeuble);
                Ecrire(objet, archive);
                SupprimerLigne(GardeMeuble, NumLigne);
            }
            if (reponse == 2)
            {
                //stockage de tous les dépots ventes dans une liste
                Liste_Depots_Vente.ForEach(x => Console.WriteLine(x.Tostring2()));
                List <int> NumListe_Depots_Vente = new List <int>();
                foreach (Depot_vente dpv in Liste_Depots_Vente)
                {
                    NumListe_Depots_Vente.Add(dpv.Identifiant);
                }

                //recherche du dépot vente
                Console.WriteLine("saisissez l'identifiant du dépot de vente où se trouve l'objet que vous souhaitez acheter");
                int numero = Convert.ToInt32(Console.ReadLine());

                int indice = NumListe_Depots_Vente.IndexOf(numero);
                while (indice == -1)
                {
                    Console.WriteLine("depot introuvable, ressaisissez son identifiant");
                    numero = Convert.ToInt32(Console.ReadLine());
                    indice = NumListe_Depots_Vente.IndexOf(numero);
                }

                //stockage de tous les objets du dépot vente sélectionné dans une liste
                List <Objet_volumineux> Liste = listes.List_Objet_volumineux(DepotVente);


                for (int i = 0; i < Liste.Count; i++)
                {
                    Console.WriteLine("ID : " + Liste[i].LieuStockage.Identifiant);
                    if (Liste[i].LieuStockage.Identifiant != numero)
                    {
                        Liste.RemoveAt(i);
                        i--;
                    }
                }
                List <int> NumListe = new List <int>();
                foreach (Objet_volumineux obj in Liste)
                {
                    NumListe.Add(obj.Ref_objet);
                }

                //recherche de l'objet à acheter
                Console.WriteLine("voici les objets disponibles :");
                Liste.ForEach(x => Console.WriteLine(x.Tostring1()));
                Console.WriteLine("saisissez l'identifiant de l'objet que vous souhaitez acheter");
                int ID = Convert.ToInt32(Console.ReadLine());
                indice = NumListe.IndexOf(ID);
                while (indice == -1)
                {
                    Console.WriteLine("objet introuvable, ressaisissez son numéro de référence");
                    ID     = Convert.ToInt32(Console.ReadLine());
                    indice = NumListe.IndexOf(ID);
                }

                //actualisation de la date de vente et archivage
                string   objet = ExtraireString(Convert.ToString(ID), DepotVente);
                string[] mots  = objet.Split(";");
                mots[16] = Convert.ToString(DateTime.Now);
                string objet2 = "";
                for (int i = 0; i < mots.Length - 1; i++)
                {
                    objet2 += mots[i];
                    objet2 += ";";
                }
                objet2 += mots[mots.Length - 1];
                Ecrire(objet2, archive);
                int Numligne = chercher(Convert.ToString(ID), DepotVente);
                SupprimerLigne(DepotVente, Numligne);

                //il faut maintenant actualiser le solde du dépot vente
                Numligne = chercher(Convert.ToString(numero), ListeDepotsVente);
                string ligne = ExtraireString(Convert.ToString(numero), ListeDepotsVente);
                mots = ligne.Split(";");
                double solde = Convert.ToDouble(mots[4]) + Liste[indice].Montant;
                mots[4] = Convert.ToString(solde);
                ligne   = "";
                for (int i = 0; i < mots.Length - 1; i++)
                {
                    ligne += mots[i] + ";";
                }
                ligne += mots[4];
                ModifierLigne(ListeDepotsVente, Numligne, ligne);
            }
            if (reponse == 3)
            {
                List <Objet_volumineux> Liste = listes.List_Objet_volumineux(Association);
                Liste.ForEach(x => Console.WriteLine(x.Tostring1()));     //affiche la liste des dons
                Console.WriteLine("Saisissez le numéro de référence du don que vous voulez récupérer");
                //création d'une liste contenant uniquement les identifiants des objets
                List <int> NumListe = new List <int>();
                foreach (Objet_volumineux obj in Liste)
                {
                    NumListe.Add(obj.Ref_objet);
                }
                int numero = Convert.ToInt32(Console.ReadLine());
                int indice = NumListe.IndexOf(numero);    //la fonction Indexof permet de vérifier si un élément existe et renvoie dans ce cas son indice dans la liste (renvoie -1 sinon)
                while (indice == -1)
                {
                    Console.WriteLine("objet introuvable, ressaisissez son numéro de référence");
                    numero = Convert.ToInt32(Console.ReadLine());
                    indice = NumListe.IndexOf(numero);
                }
                Couper_coller(Association, archive, Convert.ToString(numero));
            }

            //afficher le fichier des dons non traités de l'association
        }
示例#6
0
        /// <summary>
        /// permet  à un adhérent d'accepter (ou refuser) un don non traité et de le stocker au garde meuble, ou dans un dépot vente, ou dans l'association (ou dans les archives pour un don refusé)
        /// </summary>
        public void accepterDon()
        {
            Adherent user = Utilisateur();

            Console.WriteLine("voici la liste des dons non traités");

            //afficher le fichier des dons non traités de l'association
            List <String> lines = File.ReadAllLines(DonsNonTraites).ToList();

            foreach (string don in lines)
            {
                Console.WriteLine(don);
            }

            Console.WriteLine("voulez-vous accepter un don ?");
            string reponse = "";

            while (reponse != "oui" && reponse != "non")
            {
                Console.WriteLine("répondez par oui ou par non");
                reponse = Console.ReadLine();
            }

            while (reponse == "oui")
            {
                //choisir le don

                Console.WriteLine("saisissez le numéro de référence du don à saisir");
                string   NumRef      = Console.ReadLine();
                string   don         = ExtraireString(NumRef, DonsNonTraites);
                string[] mots        = don.Split(";");
                DateTime date        = Convert.ToDateTime(mots[1]);
                string   Type        = mots[2];
                string   NomDonateur = mots[3];
                string   NumTel      = mots[4];
                string   adresse     = mots[5];
                string   description = mots[6];
                mots[7] = Convert.ToString(true);
                bool accepte = Convert.ToBoolean(mots[7]);

                //demander où stocker le don
                int lieu = 0;
                Console.WriteLine("où voulez-vous stocker le don ?");
                while (lieu < 1 || lieu > 3)
                {
                    Console.WriteLine("tapez 1 pour le garde-meuble");
                    Console.WriteLine("tapez 2 pour le dépot-vente");
                    Console.WriteLine("tapez 3 pour l'association");
                    lieu = Convert.ToInt32(Console.ReadLine());
                }
                DateTime DateDepot = DateTime.Now;

                if (lieu == 1)
                {
                    TransfertGardeMeuble(mots);
                }

                if (lieu == 2)
                {
                    TransfertDepotVente(mots);
                }
                if (lieu == 3)
                {
                    Couper_coller(DonsNonTraites, Association, NumRef);
                    string   ligne = ExtraireString(NumRef, Association);
                    string[] mots2 = ligne.Split(";");
                    mots2[7] = Convert.ToString(true);
                    ligne    = "";
                    for (int i = 0; i < mots2.Length - 1; i++)
                    {
                        ligne += mots[i] + ";";
                    }
                    ligne += mots2[mots2.Length - 1];
                    int Numligne = chercher(NumRef, Association);
                    ModifierLigne(Association, Numligne, ligne);
                }
                reponse = "";
                Console.WriteLine("voulez-vous accepter un autre don ?");
                while (reponse != "oui" && reponse != "non")
                {
                    Console.WriteLine("répondez par oui ou par non");
                    reponse = Console.ReadLine();
                }
            }
            Console.WriteLine("voulez-vous refuser un don");
            string reponse2 = "";

            while (reponse2 != "oui" && reponse2 != "non")
            {
                Console.WriteLine("répondez par oui ou par non");
                reponse2 = Console.ReadLine();
            }
            while (reponse2 == "oui")
            {
                Console.WriteLine("saisissez le numéro de référence du don à refuser");
                string   NumRef = Console.ReadLine();
                string   don    = ExtraireString(NumRef, DonsNonTraites);
                string[] mots   = don.Split(";");
                mots[7] = Convert.ToString(false);
                string LigneDon2 = "";

                for (int i = 0; i < mots.Length; i++)
                {
                    LigneDon2 += mots[i];
                    LigneDon2 += ";";
                }
                LigneDon2 += DateTime.Now;
                Ecrire(LigneDon2, archive);
                int NumLigne = chercher(mots[0], DonsNonTraites);
                SupprimerLigne(DonsNonTraites, NumLigne);
                reponse2 = "";
                Console.WriteLine("voulez-vous refuser un autre don ?");
                while (reponse2 != "oui" && reponse2 != "non")
                {
                    Console.WriteLine("répondez par oui ou par non");
                    reponse2 = Console.ReadLine();
                }
            }
        }