private void PrepararItemLancamento(ClienteServicoEacessoService servicosEacessoService, RootLancamentoFinanceiro lancamentoAgrupado, ItemLancamentoFinanceiro itemLancamento)
        {
            if (lancamentoAgrupado.IdLan.HasValue)
            {
                var idServico = itemLancamento.IdServicoContratado;

                if (itemLancamento.CodigoCusto != null && itemLancamento.CodigoCusto.Any())
                {
                    var servicoPeloCodigo = itemLancamento.CodigoCusto.Split('.');
                    itemLancamento.IdServicoContratado = int.Parse(servicoPeloCodigo[2]);
                    idServico = itemLancamento.IdServicoContratado;
                }

                itemLancamento.IdServicoContratado =
                    _lancamentoFinanceiroRepository.ObterIdServicoContratado(itemLancamento.IdServicoContratado.Value);
                if (itemLancamento.IdServicoContratado == 0)
                {
                    if (idServico == 0)
                    {
                        return;
                    }
                    else
                    {
                        var novoServico = ObterServicoEacesso(idServico.Value, servicosEacessoService);
                        itemLancamento.IdServicoContratado = _servicoContratadoService.PersistirServicoEacesso(novoServico);
                    }
                }
                lancamentoAgrupado.ItensLancamentoFinanceiro.Add(itemLancamento);
            }
            else
            {
                AdicionarLogGenerico("ERRO LANCAMENTO - dtBaixa: " + lancamentoAgrupado.DtBaixa + " - vlBaixado: " + lancamentoAgrupado.VlBaixado + " - codcoligada: " + lancamentoAgrupado.CodigoColigada + " - idlan: " + lancamentoAgrupado.IdLan, JsonConvert.SerializeObject(lancamentoAgrupado));
            }
        }
