public ActionResult RECHERCHEREXAMEN()
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "RECHERCHER_EXAMEN"))
                {
                    TransfertStockVM TransfertStock = new TransfertStockVM();
                    List <STOCK>     ListeStock     = dal.ObtenirTousLesStocks();
                    List <StockVM>   ListeStockVM   = new List <StockVM>();
                    if (ListeStock != null)
                    {
                        foreach (var stock in ListeStock)
                        {
                            ListeStockVM.Add(dal.ConvertirStockStockVM(stock));
                        }
                    }
                    ViewBag.ListeStock = ListeStockVM;


                    List <FABRICANT> ListeFabricant = dal.ObtenirTousLesFabricants();
                    ViewBag.ListeFabricant = ListeFabricant;

                    return(View("FormulaireRechercheExamen"));
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }
        public ActionResult TRANSFERERSTOCK()
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "TRANSFERER_STOCK"))
                {
                    TransfertStockVM TSVM           = new TransfertStockVM();
                    List <PRODUIT>   ListeProduit   = dal.ObtenirTousLesProduits();
                    List <ProduitVM> ListeProduitVM = new List <ProduitVM>();
                    if (ListeProduit != null)
                    {
                        foreach (var produit in ListeProduit)
                        {
                            ListeProduitVM.Add(dal.ConvertirProduitProduitVM(produit));
                        }
                    }
                    TSVM.Produits = ListeProduitVM;

                    ViewBag.ListeStock = dal.ObtenirTousLesStocks();

                    return(View("FormulaireTransfertStock", TSVM));
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }
示例#3
0
 public ActionResult RECHERCHERPRODUIT()
 {
     using (IDAL dal = new Dal())
     {
         if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "RECHERCHER_PRODUIT"))
         {
             TransfertStockVM TransfertStock = new TransfertStockVM();
             List <FABRICANT> ListeFabricant = dal.ObtenirTousLesFabricants();
             ViewBag.ListeFabricant = ListeFabricant;
             return(View("FormulaireRechercheProduit"));
         }
         else
         {
             ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
             return(View("Error"));
         }
     }
 }
        public ActionResult TRANSFERERSTOCK(TransfertStockVM TSVM, String[] IdsProduitATransferer, String[] QuantiteATransferer)
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "TRANSFERER_STOCK"))
                {
                    List <TransfertStockVM2> ListeProduitsTransfert = new List <TransfertStockVM2>();

                    if (IdsProduitATransferer != null)
                    {
                        TransfertStockVM2 ProduitTransfert;
                        int i = 0;

                        foreach (var ProduitId in IdsProduitATransferer)
                        {
                            ProduitTransfert = new TransfertStockVM2();

                            if (ProduitId != "false")
                            {
                                ProduitTransfert.ProduitId = ProduitId;

                                int Qte;
                                if (Int32.TryParse(QuantiteATransferer[i], out Qte))
                                {
                                    ProduitTransfert.Quantite = Qte;
                                }
                                ListeProduitsTransfert.Add(ProduitTransfert);
                            }
                            i++;
                        }
                    }

                    if (ListeProduitsTransfert != null)
                    {
                        int i = 0;
                        foreach (var ProduitTransfert in ListeProduitsTransfert)
                        {
                            if (ProduitTransfert != null)
                            {
                                PRODUIT Prod = dal.ObtenirProduitParId(ProduitTransfert.ProduitId);

                                if (Prod != null)
                                {
                                    STOCK stock = dal.ObtenirStockParId(CRYPTAGE.StringHelpers.Encrypt(TSVM.StockFromId));
                                    if (stock != null)
                                    {
                                        List <STOCKDETAILS> StockDetailExistant = dal.ObtenirStockDetailsParProduitEtParStock(Prod.ProduitID, stock.StockID).OrderBy(stkd => stkd.DateExpiration).ToList();


                                        int QuantiteAInserer = ProduitTransfert.Quantite;
                                        int ResteAInserer    = QuantiteAInserer;
                                        int QuantiteInseree  = 0;

                                        foreach (var stkd in StockDetailExistant)
                                        {
                                            if (QuantiteAInserer >= QuantiteInseree)
                                            {
                                                if (stkd != null && stkd.StockQuantity > 0)
                                                {
                                                    STOCKDETAILS NewStkD = new STOCKDETAILS();
                                                    NewStkD.Produit        = stkd.Produit;
                                                    NewStkD.DateExpiration = stkd.DateExpiration;
                                                    NewStkD.Stock          = dal.ObtenirStockParId(CRYPTAGE.StringHelpers.Encrypt(TSVM.StockToId));

                                                    if (stkd.StockQuantity >= ResteAInserer)
                                                    {
                                                        NewStkD.StockQuantity = ResteAInserer;
                                                        QuantiteInseree      += ResteAInserer;

                                                        stkd.StockQuantity = stkd.StockQuantity - ResteAInserer;

                                                        dal.EnregistrerProduitEnStock(NewStkD);

                                                        dal.EnregistrerProduitEnStock(stkd);

                                                        ResteAInserer = 0;
                                                    }
                                                    else
                                                    {
                                                        NewStkD.StockQuantity = stkd.StockQuantity;
                                                        QuantiteInseree      += stkd.StockQuantity;

                                                        dal.EnregistrerProduitEnStock(NewStkD);

                                                        ResteAInserer      = QuantiteAInserer - QuantiteInseree;
                                                        stkd.StockQuantity = 0;

                                                        dal.EnregistrerProduitEnStock(stkd);
                                                    }
                                                }
                                            }
                                            else
                                            {
                                                break;
                                            }
                                        }
                                    }
                                }
                            }

                            i++;
                        }
                        return(RedirectToAction("TRANSFERERSTOCK"));
                    }
                    else
                    {
                        ViewBag.ErrorMessage = "Veuillez selectionner les produits à transferer.";
                        return(View("Error"));
                    }
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }