Ejemplo n.º 1
0
 public void ModifierProduit(Produit produit)
 {
     using (ProduitDAL dal = new ProduitDAL())
     {
         dal.ModifierProduit(produit);
     }
 }
Ejemplo n.º 2
0
        private void btnAjouter(object sender, RoutedEventArgs e)
        {
            myDataObject.id = ProduitDAL.getMaxIdProduit() + 1;

            lp.Add(myDataObject);
            ProduitORM.insertProduit(myDataObject);
            compteur = lp.Count();

            // Comme on a inséré une Personne, on crée un nouvel objet PersonneViewModel
            // Et on réatache tout ce qu'il faut pour que la vue soit propre
            /*listeProduits.Items.Refresh();*/
            myDataObject = new ProduitViewModel();

            // Comme le contexte des élément de la vue est encore l'ancien PersonneViewModel,
            // On refait les liens entre age, slider, textbox, bouton et le nouveau PersonneViewModel
            ComboBoxLot.DataContext    = myDataObject;
            prix_de_depart.DataContext = myDataObject;
            Description.DataContext    = myDataObject;
            Date_Vente.DataContext     = myDataObject;
            estimation.DataContext     = myDataObject;
            is_vendu.DataContext       = myDataObject;
            prix_reserve.DataContext   = myDataObject;
            region.DataContext         = myDataObject;
            attribut.DataContext       = myDataObject;
        }
Ejemplo n.º 3
0
        public static Estimation GetEstimationById(string id, bool initializer = true)
        {
            var edao = EstimationDAL.SelectEstimationById(id);
            var commissaireEstimation = new Commissaire();
            var produitEstimation     = new Produit();

            if (initializer)
            {
                commissaireEstimation =
                    CommissaireORM.GetCommissaireById(
                        CommissaireDAL.SelectCommissaireById(edao.CommissaireId).IdCommissaire, false);
                produitEstimation =
                    ProduitORM.GetProduitById(ProduitDAL.SelectProduitById(edao.ProduitId).IdProduit, false);
            }


            var estimation = new Estimation(edao.CommissaireId, produitEstimation, commissaireEstimation,
                                            edao.DateEstimation, edao.PrixEstimation);

            if (initializer)
            {
                _estimationsDictionary[estimation.IdEstimation] = estimation;

                CommissaireORM.Populate(new List <Commissaire>(new[]
                {
                    estimation.CommissaireEstimation
                }));
                ProduitORM.Populate(estimation.ProduitEstimation);
            }

            return(estimation);
        }
Ejemplo n.º 4
0
 public void SupprimerProduit(int produitId)
 {
     using (ProduitDAL dal = new ProduitDAL())
     {
         dal.SupprimerProduit(produitId);
     }
 }
Ejemplo n.º 5
0
        public List <Produit> ObtenirProduitsParSoin(int soinId)
        {
            List <Produit> liste;

            using (ProduitDAL dal = new ProduitDAL())
            {
                liste = dal.ObtenirProduitsParSoin(soinId);
            }
            return(liste);
        }
Ejemplo n.º 6
0
        public Produit ObtenirProduit(int id)
        {
            Produit produit;

            using (ProduitDAL dal = new ProduitDAL())
            {
                produit = dal.ObtenirProduit(id);
            }
            return(produit);
        }
Ejemplo n.º 7
0
        public int AjouterProduit(Produit produit)
        {
            int produitId;

            using (ProduitDAL dal = new ProduitDAL())
            {
                produitId = dal.AjouterProduit(produit);
            }
            return(produitId);
        }
Ejemplo n.º 8
0
        public static Produit GetProduitById(string id, bool initializer = true)
        {
            var pdao               = ProduitDAL.SelectProduitById(id);
            var lotProduit         = new Lot();
            var utilisateurProduit = new Utilisateur();
            var stockProduit       = new Stock();
            var enchereGagnante    = new Enchere();
            var categorieProduit   = new Categorie();


            if (initializer)
            {
                lotProduit         = LotORM.GetLotById(pdao.LotId, false);
                utilisateurProduit =
                    UtilisateurORM.GetUtilisateurById(pdao.UtilisateurId, false);
                stockProduit = StockORM.GetStockById(pdao.StockId, false);
                if (!string.IsNullOrEmpty(pdao.EnchereGagnanteId))
                {
                    enchereGagnante =
                        EnchereORM.GetEnchereById(pdao.EnchereGagnanteId, false);
                }

                //todo decomente ici
                // categorieProduit =
                //     CategorieORM.GetCategorieById(CategorieDAL.SelectCategorieById(pdao.CategorieId).CategorieId,
                //         false);
            }


            var produit = new Produit(pdao.IdProduit, lotProduit, utilisateurProduit, stockProduit, enchereGagnante,
                                      categorieProduit
                                      , pdao.NomArtiste, pdao.NomStyle, pdao.NomProduit, pdao.PrixReserve, pdao.ReferenceCatalogue,
                                      pdao.DescriptionProduit, pdao.IsSend);

            if (initializer)
            {
                _produitsDictionary[produit.IdProduit] = produit;

                LotORM.Populate(produit.LotProduit);
                UtilisateurORM.Populate(new List <Utilisateur>(new[]
                {
                    produit.UtilisateurProduit
                }));
                StockORM.Populate(produit.StockProduit);
                if (!string.IsNullOrEmpty(produit.EnchereGagnante.IdEnchere))
                {
                    EnchereORM.Populate(produit.EnchereGagnante);
                }

                //todo decomenter ici
                // CategorieORM.Populate(produit.CategorieProduit);
            }

            return(produit);
        }
