Example #1
0
        /// <inheritdoc />
        public double GetSurfaceOuvragesByPge(int idOuvrage)
        {
            double surface = 0;
            double outConvertDouble;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                string id = idOuvrage.ToString();
                var    listeOuvrageAnnexe = context.DataAnnexe.Where(x => x.IdOuvrage == id).ToList();
                if (listeOuvrageAnnexe != null && listeOuvrageAnnexe.Any())
                {
                    ///TODO YAF à tester cette convertion suite à la modification de type de la prop surface dans DataAnnexe
                    //surface = listeOuvrageAnnexe.Sum(x => x.Surface_developpe.GetValueOrDefault());
                    foreach (var item in listeOuvrageAnnexe)
                    {
                        if (double.TryParse(item.Surface_developpe, out outConvertDouble))
                        {
                            surface += outConvertDouble;
                        }
                    }
                }
            }

            return(surface);
        }
Example #2
0
        /// <inheritdoc />
        public IEnumerable <DataAnnexe> GetAllDataAnnexeByIdOuvrage(IEnumerable <int> listeIdOuvrage)
        {
            IEnumerable <DataAnnexe> result = null;
            var listeIdOuvrageConverted     = listeIdOuvrage.Select(x => x.ToString()).ToList();

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    //Filtre sur les ouvrages de type Tunnel et Couloir
                    //TODO YAR 23/05/2017: en attedant d'utiliser les Enum pour TypesOuvrages
                    result = context.DataAnnexe.Where(x => listeIdOuvrageConverted.Contains(x.IdOuvrage)).ToList();
                }
                catch (TimeoutException tex)
                {
                    //Log
                }

                catch (Exception ex)
                {
                    //Log
                }
            }
            return(result);
        }
Example #3
0
        /// <inheritdoc />
        public IEnumerable <Ouvrages> GetAllOuvragesWithInfoLignes(IEnumerable <int> listeIdOuvrage)
        {
            IEnumerable <Ouvrages> result = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    result = context.Ouvrages.Where(x => listeIdOuvrage.Contains(x.Id) && (x.IdTypeOuvrage == 1 || x.IdTypeOuvrage == 14))
                             .Include(i => i.Lieux)
                             .Include(i => i.Lieux.Lignes)
                             .Include(i => i.Descriptions)
                             .ToList();
                }
                catch (TimeoutException tex)
                {
                    //Log
                }

                catch (Exception ex)
                {
                    //Log
                }
            }

            return(result);
        }
Example #4
0
 /// <inheritdoc />
 public IEnumerable <TypesOuvrages> GetAllTypeOuvrages()
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         return(context.TypesOuvrages.ToList());
     }
 }
Example #5
0
 /// <inheritdoc />
 public IEnumerable <Lignes> GetAllLignes()
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         var lignes = context.Lignes.ToList();
         return(lignes);
     }
 }
Example #6
0
 /// <inheritdoc />
 public ProgrammationDocumentPGE AddProgrammationDocumentPGE(ProgrammationDocumentPGE pge)
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         context.ProgrammationDocumentPGE.Add(pge);
         context.SaveChanges();
     }
     return(pge);
 }
Example #7
0
        /// <inheritdoc />
        public async Task <IEnumerable <Lignes> > GetAllLignesAsync()
        {
            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                var result = await context.Lignes.ToListAsync();

                return(result);
            }
        }
Example #8
0
        /// <inheritdoc />
        IEnumerable <ProgrammationDetails> IHidalgoRepository.GetAllProgrammationDetailsByProgrammation(int idProgrammation)
        {
            IEnumerable <ProgrammationDetails> listProgrammationDetails;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                listProgrammationDetails = context.ProgrammationDetails.Where(x => x.IdProgrammation == idProgrammation).ToList();
            }
            return(listProgrammationDetails);
        }
