public PreProcessadorDeEntregasFixas(IMapeadorDeEntregas repositorioDeEntregas, RegimeRemuneracao regime, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciadorFinanceiro)
 {
     _regime = regime;
     _repositorioDeEntregas = repositorioDeEntregas;
     _repositorioDeRegras   = repositorioDeRegras;
     _gerenciadoFinanceiro  = gerenciadorFinanceiro;
 }
Example #2
0
        public async Task Deve_Adicionar_Nova_Entrada_De_Regra_No_Banco_Desenv()
        {
            //Arrange
            IRepositorioDeRegras  repo = TesteInfraService.ServiceProvider.GetService <IRepositorioDeRegras>();
            Mock <IFavorecimento> favorecimentoMock = new Mock <IFavorecimento>();

            favorecimentoMock.SetupAllProperties();
            Profissional funcionario1 = new Profissional(1, null, "Fernando");
            Profissional funcionario2 = new Profissional(2, null, "Bronze");
            Profissional funcionario3 = new Profissional(3, null, "Cinco");

            Profissional[] funcionarios = new Profissional[] { funcionario1, funcionario2, funcionario3 };
            ParametrosDeRegraDeRemuneracao parametros = LOMock.GeraParametrosDeRegraDeRemuneracaoPorHoraMock(percentual: 50, vigencia: new PeriodoSimples(new DateTime(2018, 05, 01), new DateTime(2018, 08, 24)));
            RegraPorHora regraHora = null;//new RegraPorHora(parametros);
            int          idInserido;

            //Act
            idInserido = await repo.InserirAsync(regraHora);

            throw new NotImplementedException();
            //IRegraDeRemuneracao[] regraObtida = await repo.ObterAsync(new int[] { idInserido });

            ////Assert
            //Assert.IsNotNull(regraObtida[0]);
            //Assert.AreEqual(regraHora.Tipo, regraObtida[0].Tipo);
        }
 public PreProcesadorDeEntregasARemunerarComposto(ConfiguracoesDeEntregas configs, IMapeadorDeEntregas mapeadorDeEntregas, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciadorFinanceiro)
 {
     _mapeadorDeEntregas      = mapeadorDeEntregas;
     _analisadoresEspecificos = new ConcurrentStack <Lazy <IPreProcessadorDeEntregas> >();
     _repositorioDeRegras     = repositorioDeRegras;
     _gerenciadorFinanceiro   = gerenciadorFinanceiro;
     Configurar(configs);
 }
        private PreProcesadorDeEntregasARemunerarComposto ConfiguraPreProcessador(IServiceProvider servico)
        {
            IMapeadorDeEntregas  mapeadorDeEntregas  = servico.GetRequiredService <IMapeadorDeEntregas>();
            IRepositorioDeRegras repositorioDeRegras = servico.GetRequiredService <IRepositorioDeRegras>();
            IGerenciadorDeRequisicoesFinanceiras gerenciadorFinanceiro = servico.GetRequiredService <IGerenciadorDeRequisicoesFinanceiras>();

            return(new PreProcesadorDeEntregasARemunerarComposto(GetConfiguracoesDeEntrega(), mapeadorDeEntregas, repositorioDeRegras, gerenciadorFinanceiro));
        }