Ejemplo n.º 9
0
        public static List <Produit> GetAllProduit()
        {
            var lpdao    = ProduitDAL.SelectAllProduit();
            var produits = new List <Produit>();

            foreach (var pdao in lpdao)
            {
                produits.Add(produitDaoToProduit(pdao));
            }

            return(produits);
        }
Ejemplo n.º 10
0
        public List <Produit> ObtenirProduits(bool uniquementEnVente)
        {
            List <Produit> liste;

            using (ProduitDAL dal = new ProduitDAL())
            {
                if (!uniquementEnVente)
                {
                    liste = dal.ObtenirProduits();
                }
                else
                {
                    liste = dal.ObtenirProduits().Where(p => p.EnVente).ToList();
                }
            }
            return(liste);
        }
        private void nomPrenomButton_Click(object sender, RoutedEventArgs e)
        {
            myDataObjectProduit.idProperty = ProduitDAL.getMaxIdProduit() + 1;

            lpr.Add(myDataObjectProduit);
            ProduitORM.insertProduit(myDataObjectProduit);
            compteur = lpr.Count();

            listeProduits.Items.Refresh();
            myDataObjectProduit = new ProduitViewModel();

            nomProduit.DataContext  = myDataObjectProduit;
            estimation.DataContext  = myDataObjectProduit;
            description.DataContext = myDataObjectProduit;
            //style.DataContext = myDataObjectProduit;
            //artiste.DataContext = myDataObjectProduit;
            //categorie.DataContext = myDataObjectProduit;
            nomPrenomButton2.DataContext = myDataObjectProduit;
        }
Ejemplo n.º 12
0
        private async void DeleteProduit()
        {
            if (thisWindow != null)
            {
                if (SelectedProduit != null)
                {
                    MessageDialogResult result = await thisWindow.ShowMessageAsync("Avertissement", "Voulez-vous vraiment supprimer ce produit ?", MessageDialogStyle.AffirmativeAndNegative, new MetroDialogSettings
                    {
                        AffirmativeButtonText = "Oui",
                        NegativeButtonText    = "Non",
                        AnimateHide           = false,
                        AnimateShow           = true
                    });

                    int delProduit = 0;
                    if (result == MessageDialogResult.Affirmative)
                    {
                        using (var dal = new ProduitDAL(DAL.DAL.Bdd))
                        {
                            SelectedProduit.Suppression = new DateTime();
                            SelectedProduit.Suppression = DateTime.Now;
                            delProduit = dal.DeleteModele(SelectedProduit);
                        }

                        if (delProduit > 0)
                        {
                            ListeProduit.Remove(SelectedProduit);
                            RaisePropertyChanged(() => ListeProduit);
                            await thisWindow.ShowMessageAsync("Information", "Le produit est bien marqué pour suppression.");
                        }
                        else
                        {
                            await thisWindow.ShowMessageAsync("Erreur", "Le produit n'a pas pu être supprimé.");
                        }
                    }
                }
                else
                {
                    await thisWindow.ShowMessageAsync("Avertissement", "Merci de sélectionner un produit");
                }
            }
        }
Ejemplo n.º 13
0
 private void RecupProduitsParProjet()
 {
     IsProduitPresent = true;
     using (var dal = new ProduitDAL(DAL.DAL.Bdd))
     {
         ListeProduit = dal.GetAllProduitsByProjet(selectedProjet);
     }
     RaisePropertyChanged(() => ListeProduit);
     if (ListeProduit != null)
     {
         if (ListeProduit.Count == 0)
         {
             IsProduitPresent = false;
         }
     }
     else
     {
         IsProduitPresent = false;
     }
 }