Example #9
0
        /// <inheritdoc />
        public IEnumerable <Documents> GetAllDocumentPge(ENatureCalibrage typeNatureTravaux)
        {
            IEnumerable <Documents> resultOfDocuments = null;

            //TODO YAR 24/05/2017 : filter en dure doit se remplacer par une enum lié à la base de données, à remplacer par enm
            ///TODO d'après le CD Demandes travaux: nous avons une rectif pour les données de la nature travaux dont on trouve
            /// Réfection d’ouvrages maçonnés = Reprise maçonnerie = 31
            ///Régénération des maçonneries = Confortement des maçonneries = 6
            ///Confortement des terrains(7) =  Comblement de vide(5) = Confortement des terrains = 5 et 7
            int[] idNatureTravauxMaconnerie = new[] { 31, 6, 7, 5 };
            int[] idNaturesTravauxEnduit    = new[] { 25 };
            int[] idTypeOuvrage             = new[] { 1, 14 };
            int[] pgestatutsAutorise        = new[] { (int)EStatutsDocument.EN_COURS, (int)EStatutsDocument.RELANCE };
            int   dateAchevePge             = 2009;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    IQueryable <Documents> query = context.Documents
                                                   .Include(i => i.DesordresDocuments)
                                                   .Include(i => i.DesordresDocuments.Select(x => x.Desordres.Localisations.Ouvrages))
                                                   .Include(i => i.DesordresDocuments.Select(x => x.DocumentsLies))
                                                   .Include(i => i.ValidationsDocuments);

                    //Filtre pour nature travaux maconnerie
                    if (typeNatureTravaux == ENatureCalibrage.Maçonnerie)
                    {
                        query = query.Where(x => x.DesordresDocuments.Any(xx => xx.Id == x.DesordresDocuments.Max(m => m.Id) && idNatureTravauxMaconnerie.Contains(xx.IdNatureTravaux.Value) && idTypeOuvrage.Contains(xx.Desordres.Localisations.Ouvrages.IdTypeOuvrage)));
                    }
                    else if (typeNatureTravaux == ENatureCalibrage.Enduit)   //filtre pour nature travaux Enduit
                    {
                        query = query.Where(x => x.DesordresDocuments.Any(xx => xx.Id == x.DesordresDocuments.Max(m => m.Id) && idNaturesTravauxEnduit.Contains(xx.IdNatureTravaux.Value) && idTypeOuvrage.Contains(xx.Desordres.Localisations.Ouvrages.IdTypeOuvrage)));
                    }

                    query = query.Where(x => x.IdDocumentType == 10 &&
                                        x.DateCreation.HasValue &&
                                        x.DateCreation.Value.Year > dateAchevePge &&
                                        x.DesordresDocuments.Any(xx => xx.DocumentsLies.Any(xxx => xxx.DateStatut == xx.DocumentsLies.Max(m => m.DateStatut) && pgestatutsAutorise.Contains(xxx.IdStatutDocument))));

                    resultOfDocuments = query.Distinct().OrderBy(x => x.NumeroAffaire).ToList();
                }
                catch (NullReferenceException exNull)
                {
                    //Log
                }

                catch (Exception ex)
                {
                    //Log
                }
            }

            return(resultOfDocuments);
        }
Example #10
0
        /// <inheritdoc />
        public int SaveProgrammation(Programmations newProgrammation)
        {
            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                context.Programmations.Add(newProgrammation);

                context.SaveChanges();

                return(newProgrammation.IdProgrammation);
            }
        }
Example #11
0
        /// <inheritdoc />
        public IEnumerable <NatureTravauxExternes> GetAllNatureTravauxExternes()
        {
            IEnumerable <NatureTravauxExternes> listeNatureTravauxExternes = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                listeNatureTravauxExternes = context.NatureTravauxExternes.ToList().OrderBy(x => x.Id);
            }

            return(listeNatureTravauxExternes);
        }
Example #12
0
        /// <inheritdoc />
        public Programmations GetOneProgrammation(int idProgrammation)
        {
            Programmations programmation = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                programmation = context.Programmations.Where(x => x.IdProgrammation == idProgrammation).SingleOrDefault();
            }

            return(programmation);
        }
Example #13
0
        /// <inheritdoc />
        public ProgrammationDocumentPGE GetOneProgrammationDocumentPge(int idProgrammationDocumentPge)
        {
            ProgrammationDocumentPGE programmationDocumentPGE = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                programmationDocumentPGE = context.ProgrammationDocumentPGE.Where(x => x.Id == idProgrammationDocumentPge).SingleOrDefault();
            }

            return(programmationDocumentPGE);
        }
Example #14
0
        /// <inheritdoc />
        public IEnumerable <Programmations> GetAllProgrammation()
        {
            IEnumerable <Programmations> listProgrammation = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                //listProgrammation = context.Programmations.OrderByDescending(x => x.UserModification).ToList();
                listProgrammation = context.Programmations.OrderByDescending(x => x.IdProgrammation).ToList();
            }

            return(listProgrammation);
        }
Example #15
0
        /// <inheritdoc />
        public IEnumerable <Lignes> GetAllLigneByFamille()
        {
            IEnumerable <Lignes> listeLigneGestionnaire = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                //listeLigneGestionnaire = context.Lignes.Where(x => x.IdFamilleLigne == 1 && x.IdFamilleLigne == 2 && x.Actif).ToList();
                listeLigneGestionnaire = context.Lignes.Where(x => x.Actif && x.IdFamilleLigne == 1 || x.IdFamilleLigne == 2).ToList().OrderBy(x => x.OrdreAffichage);
            }

            return(listeLigneGestionnaire);
        }
Example #16
0
 /// <inheritdoc />
 public IEnumerable <Documents> GetAllDocumentPge()
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         //Obtenir la liste des documents de type PGE
         var result = context.Documents.Where(i => i.IdDocumentType == 10)
                      .Include(i => i.DesordresDocuments)
                      .Include(i => i.DesordresDocuments.Select(s => s.Desordres))
                      .Include(i => i.DesordresDocuments.Select(s => s.Desordres.FamillesDesordresTypes))
                      .ToList();
         return(result);
     }
 }
Example #17
0
        /// <inheritdoc />
        public IEnumerable <ProgrammationValeurParametresDocument> GetAllValeurParametreByPge(int idDocumentPge)
        {
            IEnumerable <ProgrammationValeurParametresDocument> listeValeurParametrePge = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                listeValeurParametrePge = context.ProgrammationValeurParametresDocument.Where(x => x.IDDocumentPge == idDocumentPge)
                                          .Include(i => i.ParametresHidalgo)
                                          .Include(i => i.ParametresHidalgo.Criteres).ToList();
            }

            return(listeValeurParametrePge);
        }
Example #18
0
 /// <inheritdoc />
 public void UpdateProgrammation(Programmations programmation)
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         var programmationPoco = context.Programmations.Find(programmation.IdProgrammation);
         if (programmationPoco != null)
         {
             programmationPoco.PrixUnitaire     = programmation.PrixUnitaire;
             programmationPoco.BudgetDisponible = programmation.BudgetDisponible;
         }
         context.SaveChanges();
     }
 }
Example #19
0
        /// <inheritdoc />
        public IEnumerable <ProgrammationDocumentPGE> GetAllDocumentPgeByProgrammation(int idProgrammation)
        {
            IEnumerable <ProgrammationDocumentPGE> listePgeCalcule = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                listePgeCalcule = context.ProgrammationDocumentPGE
                                  .Where(x => x.IdProgrammation == idProgrammation)
                                  .Include(i => i.Programmations)
                                  .Include(i => i.Documents)
                                  .ToList();
            }

            return(listePgeCalcule);
        }
Example #20
0
        /// <inheritdoc />
        public IEnumerable <Desordres> GetAllDesordresByDocument(int idDocument)
        {
            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                var listedocumentdesordres = context.DesordresDocuments.Where(x => x.IdDocument == idDocument).Select(i => i.IdDesordre).ToList();
                if (listedocumentdesordres != null && listedocumentdesordres.Any())
                {
                    var desordres = context.Desordres.Include(i => i.FamillesDesordresTypes)
                                    .Where(i => i.FamillesDesordresTypes.IdFamilleDesordre == 2 && listedocumentdesordres.Contains(i.Id))
                                    .ToList();
                    return(desordres);
                }
            }

            return(null);
        }
Example #21
0
        /// <inheritdoc />
        public ProcesVerbaux GetPvByDocumentPge(string numAffaire)
        {
            ProcesVerbaux resultat = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                resultat = context.ProcesVerbaux
                           .Include(i => i.GroupeOuvrage)
                           .Include(i => i.GroupeOuvrage.Select(ii => ii.Lieux.Descriptions)) // récupérer que les lieux gestionnaire
                           .Include(i => i.GroupeOuvrage.Select(ii => ii.Lieux.Lignes))       // récupérer que les lignes gestionnaire
                           .Include(i => i.Localisations)
                           .Include(i => i.Localisations.Select(ii => ii.Desordres.Select(x => x.DesordresDocuments.Select(xx => xx.Documents))))
                           .Where(x => x.Localisations.Any(p => p.Desordres.Any(pp => pp.DesordresDocuments.Any(ppp => ppp.Documents.IdDocumentType == 10 && ppp.Documents.NumeroAffaire == numAffaire)))).FirstOrDefault();
            }

            return(resultat);
        }
Example #22
0
        /// <inheritdoc />
        public IEnumerable <CoefficientPonderationParametresCriteresCalibrage> GetAllCoefficientPonderation()
        {
            IEnumerable <CoefficientPonderationParametresCriteresCalibrage> listeCoefficientPonderation = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    listeCoefficientPonderation = context.CoefficientPonderationParametresCriteresCalibrage.ToList();
                }
                catch (Exception ex)
                {
                    this.Logger.Error(ex.Message);
                }
            }

            return(listeCoefficientPonderation);
        }
Example #23
0
        /// <inheritdoc />
        public CoefficientPonderationParametresCriteresCalibrage GetOneCoefficientPonderationById(int id)
        {
            CoefficientPonderationParametresCriteresCalibrage result = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    result = context.CoefficientPonderationParametresCriteresCalibrage.Single(x => x.Id == id);
                }
                catch (Exception ex)
                {
                    this.Logger.Error(ex.Message);
                }
            }

            return(result);
        }
Example #24
0
 /// <inheritdoc />
 public void UpdateCoefficientPonderationParametreEnduit(CoefficientPonderationParametresCriteresCalibrage coefficientPonderationParametre)
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         try
         {
             var coefficientPonderationToUpdate = context.CoefficientPonderationParametresCriteresCalibrage.Find(coefficientPonderationParametre.Id);
             if (coefficientPonderationToUpdate != null)
             {
                 coefficientPonderationToUpdate.ValeurEnduit = coefficientPonderationParametre.ValeurEnduit;
                 context.SaveChanges();
             }
         }
         catch (Exception ex)
         {
             this.Logger.Error(ex.Message);
         }
     }
 }
Example #25
0
 /// <inheritdoc />
 public void UpdateCoefficientPonderationParametresMaçonnerie(CoefficientPonderationParametresCriteresCalibrage coefficientPonderation)
 {
     using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
     {
         try
         {
             var coefficientPonderationToUpdate = context.CoefficientPonderationParametresCriteresCalibrage.Find(coefficientPonderation.Id);
             if (coefficientPonderationToUpdate.ValeurMaconnerie != coefficientPonderation.ValeurMaconnerie)
             {
                 coefficientPonderationToUpdate.ValeurMaconnerie = coefficientPonderation.ValeurMaconnerie;
                 //context.Entry(coefficientPonderationToUpdate).State = EntityState.Modified;
                 context.SaveChanges();
             }
         }
         catch (Exception ex)
         {
             this.Logger.Error(ex.Message);
         }
     }
 }
Example #26
0
        /// <inheritdoc />
        public IEnumerable <Lieux> GetAllLieuxByLigne(int idLigneGestionnaire)
        {
            IEnumerable <Lieux> listeLieuxGestionnaire = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                listeLieuxGestionnaire = context.Lieux.Where(x => (x.Actif.HasValue && x.Actif.Value) && x.IdLigneGestionnaire == idLigneGestionnaire)
                                         .Include(x => x.Descriptions)
                                         .ToList().OrderBy(x => x.Ordre);

                foreach (var Lieux in listeLieuxGestionnaire)
                {
                    if (Lieux.Ordre == null)
                    {
                        Lieux.Ordre = 99999;
                    }
                }
            }

            return(listeLieuxGestionnaire.OrderBy(x => x.Ordre));
        }
