def post(self): """Регистрация нового пользователя""" request_json = request.json if not user_request_check(request_json): return '', 400 request_json["password"] = generate_password_hash(request_json["password"]) with db.connection as connection: user_service = UsersService(connection) try: user_id = user_service.create(user_data=request_json) except UserCreationError: return '', 409 user = user_service.read(user_id=user_id) user.update({ "is_seller": request_json["is_seller"], }) if user["is_seller"]: seller_service = SellersService(connection) zipcode_service = ZipcodesService(connection) try: seller_id = seller_service.create(seller_data=request_json, user_id=user_id) zipcode_service.create(Zipcode_data=request_json) except (SellerCreationError, ZipcodesCreationError): return '', 409 seller = seller_service.read(seller_id=seller_id) user.update(seller) return jsonify(user), 201
def get(self, user_id, user): """Получение информации о пользователе по id""" with db.connection as connection: user_service = UsersService(connection) seller_service = SellersService(connection) try: user_data = user_service.read(user_id=user_id) seller_data = seller_service.read(user_id=user_id) except UserDoesNotExistsError: return '', 404 except SellerDoesNotExistsError: return jsonify(user_data) else: user_data.update(seller_data) user_data.update({"is_seller": True}) return jsonify(user_data)