示例#1
0
def login_handler():
    """
    @api {post} /v1/user/login 登录
    @apiName Login
    @apiGroup 用户
    @apiDescription 登录
    @apiParam {string} username 用户
    @apiParam {string} password 密码
    @apiParamExample {json} Request-Example:
    {
        "username":"******",
        "password":"******"
    }
    @apiSuccess {string} token 用户token
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": {
            "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6IndpZ2dlbnMiLCJ1c2VyaWQiOj"
        },
        "message": "ok"
    }
    """
    username, passwd = parse_json_form('login')
    if passwd is '':
        return json_detail_render(301)
    code, data = AuthBusiness.login(username, passwd)

    return json_detail_render(code, data)
示例#2
0
def login_handler():
    """
    @api {post} /v1/user/login 登录
    @apiName Login
    @apiGroup 用户
    @apiDescription 登录
    @apiParam {string} username 用户
    @apiParam {string} password 密码
    @apiParamExample {json} Request-Example:
    {
        "username":"******",
        "password":"******"
    }
    @apiSuccess {string} token 用户token
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": {
            "token": "tokenxxxx.xxxxx"
        },
        "message": "ok"
    }
    """
    username, passwd = parse_json_form('login')
    if passwd is '':
        return json_detail_render(301)
    code, data = AuthBusiness.login(username, passwd)

    return json_detail_render(code, data)
示例#3
0
def user_reset_handler():
    """
    @api {post} /v1/user/resetpassword 重置 用户密码
    @apiName ResetPassword
    @apiGroup 用户
    @apiDescription 重置用户密码
    @apiParam {int} userid 用户ID
    @apiParam {string} newpassword 新密码
    @apiParamExample {json} Request-Example:
    {
        "userid":1,
        "newpassword":"******"
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": [],
        "message": "ok"
    }
    """
    project_id = request.args.get('project_id')
    userid, newpassword = parse_json_form('resetpassword')
    if userid == 1156 or userid == 1152:
        return {'code': 0, 'data': [], 'message': '别搞事,弟弟'}
    ret, msg = UserBusiness.reset_password(userid, newpassword, project_id)

    return json_detail_render(ret, message=msg)
示例#4
0
def detach_user():
    """
    @api {post} /v1/user/detachuser 项目解绑用户
    @apiName DetachUserForProject
    @apiGroup 用户
    @apiDescription 项目解绑用户
    @apiParam {int} user_id 用户ID
    @apiParam {int} project_id 项目ID
    @apiParamExample {json} Request-Example:
    {
        "project_id": 75,
        "user_id":1
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
    {
    "code":0,
    "data":[],
    "message":"ok"
    }
    """
    project_id, user_id = parse_json_form('projectdetachusers')
    ret, msg = UserBusiness.project_detach_user(project_id, user_id)

    return json_detail_render(ret, [], msg)
示例#5
0
def user_detail_modify_handler(user_id):
    """
    @api {post} /v1/user/{user_id} 修改 用户密码
    @apiName ModifyPassword
    @apiGroup 用户
    @apiDescription 修改用户密码
    @apiParam {string} oldpassword 旧密码
    @apiParam {string} newpassword 新密码
    @apiParamExample {json} Request-Example:
    {
        "oldpassword":"******",
        "newpassword":"******"
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": [],
        "message": "ok"
    }
    @apiErrorExample {json} Error-Response:
     HTTP/1.1 200 OK
     {
        "code": 301,
        "data": [],
        "message": "password wrong"
    }
    """
    project_id = request.args.get('project_id')
    oldpassword, newpassword = parse_json_form('modifypassword')
    if user_id == 1156 or user_id == 1152:
        return {'code': 0, 'data': [], 'message': '别搞事,弟弟'}
    ret = UserBusiness.modify_password(user_id, oldpassword, newpassword,
                                       project_id)
    return json_detail_render(ret)
