fix: 尊享明细表格优化

This commit is contained in:
Gsh
2025-11-16 23:00:19 +08:00
parent 3c5e575e9b
commit 19f0d05a69
2 changed files with 10 additions and 19 deletions

View File

@@ -2,22 +2,17 @@
<script setup lang="ts"> <script setup lang="ts">
import type { GetSessionListVO } from '@/api/model/types'; import type { GetSessionListVO } from '@/api/model/types';
import { Lock } from '@element-plus/icons-vue'; import { Lock } from '@element-plus/icons-vue';
import { useRouter } from 'vue-router';
import Popover from '@/components/Popover/index.vue'; import Popover from '@/components/Popover/index.vue';
import SvgIcon from '@/components/SvgIcon/index.vue'; import SvgIcon from '@/components/SvgIcon/index.vue';
import { useUserStore } from '@/stores';
import { useModelStore } from '@/stores/modules/model'; import { useModelStore } from '@/stores/modules/model';
import { showProductPackage } from '@/utils/product-package.ts'; import { showProductPackage } from '@/utils/product-package.ts';
import { isUserVip } from '@/utils/user'; import { isUserVip } from '@/utils/user';
const router = useRouter();
const userStore = useUserStore();
const modelStore = useModelStore(); const modelStore = useModelStore();
// 检查模型是否可用 // 检查模型是否可用
function isModelAvailable(item: GetSessionListVO) { function isModelAvailable(item: GetSessionListVO) {
return isUserVip() || item.modelId?.includes('DeepSeek-R1-0528') || userStore.userInfo?.user?.userName === 'cc'; return isUserVip() || item.modelId?.includes('DeepSeek-R1-0528');
} }
onMounted(async () => { onMounted(async () => {
@@ -88,11 +83,6 @@ function handleModelClick(item: GetSessionListVO) {
) )
.then(() => { .then(() => {
showProductPackage(); showProductPackage();
// router.push({
// name: 'products', // 使用命名路由
// query: { from: isUserVip() ? 'vip' : 'user' }, // 可选:添加来源标识
// });
}) })
.catch(() => { .catch(() => {
// 点击右上角关闭或“关闭”按钮,不执行任何操作 // 点击右上角关闭或“关闭”按钮,不执行任何操作

View File

@@ -303,9 +303,10 @@ onMounted(() => {
stripe stripe
class="usage-table" class="usage-table"
empty-text="暂无数据" empty-text="暂无数据"
border
@sort-change="handleSortChange" @sort-change="handleSortChange"
> >
<el-table-column prop="packageName" label="包名称" min-width="200" sortable="custom" show-overflow-tooltip align="center" header-align="center" resizable> <el-table-column prop="packageName" label="包名称" min-width="200" sortable show-overflow-tooltip align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div class="package-name-cell"> <div class="package-name-cell">
<el-icon class="package-icon" color="#409eff"> <el-icon class="package-icon" color="#409eff">
@@ -316,7 +317,7 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="总额度" min-width="130" prop="totalTokens" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="总额度" min-width="130" prop="totalTokens" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div class="token-cell"> <div class="token-cell">
<span class="token-value">{{ formatNumber(row.totalTokens) }}</span> <span class="token-value">{{ formatNumber(row.totalTokens) }}</span>
@@ -325,7 +326,7 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="已使用" min-width="130" prop="usedTokens" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="已使用" min-width="130" prop="usedTokens" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div class="token-cell used"> <div class="token-cell used">
<span class="token-value">{{ formatNumber(row.usedTokens) }}</span> <span class="token-value">{{ formatNumber(row.usedTokens) }}</span>
@@ -334,7 +335,7 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="剩余" min-width="130" prop="remainingTokens" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="剩余" min-width="130" prop="remainingTokens" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div class="token-cell remaining"> <div class="token-cell remaining">
<span <span
@@ -366,13 +367,13 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="购买金额" min-width="110" prop="purchaseAmount" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="购买金额" min-width="110" prop="purchaseAmount" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<span class="amount-cell">¥{{ row.purchaseAmount.toFixed(2) }}</span> <span class="amount-cell">¥{{ row.purchaseAmount.toFixed(2) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="状态" min-width="90" prop="isActive" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="状态" min-width="90" prop="isActive" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<el-tag :type="row.isActive ? 'success' : 'info'" size="small" effect="dark"> <el-tag :type="row.isActive ? 'success' : 'info'" size="small" effect="dark">
{{ row.isActive ? '激活' : '未激活' }} {{ row.isActive ? '激活' : '未激活' }}
@@ -380,7 +381,7 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间" min-width="170" prop="creationTime" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="创建时间" min-width="170" prop="creationTime" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div v-if="row.creationTime" class="creation-cell"> <div v-if="row.creationTime" class="creation-cell">
<el-icon class="creation-icon"> <el-icon class="creation-icon">
@@ -392,7 +393,7 @@ onMounted(() => {
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="到期时间" min-width="170" prop="expireDateTime" sortable="custom" align="center" header-align="center" resizable> <el-table-column label="到期时间" min-width="170" prop="expireDateTime" sortable align="center" header-align="center" resizable>
<template #default="{ row }"> <template #default="{ row }">
<div v-if="row.expireDateTime" class="expire-cell"> <div v-if="row.expireDateTime" class="expire-cell">
<el-icon class="expire-icon"> <el-icon class="expire-icon">