public EcheanceBatchProcessus(IArpagonUow _uow, OperationFabrique _fabrique
            , int _groupeId)
        {
            uow = _uow;
            groupeId = _groupeId;

            service = new EcheanceToOperationService(uow, _fabrique);
        }
        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);
        }
Example #5
0
 // BatcherEcheances
 private void BatcherEcheances()
 {
     var _fabrique = new OperationFabrique(groupeId, user.Groupe, user.UserName);
     var process = new EcheanceBatchProcessus(uow, _fabrique, groupeId);
     process.Executer();
 }
 public EcheanceToOperationService(IArpagonUow _uow, OperationFabrique _fabrique)
 {
     uow = _uow;
     fabrique = _fabrique;
 }