Exemplo n.º 1
0
        public Facture(Devis D)
        {
            Bdd2.Ajouter(this);

            Devis = D;

            int pNo = No;

            int pIndice = 0;

            // On recherche le numero et l'indice de la facture
            if (D.ListeFacture.Count > 0)
            {
                pNo     = D.ListeFacture[0].No;
                pIndice = Math.Max(D.ListeFacture.Max(x => x.Indice) + 1, D.ListeFacture.Count);
            }

            // Si on rajoute une facture, c'est que le devis est au moins validé
            if ((int)Devis.Statut < (int)StatutDevis_e.cValide)
            {
                Devis.Statut = StatutDevis_e.cValide;
            }

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Devis.Client.Societe.PrefixUtilisateurCourant;

            // On met à jour le no et l'indice après l'ajout de l'objet dans la base

            No = pNo; Indice = pIndice;

            MajLigne_Facture();
        }
Exemplo n.º 2
0
        public Devis(Client C)
        {
            Bdd2.Ajouter(this);

            Client             = C;
            Prefix_Utilisateur = C.Societe.PrefixUtilisateurCourant;
        }
Exemplo n.º 3
0
        public Adresse_Client(Client C)
        {
            Client = C;
            Bdd2.Ajouter(this);

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Client.Societe.PrefixUtilisateurCourant;
        }
Exemplo n.º 4
0
        public Heure(Devis D)
        {
            Bdd2.Ajouter(this);

            Devis = D;

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Devis.Client.Societe.PrefixUtilisateurCourant;
        }
Exemplo n.º 5
0
        public Client(Societe S)
        {
            Bdd2.Ajouter(this);

            Societe = S;

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Societe.PrefixUtilisateurCourant;
        }
Exemplo n.º 6
0
        public Achat(Devis D)
        {
            Bdd2.Ajouter(this);

            Devis = D;

            // On initialise le fournisseur
            ListeObservable <Fournisseur> F = Devis.Client.Societe.ListeFournisseur;

            if ((F != null) && (F.Count > 0))
            {
                Fournisseur = F[0];
            }


            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Devis.Client.Societe.PrefixUtilisateurCourant;
        }
Exemplo n.º 7
0
        public Ligne_Poste(Poste P)
        {
            Bdd2.Ajouter(this);

            Poste = P;

            // On initialise la famille
            ListeObservable <Famille> F = Poste.Devis.Client.Societe.ListeFamille;

            if ((F != null) && (F.Count > 0))
            {
                Famille = F[0];
            }

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Poste.Devis.Client.Societe.PrefixUtilisateurCourant;

            No = P.ListeLignePoste.Count + 1;

            Init    = true;
            Famille = F[0];

            Init = true;
        }
Exemplo n.º 8
0
        public Heure(Poste poste)
        {
            Bdd2.Ajouter(this);

            Poste = poste;
        }
Exemplo n.º 9
0
        public Poste(Chantier chantier)
        {
            Bdd2.Ajouter(this);

            Chantier = chantier;
        }
Exemplo n.º 10
0
        public Chantier(Societe societe)
        {
            Bdd2.Ajouter(this);

            Societe = societe;
        }
Exemplo n.º 11
0
        public Achat(Poste poste)
        {
            Bdd2.Ajouter(this);

            Poste = poste;
        }
