refactor: 移除佣金比例字段,将developer统一为admin

This commit is contained in:
2026-05-01 08:08:11 +08:00
parent c5d1dc4b04
commit 4ed00f29e2
235 changed files with 9082 additions and 8952 deletions
@@ -35,7 +35,7 @@ const displayValue = computed(() => {
return ''
})
const buttonTitle = computed(() => props.title || t('developer.cards.timeRange'))
const buttonTitle = computed(() => props.title || t('admin.cards.timeRange'))
function setQuickRange(range: 'today' | 'week' | 'month') {
const now = new Date()
@@ -83,19 +83,19 @@ function clearFilter() {
<UiPopoverContent class="w-auto p-4" align="start">
<div class="space-y-3">
<div class="text-sm font-medium">
{{ t('developer.cards.selectTimeRange') }}
{{ t('admin.cards.selectTimeRange') }}
</div>
<div class="flex items-center gap-2">
<DateTimePicker
:model-value="startModelValue"
:placeholder="t('developer.cards.startTime')"
:placeholder="t('admin.cards.startTime')"
class="w-[180px]"
@update:model-value="emit('update:startModelValue', $event)"
/>
<span class="text-muted-foreground text-sm">~</span>
<DateTimePicker
:model-value="endModelValue"
:placeholder="t('developer.cards.endTime')"
:placeholder="t('admin.cards.endTime')"
class="w-[180px]"
@update:model-value="emit('update:endModelValue', $event)"
/>
@@ -103,17 +103,17 @@ function clearFilter() {
<div class="flex items-center justify-between">
<div class="flex items-center gap-1">
<UiButton variant="ghost" size="sm" class="h-7 text-xs" @click="setQuickRange('today')">
{{ t('developer.cards.today') }}
{{ t('admin.cards.today') }}
</UiButton>
<UiButton variant="ghost" size="sm" class="h-7 text-xs" @click="setQuickRange('week')">
{{ t('developer.cards.last7Days') }}
{{ t('admin.cards.last7Days') }}
</UiButton>
<UiButton variant="ghost" size="sm" class="h-7 text-xs" @click="setQuickRange('month')">
{{ t('developer.cards.thisMonth') }}
{{ t('admin.cards.thisMonth') }}
</UiButton>
</div>
<UiButton variant="ghost" size="sm" class="h-7 text-xs" @click="clearFilter">
{{ t('developer.cards.reset') }}
{{ t('admin.cards.reset') }}
</UiButton>
</div>
</div>
@@ -70,7 +70,7 @@ const filterFunction = (list: DataTableFacetedFilter['options'], term: string) =
v-for="option in options"
:key="option.value"
:value="option"
@select="(_e) => {
@select="(_e: any) => {
const isSelected = selectedValues.has(option.value)
if (isSelected) {
selectedValues.delete(option.value)
@@ -31,7 +31,7 @@ onMounted(() => {
const teams = [
{
name: '开发者后台',
name: '管理后台',
logo: Code,
plan: 'Developer',
},
@@ -43,42 +43,42 @@ const navMain = [
items: [
{
title: '控制台',
url: '/developer',
url: '/admin',
icon: Gauge,
},
{
title: '应用管理',
url: '/developer/applications',
url: '/admin/applications',
icon: Boxes,
},
{
title: '卡类管理',
url: '/developer/card-types',
url: '/admin/card-types',
icon: Hash,
},
{
title: '卡密管理',
url: '/developer/cards',
url: '/admin/cards',
icon: Key,
},
{
title: '公告管理',
url: '/developer/announcements',
url: '/admin/announcements',
icon: Megaphone,
},
{
title: '版本管理',
url: '/developer/versions',
url: '/admin/versions',
icon: GitBranch,
},
{
title: '用户管理',
url: '/developer/users',
url: '/admin/users',
icon: Users,
},
{
title: '代理管理',
url: '/developer/agents',
url: '/admin/agents',
icon: Network,
},
],
@@ -88,17 +88,17 @@ const navMain = [
items: [
{
title: '财务管理',
url: '/developer/finance',
url: '/admin/finance',
icon: DollarSign,
},
{
title: '日志记录',
url: '/developer/logs',
url: '/admin/logs',
icon: ScrollText,
},
{
title: '工单系统',
url: '/developer/tickets',
url: '/admin/tickets',
icon: MessageSquare,
},
],
@@ -108,27 +108,27 @@ const navMain = [
items: [
{
title: '云端常量',
url: '/developer/cloud-constants',
url: '/admin/cloud-constants',
icon: FileLock,
},
{
title: '云端变量',
url: '/developer/cloud-variables',
url: '/admin/cloud-variables',
icon: Variable,
},
{
title: '云端函数',
url: '/developer/cloud-function',
url: '/admin/cloud-function',
icon: Code,
},
{
title: '风控管理',
url: '/developer/risk-control',
url: '/admin/risk-control',
icon: Shield,
},
{
title: '扩展配置',
url: '/developer/extension',
url: '/admin/extension',
icon: Plug,
},
],
@@ -139,11 +139,11 @@ function handleLogout() {
<UiDropdownMenuSeparator />
<UiDropdownMenuGroup>
<UiDropdownMenuItem @click="router.push('/developer/profile')">
<UiDropdownMenuItem @click="router.push('/admin/profile')">
<UserRoundCog class="mr-2 h-4 w-4" />
个人中心
</UiDropdownMenuItem>
<UiDropdownMenuItem @click="router.push('/developer/tickets')">
<UiDropdownMenuItem @click="router.push('/admin/tickets')">
<Icon icon="lucide:ticket" class="mr-2 h-4 w-4" />
工单系统
</UiDropdownMenuItem>
@@ -66,34 +66,34 @@ const developerMenus = computed(() => ({
main: {
title: t('nav.mainFeatures'),
items: [
{ title: t('nav.console'), url: '/developer', icon: 'lucide:gauge' },
{ title: t('nav.applications'), url: '/developer/applications', icon: 'lucide:boxes' },
{ title: t('nav.cardTypes'), url: '/developer/card-types', icon: 'lucide:hash' },
{ title: t('nav.cards'), url: '/developer/cards', icon: 'lucide:key' },
{ title: t('nav.announcements'), url: '/developer/announcements', icon: 'lucide:megaphone' },
{ title: t('nav.versions'), url: '/developer/versions', icon: 'lucide:git-branch' },
{ title: t('nav.users'), url: '/developer/users', icon: 'lucide:users' },
{ title: t('nav.devices'), url: '/developer/devices', icon: 'lucide:monitor' },
{ title: t('nav.sessions'), url: '/developer/sessions', icon: 'lucide:wifi' },
{ title: t('nav.agentApps'), url: '/developer/agent-apps', icon: 'lucide:share-2' },
{ title: t('nav.console'), url: '/admin', icon: 'lucide:gauge' },
{ title: t('nav.applications'), url: '/admin/applications', icon: 'lucide:boxes' },
{ title: t('nav.cardTypes'), url: '/admin/card-types', icon: 'lucide:hash' },
{ title: t('nav.cards'), url: '/admin/cards', icon: 'lucide:key' },
{ title: t('nav.announcements'), url: '/admin/announcements', icon: 'lucide:megaphone' },
{ title: t('nav.versions'), url: '/admin/versions', icon: 'lucide:git-branch' },
{ title: t('nav.users'), url: '/admin/users', icon: 'lucide:users' },
{ title: t('nav.devices'), url: '/admin/devices', icon: 'lucide:monitor' },
{ title: t('nav.sessions'), url: '/admin/sessions', icon: 'lucide:wifi' },
{ title: t('nav.agentApps'), url: '/admin/agent-apps', icon: 'lucide:share-2' },
],
},
business: {
title: t('nav.businessManagement'),
items: [
{ title: t('nav.finance'), url: '/developer/finance', icon: 'lucide:dollar-sign' },
{ title: t('nav.logs'), url: '/developer/logs', icon: 'lucide:scroll-text' },
{ title: t('nav.tickets'), url: '/developer/tickets', icon: 'lucide:message-square' },
{ title: t('nav.finance'), url: '/admin/finance', icon: 'lucide:dollar-sign' },
{ title: t('nav.logs'), url: '/admin/logs', icon: 'lucide:scroll-text' },
{ title: t('nav.tickets'), url: '/admin/tickets', icon: 'lucide:message-square' },
],
},
advanced: {
title: t('nav.advancedFeatures'),
items: [
{ title: t('nav.cloudConstants'), url: '/developer/cloud-constants', icon: 'lucide:file-lock' },
{ title: t('nav.cloudVariables'), url: '/developer/cloud-variables', icon: 'lucide:variable' },
{ title: t('nav.cloudFunction'), url: '/developer/cloud-function', icon: 'lucide:code' },
{ title: t('nav.riskControl'), url: '/developer/risk-control', icon: 'lucide:shield' },
{ title: t('nav.extension'), url: '/developer/extension', icon: 'lucide:plug' },
{ title: t('nav.cloudConstants'), url: '/admin/cloud-constants', icon: 'lucide:file-lock' },
{ title: t('nav.cloudVariables'), url: '/admin/cloud-variables', icon: 'lucide:variable' },
{ title: t('nav.cloudFunction'), url: '/admin/cloud-function', icon: 'lucide:code' },
{ title: t('nav.riskControl'), url: '/admin/risk-control', icon: 'lucide:shield' },
{ title: t('nav.extension'), url: '/admin/extension', icon: 'lucide:plug' },
],
},
}))
@@ -334,7 +334,7 @@ watch(route, () => {
<Icon icon="lucide:user" class="mr-2 h-4 w-4" />
<span>{{ t('nav.profile') }}</span>
</UiDropdownMenuItem>
<UiDropdownMenuItem v-if="currentUser?.role === 'admin'" @click="router.push('/developer')">
<UiDropdownMenuItem v-if="currentUser?.role === 'admin'" @click="router.push('/admin')">
<Icon icon="lucide:layout-dashboard" class="mr-2 h-4 w-4" />
<span>{{ t('nav.developerDashboard') }}</span>
</UiDropdownMenuItem>