Exemple #1
0
    public void afficherInfosClient()
    {
        LibrairieControlesDynamique.btnDYN(phDynamique, "", "btn btn-warning", "Retour", retourDashboard_click);
        LibrairieControlesDynamique.brDYN(phDynamique);
        LibrairieControlesDynamique.brDYN(phDynamique);

        PPVendeurs vendeur = LibrairieLINQ.getInfosVendeur(this.noVendeur);

        // créer le tableau avec les infos
        Panel panelBase   = LibrairieControlesDynamique.divDYN(phDynamique, "", "panel panel-default");
        Panel panelBody   = LibrairieControlesDynamique.divDYN(panelBase, "", "panel-body");
        Panel panelFooter = LibrairieControlesDynamique.divDYN(panelBase, "", "panel-footer");

        Panel rowVendeur = LibrairieControlesDynamique.divDYN(panelBody, "", "row");

        // section image
        Panel colPhoto = LibrairieControlesDynamique.divDYN(rowVendeur, "", "col-md-3");

        LibrairieControlesDynamique.imgDYN(colPhoto, "", "../static/images/user-management.png", "img-rounded").Style.Add("width", "180px");


        // section informations
        Panel colInfos = LibrairieControlesDynamique.divDYN(rowVendeur, "", "col-md-9");
        Panel rowInfos = LibrairieControlesDynamique.divDYN(colInfos, "", "row");

        Panel colHeader    = LibrairieControlesDynamique.divDYN(rowInfos, "", "col-md-12 align-left");
        Label lblHeaderNom = LibrairieControlesDynamique.lblDYN(colHeader, "", vendeur.NomAffaires, "header-nom");

        LibrairieControlesDynamique.hrDYN(LibrairieControlesDynamique.divDYN(rowInfos, "", "col-md-12"));

        Panel colAutreInfos  = LibrairieControlesDynamique.divDYN(rowInfos, "", "col-md-11");
        Panel rowAutresInfos = LibrairieControlesDynamique.divDYN(colAutreInfos, "", "row align-left");

        Panel colLBLNom = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLNom, "", "Nom:", "autres-infos");
        Panel colNom = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colNom, "", vendeur.Prenom + " " + vendeur.Nom, "autres-infos");

        Panel colLBLEmail = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLEmail, "", "Courriel:", "autres-infos");
        Panel colEmail = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colEmail, "", vendeur.AdresseEmail, "autres-infos");

        Panel colLBLTel = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLTel, "", "Téléphone:", "autres-infos");
        Panel colTel = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colTel, "", vendeur.Tel1, "autres-infos");

        Panel colLBLAdresse = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLAdresse, "", "Adresse:", "autres-infos");
        Panel colAdresse = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colAdresse, "", vendeur.Rue + ", " + vendeur.Ville + ", " + vendeur.Province + ", " + vendeur.Pays, "autres-infos");

        LibrairieControlesDynamique.brDYN(rowAutresInfos);
        LibrairieControlesDynamique.brDYN(rowAutresInfos);

        Panel colLBLNoVendeur = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLNoVendeur, "", "No vendeur:", "autres-infos");
        Panel colNoVendeur = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colNoVendeur, "", vendeur.NoVendeur.ToString(), "autres-infos");

        Panel colLBLPoids = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLPoids, "", "Poids maximal:", "autres-infos");
        Panel colPoids = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colPoids, "", vendeur.PoidsMaxLivraison.ToString() + " lbs", "autres-infos");

        Panel colLBLLivGratuite = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLLivGratuite, "", "Livraison gratuite:", "autres-infos");
        Panel colLivGratuite = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colLivGratuite, "", (vendeur.LivraisonGratuite != null) ? Decimal.Round((decimal)vendeur.LivraisonGratuite, 2).ToString("C", CultureInfo.CurrentCulture) : "", "autres-infos");

        Panel colLBLTaxes = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLTaxes, "", "Taxes:", "autres-infos");
        Panel colTaxes = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colTaxes, "", (vendeur.Taxes == true) ? "Oui" : "Non", "autres-infos");

        Panel colLBLDateCreation = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-4");

        LibrairieControlesDynamique.lblDYN(colLBLDateCreation, "", "Date création:", "autres-infos");
        Panel colDateCreation = LibrairieControlesDynamique.divDYN(rowAutresInfos, "", "col-md-8");

        LibrairieControlesDynamique.lblDYN(colDateCreation, "", vendeur.DateCreation.ToString(), "autres-infos");

        Panel rowBoutons = LibrairieControlesDynamique.divDYN(panelFooter, "", "row");
        Panel colBtnOui  = LibrairieControlesDynamique.divDYN(rowBoutons, "", "col-md-1");
        Panel colBtnNon  = LibrairieControlesDynamique.divDYN(rowBoutons, "", "col-md-1");

        // btn oui
        HtmlButton btnOui = LibrairieControlesDynamique.htmlbtnDYN(colBtnOui, "btnOui_" + vendeur.NoVendeur, "btn btn-success", "", "glyphicon glyphicon-ok", btnOui_click);

        LibrairieControlesDynamique.spaceDYN(rowBoutons);

        // btn non
        HtmlButton btnNon = LibrairieControlesDynamique.htmlbtnDYN(colBtnNon, "btnNon_" + vendeur.NoVendeur, "btn btn-danger", "", "glyphicon glyphicon-remove", btnNon_click);
    }
    private void creerPage()
    {
        System.Diagnostics.Debug.WriteLine("PAGE LOAD LE DDL = " + nbMois);

        Panel panelGroup = LibrairieControlesDynamique.divDYN(phDynamique, nomEntreprise + "_PanelGroup2", "panel-group container-fluid marginFluid");
        Panel panelBase  = LibrairieControlesDynamique.divDYN(panelGroup, nomEntreprise + "_base2", "panel panel-default");
        // Nom de l'entreprise
        Panel panelHeader = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_header2", "panel-heading");

        Panel rowInactif = LibrairieControlesDynamique.divDYN(panelHeader, nomEntreprise + "_rowInactif2_", "row");
        Panel colInactif = LibrairieControlesDynamique.divDYN(rowInactif, nomEntreprise + "_colInactif2_", "col-sm-12");

        LibrairieControlesDynamique.lblDYN(colInactif, nomEntreprise + "_nom2", nomEntreprise + " - " + leVendeur.AdresseEmail, "nom-entreprise");
        panelBody2 = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_PanelBody2", "panel-body");

        DateTime dateParMois    = DateTime.Now.AddMonths(-nbMois);
        DateTime dateParMoisMax = DateTime.Now.AddMonths(-(nbMois + 1));

        System.Diagnostics.Debug.WriteLine(" LE NBMOIS = " + nbMois + " dateParMois = " + dateParMois + " dateParMoisMAx = " + dateParMoisMax);
        if (nbMois == 7)
        {
            dateParMoisMax = DateTime.MinValue;
        }
        List <PPArticlesEnPanier> lstPaniersEntreprise = new List <PPArticlesEnPanier>();
        List <PPArticlesEnPanier> lstArticles          = dbContext.PPArticlesEnPanier.GroupBy(x => x.NoClient).Select(t => t.OrderBy(c => c.DateCreation).FirstOrDefault()).ToList();

        foreach (PPArticlesEnPanier lesArticles in lstArticles)
        {
            if ((lesArticles.DateCreation <= dateParMois) && (lesArticles.DateCreation >= dateParMoisMax))
            {
                lstPaniersEntreprise.AddRange(dbContext.PPArticlesEnPanier.Where(c => (c.NoVendeur == noVendeur) && (c.NoClient == lesArticles.NoClient)).OrderBy(C => C.DateCreation).ToList());
            }
        }
        panelBody2.Controls.Clear();
        Panel panCategorie   = LibrairieControlesDynamique.divDYN(panelBody2, nomEntreprise + "_pretLivraison2_", "row text-center");
        Panel colCatAfficher = LibrairieControlesDynamique.divDYN(panCategorie, nomEntreprise + "_colLabelPretLivraison2", "col-sm-12");

        LibrairieControlesDynamique.lblDYN(colCatAfficher, nomEntreprise + "_labelCategorie2", "Panier Courants ", "infos-payage OrangeTitle");
        LibrairieControlesDynamique.hrDYN(colCatAfficher, "OrangeBorderPanier", 5);

        // Rajouter les produits dans le panier

        if (lstPaniersEntreprise.Count > 0)
        {
            long ancienID = 0;
            for (int i = 0; i < lstPaniersEntreprise.Count; i++)
            {
                long         idItem      = lstPaniersEntreprise[i].NoPanier;
                long         idProduit   = lstPaniersEntreprise[i].NoProduit.Value;
                PPProduits   leProduit   = dbContext.PPProduits.Where(c => c.NoProduit == idProduit).First();
                PPCategories laCategorie = dbContext.PPCategories.Where(c => c.NoCategorie == leProduit.NoCategorie).First();
                long         idClient    = lstPaniersEntreprise[i].NoClient.Value;
                int          NbVisites   = dbContext.PPVendeursClients.Where(c => (c.NoClient == idClient) && (c.NoVendeur == noVendeur)).Count();
                PPClients    leClient    = dbContext.PPClients.Where(c => c.NoClient == idClient).First();
                decimal      prix        = leProduit.PrixDemande.Value;
                String       nomProduit  = leProduit.Nom.ToString();
                String       urlImage    = "../static/images/" + leProduit.Photo.ToString();


                if (ancienID != lstPaniersEntreprise[i].NoClient.Value)
                {
                    //Trigger panel pour accordeon
                    Panel panelTrigger = LibrairieControlesDynamique.divDYN(panelBody2, nomEntreprise + "_PanelTrigger" + i, "trigger");
                    Panel rowClient    = LibrairieControlesDynamique.divDYN(panelTrigger, nomEntreprise + "_rowTrigger_" + idItem, "row top15 text-center border-left");
                    // Col Glyph
                    Panel colGlyph = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colGlyph_" + idItem, "col-sm-2");
                    LibrairieControlesDynamique.lblDYN(colGlyph, nomEntreprise + "_GlyphPanier_" + idItem, "", "glyphicon glyphicon-shopping-cart text-left");
                    //Nom Client
                    Panel  colNomClient = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colClient2_" + idItem, "col-sm-2 text-left");
                    string nomClient    = (leClient.Nom != null && leClient.Nom != "") ? "Client : " + leClient.Prenom + " " + leClient.Nom : "Client : " + leClient.AdresseEmail;
                    LibrairieControlesDynamique.lblDYN(colNomClient, nomEntreprise + "_NomClient2_" + idItem, nomClient, "nomClient prix_item");
                    // Nb Visites du client
                    Panel colClientVisites = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colVisites_" + idItem, "col-sm-2 text-left");
                    LibrairieControlesDynamique.lblDYN(colClientVisites, nomEntreprise + "_VisiteClient_" + idItem, " Nombre de visites : " + NbVisites, "nomClient prix_item");

                    //Date
                    Panel colDate = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colDate_" + idItem, "col-sm-2 text-left");
                    LibrairieControlesDynamique.lblDYN(colDate, nomEntreprise + "_date_" + idItem, "Date de création : " + Convert.ToDateTime(lstPaniersEntreprise[i].DateCreation).ToShortDateString(), "prix_item");

                    //SousTotal du panier
                    decimal sousTotalPanier = 0;
                    for (int j = 0; j < lstPaniersEntreprise.Count; j++)
                    {
                        if (lstPaniersEntreprise[j].NoClient == leClient.NoClient)
                        {
                            long    idItem2         = lstPaniersEntreprise[j].NoProduit.Value;
                            decimal calculSousTotal = (decimal)dbContext.PPProduits.Where(c => c.NoProduit == idItem2).First().PrixDemande;
                            sousTotalPanier += calculSousTotal * lstPaniersEntreprise[j].NbItems.Value;
                        }
                    }
                    Panel colSousTotal = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colSousTotalPanier_" + idItem, "col-sm-2 text-center");
                    LibrairieControlesDynamique.lblDYN(colSousTotal, nomEntreprise + "_SousTotalPanier_" + idItem, sousTotalPanier.ToString("C", CultureInfo.CurrentCulture), "nomClient prix_item");

                    if (nbMois == 7)
                    {
                        Panel  colDel       = LibrairieControlesDynamique.divDYN(rowClient, nomEntreprise + "_colDel_", "col-sm-2");
                        Button btnSupprimer = LibrairieControlesDynamique.btnDYN(colDel, "btnSupprimer_" + idClient, "btn btn-danger", "Supprimer", btnSupprimer_click);
                        btnSupprimer.OnClientClick = "if( !PanierDeleteConfirmation()) return false;";
                        //btnSupprimer.Attributes.Add("onClientClick", );
                    }


                    //Panneau Accordeon
                    PanelCollapse = LibrairieControlesDynamique.divDYN(panelBody2, nomEntreprise + "_PanelCollapse" + i, "panel panelAccord");
                }

                Panel rowItem = LibrairieControlesDynamique.divDYN(PanelCollapse, nomEntreprise + "_rowItem2_" + idItem, "row valign top15");

                // ajouter l'image
                Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colImg2_" + idItem, "col-sm-2 ");
                LibrairieControlesDynamique.imgDYN(colImg, nomEntreprise + "_img2_" + idItem, urlImage, "img-size center-block");
                LibrairieControlesDynamique.lblDYN(colImg, nomEntreprise + "_noproduit2_" + idItem, idProduit.ToString(), "caption center-block text-center");


                // Nom du produit
                Panel colNom = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colNom2_" + idItem, "col-sm-3 LiensProduits nomClient");
                LibrairieControlesDynamique.lbDYN(colNom, nomEntreprise + "_nom2_" + idItem + "-" + idProduit, nomProduit, descriptionProduit);

                // Quantité restant
                Panel colQuantite = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colQuantite2_" + idItem, "col-sm-2 text-right");
                LibrairieControlesDynamique.lblDYN(colQuantite, nomEntreprise + "_quantite2_" + idItem, "Qte : " + lstPaniersEntreprise[i].NbItems, "prix_item");

                // Categorie
                Panel colCat = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colCategorie_" + idItem, "col-sm-3 text-right");
                LibrairieControlesDynamique.lblDYN(colCat, nomEntreprise + "_categorie2_" + idItem, laCategorie.Description.ToString(), "cat_item");

                // Prix item
                Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPri2x_" + idItem, "col-sm-2 text-center");
                LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prix2_" + idItem, "Prix Unitaire<br>" + prix.ToString("C", CultureInfo.CurrentCulture), "prix_item");



                ancienID = idClient;
            }
            LibrairieControlesDynamique.hrDYN(panelBody2, "OrangeBorderPanier", 5);
        }
        else
        {
            Panel row              = LibrairieControlesDynamique.divDYN(panelBody2, nomEntreprise + "_rowPanierVide", "row marginFluid text-center");
            Panel message          = LibrairieControlesDynamique.divDYN(row, nomEntreprise + "_messagePanierVide", "message text-center top15");
            Panel messageContainer = LibrairieControlesDynamique.divDYN(message, nomEntreprise + "_divMessage", "alert alert-danger alert-margins");
            LibrairieControlesDynamique.lblDYN(messageContainer, nomEntreprise + "_leMessageLabel", "Vous avez aucun panier courant.");
            LibrairieControlesDynamique.hrDYN(panelBody2, "OrangeBorderPanier", 5);
        }
    }
