// Ctor public RapproWithOpeConvertieFromEcheanceAndMontantDifferentService( IArpagonUow _uow, RapproRawFabrique _fabrique, int _groupeId) { uow = _uow; groupeId = _groupeId; fabrique = _fabrique; }
// Ctor public RapproWithOperationFrontloadedService(IArpagonUow _uow, RapproRawFabrique _fabrique) { uow = _uow; fabriqueSeuil = new SeuilRapproFabrique(); fabrique = _fabrique; machine = new RawOperationMatchingMachine(); }
public RapproWithConversionToOperationService(IArpagonUow _uow , SpecCandidateFabrique _fabriqueSpec, OperationFabrique _fabriqueOperation, RapproRawFabrique _fabriqueRapproRaw) { uow = _uow; fabriqueSpec = _fabriqueSpec; fabriqueRapproRaw = _fabriqueRapproRaw; fabriqueOperation = _fabriqueOperation; }
public RapproRawService(IArpagonUow _uow , SpecCandidateFabrique _fabriqueSpec, OperationFabrique _opeFabrique, RapproRawFabrique _rapproRawFabrique, int _groupeId) { uow = _uow; groupeId = _groupeId; fabriqueSpec = _fabriqueSpec; fabriqueOperation = _opeFabrique; fabriqueRapproRaw = _rapproRawFabrique; }
// Exécution du rapprochement public void Executer() { // Enrichir rappros raws avec SpecCandidates this.EnrichirReferentielRapproRaws(compteId); // Rapprocher les raws (le commit a lieu dans le service) var rapproRawFabrique = new RapproRawFabrique(groupeId); var opeFabrique = new OperationFabrique(groupeId, groupe, userName); var s1 = new RapproRawService(uow, fabriqueSpec, opeFabrique, rapproRawFabrique, groupeId); var rapproRaws = s1.RapprocherRaws(); // Récupérer les opés du groupe rapprochées ou non rapprochables, avec echeance et non rapprochées échéances var opes = uow.Operation.GetAllByGroupeId(groupeId) .Where(o => o.EtatId == 3 || o.EtatId == 2) .Where(o => o.AvecEcheance == true) .Where(o => o.RapproEcheance == false) .Where(o => o.AlloueeEcheance == true) ; // Récupérer le échéances du groupes non ralisées e non annulées var echeances = uow.EcheanceContrat.GetAllByGroupeId(groupeId) .Where(e => e.Realisee == false) .Where(e => e.Annulee == false) .Where(e => e.ConvertieOperation == true) ; // Rapprocher les échéances IEcheanceMatchingMachine machine = new EcheanceMatchingMachine(); var s2 = new RapproEcheancesService(uow, groupeId, machine); var rapproEcheances = s2.RapprocherEcheances(opes, echeances); uow.Commit(); // Ajout des rappros au contexte this.CommitRapproEcheances(rapproEcheances); // Rapprocher le chargement chargement.Rapprocher(); // Tracer le processus this.TracerProcessus(rapproRaws); }