正在显示
2 个修改的文件
包含
100 行增加
和
5 行删除
| @@ -9,7 +9,7 @@ from .models import * | @@ -9,7 +9,7 @@ from .models import * | ||
| 9 | from .oauth2 import authorization, require_oauth, generate_user_info | 9 | from .oauth2 import authorization, require_oauth, generate_user_info |
| 10 | from authlib.oauth2 import OAuth2Error | 10 | from authlib.oauth2 import OAuth2Error |
| 11 | from authlib.integrations.flask_oauth2 import current_token | 11 | from authlib.integrations.flask_oauth2 import current_token |
| 12 | -from . import user_create, client_create, client_query | 12 | +from . import user_create, client_create, client_query,user_query |
| 13 | 13 | ||
| 14 | 14 | ||
| 15 | def current_user(): | 15 | def current_user(): |
| @@ -139,7 +139,7 @@ class DataManager(BlueprintApi): | @@ -139,7 +139,7 @@ class DataManager(BlueprintApi): | ||
| 139 | @bp.route("/logout", methods=["GET"]) | 139 | @bp.route("/logout", methods=["GET"]) |
| 140 | # @require_oauth("profile") | 140 | # @require_oauth("profile") |
| 141 | def logout(): | 141 | def logout(): |
| 142 | - url='' | 142 | + url = '' |
| 143 | try: | 143 | try: |
| 144 | user = current_user() | 144 | user = current_user() |
| 145 | grant = authorization.validate_consent_request(end_user=user) | 145 | grant = authorization.validate_consent_request(end_user=user) |
| @@ -150,7 +150,7 @@ class DataManager(BlueprintApi): | @@ -150,7 +150,7 @@ class DataManager(BlueprintApi): | ||
| 150 | db.session.commit() | 150 | db.session.commit() |
| 151 | remove_user() | 151 | remove_user() |
| 152 | if accesstoken: | 152 | if accesstoken: |
| 153 | - url =grant.client.client_uri | 153 | + url = grant.client.client_uri |
| 154 | except OAuth2Error as error: | 154 | except OAuth2Error as error: |
| 155 | return jsonify(dict(error.get_body())) | 155 | return jsonify(dict(error.get_body())) |
| 156 | return redirect(url) | 156 | return redirect(url) |
| @@ -170,7 +170,17 @@ class DataManager(BlueprintApi): | @@ -170,7 +170,17 @@ class DataManager(BlueprintApi): | ||
| 170 | 170 | ||
| 171 | """接口""" | 171 | """接口""" |
| 172 | @staticmethod | 172 | @staticmethod |
| 173 | - @bp.route("/user_create", methods=["POST"]) | 173 | + @bp.route("/users", methods=["GET"]) |
| 174 | + @swag_from(user_query.Api.api_doc) | ||
| 175 | + def user_query(): | ||
| 176 | + """ | ||
| 177 | + 获取用户列表 | ||
| 178 | + """ | ||
| 179 | + return user_query.Api().result | ||
| 180 | + | ||
| 181 | + | ||
| 182 | + @staticmethod | ||
| 183 | + @bp.route("/users", methods=["POST"]) | ||
| 174 | @swag_from(user_create.Api.api_doc) | 184 | @swag_from(user_create.Api.api_doc) |
| 175 | def user_create(): | 185 | def user_create(): |
| 176 | """ | 186 | """ |
| @@ -179,7 +189,7 @@ class DataManager(BlueprintApi): | @@ -179,7 +189,7 @@ class DataManager(BlueprintApi): | ||
| 179 | return user_create.Api().result | 189 | return user_create.Api().result |
| 180 | 190 | ||
| 181 | @staticmethod | 191 | @staticmethod |
| 182 | - @bp.route("/client_create", methods=["POST"]) | 192 | + @bp.route("/client", methods=["POST"]) |
| 183 | @swag_from(client_create.Api.api_doc) | 193 | @swag_from(client_create.Api.api_doc) |
| 184 | def client_create(): | 194 | def client_create(): |
| 185 | """ | 195 | """ |
app/modules/auth/user_query.py
0 → 100644
| 1 | +# coding=utf-8 | ||
| 2 | +#author: qianyingz | ||
| 3 | +#createtime: 2021/8/14 | ||
| 4 | +#email: qianyingz@chinadci.com | ||
| 5 | + | ||
| 6 | +from authlib.oidc.core.claims import UserInfo | ||
| 7 | +from .models import * | ||
| 8 | +from app.util.component.ApiTemplate import ApiTemplate | ||
| 9 | + | ||
| 10 | + | ||
| 11 | +class Api(ApiTemplate): | ||
| 12 | + api_name = "获取用户列表" | ||
| 13 | + | ||
| 14 | + def para_check(self): | ||
| 15 | + pass | ||
| 16 | + | ||
| 17 | + def process(self): | ||
| 18 | + # 返回结果 | ||
| 19 | + res = {} | ||
| 20 | + res["result"] = False | ||
| 21 | + try: | ||
| 22 | + # 业务逻辑 | ||
| 23 | + pass | ||
| 24 | + page_index = int(self.para.get("pageIndex", "0")) | ||
| 25 | + page_size = int(self.para.get("pageSize", "1000")) | ||
| 26 | + name = self.para.get("name") | ||
| 27 | + id = self.para.get('guid') | ||
| 28 | + | ||
| 29 | + if id: | ||
| 30 | + tmp_user = User.query.filter_by(id=id).first() | ||
| 31 | + res["data"] = {"id": tmp_user.id, "username": tmp_user.username, | ||
| 32 | + "role": tmp_user.role} | ||
| 33 | + else: | ||
| 34 | + # 获取集合 | ||
| 35 | + userLinq = User.query.order_by(User.id.desc()) | ||
| 36 | + if name: | ||
| 37 | + userLinq = userLinq.filter( | ||
| 38 | + User.username.like("%" + name + "%")) | ||
| 39 | + tmp_count = userLinq.count() | ||
| 40 | + tmp_list = userLinq.limit(page_size).offset( | ||
| 41 | + page_index * page_size).all() | ||
| 42 | + res["data"] = { | ||
| 43 | + "count": tmp_count, | ||
| 44 | + "list": list(map(lambda t: | ||
| 45 | + {"id": t.id, "username": t.username, | ||
| 46 | + "role": t.role}, | ||
| 47 | + tmp_list))} | ||
| 48 | + res["result"] = True | ||
| 49 | + | ||
| 50 | + except Exception as e: | ||
| 51 | + raise e | ||
| 52 | + return res | ||
| 53 | + | ||
| 54 | + api_doc = { | ||
| 55 | + | ||
| 56 | + "tags": ["认证接口"], | ||
| 57 | + "parameters": [ | ||
| 58 | + {"name": "page_index", | ||
| 59 | + "in": "query", | ||
| 60 | + "type": "int", | ||
| 61 | + "description": "当前页", | ||
| 62 | + "default": 0}, | ||
| 63 | + {"name": "page_size", | ||
| 64 | + "in": "query", | ||
| 65 | + "type": "int", | ||
| 66 | + "description": "条数", | ||
| 67 | + "default": 1000}, | ||
| 68 | + {"name": "name", | ||
| 69 | + "in": "query", | ||
| 70 | + "type": "string", | ||
| 71 | + "description": "名称关键字"}, | ||
| 72 | + {"name": "guid", | ||
| 73 | + "in": "query", | ||
| 74 | + "type": "string", | ||
| 75 | + "description": "用户id,用于获取用户信息"} | ||
| 76 | + ], | ||
| 77 | + "responses": { | ||
| 78 | + 200: { | ||
| 79 | + "schema": { | ||
| 80 | + "properties": { | ||
| 81 | + } | ||
| 82 | + } | ||
| 83 | + } | ||
| 84 | + } | ||
| 85 | + } |
请
注册
或
登录
后发表评论