Example #1
0
def get_user_list():
    result = {"message": "", "statusCode": 0, "data": None, "success": False}
    try:
        offset = 0
        if "offset" in request.args:
            offset = int(request.args["offset"])
        limit = 10
        if "limit" in request.args:
            limit = int(request.args["limit"])
        query = ""
        if 'query' in request.args.keys():
            query = request.args.get('query')
        oauth2 = oauth("", "", "")
        res = oauth2.getUserList(offset, limit)

        # tp_data = res['data']
        # re_query = re.compile(query)
        # if query:
        #     tp_data['rows'] = _.collections.filter_(tp_data['rows'], lambda x: re_query.match(x['username']))
        #     tp_data['total'] = len(tp_data['rows'])
        result["success"] = res["success"]
        result["data"] = res["data"]
        result["message"] = res["message"]
        result["statusCode"] = res["code"]

    except Exception as e:
        traceback.print_exc()
        result["statusCode"] = -1
        result["message"] = e.message

    return jsonify(result)
Example #2
0
def update_user():
    result = {"statusCode": 1, "message": "ok", "data": None}
    try:
        content = request.json

        strgender = "M"
        if "gender" in content:
            strgender = content["gender"]
        strphone = ""
        if "phone" in content:
            strphone = content["phone"]
        stremail = ""
        if "email" in content:
            stremail = content["email"]
        strrealname = ""
        if "realName" in content:
            strrealname = content["realName"]

        oauth2 = oauth("", content["username"], "")
        tp_content = oauth2.updateUser(strgender, strphone, stremail, strrealname, content["id"])
        if tp_content["success"]:
            ret_roles = upc.update_user_profile({"link_id": str(tp_content["data"]["id"])},
                                                {"$set": {"roles": content["roles"]}})
        result["message"] = tp_content["message"]
        result["data"] = tp_content["data"]

    except Exception as e:
        traceback.print_exc()
        result["statusCode"] = -1
        result["message"] = "internal error"

    return jsonify(result)
Example #3
0
    def wrapper(*args, **kwargs):
        # print('--------auth------------')
        # print(request.headers['Authorization'])
        result = {
            'message': 'token not exists',
            'statusCode': -1,
            'data': None
        }
        if 'Authorization' in request.headers and request.headers[
                'Authorization']:
            tp_tokens = request.headers['Authorization'].split(' ')

            if len(tp_tokens) != 2 and tp_tokens[0] != "Bearer":
                return result, 401
            token = tp_tokens[1]
            oauth2 = oauth(token, '', '')
            ret = oauth2.checkToken()
            if ret is not None:
                # 检查当前用户是否为该实验的负责人或者被分享用户
                tp_profile = user.findUserProfileByLinkID(
                    {"link_id": str(ret['id'])})
                tp_user = _.assign(ret, tp_profile)
                g.user = tp_user
                result = func(*args, **kwargs)
                return result
            else:
                return result, 401
        else:
            return result, 401
Example #4
0
def get_logout():
    result = {"message": "", "code": 0, "data": None, "success": False}
    try:
        if "Authorization" in request.headers and request.headers["Authorization"]:
            oauth2 = oauth(request.headers["Authorization"], "", "")
            result = oauth2.logout()

    except Exception as e:
        traceback.print_exc()
        result["code"] = -1
        result["message"] = "internal error"

    return jsonify(result)
Example #5
0
def get_login():
    result = {"message": "", "code": 0, "data": None, "success": False}
    content=request.json
    try:
        if 'code' in content and "ticket" in content:
            if upc.verifyTicketAndCode(content["ticket"],content["code"])==True:
                oauth2 = oauth("", content["user"], content["pwd"])
                result = oauth2.auth()
            else:
                result["statusCode"]=-1
                result['message']="wrong captcha code"
        else:
            oauth2 = oauth("", content["user"], content["pwd"])
            result = oauth2.auth()
    except Exception as e:
        traceback.print_exc()
        result["statusCode"] = -1
        result["message"] = "internal error"

    if not result["success"]:
        return jsonify(result), 401
    else:
        return jsonify(result)
Example #6
0
def get_user_info_by_id(id):
    result = {"statusCode": 1, "message": "ok", "data": None}

    try:
        if "id" in request.args.keys():
            id = request.args.get["id"]
        oauth2 = oauth("", "", "")
        ret = oauth2.getUserInfoById(id)
        if ret["success"]:
            tp_user = ret["data"]
            user_profile = upc.findUserProfileByLinkID({"link_id": str(tp_user["id"])})
            if user_profile is not None:
                tp_user = _.assign(tp_user, user_profile)
            else:
                tp_user["roles"] = []
            result["data"] = tp_user

    except Exception as e:
        traceback.print_exc()
        result["statusCode"] = -1
        result["message"] = "internal error"

    return jsonify(result)