def post(self): json = '' try: data = ListaResource.parser.parse_args() if not data: return {"mensagem": "A requisição não tem dados JSON"}, 400 lista = ListaModel.encontrar_pelo_nome(nome=data["nome"]) if lista: return {"mensagem": "Uma lista já existe com esse nome"}, 400 itens_lista = data['itens'] nome = data['nome'] lista = ListaModel(nome=nome,usuario_id=1) for i in itens_lista: il =ItemLista(preco="20 reais") item_temp = ItemModel.encontrar_pelo_nome(i['nome']) if item_temp: il.item = item_temp else: il.item = ItemModel(nome=i['nome']) lista.itens.append(il) lista.adicionar() lista = ListaModel.encontrar_pelo_nome(data["nome"]) schema = ListaSchema() json = schema.dump(lista).data except Exception as e: print(e) abort(500, message="Erro no POST") return json, 201
def delete(self,item): json = [] try: item = ItemModel.encontrar_pelo_nome(item) if item: item.remover() lista = ItemModel.listar() schema = ItemSchema(many=True,exclude=['listas']) json = schema.dump(lista) else: return {"message":"Item {} não está na lista".format(item)},404 except Exception as e: print(e) return json, 201
def get(self): json = [] try: itens = ItemModel.listar() schema = ItemSchema(many=True,exclude=['listas']) json = schema.dump(itens) except Exception as e: print(e) return {"message": "Aconteceu um erro tentando retornar a lista de compras."}, 500 return json,201
def get(self, item): json = '' try: item = ItemModel.encontrar_pelo_nome(item) if item: schema = ItemSchema(exclude=['listas']) json = schema.dump(item).data else: abort(404, message="Item {} não está na lista".format(item)) except Exception as e: print(e) abort(404, message="Item {} não está na lista".format(item)) return json, 201
def put(self): json = '' try: data = ItemResource.parser.parse_args() nome = data['item'] item = ItemModel.encontrar_pelo_nome(nome) if item : return {"message":"Item {} já está na lista".format(item)},200 else: item = ItemModel(nome=nome) item.adicionar() schema = ItemSchema(many=True) item = ItemModel.encontrar_pelo_nome(nome) json = schema.dump(item) except Exception as e: print(e) return json, 201
def post(self): json = '' try: data = ItemResource.parser.parse_args() print(data) nome = data['item'] item = ItemModel.encontrar_pelo_nome(nome) if item: return {"message": "Item {} já está na lista".format(nome)} else: item = ItemModel(nome=nome) item.adicionar() item = ItemModel.encontrar_pelo_nome(nome) schema = ItemSchema(exclude=['listas']) json = schema.dump(item).data except Exception as e: print(e) abort(500, message="Erro no POST") return json, 201