/// <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); }
/// <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); }
/// <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); }
/// <inheritdoc /> public IEnumerable <TypesOuvrages> GetAllTypeOuvrages() { using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString)) { return(context.TypesOuvrages.ToList()); } }
/// <inheritdoc /> public IEnumerable <Lignes> GetAllLignes() { using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString)) { var lignes = context.Lignes.ToList(); return(lignes); } }
/// <inheritdoc /> public ProgrammationDocumentPGE AddProgrammationDocumentPGE(ProgrammationDocumentPGE pge) { using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString)) { context.ProgrammationDocumentPGE.Add(pge); context.SaveChanges(); } return(pge); }
/// <inheritdoc /> public async Task <IEnumerable <Lignes> > GetAllLignesAsync() { using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString)) { var result = await context.Lignes.ToListAsync(); return(result); } }
/// <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); }
/// <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); }
/// <inheritdoc /> public int SaveProgrammation(Programmations newProgrammation) { using (RatpHidalgoEntities context = new RatpHidalgoEntities(Resource1.RatpConnectionString)) { context.Programmations.Add(newProgrammation); context.SaveChanges(); return(newProgrammation.IdProgrammation); } }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); } }
/// <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); }
/// <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(); } }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); } } }
/// <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); } } }
/// <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)); }
/// <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(); } }
/// <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(); } }
/// <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); }
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); }