From 7561a0a1b7d5e55c01da3f1445cff7f3c6fe5797 Mon Sep 17 00:00:00 2001 From: "Camilo Carlos (Estagiario)" Date: Sun, 11 Apr 2010 23:17:42 +0000 Subject: [PATCH] =?UTF-8?q?Modificando=20script=20de=20migra=C3=A7=C3=A3o?= =?UTF-8?q?=20para=20que=20seja=20migrado=20os=20conv=C3=AAnios=20das=20as?= =?UTF-8?q?sembl=C3=A9ias.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- etc/migracao/migra.py | 59 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 56 insertions(+), 3 deletions(-) diff --git a/etc/migracao/migra.py b/etc/migracao/migra.py index 8ffed80..6e4fed3 100755 --- a/etc/migracao/migra.py +++ b/etc/migracao/migra.py @@ -1,3 +1,4 @@ + #!/usr/bin/env python # coding: utf-8 @@ -219,7 +220,7 @@ def migra_cnpj(filename): casa.cnpj = line[COD_CNPJ1_COL] if not 'BRANCO' in line[COD_CNPJ1_COL] else line[COD_CNPJ2_COL] casa.save() -def migra_convenios(filename): +def migra_convenios_casas(filename): def get_datetime_obj(data): ldata = data.split('-') if len(ldata) != 3: @@ -270,6 +271,56 @@ def migra_convenios(filename): print ERROR_MSG_0 % (filename, linenum) continue +def migra_convenios_assembleias(filename): + def get_datetime_obj(data): + ldata = data.split('-') + if len(ldata) != 3: + return None + return datetime(int(ldata[0]), int(ldata[1]), int(ldata[2])) + + # identificação das colunas no arquivo CSV + COD_IBGE_COL = 1 + NUM_PROCESSO_SF_COL = 25 + DATA_ADESAO_COL = 10 + DATA_TERMO_ACEITE_COL = 21 + DATA_RETORNO_ASSINATURA = 28 + DATA_PUB_DIARIO = 30 + DATA_DEV_VIA_CONV_CM = 32 + DATA_POSTAGEM_CORREIO = 26 + + reader = csv.reader(open(filename, 'r'), delimiter='|', skipinitialspace=True) + header = reader.next() + linenum = 1 + for line in reader: + linenum += 1 + + try: + assembleia = CasaLegislativa.objects.get(municipio__codigo_ibge=line[COD_IBGE_COL]) + except CasaLegislativa.DoesNotExist: + print ERROR_MSG_1 % (filename, linenum) + continue + except CasaLegistativa.MultipleObjectsReturned: + print ERROR_MSG_1 % (filename, linenum) + except ValueError: + print ERROR_MSG_1 % (filename, linenum) + continue + + convenio = Convenio( + casa_legislativa=assembleia, + num_processo_sf=line[NUM_PROCESSO_SF_COL], + data_adesao=get_datetime_obj(line[DATA_ADESAO_COL]), + data_retorno_assinatura=get_datetime_obj(line[DATA_TERMO_ACEITE_COL]), + data_pub_diario=get_datetime_obj(line[DATA_RETORNO_ASSINATURA]), + data_termo_aceite=get_datetime_obj(line[DATA_PUB_DIARIO]), + data_devolucao_via=get_datetime_obj(line[DATA_DEV_VIA_CONV_CM]), + data_postagem_correio=get_datetime_obj(line[DATA_POSTAGEM_CORREIO]), + ) + try: + convenio.save() + except: + print ERROR_MSG_0 % (filename, linenum) + continue + if __name__ == '__main__': print "" @@ -278,5 +329,7 @@ if __name__ == '__main__': migra_casas('casas.csv') print "" migra_cnpj('cnpj.csv') - print "" - migra_convenios('casas.csv') + print "" + migra_convenios_casas('casas.csv') + print "" + migra_convenios_casas('assembleias.csv')