public EmailTodosAnexosAppServico(IEmailServico emailServico, IEmailAnexoServico emailAnexoServico,
                                   IConfiguracaoServico configuracaoServico)
 {
     _emailServico        = emailServico;
     _emailAnexoServico   = emailAnexoServico;
     _configuracaoServico = configuracaoServico;
 }
Ejemplo n.º 2
0
 public EmailAppServico(IEmailServico emailServico, IEmailModeloServico emailModeloServico,
                        IAtividadeServico atividadeServico,
                        IAtividadeTipoServico atividadeTipoServico, IStatusAtividadeServico statusAtividadeServico,
                        IAtividadeParteEnvolvidaServico atividadeParteEnvolvidaServico,
                        IUsuarioServico usuarioServico, IConfiguracaoServico configuracaoServico, IFilaServico filaServico,
                        IAtividadeFilaServico atividadeFilaServico, IEmailAnexoServico emailAnexoServico,
                        IConfiguracaoContasEmailsServico configuracaoContaEmailServico, IAtendimentoServico servicoAtendimento,
                        ICanalServico servicoCanal, IAtividadeServico servicoAtividade)
 {
     _emailServico                   = emailServico;
     _emailModeloServico             = emailModeloServico;
     _atividadeServico               = atividadeServico;
     _atividadeTipoServico           = atividadeTipoServico;
     _statusAtividadeServico         = statusAtividadeServico;
     _atividadeParteEnvolvidaServico = atividadeParteEnvolvidaServico;
     _usuarioServico                 = usuarioServico;
     _configuracaoServico            = configuracaoServico;
     _filaServico                   = filaServico;
     _atividadeFilaServico          = atividadeFilaServico;
     _emailAnexoServico             = emailAnexoServico;
     _configuracaoContaEmailServico = configuracaoContaEmailServico;
     _servicoAtendimento            = servicoAtendimento;
     _servicoCanal                  = servicoCanal;
     _servicoAtividade              = servicoAtividade;
     _anexos = new List <EmailAnexo>();
 }
Ejemplo n.º 3
0
 public UsuarioServico(IUsuarioRepositorio usuarioRapositorio,
                       ITokenAcessoRapidoRepositorio tokenAcessoRapidoRepositorio, IConfiguracaoServico servicoConfiguracao)
 {
     _usuarioRepositorio           = usuarioRapositorio;
     _tokenAcessoRapidoRepositorio = tokenAcessoRapidoRepositorio;
     _servicoConfiguracao          = servicoConfiguracao;
     _parametros = new DynamicParameters();
 }
 public ArquivoAppServico(IEntidadeServico servicoEntidade, IArquivoServico servicoArquivo,
                          IConfiguracaoServico configuracaoServico, IUsuarioServico usuarioServico)
 {
     _servicoEntidade     = servicoEntidade;
     _servicoArquivo      = servicoArquivo;
     _configuracaoServico = configuracaoServico;
     _usuarioServico      = usuarioServico;
 }
Ejemplo n.º 5
0
 public ConfiguracaoAppServico(IConfiguracaoServico servicoConfiguracao, IEntidadeServico servicoEntidade,
                               ICidadeServico servicoCidade, IPerfilServico servicoPerfil, IEquipeServico equipeServico)
 {
     _servicoConfiguracao = servicoConfiguracao;
     _servicoEntidade     = servicoEntidade;
     _servicoCidade       = servicoCidade;
     _servicoPerfil       = servicoPerfil;
     _equipeServico       = equipeServico;
 }
Ejemplo n.º 6
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

            //Validação dos serviços e injeção das dependencias
            CommonTypesOptions commonTypesOptions = Configuration.GetSection(nameof(CommonTypesOptions)).Get <CommonTypesOptions>();

            if (commonTypesOptions != null)
            {
                foreach (var tipo in commonTypesOptions.GetConfiguracoesServicosTypes())
                {
                    IConfiguracaoServico instancia = (IConfiguracaoServico)Activator.CreateInstance(tipo);
                    instancia.ConfigurarServicos(Configuration, services);
                }
            }
            services.AddSingleton <IConfiguration>(Configuration);
            services.AddSingleton(
                provider =>
            {
                var settings = new JsonSerializerSettings
                {
                    ContractResolver     = new CamelCasePropertyNamesContractResolver(),
                    DateFormatHandling   = DateFormatHandling.IsoDateFormat,
                    DefaultValueHandling = DefaultValueHandling.Include,
                    NullValueHandling    = NullValueHandling.Ignore,
                    DateTimeZoneHandling = DateTimeZoneHandling.Local
                };

                return(settings);
            }
                );

            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Swashbuckle.AspNetCore.Swagger.Info
                {
                    Version     = "v1",
                    Title       = "Desafio técnico da SoftPlan",
                    Description = "ASP.NET Core Web API - Microserviço para calcular juros compostos",
                    Contact     = new Swashbuckle.AspNetCore.Swagger.Contact
                    {
                        Name  = "SoftPlayer Lucas",
                        Email = "*****@*****.**",
                        Url   = "https://www.linkedin.com/in/lucas-dahne/",
                    },
                    License = new Swashbuckle.AspNetCore.Swagger.License
                    {
                        Name = "GNU General Public License (GNU GPL)",
                        Url  = "https://www.gnu.org/licenses/licenses.pt-br.html",
                    }
                });
                // Set the comments path for the Swagger JSON and UI.
                var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
                var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
                c.IncludeXmlComments(xmlPath);
            });
        }
Ejemplo n.º 7
0
 public UsuarioServico(UserManager <Usuario> userManager,
                       IContaServico contaServico,
                       IUsuarioBuilder usuarioBuilder,
                       IValidacaoDocumentosServico validadorDocumentos,
                       IConfiguracaoServico configuracaoServico)
 {
     this.userManager         = userManager;
     this.contaServico        = contaServico;
     this.usuarioBuilder      = usuarioBuilder;
     this.validadorDocumentos = validadorDocumentos;
     this.configuracaoServico = configuracaoServico;
 }
Ejemplo n.º 8
0
 public ChatServico(IChatRepositorio repositorio, IChatSolicitacaoServico chatSolicitacao,
                    IUsuarioServico usuarioServico, ICanalServico canalServico, IAtendimentoServico servicoAtendimento,
                    IAtividadeServico servicoAtividade, IConfiguracaoServico configuracaoServico)
     : base(repositorio)
 {
     _repositorio         = repositorio;
     _chatSolicitacao     = chatSolicitacao;
     _usuarioServico      = usuarioServico;
     _canalServico        = canalServico;
     _servicoAtendimento  = servicoAtendimento;
     _servicoAtividade    = servicoAtividade;
     _configuracaoServico = configuracaoServico;
 }
Ejemplo n.º 9
0
 public CashInServico(ICashInRepositorio cashInRepositorio,
                      IOperacaoServico operacaoServico,
                      IContaServico contaServico,
                      IConfiguracaoServico configuracaoServico,
                      ITransacaoServico transacaoServico,
                      IProdutorOperacoesClient produtorClient)
 {
     this.cashInRepositorio   = cashInRepositorio;
     this.operacaoServico     = operacaoServico;
     this.contaServico        = contaServico;
     this.configuracaoServico = configuracaoServico;
     this.transacaoServico    = transacaoServico;
     this.produtorClient      = produtorClient;
 }
 public AtendimentoAppServico(IAtendimentoServico atendimentoServico, IAtividadeServico atividadeServico,
                              IMidiaServico midiaServico, IStatusAtividadeServico statusAtividadeServico, IEmailServico emailServico,
                              IConfiguracaoServico configuracaoServico, IConfiguracaoContasEmailsServico configuracaoContaEmailServico,
                              IEmailAnexoServico emailAnexoServico)
 {
     _atendimento                   = atendimentoServico;
     _atividadeServico              = atividadeServico;
     _midiaServico                  = midiaServico;
     _statusAtividadeServico        = statusAtividadeServico;
     _emailServico                  = emailServico;
     _configuracaoServico           = configuracaoServico;
     _configuracaoContaEmailServico = configuracaoContaEmailServico;
     _anexos            = new List <EmailAnexo>();
     _emailAnexoServico = emailAnexoServico;
 }