Ejemplo n.º 14
0
        private void Btn_Ajout(object sender, RoutedEventArgs e)
        {
            myDataObject.idProduitProperty = ProduitDAL.getMaxIdProduit() + 1;

            lp.Add(myDataObject);
            ProduitORM.insertProduit(myDataObject);
            compteur = lp.Count();

            // Comme on a inséré une Produit, on crée un nouvel objet ProduitViewModel
            // Et on réatache tout ce qu'il faut pour que la vue soit propre
            myDataObject = new ProduitViewModel();

            // Comme le contexte des élément de la vue est encore l'ancien ProduitViewModel,
            // On refait les liens entre age, slider, textbox, bouton et le nouveau ProduitViewModel
            nomTextBox.DataContext         = myDataObject;
            descriptionTextBox.DataContext = myDataObject;
            etatTextBox.DataContext        = myDataObject;
            artisteTextBox.DataContext     = myDataObject;
            prixdTextBox.DataContext       = myDataObject;
            prixrTextBox.DataContext       = myDataObject;
            lotComboBox.DataContext        = myDataObject;
            Produit.Content = new Article();
        }
        private void ProduitButton_Click(object sender, RoutedEventArgs e)
        {
            myDataObjectProduit.idProduitProperty = ProduitDAL.getMaxIdProduit() + 1;

            IDPhotoTextBox.DataContext = 1;
            Produit.Add(myDataObjectProduit);
            ProduitORM.insertProduit(myDataObjectProduit);
            compteur = Produit.Count();


            myDataObjectProduit = new ProduitViewModel();

            EstimationTextBox.DataContext  = myDataObjectProduit;
            PrixVenteTextBox.DataContext   = myDataObjectProduit;
            NomTextBox.DataContext         = myDataObjectProduit;
            DescriptionTextBox.DataContext = myDataObjectProduit;
            ArtisteTextBox.DataContext     = myDataObjectProduit;
            StyleTextBox.DataContext       = myDataObjectProduit;
            comboxBoxLot.DataContext       = myDataObjectProduit;
            IDPhotoTextBox.DataContext     = myDataObjectProduit;
            IDAcheteurTextBox.DataContext  = myDataObjectProduit;
            IDVendeurTextBox.DataContext   = myDataObjectProduit;
            ProduitButton.DataContext      = myDataObjectProduit;
        }
Ejemplo n.º 16
0
 public static void insertProduit(ProduitDAO p)
 {
     ProduitDAL.insertProduit(p);
 }
Ejemplo n.º 17
0
 public static void supprimerProduit(int id)
 {
     ProduitDAL.supprimerProduit(id);
 }
Ejemplo n.º 18
0
 public static void updateProduit(ProduitDAO p)
 {
     ProduitDAL.updateProduit(p);
 }
Ejemplo n.º 19
0
        public static ProduitDAO getProduit(int idProduit)
        {
            ProduitDAO p = ProduitDAL.getProduit(idProduit);

            return(p);
        }
Ejemplo n.º 20
0
        public static ObservableCollection <ProduitDAO> listeProduits()
        {
            ObservableCollection <ProduitDAO> l = ProduitDAL.selectProduits();

            return(l);
        }
Ejemplo n.º 21
0
 public static async Task <IndexResponse> EnregistrerProduits(string jsonProduits, string nomIndex)
 {
     return(await ProduitDAL.EnregistrerProduits(jsonProduits, nomIndex));
 }
Ejemplo n.º 22
0
 public static async Task <ISearchResponse <Produit> > RecupererProduits(string nomIndex)
 {
     return(await ProduitDAL.RecupererProduits(nomIndex));
 }
