def __init__(self): self.rutaArchivo = const.ENTRENADORES_FILE self.archivo = Archivo(self.rutaArchivo) self.pokemonController = PokemonController() self.listaEntrenadores = [] self.listaEstructuraEntrenadores = [] self.__cargarEntrenadores()
def get(self, asignatura_id=None): args = self.reqparse.parse_args() token = args.get('auth-token') if asignatura_id: alumno = Alumno.load_from_token(token) admin = Administrador.load_from_token(token) if alumno == None and admin == None: return {'response': 'user_invalid'}, 401 return Archivo.get_all_by_asignatura(asignatura_id) else: profesor = Profesor.load_from_token(token) if profesor == None: return {'response': 'user_invalid'}, 401 return Archivo.get_all_by_asignatura(profesor.asignatura.id)
def post(self): args = self.reqparse.parse_args() token = args.get('auth-token') profesor = Profesor.load_from_token(token) print("BASE_PATH:" + current_app.config.get("BASE_PATH")) if profesor == None: return {'response': 'user_invalid'}, 401 if 'file' not in request.files: return {'Response': "error"} file = request.files["file"] #Archivo.upload(current_app.config.get("BASE_PATH"), file, asignatura_id) return { 'Response': Archivo.upload(current_app.config.get("BASE_PATH"), file, profesor.asignatura.id) }
def delete(self, archivo_id): return {'Response': Archivo.erase(archivo_id)}
def get(self, archivo_id=None): if archivo_id: return Archivo.download(archivo_id) else: return Archivo.get_all()
class EntrenadorController: def __init__(self): self.rutaArchivo = const.ENTRENADORES_FILE self.archivo = Archivo(self.rutaArchivo) self.pokemonController = PokemonController() self.listaEntrenadores = [] self.listaEstructuraEntrenadores = [] self.__cargarEntrenadores() def __cargarEntrenadores(self): self.listaEstructuraEntrenadores = self.archivo.contenido for entrenadorParams in self.listaEstructuraEntrenadores: entrenador = self.__nuevoEntrenador(entrenadorParams["id"], entrenadorParams) self.listaEntrenadores.append(entrenador) def __nuevoEntrenador(self, id, entrenadorParams): entrenador = Entrenador(id, entrenadorParams["nombre"], entrenadorParams["region"], entrenadorParams["nivel"], entrenadorParams["pokemons"], entrenadorParams["medallas"]) return entrenador def __entrenadorEstructura(self, entrenador): return { "id": entrenador.id, "nombre": entrenador.nombre, "region": entrenador.region, "nivel": entrenador.nivel, "pokemons": entrenador.pokemons, "medallas": entrenador.medallas } def crearEntrenador(self, entrenadorParams): id = len(self.listaEntrenadores) entrenador = self.__nuevoEntrenador(id, entrenadorParams) entrenadorEstructura = self.__entrenadorEstructura(entrenador) self.listaEntrenadores.append(entrenador) self.listaEstructuraEntrenadores.append(entrenadorEstructura) self.archivo.guardarArchivo() print(entrenador) self.imprimirPokemonsEntrenador(entrenador.pokemons) def verEntrenador(self, idEntrenador): for entrenador in self.listaEntrenadores: if entrenador.id == idEntrenador: print(entrenador) self.imprimirPokemonsEntrenador(entrenador.pokemons) def actualizarEntrenador(self, idEntrenador, entrenadorParams): entrenador = self.listaEntrenadores[idEntrenador] entrenador.nombre = entrenadorParams["nombre"] entrenador.region = entrenadorParams["region"] entrenador.nivel = entrenadorParams["nivel"] entrenador.pokemons = entrenadorParams["pokemons"] entrenador.medallas = entrenadorParams["medallas"] entrenadorEstructura = self.__entrenadorEstructura(entrenador) self.listaEstructuraEntrenadores[idEntrenador] = entrenadorEstructura self.archivo.guardarArchivo() print(entrenador) self.imprimirPokemonsEntrenador(entrenador.pokemons) def borrarEntrenador(self, idEntrenador): idsPokemons = self.listaEntrenadores[idEntrenador].pokemons print("Entrenador a eliminar") self.verEntrenador(idEntrenador) self.imprimirPokemonsEntrenador(idsPokemons) self.listaEstructuraEntrenadores.pop(idEntrenador) self.listaEntrenadores.pop(idEntrenador) self.archivo.guardarArchivo() print("Se eliminó el Entrenador") def verEntrenadores(self): listaImpresa = "" for entrenador in self.listaEntrenadores: listaImpresa += f" | ID: {entrenador.id} | Nombre: {entrenador.nombre} | Nivel: {entrenador.nivel} |\n" print(listaImpresa) def imprimirPokemonsEntrenador(self, idsPokemons): print("Pokemons del entrenador:") for idPokemon in idsPokemons: self.pokemonController.verPokemon(int(idPokemon))
def __init__(self): self.rutaArchivo = const.POKEMONS_FILE self.archivo = Archivo(self.rutaArchivo) self.listaPokemons = [] self.listaEstructuraPokemons = [] self.__cargarPokemons()
class PokemonController(): def __init__(self): self.rutaArchivo = const.POKEMONS_FILE self.archivo = Archivo(self.rutaArchivo) self.listaPokemons = [] self.listaEstructuraPokemons = [] self.__cargarPokemons() def __cargarPokemons(self): self.listaEstructuraPokemons = self.archivo.contenido for pokemonParams in self.listaEstructuraPokemons: pokemon = self.__nuevoPokemon(pokemonParams["id"], pokemonParams) self.listaPokemons.append(pokemon) def __nuevoPokemon(self, id, pokemonParams): pokemon = Pokemon(id, pokemonParams["nombre"], pokemonParams["tipo"], pokemonParams["subtipo"], pokemonParams["habitad"], pokemonParams["nivel"], pokemonParams["habilidades"]) return pokemon def __pokemonEstructura(self, pokemon): return { "id": pokemon.id, "nombre": pokemon.nombre, "tipo": pokemon.tipo, "subtipo": pokemon.subtipo, "habitad": pokemon.habitad, "nivel": pokemon.nivel, "habilidades": pokemon.habilidades } def crearPokemon(self, pokemonParams): id = len(self.listaPokemons) pokemon = self.__nuevoPokemon(id, pokemonParams) pokemonEstructura = self.__pokemonEstructura(pokemon) self.listaPokemons.append(pokemon) self.listaEstructuraPokemons.append(pokemonEstructura) self.archivo.guardarArchivo() print(pokemon) return id def verPokemon(self, idPokemon): for pokemon in self.listaPokemons: if pokemon.id == idPokemon: print(pokemon) break def actualizarPokemon(self, idPokemon, pokemonParams): pokemon = self.listaPokemons[idPokemon] pokemon.nombre = pokemonParams["nombre"] pokemon.tipo = pokemonParams["tipo"] pokemon.subtipo = pokemonParams["subtipo"] pokemon.habitad = pokemonParams["habitad"] pokemon.nivel = pokemonParams["nivel"] pokemon.habilidades = pokemonParams["habilidades"] pokemonEstructura = self.__pokemonEstructura(pokemon) self.listaEstructuraPokemons[idPokemon] = pokemonEstructura self.archivo.guardarArchivo() print(pokemon) def borrarPokemon(self, idPokemon): print("Pokemon a eliminar") self.verPokemon(idPokemon) self.listaEstructuraPokemons.pop(idPokemon) self.listaPokemons.pop(idPokemon) self.archivo.guardarArchivo() print("Se eliminó el Pokemon") def verPokemones(self): listaImpresa = "" for pokemon in self.listaPokemons: listaImpresa += f" | ID: {pokemon.id} | Nombre: {pokemon.nombre} | Nivel: {pokemon.nivel} |\n" print(listaImpresa)