def login(): login_id = request.form.get('login_id', None, type=str) password = request.form.get('password', None, type=str) user = db.session.query(User).filter(User.login_id == login_id).one_or_none() if user is None: return return_msg(ERROR_CODE.XY_ERR_NO_DATA, "用户名或密码错误") if not user.verify_password(password): return return_msg(ERROR_CODE.XY_ERR_PARAM_VALUE, "用户名或密码错误") user_json = {"username": user.username, "role": user.role_id, } login_user(user, True) return return_msg(ERROR_CODE.XY_ERR_NONE, "登录成功", data={"user": user_json, })
def cancel_test(): celery_task_id = request.form.get('celery_task_id', None, type=str) if not celery_task_id: return return_msg(0, 'param error', log='error celery_task_id: %s' % (celery_task_id, )) state, _, __ = result(test_celery_add, celery_task_id) if state != 0: return return_msg(0, 'can not cancel') cancel(celery_task_id) return return_msg(1, 'ok')
def register(): login_id = request.form.get('login_id', None, type=str) password = request.form.get('password', None, type=str) username = request.form.get('username', None, type=str) have_registered = User.query.filter_by(user_id=login_id).count() if have_registered is not 0: return return_msg(ERROR_CODE.XY_ERR_PARAM_VALUE, "用户已存在") if username is None: username = '******' user = User(login_id=login_id, username=username) user.password = password try: db.session.add(user) db.session.commit() return return_msg(ERROR_CODE.XY_ERR_NONE, "注册成功") except Exception as e: current_app.logger.exception(e) return return_msg(ERROR_CODE.XY_ERR_EXCEPTION, "用户名或密码不合法")
def wrapper(*args, **kwargs): try: return f(*args, **kwargs) except Exception as e: exc_type, exc_instance, exc_traceback = sys.exc_info() formatted_tbtext = traceback.format_tb(exc_traceback.tb_next) error = '\n[Exception]:{0}-{1}'.format(formatted_tbtext, exc_instance) return return_msg(-1, msg='exception', log=error)
def test(): a = request.args.get('a', 0, type=int) b = request.args.get('b', 0, type=int) task = test_celery_add.apply_async(args=[ a, b, ]) return return_msg(1, 'ok', data={ 'Location': url_for('cal.test_result', task_id=task.id), 'celery_task_id': task.id, })
def logout(): logout_user() return return_msg(ERROR_CODE.XY_ERR_NONE, "登出用户")
def test_result(task_id): state, msg, data = result(test_celery_add, task_id) return return_msg(state, msg, data)