Ejemplo n.º 23
0
        private async void GenDevis()
        {
            var window = Application.Current.Windows.OfType <MetroWindow>().Last();
            int remise = 0;

            try
            {
                if (SelectedProduit == null)
                {
                    throw new Exception("La génération de devis impossible sur un produit NULL");
                }
                // Génération du devis
                List <DataGenerationDevis> listDg = new List <DataGenerationDevis>();
                using (DevisDAL dDal = new DevisDAL(DAL.DAL.Bdd))
                {
                    //Obtenir la réduction
                    remise = dDal.CalculerReduction(SelectedProduit.Id);
                    listDg = dDal.GenererDevis(SelectedProduit);
                }
                if (listDg.Count > 0)
                {
                    // Traitement des données
                    List <string> modulesDistincts = new List <string>();
                    foreach (DataGenerationDevis dg in listDg)
                    {
                        if (!modulesDistincts.Contains(dg.NomModule))
                        {
                            modulesDistincts.Add(dg.NomModule);
                        }
                    }

                    string outputToDevis = @"Devis pour " + listDg.First().NomProduit + " le " + DateTime.Now.ToLongDateString() + Environment.NewLine;
                    outputToDevis += string.Format(@"Client : {0} {1}" + Environment.NewLine + Environment.NewLine, listDg.First().Client.Nom, listDg.First().Client.Prenom);
                    outputToDevis += @"Détails des modules sélectionnés :" + Environment.NewLine;
                    decimal       prixTotal     = 0;
                    decimal       tva           = 1.2M;
                    List <string> modulesToGrid = new List <string>();
                    foreach (string s in modulesDistincts)
                    {
                        decimal prixModule = 0;
                        foreach (DataGenerationDevis dg in listDg)
                        {
                            if (s == dg.NomModule && !string.IsNullOrEmpty(dg.PrixComposant) && dg.NombreComposant != 0)
                            {
                                prixModule += Convert.ToDecimal(dg.PrixComposant) * dg.NombreComposant;
                            }
                        }
                        prixTotal += prixModule;
                        string outputModule = string.Format("Module : {0} | Prix HT : {1} € \n", s, Convert.ToString(prixModule));
                        modulesToGrid.Add(outputModule);
                        outputToDevis += outputModule;
                    }
                    string mursPorteurs = "4 x Murs low-cost | Prix HT : 4032 € \n";
                    outputToDevis += mursPorteurs;
                    modulesToGrid.Add(mursPorteurs);
                    prixTotal += 4032;
                    decimal prixHT        = prixTotal;
                    decimal prixTTC       = prixTotal * tva;
                    decimal prixTTCRemise = Remise.CalculerPrixRemise(remise, prixTTC);

                    string prixFinal    = string.Format(Environment.NewLine + "Prix Total HT : {0} € | Prix Total TTC : {1} € \n", Convert.ToString(prixTotal), Convert.ToString(prixTTC));
                    string valeurRemise = string.Format(Environment.NewLine + "Remise : {0} %", Convert.ToString(remise));
                    string montant      = string.Format(Environment.NewLine + "Montant du devis : {0} €", Convert.ToString(prixTTCRemise));
                    outputToDevis = outputToDevis + prixFinal + valeurRemise + montant;

                    DGen = new DevisGenere()
                    {
                        Output        = outputToDevis,
                        PrixHT        = Convert.ToString(prixHT),
                        PrixTTC       = Convert.ToString(prixTTC),
                        PrixTTCRemise = Convert.ToString(prixTTCRemise),
                        Modules       = modulesToGrid,
                        client        = listDg.First().Client
                    };

                    // Création du PDF
                    GenererPdfDevis();

                    // Création du devis à insérer en BDD
                    Devis d = new Devis()
                    {
                        DateCreation = DateTime.Now,
                        Nom          = listDg.First().NomProduit,
                        PrixHT       = prixTotal,
                        PrixTTC      = Convert.ToDecimal(prixTTC),
                        StatutDevis  = new StatutDevis()
                        {
                            Id = 2
                        },
                        Pdf         = File.ReadAllBytes(AppInfo.AppPath + @"\Devis\" + DevisActuel),
                        MiseAJour   = null,
                        Suppression = null,
                        Creation    = DateTime.Now
                    };


                    try
                    {
                        int     insertDevis = 0;
                        Produit pUpdate     = new Produit()
                        {
                            Nom = listDg.First().NomProduit
                        };
                        using (DevisDAL dDAl = new DevisDAL(DAL.DAL.Bdd))
                        {
                            insertDevis   = dDAl.InsertDevis(d);
                            pUpdate.Devis = dDAl.GetDevisByIdProduit(pUpdate);
                            Console.WriteLine("update devis " + pUpdate.Nom);
                        }
                        using (ProduitDAL pDal = new ProduitDAL(DAL.DAL.Bdd))
                        {
                            int i = pDal.UpdateDevisProduit(pUpdate);
                            pDal.UpdateStatutProduit(pUpdate);
                            Console.WriteLine("result update devis " + i);
                        }

                        if (insertDevis > 0)
                        {
                            VueGenererDevis vgd = new VueGenererDevis();
                            ((VueModeleGenererDevis)vgd.DataContext).TitreVue = TitreProjet;
                            ((VueModeleGenererDevis)vgd.DataContext).DGen     = DGen;
                            ((VueModeleGenererDevis)vgd.DataContext).Remise   = string.Format("{0} %", Convert.ToString(remise));
                            ((VueModeleGenererDevis)vgd.DataContext).Montant  = string.Format("{0} %", Convert.ToString(prixTTCRemise));
                            vgd.Show();
                        }
                        else
                        {
                            if (window != null)
                            {
                                await window.ShowMessageAsync("Erreur", "Le devis n'a pas été inséré en base.");
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        await window.ShowMessageAsync("Erreur", ex.Message);

                        Logger.WriteEx(ex);
                    }
                }
                else
                {
                    await window.ShowMessageAsync("Erreur", "La maison ne comporte pas de modules pour la génération du devis.");
                }
            }
            catch (InvalidOperationException)
            {
                await window.ShowMessageAsync("Erreur", "La maison ne comporte pas de modules pour la génération du devis.");
            }
        }