Ejemplo n.º 11
0
 public OcorrenciaAppServico
 (
     IOcorrenciaServico servicoOcorrencia
     , IOcorrenciaTipoServico servicoOcorrenciaTipo
     , IContratoServico servicoContrato
     , IStatusEntidadeServico servicoStatusEntidade
     , IOcorrenciaTiposXOcorrenciaServico ocorrenciaTiposXOcorrenciaServico
     , IPessoaFisicaServico servicoPessoaFisica
     , IPessoaJuridicaServico servicoPessoaJuridica
     , ICidadeServico servicoCidadeServico
     , IAnotacaoServico servicoAntacao, IAtendimentoOcorrenciaServico servicoAtendimentoOcorrencia
     , IUsuarioServico servicoUsuario
     , IViewDinamicaAppServico viewDinamicaAppServico
     , IOcorrenciaLocalTipoAtendimentoServico servicoOcorrenciaLocalTipoAtendimento
     , ICampoDinamicoServico servicoCampoDinamico
     , ICampoDinamicoPreenchidoServico servicoCampoDinamicoPreenchido
     , ILocalServico servicoLocal
     , IAtendimentoServico servicoAtendimento
     , IConfiguracaoServico servicoConfiguracao
     , IOcorrenciaAcompanhamentoServico servicoOcorrenciaAcompanhamento
     , IDepartamentoServico departamentoServico
 )
 {
     _servicoOcorrencia                 = servicoOcorrencia;
     _servicoOcorrenciaTipo             = servicoOcorrenciaTipo;
     _servicoContrato                   = servicoContrato;
     _servicoStatusEntidade             = servicoStatusEntidade;
     _ocorrenciaTiposXOcorrenciaServico = ocorrenciaTiposXOcorrenciaServico;
     _servicoPessoaFisica               = servicoPessoaFisica;
     _servicoPessoaJuridica             = servicoPessoaJuridica;
     _servicoCidadeServico              = servicoCidadeServico;
     _servicoAnotacao                   = servicoAntacao;
     _servicoAtendimentoOcorrencia      = servicoAtendimentoOcorrencia;
     _servicoUsuario         = servicoUsuario;
     _viewDinamicaAppServico = viewDinamicaAppServico;
     _servicoOcorrenciaLocalTipoAtendimento = servicoOcorrenciaLocalTipoAtendimento;
     _servicoCampoDinamico           = servicoCampoDinamico;
     _servicoCampoDinamicoPreenchido = servicoCampoDinamicoPreenchido;
     _servicoLocal                    = servicoLocal;
     _servicoAtendimento              = servicoAtendimento;
     _servicoConfiguracao             = servicoConfiguracao;
     _servicoOcorrenciaAcompanhamento = servicoOcorrenciaAcompanhamento;
     _departamentoServico             = departamentoServico;
 }
