public DadosAlunos findStudentByRa(string ra, string usuario) { File.AppendAllText(string.Format("{0}\\Validation_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. RA: {0} . Data: {1} ****", ra, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); DadosAlunos dadosAluno = new DadosAlunos(); InsegracaoSE integrador = new InsegracaoSE(); dadosAluno.RetornoStudent = new List <Student>(); try { if (string.IsNullOrEmpty(integrador.GetUnity(usuario).Code)) { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. Erro: {0}. RA: {1}. Data: {2} ****", "O usuário não tem permissão para visualizar os dados desse aluno.", ra, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } else { if (integrador.VerifyDocumentPermission(ra, usuario)) { com.softexpert.tecfy.documentDataReturn documentDataReturn = integrador.GetDocumentProperties(ra); if (string.IsNullOrEmpty(documentDataReturn.ERROR)) { try { Student estudante = new Student { RA = documentDataReturn.ATTRIBUTTES.Any(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Registration"].ToString()) ? documentDataReturn.ATTRIBUTTES.Where(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Registration"].ToString()).FirstOrDefault().ATTRIBUTTEVALUE.FirstOrDefault() : null, CPFALUNO = documentDataReturn.ATTRIBUTTES.Any(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_CPF"].ToString()) ? documentDataReturn.ATTRIBUTTES.Where(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_CPF"].ToString()).FirstOrDefault().ATTRIBUTTEVALUE.FirstOrDefault() : null, NOMECURSO = documentDataReturn.ATTRIBUTTES.Any(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Course"].ToString()) ? documentDataReturn.ATTRIBUTTES.Where(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Course"].ToString()).FirstOrDefault().ATTRIBUTTEVALUE.FirstOrDefault() : null, CODCENTRO = documentDataReturn.ATTRIBUTTES.Any(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Unity"].ToString()) ? documentDataReturn.ATTRIBUTTES.Where(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Unity"].ToString()).FirstOrDefault().ATTRIBUTTEVALUE.FirstOrDefault() : null, NOMEALUNO = documentDataReturn.ATTRIBUTTES.Any(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Name"].ToString()) ? documentDataReturn.ATTRIBUTTES.Where(x => x.ATTRIBUTTENAME == WebConfigurationManager.AppSettings["Attribute_Name"].ToString()).FirstOrDefault().ATTRIBUTTEVALUE.FirstOrDefault() : null, }; dadosAluno.RetornoStudent.Add(estudante); } catch (Exception ex) { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. Erro: {0}. RA: {1}. Data: {2} ****", ex.Message, ra, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } } else { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. Erro: {0}. RA: {1}. Data: {2} ****", documentDataReturn.ERROR, ra, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } } else { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. Erro: {0}. RA: {1}. Data: {2} ****", "O usuário não tem permissão para visualizar os dados desse aluno.", ra, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } } } catch (Exception ex) { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: findStudentByRa. Erro: {0}. Message: {1}, Source: {2}. Data: {3} ****", ex.Message, ex.StackTrace, ex.Source, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } return(dadosAluno); }
private void processFile(string fileNameJson, string registration, string user, string documentId, bool moveOut = true) { File.AppendAllText(string.Format("{0}\\Validation_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE: {0}. Arquivo: {1} Inicio: {2} ****", registration, fileNameJson, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); string filePathIn = Path.Combine(pathIn, fileNameJson); string filePathOut = Path.Combine(pathOut, Path.GetFileNameWithoutExtension(fileNameJson) + extension); string filePathToProcessIn = Path.Combine(pathToProcessIn, fileNameJson + ".json"); string filePathToProcessOut = Path.Combine(pathToProcessOut, fileNameJson + ".json"); string filePathToProcessError = Path.Combine(pathToProcessError, fileNameJson + ".json"); try { InsegracaoSE integrador = new InsegracaoSE(); if (moveOut) { File.Move(filePathToProcessIn, filePathToProcessOut); } byte[] fileBinary = File.ReadAllBytes(filePathOut); int pageCount = 0; try { using (PdfReader reader = new PdfReader(fileBinary)) { pageCount = reader.NumberOfPages; } } catch (Exception ex) { throw new Exception(ex.Message); } Models.Unit.Unity Unity = integrador.GetUnity(user); if (string.IsNullOrEmpty(Unity.Code)) { File.Move(filePathToProcessOut, filePathToProcessError); File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE (Unidade não encontrada): {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); return; } DocumentoAtributo documentoAtributo = new DocumentoAtributo { FileBinary = fileBinary, CategoryPrimary = WebConfigurationManager.AppSettings["Category_Primary"], CategoryOwner = WebConfigurationManager.AppSettings["Category_Owner"], Registration = registration, User = user, Extension = extension, Now = DateTime.Now, Pages = pageCount, UnityCode = Unity.Code, UnityName = Unity.Name, DocumentId = documentId, FileNameJson = fileNameJson }; integrador.InsertBinaryDocument(documentoAtributo); File.Delete(filePathIn); File.Delete(filePathOut); File.Delete(filePathToProcessOut); File.AppendAllText(string.Format("{0}\\Validation_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE: {0}. Arquivo: {1} Fim: {2} ****", registration, fileNameJson, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); } catch (Exception ex) { try { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE (Erro {0}): {1}, RA: {2}. Fim: {3} ****", ex.Message, fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); if (ex.Message == "InsertDocumentSE") { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE(InsertDocumentSE): {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); File.Move(filePathToProcessOut, filePathToProcessIn); } else if (ex.Message == "SaveJsonFile") { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE(SaveJsonFile): {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); File.Move(filePathToProcessOut, filePathToProcessError); } else if (ex.Message == "InsertPhysicalFile") { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE(InsertPhysicalFile): {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); File.Move(filePathToProcessOut, filePathToProcessIn); } else if (ex.Message == "ValidDocumentSE") { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE(ValidDocumentSE): {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); File.Move(filePathToProcessOut, filePathToProcessError); } else { File.AppendAllText(string.Format("{0}\\Error_{1}.txt", pathLog, DateTime.Now.ToString("yyyyMMdd")), string.Format("**** Método: processFile. Arquivo sendo enviado para o SE: {0}, RA: {1}. Fim: {2} ****", fileNameJson, registration, DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")) + Environment.NewLine); File.Move(filePathToProcessOut, filePathToProcessError); } } catch { Thread.Sleep(5000); File.Move(filePathToProcessOut, filePathToProcessError); } } }