Example #27
0
        /// <inheritdoc />
        public void RemoveOneProgrammation(Programmations programmation, IEnumerable <ProgrammationDetails> listProgrammationDetails, IEnumerable <ProgrammationDocumentPGE> listProgrammationDocumentPGE, IEnumerable <ProgrammationValeurParametresDocument> listProgrammationValeurParametresDocument)
        {
            //TODO RDT : Base de données passage en casecade au moin pour les [ProgrammationValeurParametresDocument] et si possible aussi pour

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                //TODO YAF: Rework à faire : préconiser l'Unit of work

                ///Suppression des dependances
                //var programmationDetailToDelete = context.ProgrammationDetails.Find(listProgrammationDetails.Select(x => x.IdProgrammationDetail).ToArray());

                ///Suppression des ProgrammationDetails
                foreach (ProgrammationDetails element in listProgrammationDetails)
                {
                    var programmationDetailToDelete = context.ProgrammationDetails.Find(element.IdProgrammationDetail);
                    context.ProgrammationDetails.Remove(programmationDetailToDelete);
                }//context.ProgrammationDetails.RemoveRange(listProgrammationDetails);

                ///Suppression des Valeurs des Parametres des PGE
                foreach (ProgrammationValeurParametresDocument element in listProgrammationValeurParametresDocument)
                {
                    var programmationValeurToDelete = context.ProgrammationValeurParametresDocument.Find(element.IDParametreHidalgo, element.IDDocumentPge);
                    context.ProgrammationValeurParametresDocument.Remove(programmationValeurToDelete);
                }//context.ProgrammationValeurParametresDocument.RemoveRange(listProgrammationValeurParametresDocument);

                ///Suppression des PGE
                foreach (ProgrammationDocumentPGE element in listProgrammationDocumentPGE)
                {
                    var programmationPgeToDelete = context.ProgrammationDocumentPGE.Find(element.Id);
                    context.ProgrammationDocumentPGE.Remove(programmationPgeToDelete);
                }//context.ProgrammationDocumentPGE.RemoveRange(listProgrammationDocumentPGE);

                ///Suppression de la programmation
                var programmationToDelete = context.Programmations.Find(programmation.IdProgrammation);
                context.Programmations.Remove(programmationToDelete);


                context.SaveChanges();
            }
        }
Example #28
0
        /// <inheritdoc />
        public void UpdateProgrammationDocumentPGE(ProgrammationDocumentPGE pge)
        {
            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                var pgeToUpdate = context.ProgrammationDocumentPGE.Find(pge.Id);
                if (pgeToUpdate != null)
                {
                    //Information de la PGE
                    pgeToUpdate.NumRang     = pge.NumRang;
                    pgeToUpdate.NumMedian   = pge.NumMedian;
                    pgeToUpdate.IsExAequo   = pge.IsExAequo;  // = true
                    pgeToUpdate.IsValideEx  = pge.IsValideEx; //== true
                    pgeToUpdate.Commentaire = pge.Commentaire;

                    //Information lié aux travaux sur plusieurs années
                    pgeToUpdate.Annee  = pge.Annee;
                    pgeToUpdate.Budget = pge.Budget;
                    pgeToUpdate.IsTravauxPlusieursAnnee = pge.IsTravauxPlusieursAnnee;
                }

                context.SaveChanges();
            }
        }
Example #29
0
        /// <inheritdoc />
        public IEnumerable <Ouvrages> GetAllOuvragesById(IEnumerable <int> listeIdOuvrage)
        {
            IEnumerable <Ouvrages> result = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                try
                {
                    //Filtre sur les ouvrages de type Tunnel et Couloir
                    //TODO YAR 23/05/2017: en attedant d'utiliser les Enum pour TypesOuvrages
                    result = context.Ouvrages.Where(x => listeIdOuvrage.Contains(x.Id) && (x.IdTypeOuvrage == 1 || x.IdTypeOuvrage == 14)).Include(i => i.Descriptions).ToList();
                }
                catch (TimeoutException tex)
                {
                    //Log
                }

                catch (Exception ex)
                {
                    //Log
                }
            }
            return(result);
        }
Example #30
0
        public Programmations GetOneProgrammationByTypeNatureAnnee(string TypesOuvrages, string natureTravaux, int?anneeProgrammation)
        {
            Programmations programmation = null;

            using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString))
            {
                if (anneeProgrammation == 0)
                {
                    programmation = context.Programmations
                                    .Where(x => x.NatureTravaux.Libelle == natureTravaux && x.TypeOuvrage.Libelle == TypesOuvrages)
                                    .OrderByDescending(x => x.DateCreation)
                                    .First();
                }
                else
                {
                    programmation = context.Programmations
                                    .Where(x => x.NatureTravaux.Libelle == natureTravaux && x.TypeOuvrage.Libelle == TypesOuvrages && x.AnneeProgrammation == anneeProgrammation)
                                    .OrderByDescending(x => x.DateCreation)
                                    .FirstOrDefault();
                }
            }

            return(programmation);
        }