diff --git a/frontend/components.d.ts b/frontend/components.d.ts index 964e87b..5a58502 100644 --- a/frontend/components.d.ts +++ b/frontend/components.d.ts @@ -43,6 +43,8 @@ declare module 'vue' { ElSwitch: typeof import('element-plus/es')['ElSwitch'] ElTable: typeof import('element-plus/es')['ElTable'] ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] + ElTabPane: typeof import('element-plus/es')['ElTabPane'] + ElTabs: typeof import('element-plus/es')['ElTabs'] ElTag: typeof import('element-plus/es')['ElTag'] ElTimePicker: typeof import('element-plus/es')['ElTimePicker'] MobileBottomNav: typeof import('./src/components/MobileBottomNav.vue')['default'] diff --git a/frontend/src/layouts/AppLayout.vue b/frontend/src/layouts/AppLayout.vue index 761da2d..942e6ca 100644 --- a/frontend/src/layouts/AppLayout.vue +++ b/frontend/src/layouts/AppLayout.vue @@ -6,14 +6,19 @@ import { ArrowDown, ChatDotRound, CirclePlus, + Coin, DocumentChecked, EditPen, + Finished, House, Search, Service, + Shop, SwitchButton, Tickets, UserFilled, + Van, + VideoPlay, Wallet, } from "@element-plus/icons-vue"; import { ensureSupportChat } from "@/api/chats"; @@ -28,6 +33,17 @@ const navItems = [ { label: "消息", to: "/messages", icon: ChatDotRound }, { label: "钱包", to: "/wallet", icon: Wallet }, ]; +const buyerServiceItems = [ + { label: "待支付", icon: Coin, to: { path: "/orders", query: { tab: "pending_payment" } } }, + { label: "待交接", icon: Van, to: { path: "/orders", query: { tab: "pending_handoff" } } }, + { label: "使用中", icon: VideoPlay, to: { path: "/orders", query: { tab: "renting" } } }, + { label: "已完成", icon: Finished, to: { path: "/orders", query: { tab: "completed" } } }, +]; +const sellerServiceItems = [ + { label: "发布商品", icon: CirclePlus, to: "/seller/listings/create" }, + { label: "我的商品", icon: Shop, to: "/seller/listings" }, + { label: "提现/账单", icon: Wallet, to: "/wallet" }, +]; const showUserDropdown = ref(false); const supportLoading = ref(false); @@ -187,6 +203,51 @@ async function handleSupportClick() { {{ realnameBadge.text }} + + + + + +