|
@@ -6,6 +6,7 @@ from sqlalchemy.orm import Session
|
|
|
from app.defines import StatesCode
|
|
|
from app.database import engine
|
|
|
from app.modle.users import User
|
|
|
+from app.utils.to_dict import to_dict
|
|
|
|
|
|
ns = Namespace('users', description='用户管理接口')
|
|
|
|
|
@@ -32,14 +33,9 @@ class GetUserListApi(Resource):
|
|
|
stmt = select(User).where(User.account_status == status).offset(page_size * (page - 1)).limit(page_size)
|
|
|
results = session.execute(stmt).scalars().all()
|
|
|
|
|
|
- data = []
|
|
|
- for result in results:
|
|
|
- result_dict = result.__dict__
|
|
|
- del result_dict['_sa_instance_state']
|
|
|
- result_dict['register_time'] = result_dict.get('register_time').strftime("%Y-%m-%d %H:%M:%S")
|
|
|
- data.append(result_dict)
|
|
|
+ data = to_dict(results)
|
|
|
|
|
|
- return {"code": StatesCode.SUCCESS, "message": "成功", "data": data}
|
|
|
+ return jsonify(code=StatesCode.SUCCESS, message="成功", data=data)
|
|
|
|
|
|
|
|
|
add_user = reqparse.RequestParser(bundle_errors=True)
|
|
@@ -159,35 +155,32 @@ class UsersApi(Resource):
|
|
|
return jsonify(code=StatesCode.SUCCESS, message="删除成功")
|
|
|
|
|
|
|
|
|
+user_details = reqparse.RequestParser(bundle_errors=True)
|
|
|
+user_details.add_argument(name='id', type=int, required=True, location='args', help='用户id')
|
|
|
+
|
|
|
+
|
|
|
@ns.route('/user_details')
|
|
|
class GetUsersApi(Resource):
|
|
|
@ns.doc(id='get_users_details', description='获取用户详情')
|
|
|
- @ns.expect()
|
|
|
+ @ns.expect(user_details)
|
|
|
def get(self):
|
|
|
"""获取用户详情"""
|
|
|
- data = \
|
|
|
- {
|
|
|
- "user_name": "admin",
|
|
|
- "password": "123",
|
|
|
- "name": "张三",
|
|
|
- "mobile": "13912345678",
|
|
|
- "email": "admin@qq.com",
|
|
|
- "unit": "北京电信规划院",
|
|
|
- "division": "研发中心",
|
|
|
- "role": "admin",
|
|
|
- "permission": 1,
|
|
|
- "status_in_office": 1,
|
|
|
- "position": "部门主管",
|
|
|
- "account_status": 1,
|
|
|
- "nationality": "中国"
|
|
|
- },
|
|
|
+ user_id = request.args.get('id')
|
|
|
|
|
|
- return {"code": StatesCode.SUCCESS, "message": "成功", "data": data}
|
|
|
+ if user_id is None:
|
|
|
+ return jsonify(code=StatesCode.UNKNOWN_ERROR, message="用户id不能为空")
|
|
|
+
|
|
|
+ with Session(engine) as session:
|
|
|
+ stmt = select(User).where(User.id == user_id)
|
|
|
+ results = session.execute(stmt).scalars().all()
|
|
|
+
|
|
|
+ return jsonify(code=StatesCode.SUCCESS, message='成功', data=to_dict(results))
|
|
|
|
|
|
@ns.doc(id='update_users_details', description='更新用户详情')
|
|
|
@ns.expect()
|
|
|
def put(self):
|
|
|
"""更新用户详情"""
|
|
|
+
|
|
|
return {"code": StatesCode.SUCCESS, "message": "成功", "data": ""}
|
|
|
|
|
|
|