コード例 #1
0
        public static int CalculerSoldeStockProduitFini(string produitFini, DateTime date)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var stockInitial = (from pf in db.ResStockProduitsFinis
                                    where pf.NomProduit == produitFini
                                    select pf.StockProduit).FirstOrDefault();

                var entrees = (from pro in db.EveProductionStockProduitsFinis
                               where pro.ResStockProduitsFini.NomProduit == produitFini
                               where pro.EveProduction.Date <= date.Date
                               select(int?) pro.QuantiteProduitFini).Sum() ?? 0;

                var sorties = (from pf in db.EveVenteStockProduitsFinis
                               where pf.ResStockProduitsFini.NomProduit == produitFini
                               where pf.EveVente.DateVente <= date.Date
                               select(int?) pf.QuantiteProduitFini).Sum() ?? 0;

                var autresSorties = (from asort in db.EveSortieDonsOuDechetsProduitsFinis
                                     where asort.ResStockProduitsFini.NomProduit == produitFini
                                     where asort.DateSortie <= date.Date
                                     select(int?) asort.QuantiteProduitFini).Sum() ?? 0;


                return(stockInitial + entrees - (sorties + autresSorties));
            }
        }
コード例 #2
0
        public static decimal QuantiteMProduitSemiFiniParProduitFini(string nomProduit, string produitSemiFini)
        {
            // calculer la quantite moyenne de matiere premiere utilisee par unite de produit fini

            using (CasaDBEntities db = new CasaDBEntities())
            {
                var quantiteProduitSemiFiniUtilisee = (from pf in db.ResStockProduitsFinis
                                                       join ppf in db.EveProductionStockProduitsFinis on pf.CodeProduit equals ppf.CodeProduitFini
                                                       join ur in db.EveUtilisationProduitsSemiFinis on ppf.EveProduction.CodeUtilisationRessources equals ur.CodeUtilisationRessource
                                                       where ur.ResStockProduitsSemiFini.Description == produitSemiFini
                                                       where pf.NomProduit == nomProduit
                                                       select new
                {
                    ProduitSemiFini = ur.ResStockProduitsSemiFini.Description,
                    ur.QuantiteProduitSemiFini,
                    ppf.QuantiteProduitFini
                });

                var quantiteProduitSemiFini = quantiteProduitSemiFiniUtilisee.Select(m => (float?)m.QuantiteProduitSemiFini).Sum() ?? 0f;

                var quantitePF = quantiteProduitSemiFiniUtilisee.Select(m => (float?)m.QuantiteProduitFini).Sum() ?? 0f;

                decimal quantiteMoyenneParProduitFini = 0m;

                if (quantiteProduitSemiFini > 0f && quantitePF > 0f)
                {
                    quantiteMoyenneParProduitFini = (decimal)quantiteProduitSemiFini / (decimal)quantitePF;
                }

                return(quantiteMoyenneParProduitFini);
            }
        }
コード例 #3
0
        public static decimal QuantiteMatierePremiereParProduitSemiFini(string produitSemiFini, string matierePremiere)
        {
            // calculer la quantite moyenne de matiere premiere utilisee par unite de produit fini

            using (CasaDBEntities db = new CasaDBEntities())
            {
                var quantiteDeMatierePremiereUtilisee = (from psf in db.ResStockProduitsSemiFinis
                                                         join ppf in db.EveProductionProduitsSemiFinis on psf.CodeProduitSemiFini equals ppf.CodeProduitSemiFini
                                                         join ur in db.EveUtilisationMatieresPremieres on ppf.EveProduction.CodeUtilisationRessources equals ur.CodeUtilisationRessource
                                                         where ur.ResStockMatieresPremiere.NomMatiere == matierePremiere
                                                         where psf.Description == produitSemiFini
                                                         select new
                {
                    MatierePremiere = ur.ResStockMatieresPremiere.NomMatiere,
                    ur.QuantiteMatierePremiere,
                    ppf.QuantiteProduitSemiFini
                });

                var quantiteMatP = quantiteDeMatierePremiereUtilisee.Select(m => (float?)m.QuantiteMatierePremiere).Sum() ?? 0f;

                var quantitePSF = quantiteDeMatierePremiereUtilisee.Select(m => (float?)m.QuantiteProduitSemiFini).Sum() ?? 0f;

                decimal quantiteMoyenneParProduitSemiFini = 0m;

                if (quantiteMatP > 0f && quantitePSF > 0f)
                {
                    quantiteMoyenneParProduitSemiFini = (decimal)quantiteMatP / (decimal)quantitePSF;
                }

                return(quantiteMoyenneParProduitSemiFini);
            }
        }
