def generate_relatorio_string(cls): cabecalho = "MORAIS PARKING RELATORIO\n" cabecalho += "Estacionamento: UNIESP\n" cabecalho += "Data: " + str(datetime.now().date()) + "\n" ocupacao = "\nOCUPACAO MAXIMA:\n" if len(cls.ocupacoes_max) == 0: ocupacao += "Sem informacao disponivel\n" else: for area, ocupacao_max in cls.ocupacoes_max.items(): currArea = AreaEstacionamento(area.get_nome(), area.get_tipo(), area.get_capacidade()) currArea.set_ocupacao(ocupacao_max) ocupacao += str(currArea) + "\n" evento = "\nEVENTO DO DIA:\n" if cls.evento is None: evento += "Nao ha evento no dia de hoje\n" else: evento += str(cls.evento) + "\n" ocorrencias = "\nOCORRENCIAS:\n" if len(cls.ocorrencias) == 0: ocorrencias += "Nao existem ocorrencias\n" else: for ocorrencia in cls.ocorrencias: ocorrencias += str(ocorrencia) + "\n" return cabecalho + ocupacao + evento + ocorrencias
def register_area(self, nome, tipo, capacidade): self.data_area.open() area = AreaEstacionamento(nome, tipo, capacidade) success = self.data_area.insert_area(area) if success: print("Area cadastrada com sucesso!") else: print("Não foi possível cadastrar a area") self.data_area.close() return success
def query_area_by_nome(self, nome): try: self.c.execute(QUERY_AREA_BY_NOME, (nome, )) area_data = self.c.fetchone() if area_data is not None: nome = area_data[0] ocupacao = area_data[1] capacidade = area_data[2] tipo = area_data[3] especial = area_data[4] == 1 return AreaEstacionamento(nome, tipo, capacidade, especial, ocupacao) except sqlite3.Error: return None
def query_areas_compativeis(self, especial, tipo): try: self.c.execute(QUERY_AREAS_COMPATIVEIS, (especial, tipo)) areas_data = self.c.fetchall() areas = [] for area_data in areas_data: nome = area_data[0] ocupacao = area_data[1] capacidade = area_data[2] tipo = area_data[3] especial = area_data[4] == 1 areas.append( AreaEstacionamento(nome, tipo, capacidade, especial, ocupacao)) return areas except sqlite3.Error: return []
def query_reservas_by_evento(self, evento_nome): try: self.c.execute(QUERY_RESERVAS_BY_EVENTO, (evento_nome, )) reservas_data = self.c.fetchall() reservas = {} for reserva_data in reservas_data: self.c.execute(QUERY_AREA_BY_NOME, (reserva_data[1], )) area_data = self.c.fetchone() nome = area_data[0] ocupacao = area_data[1] capacidade = area_data[2] tipo = area_data[3] especial = area_data[4] == 1 area = AreaEstacionamento(nome, tipo, capacidade, especial, ocupacao) vagas = reserva_data[2] reservas[area] = vagas return reservas except sqlite3.Error: return None