示例#1
0
        public async Task <bool> ExcluirInspecaoPorRotinaAutomatica()
        {
            var enviar = new Notificacao();

            try
            {
                var organismos = await _organismoRepositorio.BuscarTodosOrganismos();


                if (organismos.Count <= 0)
                {
                    return(false);
                }
                foreach (var item in organismos)
                {
                    var lista = ObterInspecoesComMaisDeTrintaDias(item.IntegracaoInfo);

                    if (lista.Count > 0)
                    {
                        RemoverInspecaoComMaisDe30Dias(lista.ToList(), item.IntegracaoInfo);
                    }
                }
                return(true);
            }
            catch
            {
                enviar.EnviarEmailErroDownloadAutomatico("*****@*****.**", _listExcecao);
            }
            return(false);
        }
示例#2
0
        public void Execute(IJobExecutionContext context)
        {
            _enviar.EnviarEmailErroDownloadAutomatico("*****@*****.**", new List <string>());
            var servico = new DownloadServico(_domainService, _ftp, _descompactar, _csv, _inspecao, _sftp);

            servico.DownloadInspecoesPorRotinaAutomatica().ConfigureAwait(true);
        }
示例#3
0
        public async Task <bool> DownloadInspecoesPorRotinaAutomatica()
        {
            try
            {
                // Logger.Trace("Trace Agendamento Funcionando ...");
                var organismos = await _organismoDomainService.BuscarTodosOrganismos();

                if (!organismos.GroupBy(f => f.IntegracaoInfo).Any())
                {
                    return(false);
                }

                foreach (var item in organismos.GroupBy(c => c.IntegracaoInfo))
                {
                    _listLog.Clear();
                    var cod  = item.Key.DiretorioInspecaoLocal.Replace("\\", "");
                    var name = _organismoDomainService.BuscarOrganismoPorId(cod).Nome;
                    try
                    {
                        var diretoriosCippRemoto  = ObterListaDiretoriosPorOrganismo(item.Key);
                        var existeExcecaoInspecao = VerificarDiretorios(diretoriosCippRemoto, "", "");
                        if (existeExcecaoInspecao.DiretoriosValidos.Count <= 0)
                        {
                            continue;
                        }

                        DownloadInspecaoAutomatica(item.Key, existeExcecaoInspecao.DiretoriosValidos);
                    }
                    catch (Exception e)
                    {
                        _listExcecao.Add($"Erro Download durante Inspeção automática para o OIA-{item.Key.DiretorioInspecaoLocal} - {name.ToUpper()} \n Exceção: {e.Message}");
                    }
                }
                _enviar.EnviarEmailErroDownloadAutomatico(Configurations.EmailAdministrador(), _listExcecao);
                //EnviarLogParaOrganismo(CriarArquivoDeLog(_listExcecao);

                EnviarInspecoes(_listaInspecoesParaEnvio);
                return(true);
            }
            catch (Exception e)
            {
                EnviarInspecoes(_listaInspecoesParaEnvio);
                _listExcecao.Add($"Erro Download durante Inspeção automática. Exceção: {e.Message}");
                _enviar.EnviarEmailErroDownloadAutomatico(Configurations.EmailAdministrador(), _listExcecao);
                return(false);
            }
        }