sync: soul-admin 页面 | 原因: 前端页面修改

This commit is contained in:
卡若
2026-03-08 16:38:56 +08:00
parent f3778bfd48
commit 6629086487

View File

@@ -1,6 +1,5 @@
import { useState } from 'react'
import { Users, Handshake, GraduationCap, UserPlus, BarChart3, Link2, Settings } from 'lucide-react'
import { Button } from '@/components/ui/button'
import { Users, Handshake, GraduationCap, UserPlus, BarChart3, Link2 } from 'lucide-react'
import { FindPartnerTab } from './tabs/FindPartnerTab'
import { ResourceDockingTab } from './tabs/ResourceDockingTab'
import { MentorTab } from './tabs/MentorTab'
@@ -14,45 +13,30 @@ const TABS = [
{ id: 'resource', label: '资源对接', icon: Handshake },
{ id: 'mentor', label: '导师预约', icon: GraduationCap },
{ id: 'team', label: '团队招募', icon: UserPlus },
{ id: 'ckb', label: '存客宝', icon: Link2 },
] as const
type TabId = (typeof TABS)[number]['id']
export function FindPartnerPage() {
const [activeTab, setActiveTab] = useState<TabId>('stats')
const [showCKBPanel, setShowCKBPanel] = useState(false)
return (
<div className="p-8 w-full">
<div className="flex items-start justify-between mb-6">
<div>
<h2 className="text-2xl font-bold text-white flex items-center gap-2">
<Users className="w-6 h-6 text-[#38bdac]" />
</h2>
<p className="text-gray-400 mt-1">
</p>
</div>
<Button
onClick={() => setShowCKBPanel(!showCKBPanel)}
variant={showCKBPanel ? 'default' : 'outline'}
className={showCKBPanel
? 'bg-orange-500 hover:bg-orange-600 text-white'
: 'border-orange-500/50 text-orange-400 hover:bg-orange-500/10 bg-transparent'
}
>
<Link2 className="w-4 h-4 mr-2" />
<Settings className="w-3.5 h-3.5 ml-1" />
</Button>
<div className="mb-6">
<h2 className="text-2xl font-bold text-white flex items-center gap-2">
<Users className="w-6 h-6 text-[#38bdac]" />
</h2>
<p className="text-gray-400 mt-1">
</p>
</div>
{showCKBPanel && <CKBConfigPanel />}
<div className="flex flex-wrap gap-1 mb-6 bg-[#0f2137] rounded-lg p-1 border border-gray-700/50">
{TABS.map((tab) => {
const isActive = activeTab === tab.id
const isCKB = tab.id === 'ckb'
return (
<button
key={tab.id}
@@ -60,8 +44,8 @@ export function FindPartnerPage() {
onClick={() => setActiveTab(tab.id)}
className={`flex items-center gap-2 px-5 py-2.5 rounded-md text-sm font-medium transition-all ${
isActive
? 'bg-[#38bdac] text-white shadow-lg'
: 'text-gray-400 hover:text-white hover:bg-gray-700/50'
? isCKB ? 'bg-orange-500 text-white shadow-lg' : 'bg-[#38bdac] text-white shadow-lg'
: isCKB ? 'text-orange-400/70 hover:text-orange-400 hover:bg-orange-500/10' : 'text-gray-400 hover:text-white hover:bg-gray-700/50'
}`}
>
<tab.icon className="w-4 h-4" />
@@ -76,6 +60,7 @@ export function FindPartnerPage() {
{activeTab === 'resource' && <ResourceDockingTab />}
{activeTab === 'mentor' && <MentorTab />}
{activeTab === 'team' && <TeamRecruitTab />}
{activeTab === 'ckb' && <CKBConfigPanel />}
</div>
)
}