Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
admin
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
327c2c94
authored
Sep 13, 2025
by
lijinqi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
api使用日志完成
parent
96cb4f43
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
61 additions
and
48 deletions
+61
-48
src/views/apihub/apicalllog/ApiCallLogForm.vue
+8
-0
src/views/apihub/apicalllog/index.vue
+32
-39
src/views/apihub/apiendpoint/ApiEndpointForm.vue
+12
-0
src/views/apihub/apiendpoint/index.vue
+2
-1
src/views/apihub/appcredential/AppCredentialForm.vue
+7
-8
No files found.
src/views/apihub/apicalllog/ApiCallLogForm.vue
View file @
327c2c94
...
...
@@ -56,6 +56,10 @@ const formData = ref({
id
:
undefined
,
userId
:
undefined
,
apiId
:
undefined
,
method
:
undefined
,
path
:
undefined
,
responseParams
:
undefined
,
apiEndpointName
:
undefined
,
requestParams
:
undefined
,
responseStatus
:
undefined
,
callTime
:
undefined
,
...
...
@@ -115,8 +119,12 @@ const resetForm = () => {
id
:
undefined
,
userId
:
undefined
,
apiId
:
undefined
,
method
:
undefined
,
path
:
undefined
,
responseParams
:
undefined
,
requestParams
:
undefined
,
responseStatus
:
undefined
,
apiEndpointName
:
undefined
,
callTime
:
undefined
,
remark
:
undefined
}
...
...
src/views/apihub/apicalllog/index.vue
View file @
327c2c94
...
...
@@ -8,34 +8,43 @@
:inline=
"true"
label-width=
"68px"
>
<el-form-item
label=
"调用用户
ID"
prop=
"userId
"
>
<el-form-item
label=
"调用用户
机号"
prop=
"userMobile
"
>
<el-input
v-model=
"queryParams.user
Id
"
placeholder=
"
请输入调用用户ID
"
v-model=
"queryParams.user
Mobile
"
placeholder=
"
调用用户机号
"
clearable
@
keyup
.
enter=
"handleQuery"
class=
"!w-240px"
/>
</el-form-item>
<el-form-item
label=
"
调用的API ID"
prop=
"apiId
"
>
<el-form-item
label=
"
接口名称"
prop=
"apiEndpointName
"
>
<el-input
v-model=
"queryParams.api
Id
"
placeholder=
"
请输入调用的API ID
"
v-model=
"queryParams.api
EndpointName
"
placeholder=
"
调用用户机号
"
clearable
@
keyup
.
enter=
"handleQuery"
class=
"!w-240px"
/>
</el-form-item>
<el-form-item
label=
"响应状态(如200, 500等)"
prop=
"responseStatus"
>
<el-select
v-model=
"queryParams.responseStatus"
placeholder=
"请选择响应状态(如200, 500等)"
clearable
class=
"!w-240px"
>
<el-option
label=
"请选择字典生成"
value=
""
/>
</el-select>
</el-form-item>
<!--
<el-form-item
label=
"调用的API ID"
prop=
"apiId"
>
-->
<!--
<el-input-->
<!-- v-model="queryParams.apiId"-->
<!-- placeholder="请输入调用的API ID"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery"-->
<!-- class="!w-240px"-->
<!-- />-->
<!--
</el-form-item>
-->
<!--
<el-form-item
label=
"响应状态(如200, 500等)"
prop=
"responseStatus"
>
-->
<!--
<el-select-->
<!-- v-model="queryParams.responseStatus"-->
<!-- placeholder="请选择响应状态(如200, 500等)"-->
<!-- clearable-->
<!-- class="!w-240px"-->
<!-- >-->
<!--
<el-option
label=
"请选择字典生成"
value=
""
/>
-->
<!--
</el-select>
-->
<!--
</el-form-item>
-->
<el-form-item
label=
"调用时间"
prop=
"callTime"
>
<el-date-picker
v-model=
"queryParams.callTime"
...
...
@@ -47,17 +56,6 @@
class=
"!w-220px"
/>
</el-form-item>
<el-form-item
label=
"创建时间"
prop=
"createTime"
>
<el-date-picker
v-model=
"queryParams.createTime"
value-format=
"YYYY-MM-DD HH:mm:ss"
type=
"daterange"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
:default-time=
"[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class=
"!w-220px"
/>
</el-form-item>
<el-form-item>
<el-button
@
click=
"handleQuery"
><Icon
icon=
"ep:search"
class=
"mr-5px"
/>
搜索
</el-button>
<el-button
@
click=
"resetQuery"
><Icon
icon=
"ep:refresh"
class=
"mr-5px"
/>
重置
</el-button>
...
...
@@ -102,11 +100,12 @@
@
selection-change=
"handleRowCheckboxChange"
>
<el-table-column
type=
"selection"
width=
"55"
/>
<el-table-column
label=
"调用日志ID"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"调用用户ID"
align=
"center"
prop=
"userId"
/>
<el-table-column
label=
"调用的API ID"
align=
"center"
prop=
"apiId"
/>
<el-table-column
label=
"接口名称"
align=
"center"
prop=
"apiEndpointName"
/>
<el-table-column
label=
"调用用户手机号"
align=
"center"
prop=
"userMobile"
/>
<el-table-column
label=
"请求方式"
align=
"center"
prop=
"method"
/>
<el-table-column
label=
"请求路径"
align=
"center"
prop=
"path"
/>
<el-table-column
label=
"请求参数"
align=
"center"
prop=
"requestParams"
/>
<el-table-column
label=
"
响应状态(如200, 500等)"
align=
"center"
prop=
"responseStatu
s"
/>
<el-table-column
label=
"
返回结果"
align=
"center"
prop=
"responseParam
s"
/>
<el-table-column
label=
"调用时间"
align=
"center"
...
...
@@ -114,14 +113,6 @@
:formatter=
"dateFormatter"
width=
"180px"
/>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
/>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
:formatter=
"dateFormatter"
width=
"180px"
/>
<el-table-column
label=
"操作"
align=
"center"
min-width=
"120px"
>
<template
#
default=
"scope"
>
<el-button
...
...
@@ -177,6 +168,8 @@ const queryParams = reactive({
pageSize
:
10
,
userId
:
undefined
,
apiId
:
undefined
,
userMobile
:
undefined
,
apiEndpointName
:
undefined
,
responseStatus
:
undefined
,
callTime
:
[],
createTime
:
[]
...
...
src/views/apihub/apiendpoint/ApiEndpointForm.vue
View file @
327c2c94
...
...
@@ -16,6 +16,15 @@
<el-form-item
label=
"请求方式"
prop=
"method"
>
<el-input
v-model=
"formData.method"
placeholder=
"请输入请求方式"
/>
</el-form-item>
<el-form-item
label=
"消费点数"
prop=
"consumptionPoints"
>
<el-input
v-model=
"formData.consumptionPoints"
placeholder=
"请输入消费点数"
type=
"number"
oninput=
"this.value = this.value.replace(/\D/g,'')"
/>
</el-form-item>
<el-form-item
label=
"关联行业应用"
>
<!-- 添加接口按钮独占一行 -->
...
...
@@ -101,6 +110,7 @@ const formData = ref({
name
:
undefined
,
path
:
undefined
,
method
:
undefined
,
consumptionPoints
:
undefined
,
industryApplications
:
[
{
title
:
'AI诗词'
,
image
:
'https://'
,
id
:
null
}
]
...
...
@@ -112,6 +122,7 @@ const formData = ref({
})
const
formRules
=
reactive
({
name
:
[{
required
:
true
,
message
:
'接口名称不能为空'
,
trigger
:
'blur'
}],
consumptionPoints
:
[{
required
:
true
,
message
:
'消耗点数不能为空'
,
trigger
:
'blur'
}],
path
:
[{
required
:
true
,
message
:
'接口路径不能为空'
,
trigger
:
'blur'
}],
method
:
[{
required
:
true
,
message
:
'请求方式: GET/POST/PUT/DELETE不能为空'
,
trigger
:
'blur'
}]
})
...
...
@@ -174,6 +185,7 @@ const resetForm = () => {
name
:
undefined
,
path
:
undefined
,
method
:
undefined
,
consumptionPoints
:
undefined
,
industryApplications
:
[
{
title
:
'AI诗词'
,
image
:
'https://'
,
id
:
null
}
]
...
...
src/views/apihub/apiendpoint/index.vue
View file @
327c2c94
...
...
@@ -140,7 +140,8 @@
<el-table-column
label=
"接口名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"接口路径"
align=
"center"
prop=
"path"
width=
"460px"
/>
<el-table-column
label=
"请求方式"
align=
"center"
prop=
"method"
/>
<!--
<el-table-column
label=
"参数定义(JSON)"
align=
"center"
prop=
"params"
/>
-->
<el-table-column
label=
"消耗点数"
align=
"center"
prop=
"consumptionPoints"
/>
<!--
<el-table-column
label=
"参数定义(JSON)"
align=
"center"
prop=
"params"
/>
-->
<!--
<el-table-column
label=
"返回结果示例"
align=
"center"
prop=
"response"
/>
-->
<!--
<el-table-column
label=
"鉴权方式,例如 API_KEY/OAUTH"
align=
"center"
prop=
"authType"
/>
-->
<!--
<el-table-column
label=
"接口级限流规则,例如 100 QPS"
align=
"center"
prop=
"rateLimit"
/>
-->
...
...
src/views/apihub/appcredential/AppCredentialForm.vue
View file @
327c2c94
...
...
@@ -8,20 +8,20 @@
v-loading=
"formLoading"
>
<el-form-item
label=
"AppId"
prop=
"appId"
>
<el-input
v-model=
"formData.appId"
readonly
/>
<el-input
v-model=
"formData.appId"
/>
</el-form-item>
<el-form-item
label=
"AppSecret"
prop=
"appSecret"
>
<el-input
v-model=
"formData.appSecret"
readonly
/>
<el-input
v-model=
"formData.appSecret"
/>
</el-form-item>
<el-form-item
label=
"用户ID"
prop=
"userId"
>
<el-input
v-model=
"formData.userId"
readonly
/>
<el-input
v-model=
"formData.userId"
/>
</el-form-item>
<el-form-item
label=
"用户手机号"
prop=
"user
Id
"
>
<el-input
v-model=
"formData.userMobile"
readonly
/>
<el-form-item
label=
"用户手机号"
prop=
"user
Mobile
"
>
<el-input
v-model=
"formData.userMobile"
/>
</el-form-item>
</el-form>
<template
#
footer
>
<!--
<el-button
@
click=
"submitForm"
type=
"primary"
:disabled=
"formLoading"
>
确 定
</el-button>
--
>
<el-button
@
click=
"submitForm"
type=
"primary"
:disabled=
"formLoading"
>
确 定
</el-button
>
<el-button
@
click=
"dialogVisible = false"
>
关闭窗口
</el-button>
</
template
>
</Dialog>
...
...
@@ -49,8 +49,7 @@ const formData = ref({
})
const
formRules
=
reactive
({
appId
:
[{
required
:
true
,
message
:
'应用ID,唯一不能为空'
,
trigger
:
'blur'
}],
appSecret
:
[{
required
:
true
,
message
:
'AES加密后的应用密钥不能为空'
,
trigger
:
'blur'
}],
userId
:
[{
required
:
true
,
message
:
'所属用户ID不能为空'
,
trigger
:
'blur'
}]
appSecret
:
[{
required
:
true
,
message
:
'密钥不能为空'
,
trigger
:
'blur'
}],
})
const
formRef
=
ref
()
// 表单 Ref
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment