def get_analise_temporal(self): """Retorna instância de AnaliseTemporal""" if not self.analises_periodo: self._faz_analises() analise_temporal = AnaliseTemporal() analise_temporal.casa_legislativa = self.casa_legislativa analise_temporal.periodicidade = self.periodicidade analise_temporal.analises_periodo = self.analises_periodo analise_temporal.votacoes = self.votacoes return analise_temporal
def get_analise_temporal(self): """Retorna instância de AnaliseTemporal""" if not self.analises_periodo: self._faz_analises() analise_temporal = AnaliseTemporal() analise_temporal.casa_legislativa = self.casa_legislativa analise_temporal.periodicidade = self.periodicidade analise_temporal.analises_periodo = self.analises_periodo analise_temporal.votacoes = self.votacoes analise_temporal.chefes_executivos = self.chefes_executivos analise_temporal.total_votacoes = self.total_votacoes analise_temporal.palavras_chaves = self.palavras_chave return analise_temporal
def get_analise_temporal(self): """Retorna instância de AnaliseTemporal""" if not self.analises_periodo: self._faz_analises() analise_temporal = AnaliseTemporal() analise_temporal.casa_legislativa = self.casa_legislativa analise_temporal.periodicidade = self.periodicidade analise_temporal.area_total = self.area_total analise_temporal.analises_periodo = self.analises_periodo analise_temporal.votacoes = self.votacoes return analise_temporal
def setUp(self): self.casa = models.CasaLegislativa.objects.get(nome_curto='conv') for partido in JsonAnaliseGeneratorTest.importer.partidos: if partido.nome == convencao.GIRONDINOS: self.girondinos = partido if partido.nome == convencao.JACOBINOS: self.jacobinos = partido if partido.nome == convencao.MONARQUISTAS: self.monarquistas = partido self.analiseTemporal = AnaliseTemporal() self.analiseTemporal.casa_legislativa = self.casa self.analiseTemporal.periodicidade = models.BIENIO self.analiseTemporal.area_total = 1 self.analiseTemporal.analises_periodo = [] ap1 = AnalisePeriodo() periodos_retriever = utils.PeriodosRetriever(self.casa, models.BIENIO) periodos = periodos_retriever.get_periodos() ap1.casa_legislativa = None ap1.periodo = periodos[0] ap1.partidos = [self.girondinos, self.jacobinos, self.monarquistas] ap1.votacoes = [] ap1.num_votacoes = 0 ap1.tamanhos_partidos = { self.girondinos: 3, self.jacobinos: 3, self.monarquistas: 3 } ap1.soma_dos_tamanhos_dos_partidos = 3 * 3 ap1.pca = PCAStub() ap1.coordenadas_partidos = {} ap1.coordenadas_partidos[convencao.JACOBINOS] = [-0.4, 0.3] ap1.coordenadas_partidos[convencao.GIRONDINOS] = [0.9, -0.3] ap1.coordenadas_partidos[convencao.MONARQUISTAS] = [0.2, 0.1] ap1.legislaturas_por_partido = JsonAnaliseGeneratorTest.importer.legs ap1.coordenadas_legislaturas = {} # legislatura.id => [x,y] for p, legs in ap1.legislaturas_por_partido.items(): for leg in legs: ap1.coordenadas_legislaturas[leg.id] = [random(), random()] self.analiseTemporal.analises_periodo.append(ap1)
def salvar_no_bd(self): """Salva uma instância de AnalisadorTemporal no banco de dados. Este método poderá ser excluído quando o json antigo não for mais usado.""" # 'modat' é o modelo análise temporal que vou salvar. modat = AnaliseTemporal() modat.casa_legislativa = self.casa_legislativa modat.periodicidade = self.periodicidade modat.data_inicio = self.ini modat.data_fim = self.fim modat.votacoes = self.votacoes modat.partidos = self.partidos modat.area_total = self.area_total # Criar um hash para servir de primary key desta análise temporal: modat.hash_id = self._calcula_hash() # Salvar no bd, ainda sem as análises modat.save() # Salvar as análises por período no bd: for ap in self.analisadores_periodo: modap = AnalisePeriodo() modap.casa_legislativa = ap.casa_legislativa modap.data_inicio = ap.ini.strftime("%Y-%m-%d") modap.data_fim = ap.fim.strftime("%Y-%m-%d") # votacoes = self.votacoes # partidos = self.partidos modap.analiseTemporal = modat posicoes = [] for part, coord in ap.coordenadas.items(): posicao = PosicaoPartido() # Cria PosicaoPartido no bd posicao.x = coord[0] posicao.y = coord[1] posicao.partido = models.Partido.objects.filter(nome=part)[0] posicao.tamanho = ap.tamanhos_partidos.get(part, 0) posicao.presenca = 0 # TODO: incluir presença aqui. posicao.save() # Salva PosicaoPartido no bd posicoes.append(posicao) modap.save() modap.posicoes = posicoes modap.save() # Salva a análise do período no bd, associada a uma AnalisadorTemporal
def salvar_no_bd(self): """Salva uma instância de AnalisadorTemporal no banco de dados. Este método poderá ser excluído quando o json antigo não for mais usado.""" # 'modat' é o modelo análise temporal que vou salvar. modat = AnaliseTemporal() modat.casa_legislativa = self.casa_legislativa modat.periodicidade = self.periodicidade modat.data_inicio = self.ini modat.data_fim = self.fim modat.votacoes = self.votacoes modat.partidos = self.partidos modat.area_total = self.area_total # Criar um hash para servir de primary key desta análise temporal: modat.hash_id = self._calcula_hash() # Salvar no bd, ainda sem as análises modat.save() # Salvar as análises por período no bd: for ap in self.analisadores_periodo: modap = AnalisePeriodo() modap.casa_legislativa = ap.casa_legislativa modap.data_inicio = ap.ini.strftime('%Y-%m-%d') modap.data_fim = ap.fim.strftime('%Y-%m-%d') #votacoes = self.votacoes #partidos = self.partidos modap.analiseTemporal = modat posicoes = [] for part, coord in ap.coordenadas.items(): posicao = PosicaoPartido() # Cria PosicaoPartido no bd posicao.x = coord[0] posicao.y = coord[1] posicao.partido = models.Partido.objects.filter(nome=part)[0] posicao.tamanho = ap.tamanhos_partidos.get(part,0) posicao.presenca = 0 # TODO: incluir presença aqui. posicao.save() # Salva PosicaoPartido no bd posicoes.append(posicao) modap.save() modap.posicoes = posicoes modap.save() # Salva a análise do período no bd, associada a uma AnalisadorTemporal