Ejemplo n.º 12
0
 public LocalAppServico(ILocalServico servicoLocal, ICidadeServico servicoCidade,
                        IPessoaFisicaServico servicoPessoaFisica, IPessoaJuridicaServico servicoPessoaJuridica,
                        IEnderecoServico servicoEndereco,
                        ICampoDinamicoOpcaoServico servicoCampoDinamicoOpcao,
                        ICampoDinamicoPreenchidoServico servicoCampodDinamicoPreenchido, ILocalTipoServico servicoLocalTipo,
                        ILocalTipoAtendimentoServico servicoLocalAtendimentoTipo
                        , IConfiguracaoServico configuracaoServico)
 {
     _servicoLocal                    = servicoLocal;
     _servicoCidade                   = servicoCidade;
     _servicoPessoaFisica             = servicoPessoaFisica;
     _servicoPessoaJuridica           = servicoPessoaJuridica;
     _servicoEndereco                 = servicoEndereco;
     _servicoCampoDinamicoOpcao       = servicoCampoDinamicoOpcao;
     _servicoCampodDinamicoPreenchido = servicoCampodDinamicoPreenchido;
     _servicoLocalTipo                = servicoLocalTipo;
     _servicoLocalAtendimentoTipo     = servicoLocalAtendimentoTipo;
     _configuracaoServico             = configuracaoServico;
 }
Ejemplo n.º 13
0
 public ClienteAppServico(IClienteServico servicoCliente, IPessoaFisicaServico servicoPessoaFisica,
                          IPessoaJuridicaServico servicoPessoaJuridica, ITelefoneServico servicoTelefone, ICidadeServico servicoCidade,
                          IAtividadeServico servicoAtividade, IAtendimentoServico servicoAtendimento,
                          IAtividadeParteEnvolvidaServico servicoAtividadeParteEnvolvidaServico,
                          IConfiguracaoServico configuracaoServico, IIntegracaoAppServico integracaoAppServico,
                          IIntegracaoControleServico integracaoControleServico, ILigacaoServico servicoLigacao)
 {
     _servicoCliente        = servicoCliente;
     _servicoPessoaFisica   = servicoPessoaFisica;
     _servicoPessoaJuridica = servicoPessoaJuridica;
     _servicoTelefone       = servicoTelefone;
     _servicoCidade         = servicoCidade;
     _servicoAtividade      = servicoAtividade;
     _servicoAtendimento    = servicoAtendimento;
     _servicoAtividadeParteEnvolvidaServico = servicoAtividadeParteEnvolvidaServico;
     _configuracaoServico       = configuracaoServico;
     _integracaoAppServico      = integracaoAppServico;
     _integracaoControleServico = integracaoControleServico;
     _servicoLigacao            = servicoLigacao;
 }
Ejemplo n.º 14
0
 public AtividadeServico(IAtividadeRepositorio repositorio,
                         IAtividadeParteEnvolvidaServico servicoAtividadeParteEnvolvida,
                         IStatusAtividadeServico servicoStatusAtividade, IAtividadeTipoServico servicoAtividadeTipo,
                         IAtividadeFilaServico servicoAtividadeFila, IConfiguracaoServico servicoConfiguracao,
                         IOcorrenciaServico servicoOcorrencia, IUsuarioServico servicoUsuario,
                         IAtendimentoAtividadeServico atendimentoAtividadeServico, ICanalServico canalServico,
                         IAtividadeApoioServico atividadeApoioServico, IAtividadeRepositorioDal atividadeRepositorioDal)
 {
     _repositorio = repositorio;
     _servicoAtividadeParteEnvolvida = servicoAtividadeParteEnvolvida;
     _servicoStatusAtividade         = servicoStatusAtividade;
     _servicoAtividadeTipo           = servicoAtividadeTipo;
     _servicoAtividadeFila           = servicoAtividadeFila;
     _servicoConfiguracao            = servicoConfiguracao;
     _servicoOcorrencia           = servicoOcorrencia;
     _servicoUsuario              = servicoUsuario;
     _atendimentoAtividadeServico = atendimentoAtividadeServico;
     _canalServico            = canalServico;
     _atividadeApoioServico   = atividadeApoioServico;
     _atividadeRepositorioDal = atividadeRepositorioDal;
 }
