diff --git a/app/api/v1/apis/apis.py b/app/api/v1/apis/apis.py index 9cdca28b..ef26f1d6 100644 --- a/app/api/v1/apis/apis.py +++ b/app/api/v1/apis/apis.py @@ -15,6 +15,7 @@ async def list_api( path: str = Query(None, description="API路径"), summary: str = Query(None, description="API简介"), tags: str = Query(None, description="API模块"), + method: str = Query(None, description="请求方式"), ): q = Q() if path: @@ -23,6 +24,8 @@ async def list_api( q &= Q(summary__contains=summary) if tags: q &= Q(tags__contains=tags) + if method: + q &= Q(method=method) total, api_objs = await api_controller.list(page=page, page_size=page_size, search=q, order=["tags", "id"]) data = [await obj.to_dict() for obj in api_objs] return SuccessExtra(data=data, total=total, page=page, page_size=page_size) diff --git a/web/src/components/table/CrudTable.vue b/web/src/components/table/CrudTable.vue index e8ca0369..f796c631 100644 --- a/web/src/components/table/CrudTable.vue +++ b/web/src/components/table/CrudTable.vue @@ -12,13 +12,17 @@ :scroll-x="scrollX" :row-key="(row) => row[rowKey]" :pagination="isPagination ? pagination : false" + :default-sort="props.defaultSort" + :sorter="sorterState" @update:checked-row-keys="onChecked" @update:page="onPageChange" + @update:sorter="onSorterChange" /> diff --git a/web/src/utils/constants.js b/web/src/utils/constants.js new file mode 100644 index 00000000..b703c728 --- /dev/null +++ b/web/src/utils/constants.js @@ -0,0 +1,16 @@ +// HTTP请求方法枚举 +export const HTTP_METHODS = { + GET: 'GET', + POST: 'POST', + PUT: 'PUT', + DELETE: 'DELETE', + PATCH: 'PATCH' +} + +export const HTTP_METHOD_OPTIONS = [ + { label: 'GET', value: 'GET' }, + { label: 'POST', value: 'POST' }, + { label: 'PUT', value: 'PUT' }, + { label: 'DELETE', value: 'DELETE' }, + { label: 'PATCH', value: 'PATCH' } +] \ No newline at end of file diff --git a/web/src/views/system/api/index.vue b/web/src/views/system/api/index.vue index 3f3f48e4..5246033e 100644 --- a/web/src/views/system/api/index.vue +++ b/web/src/views/system/api/index.vue @@ -1,6 +1,6 @@