feat: implement Cunkebao API integration

Create API route and update match page for recruitment, resource linkage, and mentor consultant features

#VERCEL_SKIP

Co-authored-by: null <4804959+fnvtk@users.noreply.github.com>
This commit is contained in:
v0
2026-01-14 07:46:30 +00:00
parent 6afb9a143a
commit e7008a8ed8
4 changed files with 365 additions and 91 deletions

View File

@@ -2,7 +2,17 @@
import Link from "next/link"
import { usePathname } from "next/navigation"
import { Home, List, Sparkles, User } from "lucide-react"
import { Home, List, User } from "lucide-react"
function PlanetIcon({ className }: { className?: string }) {
return (
<svg className={className} viewBox="0 0 24 24" fill="currentColor">
<circle cx="12" cy="12" r="8" fill="currentColor" opacity="0.9" />
<ellipse cx="12" cy="12" rx="11" ry="4" fill="none" stroke="currentColor" strokeWidth="1.5" opacity="0.6" />
<circle cx="9" cy="10" r="1.5" fill="white" opacity="0.4" />
</svg>
)
}
export function BottomNav() {
const pathname = usePathname()
@@ -20,7 +30,7 @@ export function BottomNav() {
const navItems = [
{ href: "/", icon: Home, label: "首页" },
{ href: "/chapters", icon: List, label: "目录" },
{ href: "/match", icon: Sparkles, label: "匹配", isCenter: true },
{ href: "/match", icon: PlanetIcon, label: "匹配", isCenter: true },
{ href: "/my", icon: User, label: "我的" },
]
@@ -32,7 +42,7 @@ export function BottomNav() {
const isActive = pathname === item.href
const Icon = item.icon
// 中间的匹配按钮特殊处理
// 中间的匹配按钮特殊处理 - 使用小星球图标
if (item.isCenter) {
return (
<Link key={index} href={item.href} className="flex flex-col items-center py-2 px-6 -mt-4">
@@ -43,7 +53,7 @@ export function BottomNav() {
: "bg-gradient-to-br from-[#00CED1] to-[#20B2AA] shadow-[#00CED1]/30"
}`}
>
<Icon className="w-6 h-6 text-white" />
<Icon className="w-7 h-7 text-white" />
</div>
<span className={`text-xs mt-1 ${isActive ? "text-[#00CED1] font-medium" : "text-gray-500"}`}>
{item.label}