Exemple #3
0
    public void afficherPaniers()
    {
        Dictionary <Nullable <long>, List <PPArticlesEnPanier> > lstPaniers = LibrairieLINQ.getPaniersClient(long.Parse(Session["NoClient"].ToString()));

        // ajouter le liens mes paniers
        LibrairieControlesDynamique.liDYN(ulSideBar, "#panier", "Mes paniers", "section-header");

        foreach (KeyValuePair <Nullable <long>, List <PPArticlesEnPanier> > entry in lstPaniers)
        {
            bool ruptureStock  = false;
            bool quantiteModif = false;

            // do something with entry.Value or entry.Key
            long?   idEntreprise  = entry.Key;
            String  nomEntreprise = entry.Value[0].PPVendeurs.NomAffaires;
            String  nomVendeur    = entry.Value[0].PPVendeurs.Prenom + " " + entry.Value[0].PPVendeurs.Nom;
            decimal?sousTotal     = 0;

            // ajouter lien navbar
            LibrairieControlesDynamique.liDYN(ulSideBar, "#" + "contentBody_panier" + idEntreprise, entry.Value[0].PPVendeurs.NomAffaires, "");

            // Créer le panier du vendeur X
            Panel panelBase = LibrairieControlesDynamique.divDYN(paniersDynamique, "panier" + idEntreprise, "panel panel-default");

            // Nom de l'entreprise
            Panel panelHeader = LibrairieControlesDynamique.divDYN(panelBase, idEntreprise + "_header", "panel-heading");
            LibrairieControlesDynamique.lbDYN(panelHeader, "vendeur_" + idEntreprise, nomEntreprise + " (" + nomVendeur + ")", "nom-entreprise", nomEntreprisePanier_click);

            // Liste des items + le total
            Panel panelBody = LibrairieControlesDynamique.divDYN(panelBase, idEntreprise + "_body", "panel-body");


            // Rajouter les produits dans le panier

            foreach (PPArticlesEnPanier article in entry.Value)
            {
                long?   idItem = article.NoProduit;
                short?  quantiteSelectionne = article.NbItems;
                decimal?prixUnitaire        = article.PPProduits.PrixDemande;

                decimal?prixAvecQuantites = article.PPProduits.PrixDemande * article.NbItems;
                decimal?montantRabais     = article.PPProduits.PrixDemande - article.PPProduits.PrixVente;

                if (article.PPProduits.DateVente < DateTime.Now)
                {
                    montantRabais = 0;
                }

                decimal?poids = article.PPProduits.Poids;

                // sum au sous total
                sousTotal += (prixUnitaire * article.NbItems);

                String nomProduit = article.PPProduits.Nom;
                String urlImage   = "../static/images/" + article.PPProduits.Photo;

                Panel rowItem = LibrairieControlesDynamique.divDYN(panelBody, idEntreprise + "_rowItem_" + idItem, "row");

                // ajouter l'image
                Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, idEntreprise + "_colImg_" + idItem, "col-sm-2");
                LibrairieControlesDynamique.imgDYN(colImg, idEntreprise + "_img_" + idItem, urlImage, "img-size");

                // Nom du produit
                Panel colNom = LibrairieControlesDynamique.divDYN(rowItem, idEntreprise + "_colNom_" + idItem, "col-sm-4");
                LibrairieControlesDynamique.lblDYN(colNom, idEntreprise + "_nom_" + idItem, nomProduit, "nom-item deux-lignes");
                LibrairieControlesDynamique.brDYN(colNom);
                LibrairieControlesDynamique.lblDYN(colNom, "", "Poids: " + poids + " lbs", "prix_unitaire");

                // Quantité sélectionné
                Panel colQuantite = LibrairieControlesDynamique.divDYN(rowItem, idEntreprise + "_colQuantite_" + idItem, "col-sm-4");

                TextBox tbQuantite = LibrairieControlesDynamique.numericUpDownDYN(colQuantite, "quantite_" + idItem,
                                                                                  quantiteSelectionne.ToString(), (article.PPProduits.NombreItems < 1)?"1": article.PPProduits.NombreItems.ToString(), "form-control border-quantite");

                // vérifier les quantites
                if (article.PPProduits.NombreItems < 1)
                {
                    ruptureStock       = true;
                    tbQuantite.Enabled = false;
                    LibrairieControlesDynamique.lblDYN(colQuantite, "", "Rupture de stock", "rupture-stock");
                }
                else
                {
                    if (article.PPProduits.NombreItems < article.NbItems)
                    {
                        LibrairieLINQ.modifierQuantitePanier(article.NoPanier, article.PPProduits.NombreItems.ToString());
                        tbQuantite.Text = article.PPProduits.NombreItems.ToString();
                        quantiteModif   = true;
                    }
                    LibrairieControlesDynamique.lbDYN(colQuantite, "update_" + article.NoPanier + ";" + idItem, "Mettre à jour", update_click);
                }



                // Prix item
                Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, idEntreprise + "_colPrix_" + idItem, "col-sm-2");

                LibrairieControlesDynamique.lblDYN(colPrix, "", Decimal.Round((Decimal)prixAvecQuantites, 2).ToString("C", CultureInfo.CurrentCulture), "prix_item");
                LibrairieControlesDynamique.brDYN(colPrix);
                LibrairieControlesDynamique.lblDYN(colPrix, "", "Prix unitaire: " + Decimal.Round((Decimal)prixUnitaire, 2).ToString("C", CultureInfo.CurrentCulture), "prix_unitaire");
                LibrairieControlesDynamique.brDYN(colPrix);
                LibrairieControlesDynamique.lblDYN(colPrix, "", (montantRabais > 0)?"Rabais de " + Decimal.Round((Decimal)montantRabais, 2).ToString("C", CultureInfo.CurrentCulture) : "", "rabais");


                // Bouton retirer
                Panel rowBtnRetirer = LibrairieControlesDynamique.divDYN(panelBody, idEntreprise + "_rowBtnRetirer_" + idItem, "row");
                Panel colBtnRetirer = LibrairieControlesDynamique.divDYN(rowBtnRetirer, idEntreprise + "_colBtnRetirer_" + idItem, "col-sm-2");
                LibrairieControlesDynamique.btnDYN(colBtnRetirer, "btnRetirer_" + article.NoPanier, "btn btn-default", "RETIRER", retirer_click);
                LibrairieControlesDynamique.hrDYN(panelBody);
            }

            // Afficher le sous total
            Panel rowSousTotal      = LibrairieControlesDynamique.divDYN(panelBody, idEntreprise + "_rowSousTotal", "row");
            Panel colLabelSousTotal = LibrairieControlesDynamique.divDYN(rowSousTotal, idEntreprise + "_colLabelSousTotal", "col-sm-10 text-right");
            LibrairieControlesDynamique.lblDYN(colLabelSousTotal, idEntreprise + "_labelSousTotal", "Sous total: ", "infos-payage");

            Panel colMontantSousTotal = LibrairieControlesDynamique.divDYN(rowSousTotal, idEntreprise + "_colMontantSousTotal", "col-sm-2 text-right");
            LibrairieControlesDynamique.lblDYN(colMontantSousTotal, idEntreprise + "_montantSousTotal", Decimal.Round((Decimal)sousTotal, 2).ToString("C", CultureInfo.CurrentCulture), "infos-payage");

            LibrairieControlesDynamique.hrDYN(panelBody);

            // afficher message quantite modif (au besoins)
            if (quantiteModif)
            {
                Panel rowModif = LibrairieControlesDynamique.divDYN(panelBody, "", "row");
                Panel colModif = LibrairieControlesDynamique.divDYN(rowModif, "", "col-sm-12 text-right");
                LibrairieControlesDynamique.lblDYN(colModif, "", "Certaines quantités ont été modifiées dû à la quantité en stock", "modif-stock-message");

                LibrairieControlesDynamique.hrDYN(panelBody);
            }

            // afficher message rupture (au besoins)
            if (ruptureStock)
            {
                Panel rowRupture = LibrairieControlesDynamique.divDYN(panelBody, "", "row");
                Panel colRupture = LibrairieControlesDynamique.divDYN(rowRupture, "", "col-sm-12 text-right");
                LibrairieControlesDynamique.lblDYN(colRupture, "", "Veuillez retirer les articles en rupture de stock avant de pouvoir commander", "rupture-stock-message");

                LibrairieControlesDynamique.hrDYN(panelBody);
            }

            // Bouton commander
            Panel rowBtnCommander      = LibrairieControlesDynamique.divDYN(panelBody, idEntreprise + "_rowBtnCommander", "row");
            Panel colLabelBtnCommander = LibrairieControlesDynamique.divDYN(rowBtnCommander, idEntreprise + "_colLabelBtnCommander", "col-sm-12 text-right");
            LibrairieControlesDynamique.btnDYN(colLabelBtnCommander, "btnDetails" + idEntreprise + ";" + "panier" + idEntreprise, "btn btn-info", "Plus de détails", details_click);
            LibrairieControlesDynamique.spaceDYN(colLabelBtnCommander);

            if (!ruptureStock)
            {
                LibrairieControlesDynamique.btnDYN(colLabelBtnCommander, idEntreprise + "_btnCommander", "btn btn-warning", "Commander", commander_click);
            }
        }
    }
    private void creerPage()
    {
        dbContext.SaveChanges();
        Panel panelGroup = LibrairieControlesDynamique.divDYN(phDynamique, nomEntreprise + "_PanelGroup", "panel-group container-fluid marginFluid");
        Panel panelBase  = LibrairieControlesDynamique.divDYN(panelGroup, nomEntreprise + "_base", "panel panel-default");
        // Nom de l'entreprise
        Panel panelHeader = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_header", "panel-heading");

        Panel rowInactif = LibrairieControlesDynamique.divDYN(panelHeader, nomEntreprise + "_rowInactif_", "row");
        Panel colInactif = LibrairieControlesDynamique.divDYN(rowInactif, nomEntreprise + "_colInactif_", "col-sm-12");

        LibrairieControlesDynamique.lblDYN(colInactif, nomEntreprise + "_nom", nomEntreprise + " - " + nomVendeur, "nom-entreprise");
        panelBody = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_PanelBody", "panel-body");

        panelBody.Controls.Clear();
        // Btn Delete

        // btnSupprimer.Style.Add("width", "105px");
        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorder", 30);

        // Chercher les produits de la compagnie
        List <PPProduits> lesProduits = dbContext.PPProduits.Where(c => (c.NoVendeur == noVendeur) && (c.Disponibilité != null)).ToList();

        // Rajouter les produits dans le panier
        if (lesProduits.Count > 0)
        {
            for (int i = 0; i < lesProduits.Count; i++)
            {
                long         idItem        = Convert.ToInt64(lesProduits[i].NoProduit);
                String       nomProduit    = lesProduits[i].Nom.ToString();
                Double       prix          = Convert.ToDouble(lesProduits[i].PrixDemande);
                Double       prixVente     = Convert.ToDouble(lesProduits[i].PrixVente);
                String       urlImage      = "../static/images/" + lesProduits[i].Photo;
                int          noCat         = lesProduits[i].NoCategorie.Value;
                PPCategories pCategorie    = dbContext.PPCategories.Where(c => c.NoCategorie.Equals(noCat)).First();
                String       categorie     = pCategorie.Description;
                String       disponibilite = lesProduits[i].Disponibilité == true ? "Disponible" : "Indisponible";

                Panel rowItem = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowItem_" + idItem, "row valign top15");

                // ajouter l'image
                Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colImg_" + idItem, "col-sm-1 ");
                LibrairieControlesDynamique.imgDYN(colImg, nomEntreprise + "_img_" + idItem, urlImage, "img-size center-block");
                LibrairieControlesDynamique.lblDYN(colImg, nomEntreprise + "_noproduit_" + idItem, idItem.ToString(), "caption center-block text-center");

                // Nom du produit
                Panel colNom = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colNom_" + idItem, "col-sm-2 LiensProduits nomClient breakWord");
                LibrairieControlesDynamique.lbDYN(colNom, nomEntreprise + "_nom_" + idItem, nomProduit, modifierProduit);

                // Modification
                Panel colMod = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colMod_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.btnDYN(colMod, "btnModifier_" + idItem, "btn btnPageOrange", "Modifier", btnModifier_Click);

                // Quantité restant
                Panel colQuantite = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colQuantite_" + idItem, "col-sm-1");
                LibrairieControlesDynamique.lblDYN(colQuantite, nomEntreprise + "_quantite_" + idItem, "Qte : " + lesProduits[i].NombreItems, "prix_item");

                // Categorie
                Panel colCat = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colCategorie_" + idItem, "col-sm-2 breakWord");
                LibrairieControlesDynamique.lblDYN(colCat, nomEntreprise + "_categorie_" + idItem, categorie, "cat_item");

                // Dispo
                Panel colDispo = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colDispo_" + idItem, "col-sm-1");
                LibrairieControlesDynamique.lblDYN(colDispo, nomEntreprise + "_Disponibilite_" + idItem, disponibilite, "cat_item");

                // Prix item
                Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPrix_" + idItem, "col-sm-2 text-right");
                if (lesProduits[i].PrixVente != null)
                {
                    if (lesProduits[i].DateVente > DateTime.Now)
                    {
                        LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prixVente_" + idItem, "Prix de vente : " + prixVente.ToString("C", CultureInfo.CurrentCulture) + "<br>", "prix_item");
                    }
                    else
                    {
                        LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prixVente_" + idItem, "Prix de vente : " + prixVente.ToString("C", CultureInfo.CurrentCulture) + "<br>", "prix_item produitNonVente");
                    }
                }
                else
                {
                    LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prixVente_" + idItem, "Prix de vente : N/A" + "<br>", "prix_item");
                }

                LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prixDemande_" + idItem, "Prix demandé : " + prix.ToString("C", CultureInfo.CurrentCulture), "prix_item");

                // Panel rowDel = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowDel_", "row text-right");
                Panel      colDel        = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colDel_" + idItem, "col-sm-2 text-center");
                HtmlButton btnSupprimmer = LibrairieControlesDynamique.htmlbtnDYN(colDel, "btnSupprimer_" + idItem, "btn btn-danger", "Supprimer", "glyphicon glyphicon-remove", btnSupprimer_click);
                //btnSupprimer.Attributes.Add("onclick", "Confirm();");
                // CheckBox (Supprimer plusieurs)
                //Panel colCB = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colCB_" + idItem, "col-sm-2 text-center");
                //CheckBox cbDelete = LibrairieControlesDynamique.cb(colCB, nomEntreprise + "_cbSupprimer_" + idItem, "");
            }
        }
        else
        {
            Panel row              = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowPanierVide", "row marginFluid text-center");
            Panel message          = LibrairieControlesDynamique.divDYN(row, nomEntreprise + "_messagePanierVide", "message text-center top15");
            Panel messageContainer = LibrairieControlesDynamique.divDYN(message, nomEntreprise + "_divMessage", "alert alert-danger alert-margins");
            LibrairieControlesDynamique.lblDYN(messageContainer, nomEntreprise + "_leMessageLabel", "Vous avez aucun produit dans votre catalogue");
        }
        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorder", 30);
    }
