Ejemplo n.º 1
0
def list_users():
    search = request.args.get('keyword', '')
    schema = UserSchema(many=True)

    if search:
        users = User.query.filter(User.username.ilike('%{}%'.format(search)))
        return jsonify(schema.dump(users)), 200

    users = User.query.all()
    return jsonify(schema.dump(users)), 200
Ejemplo n.º 2
0
def put_user():
    schema = UserSchema()
    result = dict()

    if not request.is_json:
        result['msg'] = 'Missing JSON in request'
        return jsonify(result), 400

    req_data = request.get_json()

    if 'email' in req_data.keys():
        email = req_data['email']
        user = User.query.get_or_404(email)
        if 'password' in req_data.keys():
            user.password = req_data['password']
        if 'name' in req_data.keys():
            user.name = req_data['name']
        db.session.add(user)
        db.session.commit()
        result['msg'] = 'OK'
        result['data'] = schema.dump(user)
    else:
        result['msg'] = 'keys error'
        return jsonify(result), 400

    return jsonify(result), 200
Ejemplo n.º 3
0
 def get(self, user_id):
     user_schema = UserSchema(exclude=['password'])
     users = User.query.get(user_id)
     if not users:
         return {'status': 'error', 'data': 'not found'}, 404
     print(users.image)
     users = user_schema.dump(users)
     return {'status': 'ok', 'data': users}, 200
Ejemplo n.º 4
0
def list_users():
    from wsgi import app
    app.logger.info("users call")

    schema = UserSchema(many=True)
    all_Users = User.query
    result = dict()
    result['data'] = schema.dump(all_Users)
    return jsonify(result)
Ejemplo n.º 5
0
def get_user(email):
    schema = UserSchema()
    result = dict()

    user = User.query.get_or_404(email)

    result['msg'] = 'OK'
    result['data'] = schema.dump(user)

    return jsonify(result), 200
Ejemplo n.º 6
0
def get_by_id(user_id):
    try:
        item = UserModel.query.filter_by(id=user_id).first()
        if item is None:
            return HTTP_404_NOT_FOUND, None
        schema = UserSchema()
        result = schema.dump(item, many=False)
        return HTTP_200_OK, result
    except Exception as error:
        print("Error------------------", error)
        return HTTP_400_BAD_REQUEST, None
Ejemplo n.º 7
0
def get_all(page_number, page_size):
    # return http_status, data, total
    try:
        schema = UserSchema()
        total = UserModel.query.count()
        if total == 0:
            return HTTP_404_NOT_FOUND, None, 0
        items = UserModel.query.paginate(page_number, page_size).items
        if items in [None, {}]:
            return HTTP_404_NOT_FOUND, None, 0
        # dump data
        result = schema.dump(items, many=True)
        return HTTP_200_OK, result, total
    except Exception as error:
        print("Error----------------", error)
        return HTTP_400_BAD_REQUEST, None, 0
Ejemplo n.º 8
0
def create(user_data):
    try:
        schema = UserSchema()
        new_item = schema.make(user_data)
        new_item.password = lazy_hashing(user_data['password'])
        db.session.add(new_item)
        # commit
        db.session.commit()
        # dump data
        result = schema.dump(new_item, many=False)
        print("items-------------", result)
        return HTTP_201_CREATED, result
    except Exception as error:
        print("Error----------------", error)
        db.session.rollback()
        return HTTP_400_BAD_REQUEST, None
Ejemplo n.º 9
0
def update(user_id, user_data):
    try:
        schema = UserSchema()
        item = UserModel.query.filter_by(id=user_id).first()
        print(item)
        if item is None:
            return HTTP_404_NOT_FOUND, None
        if user_data.get('password') is not None:
            user_data['password'] = lazy_hashing(user_data['password'])
        new_item = UserModel.query.filter_by(id=user_id).update(user_data)
        db.session.commit()
        item = UserModel.query.filter_by(id=user_id).first()
        result = schema.dump(item, many=False)
        return HTTP_201_CREATED, result
    except Exception as error:
        print("Error-------------", error)
        db.session.rollback()
        return HTTP_400_BAD_REQUEST, None
Ejemplo n.º 10
0
def login(auth_payload):
    """
            API: POST /authenticate
        """
    username = auth_payload['username']
    password = auth_payload['password']

    user = UserModel.query.filter_by(
        username=username,
        password=lazy_hashing(password)) \
        .first()
    print("User::User==============", user)
    if user is not None:
        schema = UserSchema()
        # dump data
        result = schema.dump(user, many=False)
        return send_response(code=200, data=result)
    else:
        return send_response(code=400, message="Sai tài khoản hoặc mật khẩu")
Ejemplo n.º 11
0
def register(user_data):
    try:
        schema = UserSchema()
        new_item = schema.make(user_data)
        new_item.password = lazy_hashing(user_data['password'])
        new_item.role = 1
        new_item.danger = False
        new_item.point = 0
        new_item.status = 1
        new_item.member_id = 0
        db.session.add(new_item)
        # commit
        db.session.commit()
        # dump data
        result = schema.dump(new_item, many=False)
        print("items-------------", result)
        return HTTP_201_CREATED, result
    except Exception as error:
        print("Error----------------", error)
        db.session.rollback()
        return HTTP_400_BAD_REQUEST, None
Ejemplo n.º 12
0
 def get(self):
     users_schema = UserSchema(many=True, exclude=['password'])
     users = User.query.all()
     users = users_schema.dump(users)
     return ok(users, 200)