/*Cria o objeto licitacao arquivo, com o nome do arquivo do edital e a licitacao referente*/
 private static void DownloadEditais(string linkEdital, NameValueCollection formparameters)
 {
     try
     {
         if (!Directory.Exists(PathEditais))
         {
             Directory.CreateDirectory(PathEditais);
         }
         WebHandle.DownloadDataPost(linkEdital, PathEditais + FileHandle.GetATemporaryFileName(), formparameters);
     }
     catch (Exception e)
     {
         RService.Log("Exception (DownloadEditais) " + Name + ": " + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " at {0}", Path.GetTempPath() + Name + ".txt");
     }
 }
        /*Cria o objeto licitacao arquivo, com o nome do arquivo do edital e a licitacao referente*/
        private static void CreateLicitacaoArquivo(Licitacao licitacao, string linkEdital)
        {
            RService.Log("(CreateLicitacaoArquivo) " + Name + ": Criando arquivo de edital da OC.. " + "at {0}", Path.GetTempPath() + Name + ".txt");
            try
            {
                /*Transforma o html do edital em pdf, salva numa pasta temp e depois envia para um diretório FTP*/
                if (!Directory.Exists(PathEdital))
                {
                    Directory.CreateDirectory(PathEdital);
                }

                string fileName = FileHandle.GetATemporaryFileName();

                if (WebHandle.HtmlToPdf(linkEdital, PathEdital + fileName))
                {
                    #region FTP
                    //if (FTP.SendFileFtp(new FTP(PathEdital, fileName + WebHandle.ExtensionLastFileDownloaded, FTP.Adrss, FTP.Pwd, FTP.UName), Name))
                    //{
                    //    LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                    //    licitacaoArq.NomeArquivo = fileName + WebHandle.ExtensionLastFileDownloaded;
                    //    licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                    //    licitacaoArq.Status = 0;
                    //    licitacaoArq.IdLicitacao = licitacao.Id;

                    //    LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                    //    repoArq.Insert(licitacaoArq);

                    //    if (File.Exists(PathEdital + fileName + WebHandle.ExtensionLastFileDownloaded))
                    //    {
                    //        File.Delete(PathEdital + fileName + WebHandle.ExtensionLastFileDownloaded);
                    //    }
                    //}
                    //else
                    //{
                    //    RService.Log("(CreateLicitacaoArquivo) " + Name + ": error sending the file by FTP (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    //}
                    #endregion

                    #region AWS
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": Enviando arquivo para Amazon S3... " + fileName + " at {0}", Path.GetTempPath() + Name + ".txt");

                    if (AWS.SendObject(licitacao, PathEdital, fileName + ".pdf"))
                    {
                        LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                        licitacaoArq.NomeArquivo         = fileName + WebHandle.ExtensionLastFileDownloaded;
                        licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                        licitacaoArq.Status      = 0;
                        licitacaoArq.IdLicitacao = licitacao.Id;

                        LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                        repoArq.Insert(licitacaoArq);

                        if (File.Exists(PathEdital + fileName + WebHandle.ExtensionLastFileDownloaded))
                        {
                            File.Delete(PathEdital + fileName + WebHandle.ExtensionLastFileDownloaded);
                        }

                        RService.Log("(CreateLicitacaoArquivo) " + Name + ": Arquivo " + fileName + " enviado com sucesso para Amazon S3" + " at {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    else
                    {
                        RService.Log("Exception (CreateLicitacaoArquivo) " + Name + ": Erro ao enviar o arquivo para Amazon (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    #endregion
                }
                else
                {
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": erro ao converter HTML para PDF (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                }
            }
            catch (Exception e)
            {
                RService.Log("Exception (CreateLicitacaoArquivo) " + Name + ":" + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " / " + e.InnerException + " at {0}", Path.GetTempPath() + Name + ".txt");
            }
        }
        /*Cria uma licitação arquivo se o download e o envio do arquivo for efetuado com sucesso*/
        private static void CreateLicitacaoArquivo(Licitacao licitacao, string linkEdital)
        {
            RService.Log("(CreateLicitacaoArquivo) " + Name + ": Criando arquivo de edital da licitação num... " + licitacao.IdLicitacaoFonte + " at {0}", Path.GetTempPath() + Name + ".txt");
            try
            {
                if (!Directory.Exists(PathEditais))
                {
                    Directory.CreateDirectory(PathEditais);
                }
                string fileName = FileHandle.GetATemporaryFileName();

                if (WebHandle.DownloadData(linkEdital, PathEditais + fileName))
                {
                    #region FTP
                    //if (FTP.SendFileFtp(new FTP(PathEditais, fileName + WebHandle.ExtensionLastFileDownloaded, FTP.Adrss, FTP.Pwd, FTP.UName), Name))
                    //{
                    //LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                    //licitacaoArq.NomeArquivo = fileName + WebHandle.ExtensionLastFileDownloaded;
                    //licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                    //licitacaoArq.Status = 0;
                    //licitacaoArq.IdLicitacao = licitacao.Id;

                    //LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                    //repoArq.Insert(licitacaoArq);

                    //RService.Log("(CreateLicitacaoArquivo) " + Name + ": Arquivo de edital da licitação " + licitacao.IdLicitacaoFonte + " inserido com sucesso at {0}", Path.GetTempPath() + Name + ".txt");

                    //if (File.Exists(PathEditais + fileName))
                    //{
                    //File.Delete(PathEditais + fileName);
                    //}
                    //}
                    //else
                    //{
                    //RService.Log("Exception (CreateLicitacaoArquivo) " + Name + ": Erro ao enviar o arquivo para o FTP (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    //}
                    #endregion

                    #region AWS
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": Enviando arquivo para Amazon S3... " + fileName + " at {0}", Path.GetTempPath() + Name + ".txt");

                    if (AWS.SendObject(licitacao, PathEditais, fileName + WebHandle.ExtensionLastFileDownloaded))
                    {
                        LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                        licitacaoArq.NomeArquivo         = fileName + WebHandle.ExtensionLastFileDownloaded;
                        licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                        licitacaoArq.Status      = 0;
                        licitacaoArq.IdLicitacao = licitacao.Id;

                        LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                        repoArq.Insert(licitacaoArq);

                        if (File.Exists(PathEditais + fileName))
                        {
                            File.Delete(PathEditais + fileName);
                        }

                        RService.Log("(CreateLicitacaoArquivo) " + Name + ": Arquivo " + fileName + " enviado com sucesso para Amazon S3" + " at {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    else
                    {
                        RService.Log("(CreateLicitacaoArquivo) " + Name + ": Erro ao enviar o arquivo para Amazon S3 (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    #endregion
                }
                else
                {
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": Erro ao baixar o arquivo (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                }
            }
            catch (Exception e)
            {
                RService.Log("RService Exception " + Name + ": (CreateLicitacaoArquivo)" + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " / " + e.InnerException +
                             " at {0}", Path.GetTempPath() + Name + ".txt");
            }
        }
        /*Cria as Licitacaoes arquivos se conseguir envia-los por ftp*/
        private static void CreateLicitacaoArquivo(Licitacao licitacao)
        {
            RService.Log("(CreateLicitacaoArquivo) " + Name + ": Criando arquivo de edital da licitação.. " + licitacao.IdLicitacaoFonte + " at {0}", Path.GetTempPath() + Name + ".txt");
            try
            {
                string fileName = FileHandle.GetATemporaryFileName();
                string zipPath  = string.Empty;
                if (Directory.Exists(PathEditais))
                {
                    zipPath = @Path.GetTempPath() + fileName + ".zip";
                    ZipFile.CreateFromDirectory(PathEditais, zipPath);
                }
                Directory.Delete(PathEditais, true);
                if (!string.IsNullOrEmpty(zipPath))
                {
                    #region FTP
                    //if (FTP.SendFileFtp(new FTP(@Path.GetTempPath(), fileName + ".zip", FTP.Adrss, FTP.Pwd, FTP.UName), Name))
                    //{
                    //LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                    //licitacaoArq.NomeArquivo = fileName + ".zip";
                    //licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                    //licitacaoArq.Status = 0;
                    //licitacaoArq.IdLicitacao = licitacao.Id;

                    //LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                    //repoArq.Insert(licitacaoArq);

                    //if (File.Exists(zipPath))
                    //{
                    //File.Delete(zipPath);
                    //}
                    //}
                    //else
                    //{
                    //RService.Log("(CreateLicitacaoArquivo) " + Name + ": error sending the file by FTP (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    //}
                    #endregion

                    #region AWS
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": Enviando arquivo para Amazon S3... " + fileName + " at {0}", Path.GetTempPath() + Name + ".txt");

                    if (AWS.SendObject(licitacao, Path.GetTempPath(), fileName + ".zip"))
                    {
                        LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                        licitacaoArq.NomeArquivo         = fileName + ".zip";
                        licitacaoArq.NomeArquivoOriginal = Name + DateTime.Now.ToString("yyyyMMddHHmmss");
                        licitacaoArq.Status      = 0;
                        licitacaoArq.IdLicitacao = licitacao.Id;

                        LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                        repoArq.Insert(licitacaoArq);

                        if (File.Exists(zipPath))
                        {
                            File.Delete(zipPath);
                        }

                        RService.Log("(CreateLicitacaoArquivo) " + Name + ": Arquivo " + fileName + " enviado com sucesso para Amazon S3" + " at {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    else
                    {
                        RService.Log("Exception (CreateLicitacaoArquivo) " + Name + ": Erro ao enviar o arquivo para Amazon (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                    }
                    #endregion
                }
                else
                {
                    RService.Log("(CreateLicitacaoArquivo) " + Name + ": error while create zip file (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + Name + ".txt");
                }
            }
            catch (Exception e)
            {
                RService.Log("Exception (CreateLicitacaoArquivo) " + Name + ": " + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " / " + e.InnerException + " at {0}", Path.GetTempPath() + Name + ".txt");
            }
        }
Exemple #5
0
        /*Criando licitação arquivo e enviando para pasta FTP*/
        public static bool CreateLicitacaoArquivo(string nomeRobo, Licitacao licitacao, string edital, string pathEditais, string nameFile, ReadOnlyCollection <OpenQA.Selenium.Cookie> AllCookies)
        {
            try
            {
                if (!Directory.Exists(pathEditais))
                {
                    Directory.CreateDirectory(pathEditais);
                }

                string fileName = FileHandle.GetATemporaryFileName() + WebHandle.GetExtensionFile(nameFile);

                RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Fazendo o download do arquivo... " + fileName + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                if (WebHandle.DownloadFileWebRequest(AllCookies, edital, pathEditais + fileName) && File.Exists(pathEditais + fileName))
                {
                    #region FTP
                    //RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Enviando arquivo por FTP... " + fileName + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                    //int fileCount = Directory.GetFiles(pathEditais).Length;
                    //int wait = 0;

                    //while (fileCount == 0 && wait < 6)
                    //{
                    //Thread.Sleep(5000);
                    //wait++;
                    //}

                    //if (FTP.SendFileFtp(new FTP(pathEditais, fileName, FTP.Adrss, FTP.Pwd, FTP.UName), nomeRobo))
                    //{
                    //LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                    //licitacaoArq.NomeArquivo = fileName;
                    //licitacaoArq.NomeArquivoOriginal = nomeRobo + DateTime.Now.ToString("yyyyMMddHHmmss");
                    //licitacaoArq.NomeArquivoFonte = nameFile;
                    //licitacaoArq.Status = 0;
                    //licitacaoArq.IdLicitacao = licitacao.Id;

                    //LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                    //repoArq.Insert(licitacaoArq);

                    //if (File.Exists(pathEditais + fileName))
                    //{
                    //File.Delete(pathEditais + fileName);
                    //}

                    //RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Arquivo " + fileName + " enviado com sucesso at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                    //return true;
                    //}
                    //else
                    //{
                    //RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": Erro ao enviar o arquivo por FTP (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + nomeRobo + ".txt");
                    //}
                    #endregion

                    #region AWS
                    RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Enviando o arquivo para Amazon S3... " + fileName + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                    if (AWS.SendObject(licitacao, pathEditais, fileName))
                    {
                        LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                        licitacaoArq.NomeArquivo         = fileName;
                        licitacaoArq.NomeArquivoOriginal = nomeRobo + DateTime.Now.ToString("yyyyMMddHHmmss");
                        licitacaoArq.NomeArquivoFonte    = nameFile;
                        licitacaoArq.Status      = 0;
                        licitacaoArq.IdLicitacao = licitacao.Id;

                        LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                        repoArq.Insert(licitacaoArq);

                        if (File.Exists(pathEditais + fileName))
                        {
                            File.Delete(pathEditais + fileName);
                        }

                        RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Arquivo " + fileName + " enviado com sucesso para Amazon S3" + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                        return(true);
                    }
                    else
                    {
                        RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": Erro ao enviar o arquivo para Amazon (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + nomeRobo + ".txt");
                    }

                    #endregion
                }
                else
                {
                    RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": Erro ao fazer o download do arquivo, no link: " + edital + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");
                }
            }
            catch (Exception e)
            {
                RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": " + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " / " + e.InnerException + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");
            }
            return(false);
        }
Exemple #6
0
        internal static bool CreateLicitacaoArquivo(string nomeRobo, Licitacao licitacao, string pathEditais, string nameFile, ReadOnlyCollection <Cookie> allCookies)
        {
            try
            {
                if (!Directory.Exists(pathEditais))
                {
                    Directory.CreateDirectory(pathEditais);
                }

                string fileName = FileHandle.GetATemporaryFileName() + WebHandle.GetExtensionFile(nameFile);
                System.Threading.Thread.Sleep(15000);

                if (File.Exists(pathEditais + "\\" + nameFile))
                {
                    if (nomeRobo.Contains("BB") || nomeRobo.Contains("PCP") || nomeRobo.Contains("TCERS") || nomeRobo.Contains("CRJ"))
                    {
                        File.Move(pathEditais + nameFile, pathEditais + fileName);
                    }

                    #region FTP
                    //RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Enviando arquivo por FTP... " + fileName + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                    //if (FTP.SendFileFtp(new FTP(pathEditais, fileName, FTP.Adrss, FTP.Pwd, FTP.UName), nomeRobo))
                    //{
                    //LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                    //licitacaoArq.NomeArquivo = fileName;
                    //licitacaoArq.NomeArquivoOriginal = nomeRobo + DateTime.Now.ToString("yyyyMMddHHmmss");
                    //licitacaoArq.NomeArquivoFonte = nameFile;
                    //licitacaoArq.Status = 0;
                    //licitacaoArq.IdLicitacao = licitacao.Id;

                    //LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                    //repoArq.Insert(licitacaoArq);

                    //if (File.Exists(pathEditais + fileName))
                    //{
                    //File.Delete(pathEditais + fileName);
                    //}

                    //return true;
                    //}
                    //else
                    //{
                    //RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": Erro ao enviar o arquivo por FTP (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + nomeRobo + ".txt");
                    //}

                    #endregion

                    #region AWS
                    RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Enviando o arquivo para Amazon S3... " + fileName + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                    if (AWS.SendObject(licitacao, pathEditais, fileName))
                    {
                        LicitacaoArquivo licitacaoArq = new LicitacaoArquivo();
                        licitacaoArq.NomeArquivo         = fileName;
                        licitacaoArq.NomeArquivoOriginal = nomeRobo + DateTime.Now.ToString("yyyyMMddHHmmss");
                        licitacaoArq.NomeArquivoFonte    = nameFile;
                        licitacaoArq.Status      = 0;
                        licitacaoArq.IdLicitacao = licitacao.Id;

                        LicitacaoArquivoRepository repoArq = new LicitacaoArquivoRepository();
                        repoArq.Insert(licitacaoArq);

                        if (File.Exists(pathEditais + fileName))
                        {
                            File.Delete(pathEditais + fileName);
                        }

                        RService.Log("(CreateLicitacaoArquivo) " + nomeRobo + ": Arquivo " + fileName + " enviado com sucesso para Amazon S3" + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");

                        return(true);
                    }
                    else
                    {
                        RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": Erro ao enviar o arquivo para Amazon (CreateLicitacaoArquivo) {0}", Path.GetTempPath() + nomeRobo + ".txt");
                    }

                    #endregion
                }
            }
            catch (Exception e)
            {
                RService.Log("Exception (CreateLicitacaoArquivo) " + nomeRobo + ": " + e.Message + " / " + e.StackTrace + " / " + e.InnerException + " / " + e.InnerException + " at {0}", Path.GetTempPath() + nomeRobo + ".txt");
            }

            return(false);
        }