コード例 #4
0
        public static Single CalculerSoldeStockMatierePremiere(string nomMatiere, DateTime date)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var stockInitial = (from mp in db.ResStockMatieresPremieres
                                    where mp.NomMatiere == nomMatiere
                                    select mp.StockMatiere).FirstOrDefault();

                var entrees = (from rmp in db.EveReceptionMatieresPremieres
                               where rmp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                               where rmp.DateReception <= date
                               select(float?) rmp.Quantite).Sum() ?? 0;

                var dons = (from dmp in db.EveReceptionDonsMatieresPremieres
                            where dmp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                            where dmp.DateReception <= date
                            select(float?) dmp.Quantite).Sum() ?? 0;

                var sorties = (from ur in db.EveUtilisationMatieresPremieres
                               where ur.ResStockMatieresPremiere.NomMatiere == nomMatiere
                               join p in db.EveProductions on ur.CodeUtilisationRessource equals p.CodeUtilisationRessources
                               where p.Date <= date
                               select(float?) ur.QuantiteMatierePremiere).Sum() ?? 0;

                var autresSorties = (from asort in db.EveSortieDechetsMatieresPremieres
                                     where asort.ResStockMatieresPremiere.NomMatiere == nomMatiere
                                     where asort.DateSortie <= date
                                     select(float?) asort.QuantiteMatierePremiere).Sum() ?? 0;

                return((stockInitial + entrees + dons) - (sorties + autresSorties));
            }
        }
コード例 #5
0
 public static Single CumulVentes(DateTime date)
 {
     using (CasaDBEntities db = new CasaDBEntities())
     {
         return((from v in db.EveVentes
                 join vp in db.EveVenteStockProduitsFinis on v.CodeVente equals vp.CodeVente
                 where v.DateVente <= date
                 select(Single?) vp.Montant).Sum() ?? 0);
     }
 }
コード例 #6
0
 private static string CalculerVentesPeriode(DateTime debut, DateTime fin)
 {
     using (CasaDBEntities db = new CasaDBEntities())
     {
         return(((from v in db.EveVentes
                  join vp in db.EveVenteStockProduitsFinis on v.CodeVente equals vp.CodeVente
                  where v.DateVente >= debut && v.DateVente <= fin
                  select(decimal?) vp.Montant).Sum() ?? 0m).ToString("n0"));
     }
 }
コード例 #7
0
 public static string ImpotsEtTaxesDeLaPeriode(DateTime debut, DateTime fin)
 {
     using (CasaDBEntities db = new CasaDBEntities())
     {
         return(((from asf in db.EveAcquisitionServicesFournitures
                  where asf.Date >= debut.Date
                  where asf.Date <= fin.Date
                  where asf.ResServicesFourniture.NomServiceFourniture == "Taxes"
                  select(decimal?) asf.Montant).Sum() ?? 0m).ToString("n0"));
     }
 }
コード例 #8
0
 public static float MainDOeuvre(DateTime debut, DateTime fin)
 {
     using (CasaDBEntities db = new CasaDBEntities())
     {
         return((from mo in db.EveDecaissements
                 where mo.CodePaiementEmploye != null
                 where mo.DateDecaissement >= debut.Date
                 where mo.DateDecaissement <= fin.Date
                 select(float?) mo.Montant).Sum() ?? 0f);
     }
 }
コード例 #9
0
ファイル: Conversion.cs プロジェクト: dembasiby/casaSI
        public static List <AgeEmploye> ListeEmployesPresents(DateTimePicker dtpDate)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                List <AgeEmploye> listeEmployes = (from pe in db.EvePresenceEmployes
                                                   where pe.Date == dtpDate.Value.Date
                                                   select pe.AgeEmploye).ToList();

                return(listeEmployes);
            }
        }
コード例 #10
0
        public static string FraisGenerauxDeLaPeriode(DateTime debut, DateTime fin)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var fraisGeneraux = db.EveDecaissements
                                    .Where(d => d.DateDecaissement >= debut.Date && d.DateDecaissement <= fin.Date)
                                    .Where(d => d.CodeAcquisitionServiceFourniture != null)
                                    .Where(d => d.EveAcquisitionServicesFourniture.ResServicesFourniture.NomServiceFourniture != "Taxes")
                                    .Where(d => d.EveAcquisitionServicesFourniture.ResServicesFourniture.NomServiceFourniture != "Retrait des propriétaires")
                                    .Select(d => (float?)d.Montant).Sum() ?? 0f;

                return((fraisGeneraux + MainDOeuvre(debut, fin)).ToString("n0"));
            }
        }
コード例 #11
0
        public static Single CoutUnitaireParMatierePremiere(string nomMatiere)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var quantiteAchetee = (from amp in db.EveReceptionMatieresPremieres
                                       where amp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                                       select(float?) amp.Quantite).Sum() ?? 0f;
                var valeurDesAchats = (from amp in db.EveReceptionMatieresPremieres
                                       where amp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                                       select(float?) amp.Montant).Sum() ?? 0f;
                var coutTransportMatierePremiere = (from amp in db.EveReceptionMatieresPremieres
                                                    where amp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                                                    select(float?) amp.TransportMatierePremiere).Sum() ?? 0f;

                return((valeurDesAchats + coutTransportMatierePremiere) / quantiteAchetee);
            }
        }
