Merge pull request 'main' (#112) from main into prod

Reviewed-on: #112
This commit is contained in:
charles 2026-05-25 16:43:31 +08:00
commit c857194f48
3 changed files with 40 additions and 34 deletions

View File

@ -112,4 +112,13 @@ export const reqModelExperienceDeleteHistory = (params = {}) => {
method: 'get',
params
})
}
// token用量查询
export const reqTokenUsage = (params = {}) => {
return request({
url: '/cntoai/model_usage_user_report.dspy',
method: 'post',
params
})
}

View File

@ -129,7 +129,7 @@
<div class="two-btn">
<span class="forgot-password" @click="forgotPasswordVisible = true">忘记密码</span>
<span :loading="loading" type="primary" class="go-register"
style="width: 127px; margin-bottom: 30px; margin-left: 0px" @click.native.prevent="handleRegister"
@click.native.prevent="handleRegister"
@click="handleRegister">
没有账号<span class="go-register-btn">去注册</span>
</span>
@ -1018,8 +1018,7 @@ $dark_gray: #889aa4;
/* 统一表单项目样式 + 边距 */
::v-deep .el-form-item {
margin-bottom: 15px !important;
/* 给错误提示预留空间 */
margin-bottom: 30px !important;
}
/* 统一输入框外框 */
@ -1103,7 +1102,7 @@ $dark_gray: #889aa4;
height: 42px;
line-height: 42px;
font-size: 16px;
margin-top: 0 !important;
margin-top: 4px !important;
margin-bottom: 12px !important;
}
@ -1117,10 +1116,14 @@ $dark_gray: #889aa4;
}
.forgot-password {
margin-bottom: 12px;
display: inline-flex;
align-items: center;
height: 22px;
margin-bottom: 0;
color: #409eff;
cursor: pointer;
font-size: 14px;
line-height: 22px;
&:hover {
text-decoration: underline;
@ -1128,8 +1131,12 @@ $dark_gray: #889aa4;
}
.go-register {
display: inline-flex;
align-items: center;
height: 22px;
font-size: 14px;
color: #333;
line-height: 22px;
.go-register-btn {
color: #409eff;

View File

@ -7,7 +7,7 @@
<span class="title-icon">
<i class="el-icon-data-line"></i>
</span>
<h2>Token用量</h2>
<h2>Token用量</h2>
</div>
<p>查看模型调用 Token 消耗调用次数和费用趋势</p>
</div>
@ -53,6 +53,8 @@
</template>
<script>
import { reqTokenUsage } from '@/api/model/model'
export default {
name: 'TokenUsage',
data() {
@ -65,36 +67,24 @@ export default {
{ label: '活跃模型', value: '8', desc: '最近 7 天有调用', type: 'purple' }
],
usageList: [
{
modelName: 'DeepSeek-V4',
calls: 1260,
inputTokens: '420,000',
outputTokens: '318,000',
totalTokens: '738,000',
cost: '¥ 73.80',
updatedAt: '2026-05-25 10:00:00'
},
{
modelName: '通义千问-Plus',
calls: 856,
inputTokens: '210,400',
outputTokens: '156,000',
totalTokens: '366,400',
cost: '¥ 38.20',
updatedAt: '2026-05-25 09:42:16'
},
{
modelName: '腾讯混元-Pro',
calls: 342,
inputTokens: '102,000',
outputTokens: '80,000',
totalTokens: '182,000',
cost: '¥ 16.64',
updatedAt: '2026-05-25 09:18:31'
}
]
}
}
},
created() {
this.getTokenList()
},
methods: {
getCurrentUserId() {
return sessionStorage.getItem('userId') || localStorage.getItem('userId') || ''
},
async getTokenList() {
const userid = this.getCurrentUserId()
const res = await reqTokenUsage({ userid:userid })
console.log('token用量',res);
}
}
}
</script>