Exemple #5
0
    private void creerPage()
    {
        phDynamique.Controls.Clear();
        ulSideBar.Controls.Clear();
        // Créer le panier du vendeur X
        Panel panelGroup = LibrairieControlesDynamique.divDYN(phDynamique, nomEntreprise + "_PanelGroup", "panel-group container-fluid marginFluidSmall");
        Panel panelBase  = LibrairieControlesDynamique.divDYN(panelGroup, nomEntreprise + "_base", "panel panel-default");


        // Nom de l'entreprise
        Panel panelHeader = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_header", "panel-heading");

        LibrairieControlesDynamique.lblDYN(panelHeader, nomEntreprise + "_nom", nomEntreprise + " - " + leVendeur.AdresseEmail, "nom-entreprise");

        // Liste des items + le total

        //Label lblCollapse = LibrairieControlesDynamique.lblDYN(panelHeader, nomEntreprise + "_lblPanelTitle", "panel-title","panel-title");
        // LibrairieControlesDynamique.aDYN(panelHeader, "Collapsible panel", "#contentBody_"+nomEntreprise + "_PanelCollapse", true);
        //Panel panelCollaspe = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_PanelCollapse", "panel-collapse collapse");
        Panel panelBody = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_PanelBody", "panel-body");

        Panel panCategorie   = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_pretLivraison_", "row text-center");
        Panel colCatAfficher = LibrairieControlesDynamique.divDYN(panCategorie, nomEntreprise + "_colLabelPretLivraison", "col-sm-12");

        LibrairieControlesDynamique.lblDYN(colCatAfficher, nomEntreprise + "_labelCategorie", "Prêt pour livraison ", "infos-payage OrangeTitle");
        LibrairieControlesDynamique.liDYN(ulSideBar, "#contentBody_" + nomEntreprise + "_labelCategorie", "Prêt pour livraison", "");



        //LibrairieControlesDynamique.hrDYN(panelBody);
        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorderPanier", 5);
        List <PPCommandes> lstCommandes = dbContext.PPCommandes.Where(c => c.Statut.Equals("0") && c.NoVendeur == noVendeur).OrderByDescending(c => c.DateCommande).ToList();

        // Rajouter les produits dans le panier
        if (lstCommandes.Count > 0)
        {
            for (int i = 0; i < lstCommandes.Count; i++)
            {
                long idItem = lstCommandes[i].NoCommande;

                decimal   prix      = lstCommandes[i].MontantTotAvantTaxes.Value;
                long      idClient  = lstCommandes[i].NoClient.Value;
                PPClients leClient  = dbContext.PPClients.Where(c => c.NoClient == idClient).First();
                int       NbVisites = dbContext.PPVendeursClients.Where(c => (c.NoClient == idClient) && (c.NoVendeur == noVendeur)).Count();

                Panel rowItem = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowItem_" + idItem, "row valign");

                // ajouter l'image
                Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colImg_" + idItem, "col-sm-1");
                LibrairieControlesDynamique.imgDYN(colImg, nomEntreprise + "_img_" + idItem, "../static/images/imageCommande.png", "img-size center-block");
                LibrairieControlesDynamique.lblDYN(colImg, nomEntreprise + "_noproduit_" + idItem, idItem.ToString(), "caption center-block text-center");


                // Date de la commande
                Panel colDate = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colDate_" + idItem, "col-sm-2 text-center ");
                LibrairieControlesDynamique.lblDYN(colDate, nomEntreprise + "_date_" + idItem, "Date de la commande<br>" + lstCommandes[i].DateCommande.Value.ToShortDateString(), "prix_item");

                //Button Facture Commande
                Panel colFacture = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colFacture_" + idItem, "col-sm-2 text-center");
                if (File.Exists(Server.MapPath("~/static/pdf/" + idItem + ".pdf")))
                {
                    LibrairieControlesDynamique.htmlbtnDYN(colFacture, "btnFactures" + idItem, "btn btn-default Orange", "Facture", "glyphicon glyphicon-list-alt", btnFacture);
                }
                else
                {
                    HtmlButton btn = LibrairieControlesDynamique.htmlbtnDYN(colFacture, "btnFactureDisabled" + idItem, "btn btn-default Orange disabled", "Facture", "glyphicon glyphicon-list-alt", btnFacture);
                    btn.Attributes.Add("disabled", "disabled");
                }



                // Pooids total commande
                Panel colPoids = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPoids_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.lblDYN(colPoids, nomEntreprise + "_Poids_" + idItem, "Poids <br>" + lstCommandes[i].PoidsTotal + " lbs", "border-quantite prix_item");

                // Nom du client
                Panel colNomClient = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colClient_" + idItem, "col-sm-2 text-center");
                LibrairieControlesDynamique.lblDYN(colNomClient, nomEntreprise + "_NomClient_" + idItem, "Client<br>" + leClient.Prenom + " " + leClient.Nom, "nomClient prix_item");

                // Visites
                Panel colVisites = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colVisite_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.lblDYN(colVisites, nomEntreprise + "_Visites_" + idItem, "Visite(s)<br>" + NbVisites, "prix_item");

                // Total avant taxes
                Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPrix_" + idItem, "col-sm-2 text-center");
                LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prix_" + idItem, "Total<br>(sans taxes)<br>" + prix.ToString("C", CultureInfo.CurrentCulture), "prix_item");


                Panel  colLivrer = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colLivrer" + idItem, "col-sm-1 text-center");
                Button btnLivrer = LibrairieControlesDynamique.btnDYN(colLivrer, "btnLivre" + idItem, "btn btn-default OrangeButton", "Livrer", btnLivre);
                btnLivrer.OnClientClick = "if( !livraisonConfirm()) return false;";

                //   LibrairieControlesDynamique.hrDYN(panelBody);
            }
        }
        else
        {
            Panel row              = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowPretLivraisonVide", "row marginFluid text-center ");
            Panel message          = LibrairieControlesDynamique.divDYN(row, nomEntreprise + "_messagePretLivraisonVide", "message text-center top15");
            Panel messageContainer = LibrairieControlesDynamique.divDYN(message, nomEntreprise + "_divMessageLivraison", "alert alert-danger alert-margins valignMessage");
            LibrairieControlesDynamique.lblDYN(messageContainer, nomEntreprise + "_leMessageLabelLivraison", "Vous avez aucune commande prête pour la livraison.");
        }

        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorderPanier", 5);

        Panel panCategorie2   = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_Livre_", "row text-center");
        Panel colCatAfficher2 = LibrairieControlesDynamique.divDYN(panCategorie2, nomEntreprise + "_colLabelLivre", "col-sm-12");

        LibrairieControlesDynamique.lblDYN(colCatAfficher2, nomEntreprise + "_labelLivre", "Commandes livrés ", "infos-payage OrangeTitle");
        HtmlGenericControl li = LibrairieControlesDynamique.liDYN(ulSideBar, "#contentBody_" + nomEntreprise + "_labelLivre", "Commandes livrés", "");

        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorderPanier", 5);


        List <PPCommandes> lstCommandesLivre = dbContext.PPCommandes.Where(c => !c.Statut.Equals("0") && c.NoVendeur == noVendeur).OrderByDescending(c => c.DateCommande).ToList();

        // Rajouter les produits dans le panier
        if (lstCommandesLivre.Count > 0)
        {
            for (int i = 0; i < lstCommandesLivre.Count; i++)
            {
                long idItem = lstCommandesLivre[i].NoCommande;

                decimal   prix      = lstCommandesLivre[i].MontantTotAvantTaxes.Value;
                long      idClient  = lstCommandesLivre[i].NoClient.Value;
                PPClients leClient  = dbContext.PPClients.Where(c => c.NoClient == idClient).First();
                int       NbVisites = dbContext.PPVendeursClients.Where(c => (c.NoClient == idClient) && (c.NoVendeur == noVendeur)).Count();

                Panel rowItem = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowItem2_" + idItem, "row valign");

                // ajouter l'image
                Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colImg2_" + idItem, "col-sm-1");
                LibrairieControlesDynamique.imgDYN(colImg, nomEntreprise + "_img2_" + idItem, "../static/images/imageCommande.png", "img-size center-block");
                LibrairieControlesDynamique.lblDYN(colImg, nomEntreprise + "_noproduit2_" + idItem, idItem.ToString(), "caption center-block text-center");


                // Date de la commande
                Panel colDate = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colDate2_" + idItem, "col-sm-2 text-center ");
                LibrairieControlesDynamique.lblDYN(colDate, nomEntreprise + "_date2_" + idItem, "Date de la commande<br>" + lstCommandesLivre[i].DateCommande.Value.ToShortDateString(), "prix_item");

                //Button Facture Commande
                Panel colFacture = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colFacture2_" + idItem, "col-sm-2 text-center");
                if (File.Exists(Server.MapPath("~/static/pdf/" + idItem + ".pdf")))
                {
                    LibrairieControlesDynamique.htmlbtnDYN(colFacture, "btnFacture2" + idItem, "btn btn-default Orange", "Facture", "glyphicon glyphicon-list-alt", btnFactures);
                }
                else
                {
                    HtmlButton btn = LibrairieControlesDynamique.htmlbtnDYN(colFacture, "btnFacture2" + idItem, "btn btn-default Orange disabled", "Facture", "glyphicon glyphicon-list-alt", btnFactures);
                    btn.Attributes.Add("disabled", "disabled");
                }



                // Pooids total commande
                Panel colPoids = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPoids2_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.lblDYN(colPoids, nomEntreprise + "_Poids2_" + idItem, "Poids <br>" + lstCommandesLivre[i].PoidsTotal + " lbs", "border-quantite prix_item");

                // Nom du client
                Panel colNomClient = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colClient2_" + idItem, "col-sm-2 text-center");
                LibrairieControlesDynamique.lblDYN(colNomClient, nomEntreprise + "_NomClient2_" + idItem, "Client<br>" + leClient.Prenom + " " + leClient.Nom, "nomClient prix_item");

                // Visites
                Panel colVisites = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colVisite_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.lblDYN(colVisites, nomEntreprise + "_Visites_" + idItem, "Visite(s)<br>" + NbVisites, "prix_item");

                List <PPDetailsCommandes> lstDetailsCommandes = dbContext.PPDetailsCommandes.Where(c => c.NoCommande == idItem).ToList();
                int nbItems = 0;
                for (int j = 0; j < lstDetailsCommandes.Count; j++)
                {
                    nbItems++;
                }

                // Nombre items
                Panel colNbItem = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colNbItem_" + idItem, "col-sm-1 text-center");
                LibrairieControlesDynamique.lblDYN(colNbItem, nomEntreprise + "_nbItems_" + idItem, "Nombres d'items<br>" + nbItems, "nomClient prix_item");

                // Total avant taxes
                Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPrix2_" + idItem, "col-sm-2 text-center");
                LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prix2_" + idItem, "Total (sans taxes)<br>" + prix.ToString("C", CultureInfo.CurrentCulture), "prix_item");
            }//   LibrairieControlesDynamique.hrDYN(panelBody);
        }

        else
        {
            Panel row              = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowCommLivrer", "row marginFluid text-center ");
            Panel message          = LibrairieControlesDynamique.divDYN(row, nomEntreprise + "_messageCommLivrer", "message text-center top15");
            Panel messageContainer = LibrairieControlesDynamique.divDYN(message, nomEntreprise + "_divCommLivrer", "alert alert-danger alert-margins valignMessage");
            LibrairieControlesDynamique.lblDYN(messageContainer, nomEntreprise + "_leMessageLabelCommLivrer", "Vous avez aucune commande prête pour la livraison.");
        }


        LibrairieControlesDynamique.hrDYN(panelBody, "OrangeBorderPanier", 5);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        verifierPermissions("C");

        getNbMois();
        long parseNoClient;

        if (Session["NoClient"] != null && long.TryParse(Session["NoClient"].ToString(), out parseNoClient))
        {
            if (dbContext.PPProduits.Where(c => c.NoProduit.Equals(noProduit)).Any())
            {
                noVendeur = dbContext.PPProduits.Where(c => c.NoProduit.Equals(noProduit)).First().NoVendeur.Value;
            }
            noClient = parseNoClient;
        }
        else
        {
            string url = "~/Pages/Connexion.aspx?";
            Response.Redirect(url);
        }


        if (!IsPostBack)
        {
            if (Request.UrlReferrer != null)
            {
                ViewState["RefUrl"] = Request.UrlReferrer.ToString();
            }
        }
        PPProduits produitAfficher = new PPProduits();

        if (dbContext.PPProduits.Where(c => c.NoProduit == noProduit).Any())
        {
            produitAfficher = dbContext.PPProduits.Where(c => c.NoProduit == noProduit).First();
        }

        Page.Title = produitAfficher.Nom;

        nomEntreprise = dbContext.PPVendeurs.Where(c => c.NoVendeur == produitAfficher.NoVendeur).First().NomAffaires;


        // Créer le panier du vendeur X
        Panel panelBase = LibrairieControlesDynamique.divDYN(phDynamique, nomEntreprise + "_base", "panel panel-default");

        // Nom de l'entreprise
        Panel panelHeader     = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_header", "panel-heading");
        Panel rowTitreMessage = LibrairieControlesDynamique.divDYN(panelHeader, nomEntreprise + "_rowTitreMessage", "row");
        Panel colLeTitre      = LibrairieControlesDynamique.divDYN(rowTitreMessage, nomEntreprise + "_colTitreUnique_", "col-sm-11");

        LibrairieControlesDynamique.lblDYN(colLeTitre, nomEntreprise + "_nom", nomEntreprise, "nom-entreprise");
        Panel colMessage = LibrairieControlesDynamique.divDYN(rowTitreMessage, nomEntreprise + "_colEnvoieMessage_", "col-sm-1");

        LibrairieControlesDynamique.htmlbtnDYN(colMessage, nomEntreprise + "leIconeMessage", "", "", "glyphicon glyphicon-envelope", btnEnvoyer);

        // Liste des items + le total
        Panel panelBody = LibrairieControlesDynamique.divDYN(panelBase, nomEntreprise + "_body", "panel-body");

        // LibrairieControlesDynamique.hrDYN(panelBody);


        // Rajouter les produits dans le panier

        long idItem = produitAfficher.NoProduit;


        Double prix;

        if (produitAfficher.DateVente > DateTime.Now.Date)
        {
            prix = Convert.ToDouble(produitAfficher.PrixVente);
        }
        else
        {
            prix = Convert.ToDouble(produitAfficher.PrixDemande);
        }

        decimal?montantRabais = produitAfficher.PrixDemande - produitAfficher.PrixVente;

        if (produitAfficher.DateVente < DateTime.Now)
        {
            montantRabais = 0;
        }


        String urlImage = "../static/images/" + produitAfficher.Photo;

        Panel rowItem = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowItem_" + idItem, "row");

        // ajouter l'image
        Panel colImg = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colImg_" + idItem, "col-sm-1");

        LibrairieControlesDynamique.imgDYN(colImg, nomEntreprise + "_img_" + idItem, urlImage, "img-size center-block");
        LibrairieControlesDynamique.lblDYN(colImg, nomEntreprise + "_noproduit_" + idItem, idItem.ToString(), "caption center-block text-center");


        // Nom du produit
        Panel colNom = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colNom_" + idItem, "col-sm-3 breakWord");

        //LibrairieControlesDynamique.lbDYN(colNom, nomEntreprise + "_nom_" + idItem, nomProduit,null);
        LibrairieControlesDynamique.lblDYN(colNom, nomEntreprise + "_nom_" + idItem, produitAfficher.Nom, "cat_item");

        // Quantité restant
        Panel colQuantite = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colQuantiteProduit_" + idItem, "col-sm-1");

        LibrairieControlesDynamique.lblDYN(colQuantite, nomEntreprise + "_quantiteProduit_" + idItem, "Qte : " + produitAfficher.NombreItems, "border-quantite cat_item");

        Panel colPoids = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPoids_" + idItem, "col-sm-1");

        LibrairieControlesDynamique.lblDYN(colPoids, nomEntreprise + "_Poids_" + idItem, produitAfficher.Poids + " lbs", "cat_item");

        // Categorie
        string categorie = dbContext.PPCategories.Where(c => c.NoCategorie == produitAfficher.NoCategorie).First().Description;
        Panel  colCat    = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colCategorie_" + idItem, "col-sm-2 breakWord");

        LibrairieControlesDynamique.lblDYN(colCat, nomEntreprise + "_categorie_" + idItem, categorie, "cat_item");

        // Prix item
        Panel colPrix = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colPrix_" + idItem, "col-sm-1 text-right");

        LibrairieControlesDynamique.lblDYN(colPrix, nomEntreprise + "_prixDemande_" + idItem, prix.ToString("C", CultureInfo.CurrentCulture), "prix_item");
        LibrairieControlesDynamique.brDYN(colPrix);
        LibrairieControlesDynamique.lblDYN(colPrix, "lblRabais" + idItem, (montantRabais > 0) ? "Rabais de " + Decimal.Round((Decimal)montantRabais, 2).ToString("C", CultureInfo.CurrentCulture) : "", "rabais");



        // Quantité restant
        colQuantite = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colQuantite_" + idItem, "col-sm-1 text-center");

        tbQuantite = LibrairieControlesDynamique.numericUpDownDYN(colQuantite, "quantite_" + idItem, (produitAfficher.NombreItems < 1) ? "0" : "1"
                                                                  , (produitAfficher.NombreItems < 1) ? "0" : produitAfficher.NombreItems.ToString(), "numUD form-control border-quantite");
        LibrairieControlesDynamique.lblDYN(colQuantite, nomEntreprise + "_nbQuantiteMax_" + idItem, "<br>Quantité : " + produitAfficher.NombreItems, "");



        colAjout = LibrairieControlesDynamique.divDYN(rowItem, nomEntreprise + "_colAjout_" + idItem, "col-sm-2 text-center");
        Button btnAjout = LibrairieControlesDynamique.btnDYN(colAjout, "btnAjouter_" + idItem, "btn valignMessage btnPageOrange", "Ajouter au panier", btnAjouter_click);

        btnAjout.UseSubmitBehavior = false;
        LibrairieControlesDynamique.lblDYN(colAjout, nomEntreprise + "_espaceGlyph_" + idItem, "<br>", "");
        long  leVendeurProduit  = produitAfficher.NoVendeur.Value;
        short nbProduitEnPanier = 0;

        if (dbContext.PPArticlesEnPanier.Where(c => (c.NoClient.Value.Equals(noClient)) && (c.NoVendeur.Value.Equals(leVendeurProduit)) && (c.NoProduit.Value.Equals(idItem))).Any())
        {
            nbProduitEnPanier = dbContext.PPArticlesEnPanier.Where(c => (c.NoClient.Value.Equals(noClient)) && (c.NoVendeur.Value.Equals(leVendeurProduit)) && (c.NoProduit.Value.Equals(idItem))).First().NbItems.Value;
        }
        LibrairieControlesDynamique.lblDYN(colAjout, nomEntreprise + "_nbEnPanier_" + idItem, "(" + nbProduitEnPanier + ")", "glyphicon glyphicon-shopping-cart");

        if (produitAfficher.NombreItems < 1)
        {
            tbQuantite.Enabled = false;
            LibrairieControlesDynamique.lblDYN(colQuantite, "lblRupture" + idItem, "<br>Rupture de stock", "rupture-stock");
            btnAjout.Enabled  = false;
            btnAjout.CssClass = "btn valignMessage btnPageOrange disabled";
        }
        else
        {
            tbQuantite.Enabled = true;
            btnAjout.Enabled   = true;
            btnAjout.CssClass  = "btn valignMessage btnPageOrange";
        }



        Panel rowDescription = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_rowDescription_" + idItem, "row top15");

        LibrairieControlesDynamique.lblDYN(rowDescription, nomEntreprise + "_descTitle_" + idItem, "Description", "cat_item col-sm-2 center-block text-center");
        LibrairieControlesDynamique.lblDYN(rowDescription, nomEntreprise + "_description_" + idItem, produitAfficher.Description, "description_item cat_item col-sm-10 center-block breakWord ");
        LibrairieControlesDynamique.hrDYN(panelBody);
        Panel panelRetour = LibrairieControlesDynamique.divDYN(panelBody, nomEntreprise + "_retour_", "row center-block text-center Retour");

        LibrairieControlesDynamique.lbDYN(panelRetour, "back_", "Retour", btnRetour);
    }