コード例 #12
0
ファイル: Conversion.cs プロジェクト: dembasiby/casaSI
        public static List <AgeClient> ListeClientsAvecCreances()
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var listeClients = new List <AgeClient>();
                var newListe     = db.AgeClients.ToList();

                foreach (var client in newListe)
                {
                    var soldeCreanceClient = Tresorerie.CalculerSoldeCreanceClient(client.CodeClient);

                    if (soldeCreanceClient > 0)
                    {
                        listeClients.Add(client);
                    }
                }

                return(listeClients);
            }
        }
コード例 #13
0
        public static float CalculerCoutUnitaireMatierePremiere(string matiere)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var valeurAchats = (from mp in db.ResStockMatieresPremieres
                                    join rmp in db.EveReceptionMatieresPremieres on mp.CodeMatierePremiere equals rmp.CodeMatierePremiere
                                    where rmp.DateReception.Year == DateTime.Now.Year
                                    where mp.NomMatiere == matiere
                                    select(float?)(rmp.Montant + rmp.TransportMatierePremiere)).Sum() ?? 0f;

                var quantitesAchetees = (from mp in db.ResStockMatieresPremieres
                                         join rmp in db.EveReceptionMatieresPremieres on mp.CodeMatierePremiere equals rmp.CodeMatierePremiere
                                         where rmp.DateReception.Year == DateTime.Now.Year
                                         where mp.NomMatiere == matiere
                                         select(float?)(rmp.Quantite)).Sum() ?? 0f;

                float coutUnitaire = valeurAchats / quantitesAchetees;

                return(coutUnitaire);
            }
        }
コード例 #14
0
        public static float ValeurAchatsMatierePremiere(string nomMatiere, DateTime debut, DateTime fin)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var achats = (from amp in db.EveReceptionMatieresPremieres
                              where amp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                              where amp.DateReception >= debut.Date
                              where amp.DateReception <= fin.Date
                              select(float?) amp.Montant).Sum() ?? 0f;

                var QuantitedonsRecu = (from amp in db.EveReceptionDonsMatieresPremieres
                                        where amp.ResStockMatieresPremiere.NomMatiere == nomMatiere
                                        where amp.DateReception >= debut.Date
                                        where amp.DateReception <= fin.Date
                                        select(float?) amp.Quantite).Sum() ?? 0f;

                var valeurDons = QuantitedonsRecu * CoutUnitaireParMatierePremiere(nomMatiere);

                return(achats + valeurDons);
            }
        }
コード例 #15
0
        public static string AmortissementsDeLaPeriode(DateTime debut, DateTime fin)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                float amortissementsJournaliers = (from inE in db.ResEquipementsInfrastructures
                                                   where (inE.DateAcquisition.Year + inE.DureeDeVie) > debut.Year
                                                   select new
                {
                    Immobilisation = inE.Nom,
                    inE.Quantite,
                    ValeurDOrigine = inE.Montant,
                    inE.DateAcquisition,
                    inE.DureeDeVie,
                    nombreJoursPeriode = DbFunctions.DiffDays(debut, fin),
                    AmortissementAnnuel = inE.Montant / (inE.DureeDeVie),
                })
                                                  .Select(a => (float?)(a.AmortissementAnnuel / 365) * a.nombreJoursPeriode)
                                                  .Sum() ?? 0f;

                return(amortissementsJournaliers.ToString("n0"));
            }
        }
コード例 #16
0
        public static int CalculerSoldeStockProduitSemiFini(string produitSemiFini, DateTime date)
        {
            using (CasaDBEntities db = new CasaDBEntities())
            {
                var stockInitial = (from psf in db.ResStockProduitsSemiFinis
                                    where psf.Description == produitSemiFini
                                    select psf.Quantite).FirstOrDefault();

                var entrees = (from pro in db.EveProductionProduitsSemiFinis
                               where pro.ResStockProduitsSemiFini.Description == produitSemiFini
                               where pro.EveProduction.Date <= date.Date
                               select(int?) pro.QuantiteProduitSemiFini).Sum() ?? 0;

                var sorties = (from upsf in db.EveUtilisationProduitsSemiFinis
                               join ur in db.EveUtilisationRessources on upsf.CodeUtilisationRessource equals ur.CodeUtilisationRessources
                               join p in db.EveProductions on ur.CodeUtilisationRessources equals p.CodeUtilisationRessources
                               where upsf.ResStockProduitsSemiFini.Description == produitSemiFini
                               where p.Date <= date.Date
                               select(int?) upsf.QuantiteProduitSemiFini).Sum() ?? 0;


                return(stockInitial + entrees - sorties);
            }
        }