Example #5
0
        public async Task Deve_Vincular_Regras_A_Contrato()
        {
            //Arrange
            IRepositorioDeContratoDeRemuneracao repoContrato = TesteInfraService.ServiceProvider.GetService <IRepositorioDeContratoDeRemuneracao>();
            IRepositorioDeRegras  repoRegra         = TesteInfraService.ServiceProvider.GetService <IRepositorioDeRegras>();
            Mock <IFavorecimento> favorecimentoMock = new Mock <IFavorecimento>();

            favorecimentoMock.SetupAllProperties();
            Profissional funcionario1 = new Profissional(1, null, "Fernando");
            Profissional funcionario2 = new Profissional(2, null, "Bronze");
            Profissional funcionario3 = new Profissional(3, null, "Cinco");

            Profissional[] funcionarios = new Profissional[] { funcionario1, funcionario2, funcionario3 };
            ParametrosDeRegraDeRemuneracao parametros = LOMock.GeraParametrosDeRegraDeRemuneracaoPorHoraMock(percentual: 50, vigencia: new PeriodoSimples(new DateTime(2018, 05, 01), new DateTime(2018, 08, 24)));
            RegraPorHora regraHora1 = null;//new RegraPorHora(parametros);

            parametros = LOMock.GeraParametrosDeRegraDeRemuneracaoPorHoraMock(percentual: 60, vigencia: new PeriodoSimples(new DateTime(2018, 06, 01), new DateTime(2018, 08, 24)));
            RegraPorHora regraHora2 = null;//new RegraPorHora(parametros);

            parametros = LOMock.GeraParametrosDeRegraDeRemuneracaoPorHoraMock(percentual: 70, vigencia: new PeriodoSimples(new DateTime(2018, 07, 01), new DateTime(2018, 08, 24)));
            RegraPorHora          regraHora3     = null;// new RegraPorHora(parametros);
            ContratoDeRemuneracao contratoCriado = new ContratoDeRemuneracao(new PeriodoSimples(new DateTime(2018, 03, 01), new DateTime(2018, 04, 01)));

            //Act
            List <int> idsRegra = new List <int>
            {
                { await repoRegra.InserirAsync(regraHora1) },
                { await repoRegra.InserirAsync(regraHora2) },
                { await repoRegra.InserirAsync(regraHora3) }
            };
            int idContrato = await repoContrato.InserirAsync(contratoCriado);

            await repoContrato.AtualizaVinculosAsync(idContrato, idsRegra.ToArray());

            IContratoDeRemuneracao[] contratoObtido = await repoContrato.ObterAsync(new int[] { idContrato });

            IRegraDeRemuneracao[]             regrasObtidas    = (await repoRegra.ObterAsync(idsRegra.ToArray())).Select(p => p.Tipo.Construtor(null, null).ComParametros(p).ComFavorecimento(favorecimentoMock.Object).Construir()).ToArray();
            IEnumerable <IRegraDeRemuneracao> regrasVinculadas = contratoObtido[0].Regras;

            //Assert
            Assert.AreEqual(idContrato, contratoObtido[0].Id);
            Assert.IsNotNull(regrasVinculadas);
            Assert.IsTrue(regrasVinculadas.Count() > 0);
        }
Example #6
0
 public RepositorioDeLimitesEMetas(IFabricaDeContextosDeBanco fabricaDeContextos, IRepositorioDeRegras repRegras)
 {
     _fabricaDeContextos  = fabricaDeContextos;
     _repositorioDeRegras = repRegras;
 }
Example #7
0
 internal override Task <IPreProcessadorDeEntregas> CriarProcessadorDeEntregasAsync(IMapeadorDeEntregas mapeadorDeEntregas, RegimeRemuneracao regime, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciador)
 {
     throw new NotImplementedException("WIP");
     //return Task.Factory.StartNew(() => (IPreProcessadorDeEntregas)(new PreProcessadorDeHorasRecebidasARemunerar(mapeadorDeEntregas, regime)));
 }
Example #8
0
 internal override Task <IPreProcessadorDeEntregas> CriarProcessadorDeEntregasAsync(IMapeadorDeEntregas mapeadorDeEntregas, RegimeRemuneracao regime, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciador)
 {
     return(Task.Factory.StartNew(() => (IPreProcessadorDeEntregas)(new PreProcessadorDeHorasARemunerar(mapeadorDeEntregas, regime))));
 }
Example #9
0
 internal abstract Task <IPreProcessadorDeEntregas> CriarProcessadorDeEntregasAsync(IMapeadorDeEntregas mapeadorDeEntregas, RegimeRemuneracao regime, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciadorFinanceiro);
Example #10
0
 internal override Task <IPreProcessadorDeEntregas> CriarProcessadorDeEntregasAsync(IMapeadorDeEntregas mapeadorDeEntregas, RegimeRemuneracao regime, IRepositorioDeRegras repositorioDeRegras, IGerenciadorDeRequisicoesFinanceiras gerenciador)
 {
     throw new NotImplementedException();
 }
 public RepositorioDeFavorecimentos(IFabricaDeContextosDeBanco fabricaDeContextos, IRepositorioDeRegras repositorioRegras, IRepositorioDeContratoDeRemuneracao repositorioContrato)
 {
     _fabricaDeContextos    = fabricaDeContextos;
     _repositorioDeContatos = repositorioContrato;
     _repositorioDeRegras   = repositorioRegras;
 }