Ejemplo n.º 15
0
        public List <EmailMessage> LerEmail(ConfiguracaoContasEmails configuracaoContaEmail, Container container,
                                            IEmailServico emailServico, IConfiguracaoServico configuracaoServico, IAtividadeServico atividadeServico,
                                            IFilaServico filaServico, List <EmailRemetenteRegra> emailsSpamFila, List <Email> uIdsExistentes,
                                            string diretorioArquivos)
        {
            var dirLog = ConfigurationManager.AppSettings["DiretorioLog"];

            using (var emailClient = new Pop3Client())
            {
                emailClient.Connect(_hostname, _port, _useSsl);
                emailClient.AuthenticationMechanisms.Remove("XOAUTH2");
                emailClient.Authenticate(_username, _password);
                var emails       = new List <EmailMessage>();
                var messageCount = emailClient.GetMessageCount();
                var contador     = 0;

                for (int i = messageCount; i > 0; i--)
                {
                    if (contador > 150)
                    {
                        break;
                    }

                    contador++;
                    var message = emailClient.GetMessage(i - 1);

                    if (message.Date.DateTime < DateTime.Now.AddDays(-10))
                    {
                        continue;
                    }

                    if (message.Date.DateTime > DateTime.Now.AddHours(-3))
                    {
                        continue;
                    }

                    //var emailExistente =
                    //            uIdsExistentes.Find(
                    //                p =>
                    //                    p.MessageId == message.MessageId.Replace("<", "").Replace(">", ""));
                    //                    // &&  p.CriadoEm == message.Date.DateTime);

                    //if (emailExistente != null) continue;


                    if (message.MessageId.Replace("<", "").Replace(">", "") ==
                        "[email protected]")
                    {
                        var emailRetornado = uIdsExistentes.FirstOrDefault(x =>
                                                                           x.MessageId.Replace("<", "").Replace(">", "") ==
                                                                           message.MessageId.Replace("<", "").Replace(">", ""));

                        try
                        {
                            var processar = new ProcessamentoEmail2(configuracaoContaEmail, message, null,
                                                                    emailServico, diretorioArquivos, atividadeServico, emailServico, emailsSpamFila);
                            var retorno = processar.ProcessarEmail();
                        }
                        catch (Exception ex)
                        {
                            continue;
                        }
                    }



                    //var emailMessage = new EmailMessage
                    //{
                    //    Content = !string.IsNullOrEmpty(message.HtmlBody) ? message.HtmlBody : message.TextBody,
                    //    Subject = message.Subject
                    //};
                    //emailMessage.ToAddresses.AddRange(message.To.Select(x => (MailboxAddress)x)
                    //    .Select(x => new EmailAddress { Address = x.Address, Name = x.Name }));
                    //emailMessage.FromAddresses.AddRange(message.From.Select(x => (MailboxAddress)x)
                    //    .Select(x => new EmailAddress { Address = x.Address, Name = x.Name }));
                    //emails.Add(emailMessage);
                }

                return(emails);
            }
        }
Ejemplo n.º 16
0
 public BaseAppServico(IMenuServico menuServico, IConfiguracaoServico configuracaoServico, IEntidadeServico entidadeServico)
 {
     _menuServico         = menuServico;
     _configuracaoServico = configuracaoServico;
     _entidadeServico     = entidadeServico;
 }