示例#2
0
        public int Resolve(EAcessoRepasse source, Repasse destination, int destMember, ResolutionContext context)
        {
            return(0);

            var servicosEacessoService        = new ClienteServicoEacessoService("Data Source=10.161.69.101\\CORP_H;Initial Catalog=STFCORP_FENIX;User ID=stfcorp_fenix;Password=\"noRPH|dt*;\"");
            var serviceSevicoContratadoDePara = RecuperarImportacaoServiceDePara();
            var serviceSevicoContratado       = RecuperarImportacaoServicoContratadoService();

            try
            {
                var idDestino = serviceSevicoContratadoDePara.BuscarIdServicoContratadoPorIdServicoEacesso(source.IdServicoContratadoDestino);
                if (idDestino != 0)
                {
                    return(idDestino);
                }
                else
                {
                    var servicoEacesso = ObterServicoEacesso(source.IdServicoContratadoDestino, servicosEacessoService);
                    var servico        = Mapper.Map <ServicoContratado>(servicoEacesso);
                    return(serviceSevicoContratado.PersistirServicoEacesso(servico, servicoEacesso.IdServico, servicoEacesso.NomeServico, servicoEacesso.IdCliente, servicoEacesso.Markup, servicoEacesso.IdContrato, servicoEacesso.DescEscopo, servicoEacesso.SubTipo));
                }
            }
            catch (Exception e)
            {
                throw;
            }
        }
        private Repasse PersistirRepasseAtual(Repasse repasseAtual)
        {
            //DESCOMENTAR PARA POPULAR COM AS INFORMAÇÕES DE DESPESA
            //var repasseDb = _repasseRepository.Buscar(x => x.IdRepasseEacesso == repasseAtual.IdRepasseEacesso).FirstOrDefault();
            //if (repasseDb != null)
            //{
            //    repasseDb.VlInc = repasseAtual.VlInc;
            //    repasseDb.VlDesc = repasseAtual.VlDesc;
            //    repasseDb.IdTipoDespesa = repasseAtual.IdTipoDespesa;
            //    return repasseDb;
            //}
            var servicosEacessoService = new ClienteServicoEacessoService(_connectionStrings.Value.EacessoConnection);

            try
            {
                repasseAtual.IdRepasseMae = null;
                repasseAtual.DtRepasseMae = null;

                var idOrigem  = _deParaServicoService.BuscarIdServicoContratadoPorIdServicoEacesso(repasseAtual.IdServicoContratadoOrigem);
                var idDestino = _deParaServicoService.BuscarIdServicoContratadoPorIdServicoEacesso(repasseAtual.IdServicoContratadoDestino);
                if (idOrigem != 0 && idDestino != 0 && (idOrigem != 2233 || idDestino != 2233))
                {
                    if (idOrigem != 0)
                    {
                        repasseAtual.IdServicoContratadoOrigem = idOrigem;
                    }
                    else
                    {
                        var servicoEacesso = ObterServicoEacesso(repasseAtual.IdServicoContratadoOrigem, servicosEacessoService);
                        var servico        = ViewServicoVmParaServicoContratado(servicoEacesso);
                        repasseAtual.IdServicoContratadoOrigem = _servicoContratadoService.PersistirServicoEacesso(servico, servicoEacesso.IdServico, servicoEacesso.NomeServico, servicoEacesso.IdCliente, servicoEacesso.Markup, servicoEacesso.IdContrato, servicoEacesso.SiglaTipoServico, servicoEacesso.DescEscopo, servicoEacesso.SubTipo);
                    }

                    if (idDestino != 0)
                    {
                        repasseAtual.IdServicoContratadoDestino = idDestino;
                    }
                    else
                    {
                        var servicoEacesso = ObterServicoEacesso(repasseAtual.IdServicoContratadoDestino, servicosEacessoService);
                        var servico        = ViewServicoVmParaServicoContratado(servicoEacesso);
                        repasseAtual.IdServicoContratadoDestino = _servicoContratadoService.PersistirServicoEacesso(servico, servicoEacesso.IdServico, servicoEacesso.NomeServico, servicoEacesso.IdCliente, servicoEacesso.Markup, servicoEacesso.IdContrato, servicoEacesso.SiglaTipoServico, servicoEacesso.DescEscopo, servicoEacesso.SubTipo);
                    }
                    return(repasseAtual);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception e)
            {
                AdicionarLogGenerico(string.Format("Ocorreu um erro na migracao do repasse eacesso {0}", JsonConvert.SerializeObject(repasseAtual)), e.StackTrace);
                return(null);
            }
        }
        private List <RootLancamentoFinanceiro> VerificarValoresLancamentoFinanceiroAgrupados(IEnumerable <IGrouping <dynamic, RootLancamentoFinanceiro> > rootLancamentos)
        {
            var comprasEacessoService  = new ComprasEacessoService(_connectionStrings.Value.EacessoConnection);
            var servicosEacessoService = new ClienteServicoEacessoService(_connectionStrings.Value.EacessoConnection);
            var lancamentosResult      = new List <RootLancamentoFinanceiro>();

            foreach (var lancamento in rootLancamentos)
            {
                var lancamentoAgrupado = lancamento.FirstOrDefault();
                var itensLancamento    = lancamento.SelectMany(x => x.ItensLancamentoFinanceiro).ToList();
                lancamentoAgrupado.ItensLancamentoFinanceiro = new List <ItemLancamentoFinanceiro>();
                ObterTipoDespesaPorColigada(comprasEacessoService, lancamentoAgrupado);
                if (lancamentoAgrupado.IdTipoDespesa == 0)
                {
                    lancamentoAgrupado.IdTipoDespesa = null;
                }
                lancamentoAgrupado.LgUsuario = "EACESSO";

                foreach (var itemLancamento in itensLancamento)
                {
                    try
                    {
                        PrepararItemLancamento(servicosEacessoService, lancamentoAgrupado, itemLancamento);
                    }
                    catch (Exception e)
                    {
                        continue;
                    }
                }

                lancamentosResult.Add(lancamentoAgrupado);

                if (lancamentosResult.Count % 200 == 0)
                {
                    Console.WriteLine("Lancamentos RM Montados: " + lancamentosResult.Count + " - " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"));
                }
            }

            return(lancamentosResult);
        }
 private ViewServicoModel ObterServicoEacesso(int idServicoEacesso, ClienteServicoEacessoService servicoEacessoService)
 {
     return(servicoEacessoService.ObterServicoPorId(idServicoEacesso));
 }
        private List <RootLancamentoFinanceiro> VerificarValoresLancamentoFinanceiro(List <RootLancamentoFinanceiro> rootLancamentos)
        {
            _variables.UserName = "******";
            var comprasEacessoService  = new ComprasEacessoService(_connectionStrings.Value.EacessoConnection);
            var notasEacessoService    = new NotasFiscaisEacessoService(_connectionStrings.Value.EacessoConnection);
            var servicosEacessoService = new ClienteServicoEacessoService(_connectionStrings.Value.EacessoConnection);
            var lancamentosResult      = new List <RootLancamentoFinanceiro>();

            foreach (var lancamento in rootLancamentos)
            {
                try
                {
                    if (lancamento.IdLan.HasValue)
                    {
                        var item      = lancamento.ItensLancamentoFinanceiro.FirstOrDefault();
                        var idServico = item.IdServicoContratado;

                        if (item.CodigoCusto != null && item.CodigoCusto.Any())
                        {
                            var servicoPeloCodigo = item.CodigoCusto.Split('.');
                            item.IdServicoContratado = int.Parse(servicoPeloCodigo[2]);
                            idServico = item.IdServicoContratado;
                        }

                        item.IdServicoContratado = ObterServicoContratadoPorIdServicoEacesso(item.IdServicoContratado.Value);
                        item.IdServicoContratado =
                            _lancamentoFinanceiroRepository.ObterIdServicoContratado(item.IdServicoContratado.Value);
                        if (item.IdServicoContratado == 0)
                        {
                            if (idServico == 0)
                            {
                                continue;
                            }
                            else
                            {
                                var novoServico = ObterServicoEacesso(idServico.Value, servicosEacessoService);
                                VerificarTipoDespesa(comprasEacessoService, lancamento, item);
                                item.IdServicoContratado = _servicoContratadoService.PersistirServicoEacesso(novoServico);
                            }
                        }
                        else
                        {
                            VerificarTipoDespesa(comprasEacessoService, lancamento, item);
                        }

                        lancamento.ItensLancamentoFinanceiro = new List <ItemLancamentoFinanceiro> {
                            item
                        };
                        if (lancamento.IdTipoDespesa == 0)
                        {
                            lancamento.IdTipoDespesa = null;
                        }
                        lancamento.LgUsuario = "EACESSO";
                        lancamentosResult.Add(lancamento);
                    }
                }
                catch (Exception e)
                {
                    continue;
                }
            }
            return(lancamentosResult);
        }
        private int PersistirRepasses(List <Repasse> repassesFormatoCorreto, int count, bool tipoRepasse)
        {
            var serviceSevicoContratado       = RecuperarImportacaoServicoContratadoService();
            var serviceSevicoContratadoDePara = RecuperarImportacaoServiceDePara();
            var servicosEacessoService        = new ClienteServicoEacessoService("Data Source=10.161.69.101\\CORP_H;Initial Catalog=" + EACESSO_DB + ";User ID=stfcorp_fenix;Password=\"noRPH|dt*;\"");
            var variables = RecuperarVariablesToken();

            variables.UserName = "******";

            foreach (var repasse in repassesFormatoCorreto.ToList())
            {
                repasse.Id = 0;
                var _context = new GestaoServicoContext(variables);
                try
                {
                    repasse.FlRepasseInterno = tipoRepasse;
                    var idOrigem  = serviceSevicoContratadoDePara.BuscarIdServicoContratadoPorIdServicoEacesso(repasse.IdServicoContratadoOrigem);
                    var idDestino = serviceSevicoContratadoDePara.BuscarIdServicoContratadoPorIdServicoEacesso(repasse.IdServicoContratadoDestino);
                    if (idOrigem != 0)
                    {
                        repasse.IdServicoContratadoOrigem = idOrigem;
                    }
                    else
                    {
                        var servicoEacesso = ObterServicoEacesso(repasse.IdServicoContratadoOrigem, servicosEacessoService);
                        var servico        = Mapper.Map <ServicoContratado>(servicoEacesso);
                        repasse.IdServicoContratadoOrigem = serviceSevicoContratado.PersistirServicoEacesso(servico, servicoEacesso.IdServico, servicoEacesso.NomeServico, servicoEacesso.IdCliente, servicoEacesso.Markup, servicoEacesso.IdContrato, servicoEacesso.SiglaTipoServico, servicoEacesso.DescEscopo, servicoEacesso.SubTipo);
                    }

                    if (idDestino != 0)
                    {
                        repasse.IdServicoContratadoDestino = idDestino;
                    }
                    else
                    {
                        var servicoEacesso = ObterServicoEacesso(repasse.IdServicoContratadoDestino, servicosEacessoService);
                        var servico        = Mapper.Map <ServicoContratado>(servicoEacesso);
                        repasse.IdServicoContratadoDestino = serviceSevicoContratado.PersistirServicoEacesso(servico, servicoEacesso.IdServico, servicoEacesso.NomeServico, servicoEacesso.IdCliente, servicoEacesso.Markup, servicoEacesso.IdContrato, servicoEacesso.SiglaTipoServico, servicoEacesso.DescEscopo, servicoEacesso.SubTipo);
                    }
                    //var repasseExistente = _context.Repasses.FirstOrDefault(x => x.IdEpm == repasse.IdEpm);

                    _context.Add(repasse);
                    _context.SaveChanges();
                    _context.DetachAllEntities();
                    if (repasse.FlStatus == "AP")
                    {
                        if (!RealizarPersistenciaLancamentosFinanceiros(repasse))
                        {
                            _context.Remove(repasse);
                            _context.SaveChanges();
                            _context.DetachAllEntities();
                            AdicionarLogGenerico("Removido repasse com id: " + repasse.Id);
                            continue;
                        }
                    }
                    count++;
                }
                catch (Exception e)
                {
                    _context.DetachAllEntities();
                    AdicionarLogGenerico(string.Format("Ocorreu um erro ao persistir o repasse {0} - {1}", repasse.IdEpm, repasse.DescProjeto), e.StackTrace);
                    continue;
                }
            }
            return(count);
        }
        public async Task ObterNomeServicoLegado(GridServicoMigradoDTO gridServicoMigradoDTO)
        {
            var clienteServicoService = new ClienteServicoEacessoService(_connectionStrings.Value.EacessoConnection);

            gridServicoMigradoDTO.NmServicoEacesso = (await clienteServicoService.ObterNomeServicoPorId(gridServicoMigradoDTO.IdServicoEacesso));
        }