def cadastrar_pokemon(nome, apelido): if nome not in treinadores: return "", 404 treinador = treinadores[nome] pokemons = treinador.pokemons if apelido in pokemons: return "", 409 dados = request.get_json() validar_campos(dados, {'tipo': str_nao_vazio, 'experiencia': natural}) pokemon = treinador.adicionar_pokemon(apelido, dados['tipo'], dados['experiencia']) return jsonify(to_dict(pokemon)), 202
def adiciona_professores(): dados = request.get_json() if not "nome" in dados: return jsonify({'erro': 'professor sem nome'}), 400 try: validar_campos(dados, {'nome': str_nao_vazio, 'id': natural}) for professor in professores: if professor['id'] == dados['id']: return jsonify({'erro': 'id ja utilizada'}), 400 professores.append(dados) return jsonify(to_dict(dados)), 200 except: return jsonify({'erro': 'professor nao encontrado'}), 400
def adiciona_alunos(): dados = request.get_json() try: if "nome" in dados: validar_campos(dados, {'nome': str_nao_vazio, 'id': natural}) for aluno in alunos: if aluno['id'] == dados['id']: return jsonify({'erro': 'id ja utilizada'}), 400 alunos.append(dados) return jsonify(to_dict(dados)), 200 else: return jsonify({'erro': 'aluno sem nome'}), 400 except: return jsonify({'erro': 'aluno nao encontrado'}), 400
def cadastrar_treinador(nome): if nome in treinadores: return jsonify(to_dict(treinadores[nome])), 303 t = Treinador(nome) treinadores[nome] = t return jsonify(to_dict(t)), 202
def detalhar_pokemon(nome, apelido): if nome not in treinadores: return "Treinador não existe.", 404 treinador = treinadores[nome] pokemons = treinador.pokemons if apelido not in pokemons: return "Pokémon não existe.", 404 return jsonify(to_dict(pokemons[apelido]))
def detalhar_treinador(nome): if nome not in treinadores: return "", 404 return jsonify(to_dict(treinadores[nome]))
def listar_treinadores(): return jsonify(to_dict(treinadores))