Ejemplo n.º 17
0
        private static void Run(ConfiguracaoContasEmails configuracaoContaEmail, Container container,
                                IEmailServico emailServico, IConfiguracaoServico configuracaoServico, IAtividadeServico atividadeServico,
                                IFilaServico filaServico, List <EmailRemetenteRegra> emailsSpamFila)
        {
            var dirLog = ConfigurationManager.AppSettings["DiretorioLog"];

            try
            {
                var uIdsExistentes = (List <Email>)emailServico.ObterUids(configuracaoContaEmail.Id);
                var configuracao   = new Configuracao();
                configuracao.SetarUrlEmailAnexos();
                var pathPadrao = configuracaoServico.ObterPorSigla(configuracao.Sigla);

                //using (
                //    var ic = new ImapClient(configuracaoContaEmail.ServidorPop, configuracaoContaEmail.UsuarioEmail,
                //        configuracaoContaEmail.SenhaEmail, AuthMethods.Login,
                //        configuracaoContaEmail.PortaServidorEntrada, true, true))
                //{
                //    ic.SelectMailbox("inbox");
                //    var iDiasAMenos = -3;

                //    var messages =
                //        ic.SearchMessages(
                //            new SearchCondition()
                //            {
                //                Field = SearchCondition.Fields.SentSince,
                //                Value =
                //                    DateTime.Now.AddDays(iDiasAMenos)
                //                        .ToString("dd-MMM-yyyy", new System.Globalization.CultureInfo("en-US"))
                //            }, true,
                //            false);

                //    if (!messages.Any()) return;

                //    var uIdsExistentes = (List<Email>)emailServico.ObterUids(configuracaoContaEmail.Id);
                //    var configuracao = new Configuracao();
                //    configuracao.SetarUrlEmailAnexos();
                //    var pathPadrao = configuracaoServico.ObterPorSigla(configuracao.Sigla);

                //    if (configuracaoContaEmail.FilasId != null)
                //    {
                //        var fila = filaServico.ObterPorId((int)configuracaoContaEmail.FilasId);
                //        configuracaoContaEmail.Fila = fila;
                //    }

                //    //foreach (var message in messages)
                //    //{
                //    //    try
                //    //    {
                //    //        var emailExistente =
                //    //            uIdsExistentes.Find(
                //    //                p =>
                //    //                    p.MessageId == message.Value.MessageID.Replace("<", "").Replace(">", "") &&
                //    //                    p.CriadoEm == message.Value.Date);
                //    //        if (emailExistente != null) continue;

                //    //        var messageCompleta = new MailMessage();

                //    //        try
                //    //        {
                //    //            messageCompleta = ic.GetMessage(message.Value.Uid);
                //    //        }
                //    //        catch (Exception ex)
                //    //        {
                //    //            continue;
                //    //        }

                //    //        var processar = new ProcessamentoEmail(configuracaoContaEmail, messageCompleta, null,
                //    //            emailServico, pathPadrao.Valor, atividadeServico, emailServico, emailsSpamFila);
                //    //        var retorno = processar.ProcessarEmail();

                //    //        if (retorno.IsValid)
                //    //        {
                //    //            Log.ErrorLog("ServicoLeituraEmail", dirLog,
                //    //                "E-mail (" + messageCompleta.Subject + ") processado com sucesso");
                //    //        }
                //    //        else
                //    //        {
                //    //            Log.ErrorLog("ServicoLeituraEmail", dirLog,
                //    //                "E-mail (" + messageCompleta.Subject + ") não processado, erro: " +
                //    //                retorno.Erros.ToString());
                //    //        }
                //    //    }
                //    //    catch (Exception ex)
                //    //    {
                //    //        Log.ErrorLog("ServicoLeituraEmail", dirLog,
                //    //            "E-mail (" + message.Value + ") não processado, erro: " + ex.Message);
                //    //    }
                //    //}

                //}

                new LerViaMailKit(configuracaoContaEmail.ServidorPop, configuracaoContaEmail.PortaServidorEntrada, false, configuracaoContaEmail.UsuarioEmail,
                                  configuracaoContaEmail.SenhaEmail).LerEmail(configuracaoContaEmail, container, emailServico, configuracaoServico, atividadeServico, filaServico, emailsSpamFila, uIdsExistentes, pathPadrao.Valor);
            }
            catch (Exception ex)
            {
                Log.ErrorLog("ServicoLeituraEmail", dirLog, "Erro : " + ex.Message);
            }
        }
Ejemplo n.º 18
0
 public OperacaoServico(IConfiguracaoServico configuracaoServico)
 {
     this.configuracaoServico = configuracaoServico;
 }