示例#6
0
def wx_user_bind_handler():
    """
    @api {post} /v1/user/wxbinduser 关联 企业微信到老账号
    @apiName WxBindUser
    @apiGroup 用户
    @apiDescription 企业微信关联老账号
    @apiParam {int} userid 老账号的ID
    @apiParam {int} wxuserid 企业微信用户的ID
    @apiParamExample {json} Request-Example:
    {
        "wxuserid": 58,
        "userid": 20
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    userid, wxuserid = parse_json_form('wxbinduser')
    ret, msg = UserBusiness.wx_bind_user(userid, wxuserid)

    return json_detail_render(ret, msg)
示例#7
0
def user_index_handler():
    """
    @api {post} /v1/user/add 新增 用户
    @apiName CreateUser
    @apiGroup 用户
    @apiDescription 新增用户
    @apiParam {string} username 用户名:字母[+数字]
    @apiParam {string} nickname 昵称
    @apiParam {string} password 密码
    @apiParam {int[]} roleids 角色,可传入空数组
    @apiParam {string} email 邮箱
    @apiParam {string} telephone 手机号
    @apiParamExample {json} Request-Example:
    {
        "username":"******",
        "nickname":"zhangdashan",
        "password":"******",
        "roleids":[],
        "email":"*****@*****.**",
        "telephone":"13131313131"
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": [],
        "message": "ok"
    }
    """
    username, nickname, password, email, telephone = parse_json_form('adduser')
    ret, msg = UserBusiness.create_new_user_and_bind_roles(
        username, nickname, password, email, telephone)

    return json_detail_render(ret, [], msg)
示例#8
0
def role_indexs_handler():
    """
    @api {post} /v1/role 新增 Role
    @apiName CreateRole
    @apiGroup 用户
    @apiDescription 新增Role
    @apiParam {string} name rolename
    @apiParam {string} comment 备注
    @apiParam {string} ability_ids 权限ID
    @apiParamExample {json} Request-Example:
    {
        "name":"dev",
        "comment":"开发",
        "ability_ids": [1,2,3]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": [],
        "message": "ok"
    }
    """
    name, comment, ability_ids = parse_json_form('addrole')
    ret, msg = RoleBusiness.create(name, comment, ability_ids)

    return json_detail_render(ret, [], msg)
示例#9
0
def user_bind_project_handler():
    """
    @api {post} /v1/user/bindproject 绑定 项目到用户
    @apiName BindProject
    @apiGroup 用户
    @apiDescription 给用户绑定项目,赋予访问权限等
    @apiParam {int} user_id 用户ID
    @apiParam {int[]} project_ids 项目
    @apiParamExample {json} Request-Example:
    {
        "user_id":1,
        "project_ids":[1]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    user_id, pids = parse_json_form('userbindprojects')
    ret, msg = UserBusiness.bind_projects(user_id, pids)

    return json_detail_render(ret, [], msg)
示例#10
0
def user_bind_role_handler():
    """
    @api {post} /v1/user/userbindroles 绑定 用户角色
    @apiName BindUserRole
    @apiGroup 用户
    @apiDescription 绑定用户角色
    @apiParam {int} userid 用户ID
    @apiParam {int[]} roleids role list可以为空,表示清空绑定关系
    @apiParamExample {json} Request-Example:
    {
        "userid":6,
        "roleids":[4]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    userid, roleids, project_id = parse_json_form('userbindroles')

    ret, msg = UserBusiness.user_bind_roles(userid, roleids, project_id)
    return json_detail_render(ret, [], msg)
示例#11
0
def track_create_history_device():
    project_id, user_id, device_typename, device_number = parse_json_form(
        "track_device_create")

    data = TrackUploadBusiness.check_device_exist(project_id, user_id,
                                                  device_number)

    if len(data) > 0:
        return json_detail_render(0, [], 'ok')

    code, message = TrackUploadBusiness.create(project_id, user_id, 0,
                                               device_typename, device_number)

    return json_detail_render(code, [], message)
示例#12
0
def role_details_handler(roleid):
    """
    @api {post} /v1/role/{role_id} 修改 role
    @apiName ModifyRole
    @apiGroup 用户
    @apiDescription 修改role
    @apiParam {string} name rolename
    @apiParam {string} comment 备注
    @apiParamExample {json} Request-Example:
    {
        "name":"dev",
        "comment":"开发",
        "ability_ids": [1,2,3]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }

    @api {delete} /v1/role/{role_id} 删除 role
    @apiName DeleteRole
    @apiGroup 用户
    @apiDescription 删除role
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    if request.method == 'DELETE':
        if roleid in range(1, 7):
            return json_detail_render(101, [], '初始角色不允许删除')
        ret = RoleBusiness.delete(roleid)
        return json_detail_render(ret)
    name, comment, ability_ids = parse_json_form('modifyrole')
    ret, msg = RoleBusiness.modify(roleid, name, comment, ability_ids)
    return json_detail_render(ret, [], msg)
示例#13
0
def track_event_modify(event_id):
    if request.method == 'DELETE':
        delete_comment = request.json.get('deleteComment')

        code, data, message = TrackBusiness.track_delete(
            event_id, delete_comment)

        return json_detail_render(code, data, message)

    (create_at, creator, delete_comment, description, _id, name, paramList,
     platform, platformList, projectId, project_id, status, updateComment,
     update_at, update_comment, updator,
     version) = parse_json_form("track_modify")

    code, data, message = TrackBusiness.track_modify(
        event_id, create_at, creator, delete_comment, description, _id, name,
        paramList, platform, platformList, projectId, project_id, status,
        updateComment, update_at, update_comment, updator, version)

    return json_detail_render(code, data, message)
示例#14
0
def role_bind_ability_handler():
    """
    @api {post} /v1/role/bindability 绑定 Ability到Role
    @apiName RoleBindAbility
    @apiGroup 用户
    @apiDescription Role绑定Ability
    @apiParam {int} role_id Role ID
    @apiParam {int[]} ability_ids ability id 列表,为空表述清除绑定关系
    @apiParamExample {json} Request-Example:
    {
        "role_id":3,
        "ability_ids":[1]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
        "code": 0,
        "data": [
            {
                "content": "[Tcloud - 测试站内信3]",
                "create_time": "2019-07-10 18:58:04",
                "id": 10,
                "status": 0
            },
            {
                "content": "[Tcloud - 测试站内信2]",
                "create_time": "2019-07-10 17:44:51",
                "id": 3,
                "status": 0
            }
        ],
        "message": "ok"
    }
    """
    roleid, ability_ids = parse_json_form('rolebindability')

    ret, msg = RoleBusiness.bind_abilities(roleid, ability_ids)
    return json_detail_render(ret, [], msg)
示例#15
0
def add_users():
    """
    @api {post} /v1/user/adduser 项目绑定用户
    @apiName AddUserForProject
    @apiGroup 用户
    @apiDescription 项目绑定用户
    @apiParam {list} user_list 用户ID
    @apiParam {int} project_id 项目ID
    @apiParamExample {json} Request-Example:
    {
        "project_id": 75,
        "user_list":[1,2]
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
    {
    "code":0,
    "data":[],
    "message":"ok"
    }
    """
    project_id, user_list = parse_json_form('projectadduser')
    ret, msg = UserBusiness.project_add_users(project_id, user_list)
    return json_detail_render(ret, [], msg)
示例#16
0
def user_modify_name_handler():
    """
    @api {post} /v1/user/nickname 修改 昵称
    @apiName ModifyNickName
    @apiGroup 用户
    @apiDescription 修改昵称
    @apiParam {int} userid 用户ID
    @apiParam {string} nickname 新的昵称
    @apiParamExample {json} Request-Example:
    {
        "userid":1,
        "nickname":"嘻嘻哈哈"
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    userid, nickname = parse_json_form('modifynickname')
    ret = UserBusiness.modify_nickname(userid, nickname)
    return json_detail_render(ret)
示例#17
0
def feedback_add_handler():
    """
    @api {post} /v1/feedback 新增 反馈
    @apiName CreateFeedback
    @apiGroup 用户
    @apiDescription 提交一个反馈
    @apiParam {string} [contact] 联系方式
    @apiParam {string} comment 反馈内容
    @apiParamExample {json} Request-Example:
    {
       "contact": "*****@*****.**",
       "comment": "xx模块有问题"
    }
    @apiSuccessExample {json} Success-Response:
     HTTP/1.1 200 OK
     {
       "code": 0,
       "data": [],
       "message": ""
     }
    """
    contact, comment = parse_json_form('feedback_create')
    ret = FeedbackBusiness.feedback_create(contact, comment)
    return json_detail_render(ret)
示例#18
0
def track_event_create():
    project_id, version, update_comment, platform_list, param_list, name, description = parse_json_form(
        "track_evnet_create")
    code, data, message = TrackBusiness.create_event(project_id, version,
                                                     update_comment,
                                                     platform_list, param_list,
                                                     name, description)
    return json_detail_render(code, data, message)