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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)