Exemplo n.º 12
0
        private Boolean Start()
        {
            Log.Entete();

            String        BaseSelectionnee = "";
            List <String> ListeBase        = Bdd2.ListeBase();

            if (ListeBase.Count == 1)
            {
                BaseSelectionnee = ListeBase[0];
            }
            else
            {
                SelectionnerBase Fenetre = new SelectionnerBase(ListeBase);
                Fenetre.ShowDialog();
                BaseSelectionnee = Fenetre.BaseSelectionnee;
            }



            if (!Bdd2.Initialiser(BaseSelectionnee))
            {
                return(false);
            }

            xConnexionCourante.Text = BaseSelectionnee + ", connecté à l'adresse : " + Bdd2.ConnexionCourante;

            pSociete = Bdd2.Liste <Societe>()[0];

            var ListeFamille = Bdd2.Liste <Famille>();

            Bdd2.PreCharger(typeof(Famille), new List <ObjetGestion>(ListeFamille));

            pSociete.OnModifyUtilisateur += new Societe.OnModifyUtilisateurEventHandler(id => { Properties.Settings.Default.IdUtilisateur = id; Properties.Settings.Default.Save(); });

            ListeObservable <Utilisateur> pListeUtilisateur = pSociete.ListeUtilisateur;

            Utilisateur U = null;

            if (pListeUtilisateur.Count > 0)
            {
                try
                {
                    U = pListeUtilisateur.First(u => { return(u.Id == Properties.Settings.Default.IdUtilisateur); });
                }
                catch { U = pListeUtilisateur[0]; }
            }
            else
            {
                U = new Utilisateur(pSociete);
                U.Prefix_Utilisateur = "A";
                Bdd2.Ajouter(U);
            }

            pSociete.UtilisateurCourant = U;

            this.DataContext = pSociete;

            TrierListe <Client>(xListeClient);
            TrierListe <Devis>(xListeDevis);
            TrierListe <Facture>(xListeFactureClient);
            TrierListe <Facture>(xListeFactureDevis);

            _RechercherClient             = new RechercheTexte <Client>(xListeClient);
            xRechercherClient.DataContext = _RechercherClient;

            _RechercherDevis             = new RechercheTexte <Devis>(xListeDevis);
            xRechercherDevis.DataContext = _RechercherDevis;

            _RechercherFactureClient             = new RechercheTexte <Facture>(xListeFactureClient);
            xRechercherFactureClient.DataContext = _RechercherFactureClient;

            return(true);
        }
Exemplo n.º 13
0
        public Ligne_Facture(Facture F, Poste P)
        {
            Bdd2.Ajouter(this);

            Facture = F;
            Poste   = P;

            No = P.No;

            // On rajoute le prefix après pour être sûr qu'il ne sera pas ecrasé par une valeur par defaut
            Prefix_Utilisateur = Facture.Devis.Client.Societe.PrefixUtilisateurCourant;

            // Pre-remplissage des champs

            ListeObservable <Ligne_Facture> ListeLigneFacture = P.ListeLigneFacture;

            if (ListeLigneFacture.Count > 0)
            {
                CalculLigne_Facture = ListeLigneFacture[0].CalculLigne_Facture;

                Double pQuantite    = P.Qte;
                Double pHt_Unitaire = P.Prix_Unitaire;


                if (CalculLigne_Facture == CalculLigne_Facture_e.cPourcentageUnitaire)
                {
                    pQuantite    = 100;
                    pHt_Unitaire = P.Prix_Ht;
                }

                foreach (Ligne_Facture Lf in ListeLigneFacture)
                {
                    if (Lf == this)
                    {
                        continue;
                    }

                    pQuantite    -= Lf.Qte;
                    pHt_Unitaire -= Lf.Ht_Unitaire;
                }

                if (pQuantite <= 0)
                {
                    pQuantite = P.Qte;
                }

                if (pHt_Unitaire <= 0)
                {
                    pHt_Unitaire = P.Prix_Unitaire;
                }

                Qte = pQuantite;

                if (CalculLigne_Facture == CalculLigne_Facture_e.cPourcentageUnitaire)
                {
                    Ht_Unitaire = P.Prix_Ht;
                }
                else
                {
                    Ht_Unitaire = pHt_Unitaire;
                }
            }
            else
            {
                Ht_Unitaire = P.Prix_Unitaire;
                Qte         = P.Qte;
            }

            Calculer();
        }
Exemplo n.º 14
0
 public Societe()
 {
     Bdd2.Ajouter(this);
 }