def post(self): args = get_args() if not args: return send_message("Parâmetros inválidos", 422) user = (Usuario.query.filter(Usuario.alive == False).filter( Usuario.email == args["email"]).first()) if user: return self.resurrect(user, args) else: try: user = Usuario(args["nome"], args["email"], args["rfid"], args["tipo"]) user.add(user) if args["direito_acesso"]: try: for sala in args["direito_acesso"]: acesso = DireitoAcesso(user.id, sala["id_sala"]) acesso.add(acesso) except SQLAlchemyError as e: return rollback(e, db) query = Usuario.query.get(user.id) except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(query).data, 201
def delete(self, id): try: query = Horario.query.filter(Horario.id_sala == id) horarios = [i for i in query.all()] for horario in horarios: horario.alive = False horario.last_update = datetime.now() horario.update() except SQLAlchemyError as e: return rollback(e, db) else: return None, 204
def delete(self, id): adms = Admin.query.all() if len(adms) == 1: return response("Cannot delete all admins", 403) try: admin = Admin.query.get(id) if not admin: return response("Admin {} not existis".format(id), 404) admin.delete(admin) except SQLAlchemyError as e: return rollback(e, db) else: return None, 204
def delete(self, id): try: room = Room.query.get(id) if not room or not room.active: return response("Room {} not exists".format(id)) room.active = False room.lastUpdate = datetime.now() room.update() except SQLAlchemyError as e: return rollback(e, db), 406 else: return None, 202
def post(self): args = get_args() if not args: return response("Invalid parameters", 422) try: admin = Admin(args["name"], args["email"], args["password"]) admin.add(admin) query = Admin.query.get(admin.id) except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(query).data, 201
def post(self): args = get_args() if not args: return send_message("Parâmetros inválidos!", 422) try: admin = Admin(args["nome"], args["email"], args["password"]) admin.add(admin) query = Admin.query.get(admin.id) except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(query).data, 201
def delete(self, id): try: user = User.query.get(id) if not user.active: return response("User {} not exists".format(id)) user.active = False user.lastUpdate = datetime.now() user.update() except SQLAlchemyError as e: return rollback(e, db) else: return None, 204
def delete(self, id): adms = Admin.query.all() if len(adms) == 1: return send_message("Há apenas um administrador", 403) try: admin = Admin.query.get(id) if not admin: return send_message("O administrador {} não existe".format(id), 404) admin.delete(admin) except SQLAlchemyError as e: return rollback(e, db) else: return None, 204
def delete(self, id): try: user = Usuario.query.get(id) if not user.alive: return send_message("O usuário {} não existe".format(id)) user.alive = False for acesso in user.direito_acesso: acesso.alive = False user.last_update = datetime.now() user.update() except SQLAlchemyError as e: return rollback(e, db) else: return None, 204
def delete(self, roomId, userId): roomUser = (RoomUser.query.filter( RoomUser.active).filter(RoomUser.roomId == roomId).filter( RoomUser.userId == userId).first()) if roomUser: try: roomUser.active = False roomUser.lastUpdate = datetime.now() roomUser.update() except SQLAlchemyError as e: return rollback(e, db), 406 else: return "User {} removed from Room {}".format(userId, roomId), 202 return "User {} was not found in Room {}".format(userId, roomId), 404
def post(self, roomId, userId): roomUser = (RoomUser.query.filter(RoomUser.roomId == roomId).filter( RoomUser.userId == userId).first()) if roomUser: roomUser.active = True roomUser.lastUpdate = datetime.now() roomUser.update() return roomUserSchema.dump(roomUser).data, 201 else: try: roomUser = RoomUser() roomUser.roomId = roomId roomUser.userId = userId roomUser.add(roomUser) except SQLAlchemyError as e: return rollback(e, db), 406 else: return roomUserSchema.dump(roomUser).data, 201
def put(self, id): args = check_args() if not args: return response("Room name required", 422) room = Room.query.get(id) if not room.active: return response("Room {} not exists".format(id)) if room.name != args["name"]: room.name = args["name"] try: room.lastUpdate = datetime.now() room.update() except SQLAlchemyError as e: return rollback(e, db), 406 else: return schema.dump(room).data, 202
def put(self, id): args = check_args() if not args: return send_message("O nome da sala não pode ser vazio", 422) sala = Sala.query.get(id) if not sala.alive: return send_message("A sala {} não existe".format(id)) if sala.nome != args["nome"]: sala.nome = args["nome"] try: sala.last_update = datetime.now() sala.update() except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(sala).data
def post(self): args = get_args() if not args: return response("Invalid parameters", 422) user = (User.query.filter(User.active == False).filter( User.email == args["email"]).first()) if user: return self.reactive(user, args) else: try: user = User(name=args["name"], email=args["email"], uid=args["uid"], userType=args["userType"]) user.add(user) except SQLAlchemyError as e: return rollback(e, db), 406 else: return schema.dump(user).data, 201
def post(self): args = check_args() if not args: return response("Room's name is required", 422) room = (Room.query.filter(Room.active == False).filter( Room.name == args["name"]).first()) if room: room.active = True room.lastUpdate = datetime.now() room.update() return schema.dump(room).data, 201 else: try: room = Room() room.name = args["name"] room.add(room) except SQLAlchemyError as e: return rollback(e, db), 406 else: return schema.dump(room).data, 201
def post(self): args = get_args() horario_check = check_horario(args) if horario_check and not horario_check.alive: query = Horario.query.get(horario_check.id) query.alive = True query.last_update = datetime.now() query.update() return schema.dump(query).data, 201 elif horario_check and horario_check.alive: return send_message("Este horário já existe", 409) try: horario = Horario(args["id_sala"], args["dia"], args["hora_inicio"], args["hora_fim"], args["tipo_user"]) horario.add(horario) query = Horario.query.get(horario.id) except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(query).data, 201
def post(self): args = check_args() if not args: return send_message("O nome da sala não pode ser vazio", 422) sala = (Sala.query.filter(Sala.alive == False).filter( Sala.nome == args["nome"]).first()) if sala: sala.alive = True sala.last_update = datetime.now() sala.update() return schema.dump(sala).data, 201 else: try: sala = Sala(args["nome"]) sala.add(sala) query = Sala.query.order_by(Sala.id.desc()).first() except SQLAlchemyError as e: return rollback(e, db) else: return schema.dump(query).data, 201
def delete(self, id): try: sala = Sala.query.get(id) if not sala or not sala.alive: return send_message("A sala {} não existe".format(id)) sala.alive = False horarios = (Horario.query.filter(Horario.id_sala == id).all()) acessos = (DireitoAcesso.query.filter( DireitoAcesso.id_sala == id).all()) for acesso in acessos: acesso.alive = False for horario in horarios: horario.alive = False sala.last_update = datetime.now() sala.update() except SQLAlchemyError as e: return rollback(e, db) else: return None, 204