chore: clean up placeholder comments and over-engineering
This commit is contained in:
+13
-16
@@ -75,18 +75,15 @@ function StatusBadge({ status }: { status: Player["status"] }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function PlayerCard({ player }: { player: Player }) {
|
function PlayerCard({ player }: { player: Player }) {
|
||||||
const minPrice = useMemo(() => {
|
const minPrice =
|
||||||
if (!player.services || player.services.length === 0) return 0
|
!player.services || player.services.length === 0
|
||||||
return Math.min(...player.services.map((s) => s.price))
|
? 0
|
||||||
}, [player.services])
|
: Math.min(...player.services.map((s) => s.price))
|
||||||
|
|
||||||
const unit = useMemo(() => {
|
const unit =
|
||||||
if (!player.services || player.services.length === 0) return "局"
|
!player.services || player.services.length === 0
|
||||||
const cheapestService = player.services.reduce((prev, curr) =>
|
? "局"
|
||||||
prev.price < curr.price ? prev : curr,
|
: player.services.reduce((prev, curr) => (prev.price < curr.price ? prev : curr)).unit
|
||||||
)
|
|
||||||
return cheapestService.unit
|
|
||||||
}, [player.services])
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Link href={`/player/${player.id}`} className="block h-full">
|
<Link href={`/player/${player.id}`} className="block h-full">
|
||||||
@@ -333,7 +330,7 @@ function SearchPageContent() {
|
|||||||
|
|
||||||
const minP = priceRange.min ? Number(priceRange.min) : 0
|
const minP = priceRange.min ? Number(priceRange.min) : 0
|
||||||
const maxP = priceRange.max ? Number(priceRange.max) : Infinity
|
const maxP = priceRange.max ? Number(priceRange.max) : Infinity
|
||||||
const playerMinPrice = Math.min(...(player.services?.map((s) => s.price) || [0]))
|
const playerMinPrice = Math.min(...player.services.map((s) => s.price))
|
||||||
|
|
||||||
if (playerMinPrice < minP) return false
|
if (playerMinPrice < minP) return false
|
||||||
if (priceRange.max && playerMinPrice > maxP) return false
|
if (priceRange.max && playerMinPrice > maxP) return false
|
||||||
@@ -352,13 +349,13 @@ function SearchPageContent() {
|
|||||||
case "rating":
|
case "rating":
|
||||||
return b.rating - a.rating
|
return b.rating - a.rating
|
||||||
case "price_asc": {
|
case "price_asc": {
|
||||||
const priceA = Math.min(...(a.services?.map((s) => s.price) || [0]))
|
const priceA = Math.min(...a.services.map((s) => s.price))
|
||||||
const priceB = Math.min(...(b.services?.map((s) => s.price) || [0]))
|
const priceB = Math.min(...b.services.map((s) => s.price))
|
||||||
return priceA - priceB
|
return priceA - priceB
|
||||||
}
|
}
|
||||||
case "price_desc": {
|
case "price_desc": {
|
||||||
const priceA = Math.min(...(a.services?.map((s) => s.price) || [0]))
|
const priceA = Math.min(...a.services.map((s) => s.price))
|
||||||
const priceB = Math.min(...(b.services?.map((s) => s.price) || [0]))
|
const priceB = Math.min(...b.services.map((s) => s.price))
|
||||||
return priceB - priceA
|
return priceB - priceA
|
||||||
}
|
}
|
||||||
case "orders":
|
case "orders":
|
||||||
|
|||||||
@@ -104,14 +104,16 @@ export default function OrderListPage() {
|
|||||||
{order.status === "in_progress" &&
|
{order.status === "in_progress" &&
|
||||||
(() => {
|
(() => {
|
||||||
const session = mockChatSessions.find((s) => s.orderId === order.id)
|
const session = mockChatSessions.find((s) => s.orderId === order.id)
|
||||||
return session ? (
|
return (
|
||||||
<Button variant="outline" size="sm" asChild>
|
session && (
|
||||||
<Link href={`/chat/${session.id}`}>
|
<Button variant="outline" size="sm" asChild>
|
||||||
<MessageSquare className="mr-1 h-3.5 w-3.5" />
|
<Link href={`/chat/${session.id}`}>
|
||||||
聊天
|
<MessageSquare className="mr-1 h-3.5 w-3.5" />
|
||||||
</Link>
|
聊天
|
||||||
</Button>
|
</Link>
|
||||||
) : null
|
</Button>
|
||||||
|
)
|
||||||
|
)
|
||||||
})()}
|
})()}
|
||||||
{order.status === "completed" && (
|
{order.status === "completed" && (
|
||||||
<Button variant="outline" size="sm">
|
<Button variant="outline" size="sm">
|
||||||
|
|||||||
+1
-3
@@ -1,7 +1,5 @@
|
|||||||
import type { NextConfig } from "next"
|
import type { NextConfig } from "next"
|
||||||
|
|
||||||
const nextConfig: NextConfig = {
|
const nextConfig: NextConfig = {}
|
||||||
/* config options here */
|
|
||||||
}
|
|
||||||
|
|
||||||
export default nextConfig
|
export default nextConfig
|
||||||
|
|||||||
@@ -6,10 +6,9 @@ type PlayerStatus = Player["status"]
|
|||||||
interface PlayerStatusState {
|
interface PlayerStatusState {
|
||||||
statuses: Record<string, PlayerStatus>
|
statuses: Record<string, PlayerStatus>
|
||||||
setStatus: (playerId: string, status: PlayerStatus) => void
|
setStatus: (playerId: string, status: PlayerStatus) => void
|
||||||
getStatus: (playerId: string) => PlayerStatus | undefined
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export const usePlayerStatusStore = create<PlayerStatusState>((set, get) => ({
|
export const usePlayerStatusStore = create<PlayerStatusState>((set) => ({
|
||||||
statuses: {
|
statuses: {
|
||||||
u2: "available",
|
u2: "available",
|
||||||
u4: "busy",
|
u4: "busy",
|
||||||
@@ -19,5 +18,4 @@ export const usePlayerStatusStore = create<PlayerStatusState>((set, get) => ({
|
|||||||
set((state) => ({
|
set((state) => ({
|
||||||
statuses: { ...state.statuses, [playerId]: status },
|
statuses: { ...state.statuses, [playerId]: status },
|
||||||
})),
|
})),
|
||||||
getStatus: (playerId) => get().statuses[playerId],
|
|
||||||
}))
|
}))
|
||||||
|
|||||||
Reference in New Issue
Block a user