From aad22b2b966ae5b2e63033c5a664c7cc88044eb4 Mon Sep 17 00:00:00 2001
From: Jomaro <jomaro.rodrigues@gmail.com>
Date: Wed, 28 Oct 2015 12:48:40 -0200
Subject: [PATCH] =?UTF-8?q?os=20dois=20problemas=20b=C3=A1sicos=20de=20for?=
 =?UTF-8?q?mato=20agora=20s=C3=A3o=20tratados=20pelo=20sistema?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 adega_crypt.py | 37 +++++++++++++++++++------------------
 1 file changed, 19 insertions(+), 18 deletions(-)

diff --git a/adega_crypt.py b/adega_crypt.py
index 0944da4..3d9b09e 100755
--- a/adega_crypt.py
+++ b/adega_crypt.py
@@ -72,6 +72,8 @@ def crypt(name):
 
 	data = pd.read_csv('.'+name)
 	
+	data.dropna(how='all', inplace=True)
+	
 	if os.path.exists(TABLE_FILE):
 		table = pd.read_csv(TABLE_FILE)
 	else:
@@ -80,7 +82,7 @@ def crypt(name):
 		if not os.path.exists(dirname):
 			os.makedirs(dirname)
 		
-		table = pd.DataFrame(columns=["ID", "MATR_ALUNO", "NOME_PESSOA"])
+		table = pd.DataFrame(columns=["ID", "MATR_ALUNO", "NOME_ALUNO"])
 		table.to_csv(TABLE_FILE, index=False)
 		
 
@@ -93,22 +95,24 @@ def crypt(name):
 	
 	#
 	# se o novo relatório inclui o nome dos alunos vamos colocar isso 
-	# no arquivo de correspondencia tambem
+	# no arquivo de correspondencia tambem, e tira-lo do arquivo original
 	#
 	
-	if "NOME_ALUNO" in data.columns:
-		data.rename(columns={'NOME_ALUNO': 'NOME_PESSOA'}, inplace=True)
-	
-	if "NOME_PESSOA" in data.columns:
-		
-		table_append = pd.merge(table_append, data[["MATR_ALUNO", "NOME_PESSOA"]], how="left", on="MATR_ALUNO")
-		
-		UTF8toupper = lambda s: s.decode("utf8").upper().encode("utf8")
-		
-		table_append["NOME_PESSOA"] = table_append.NOME_PESSOA.apply(UTF8toupper)
-		
-	else:
-		table_append["NOME_PESSOA"] = ""
+	for field in ["NOME_ALUNO", "NOME_PESSOA"]:
+		if field in data.columns:
+			
+			df = data[["MATR_ALUNO", field]].rename(columns={field: "NOME_ALUNO"})
+			
+			table_append = pd.merge(table_append, df, how="left", on="MATR_ALUNO")
+			
+			UTF8toupper = lambda s: s.decode("utf8").upper().encode("utf8")
+						
+			table_append["NOME_ALUNO"] = table_append.NOME_ALUNO.apply(UTF8toupper)
+			
+			del data[field]
+			
+	if "NOME_ALUNO" not in table_append.columns:
+		table_append["NOME_ALUNO"] = ""
 	
 	
 	# pega todos os registros que ainda não existem no table
@@ -143,9 +147,6 @@ def crypt(name):
 	
 	del data["MATR_ALUNO"]
 	
-	if "NOME_PESSOA" in data.columns:
-		del data["NOME_PESSOA"]
-	
 	data.rename(columns={"ID": "MATR_ALUNO"}, inplace=True)
 	
 	
-- 
GitLab