def get_user_info(): """ 获取当前登陆用户的信息 :return: """ user_id = request.cookies.get('login_token').split('-')[0] try: user_info = user_service.get_user_info(user_id) except Exception as e: return ResponseUtil.error_response(data={}, msg=e.message) return ResponseUtil.success_response(data=user_info, msg='success')
def get_class(): """ 获得当前教师所管理的班级 :return: """ user_id = request.cookies.get('login_token').split('-')[0] try: res = face_service.get_class_by_user_id(user_id) except Exception as e: return ResponseUtil.error_response(data=[], msg=e.message) return ResponseUtil.success_response(data=res, msg='success')
def logout(): """ 用户注销 :return: """ user_id = request.cookies.get('login_token').split('-')[0] try: user_service.logout(user_id) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def update_face_status(): """ 修改人脸状态: 已签到,未签到, 删除 :return: """ face_id = request.args.get('id') face_status = request.args.get('status') try: face_service.update_face_status(face_id, face_status) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def init_face(): """ 结束上次签到 :return: """ try: stu_class = request.args.get('stu_class') if not stu_class: raise Exception("请输入班级") user_id = request.cookies.get('login_token').split('-')[0] face_service.init_face(stu_class, user_id) return ResponseUtil.success_response(msg='success') except Exception as e: return ResponseUtil.error_response(msg=e.message)
def start_check(): """ 开始签到 :return: """ user_id = request.cookies.get('login_token').split('-')[0] try: stu_class = request.args.get('stu_class') if not stu_class: raise Exception("请输入班级") face_service.start_check(user_id, stu_class) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def register_code(): """ 发送验证码接口 @:param email :return: {"msg": "success", "code": 0, "data": null} """ form = RegisterCode.from_json(formdata=request.json, meta={'locales': ['zh_CN', 'zh']}) try: validate_form(form) email_service.send_register_code(form.data.get('email')) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def get_all_by_one(): """ 获取某个用户(教师)下的学生列表 @:param page :return: """ try: user_id = request.cookies.get('login_token').split('-')[0] page = request.args.get('page', 1) filters = build_filters(request.args) res = face_service.get_face_by_user_id(user_id, filters, int(page)) except Exception as e: return ResponseUtil.error_response(data=[], msg=e.message) return ResponseUtil.success_response(data=res, msg='success')
def register(): """ 注册接口 @:param {"username":"******","password":"******"} :return: {"msg":"success","code":1,"data":""} """ form = UserRegister.from_json(formdata=request.json, meta={'locales': ['zh_CN', 'zh']}) try: validate_form(form) user_service.user_register(form.data) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def face_search(): """ 在指定组中搜索人脸(签到) @:param { "user_id": 10, } :return: {"msg": "success", "code": 0, "data": null} """ form = FaceSearch.from_json(formdata=request.json, meta={'locales': ['zh_CN', 'zh']}) try: validate_form(form) face_service.face_search(form.data) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def face_register(): """ 向指定人脸组添加人脸 @:param { "uer_id": "", "face_name": "", } :return: {"msg": "success", "code": 0, "data": null} """ form = FaceRegister.from_json(formdata=request.json, meta={'locales': ['zh_CN', 'zh']}) try: validate_form(form) face_service.face_add(form.data) except Exception as e: return ResponseUtil.error_response(msg=e.message) return ResponseUtil.success_response(msg='success')
def login(): """ 登陆接口 @:param username, password :return: {"msg": "34e3f953ee814a66a62b2cc2c02b1968", "code": 0, "data": null} """ username = request.args.get('username') password = request.args.get('password') try: msg = user_service.user_login(username, password) resp = make_response('{"msg": "success", "code": 0, "data": null}') resp.set_cookie("login_token", msg, max_age=1 * 3600 * 24) except Exception as e: return ResponseUtil.error_response(msg=e.message) return resp