"use client"; import { useState, useEffect } from "react"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { toast } from "sonner"; import { Car, Phone, Bell, Info } from "lucide-react"; export default function MoveCarDisplay() { const [plateNumber, setPlateNumber] = useState(""); const [phoneNumber, setPhoneNumber] = useState(""); const [token, setToken] = useState(""); const [uid, setUid] = useState(""); const [newEnergy, setNewEnergy] = useState(false); useEffect(() => { const urlParams = new URLSearchParams(window.location.search); setPlateNumber(urlParams.get("plateNumber") || ""); setPhoneNumber(urlParams.get("phoneNumber") || ""); setToken(urlParams.get("token") || ""); setUid(urlParams.get("uid") || ""); setNewEnergy(urlParams.get("new") === "true"); }, []); const notifyOwner = () => { const currentTime = new Date().getTime(); const lastNotifyTimeKey = "lastNotifyTime" + plateNumber; const lastNotifyTime = localStorage.getItem(lastNotifyTimeKey); const timeDifference = lastNotifyTime ? (currentTime - parseInt(lastNotifyTime)) / 1000 : 0; if (lastNotifyTime && timeDifference < 60) { toast.warning("您已发送过通知,请1分钟后再次尝试。"); return; } const promise = fetch("https://wxpusher.zjiecode.com/api/send/message", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ appToken: token, content: "您好,有人需要您挪车,请及时处理。", contentType: 1, uids: [uid], }), }) .then((response) => response.json()) .then((data) => { if (data.code === 1000) { localStorage.setItem(lastNotifyTimeKey, currentTime.toString()); return "通知已发送!"; } else { throw new Error("通知发送失败"); } }); toast.promise(promise, { loading: '正在发送通知...', success: (data) => data, error: '通知发送失败,请稍后重试', }); }; const callNumber = () => { window.location.href = "tel:" + phoneNumber; }; return (
{/* 车牌展示区域 */}
{/* 装饰性反光效果 */}
{/* 车牌边框内饰线 (仅蓝牌显示) */} {!newEnergy && (
)}
{plateNumber.slice(0, 2)} {newEnergy ? ( ) : ( )} {plateNumber.slice(2)}
{/* 新能源标志水印 (仅绿牌显示) */} {newEnergy && (
)}
{/* 车辆信息 */} 车辆信息
临时停靠
请多关照
车牌号码
{plateNumber}
联系电话
{phoneNumber}
{/* 操作按钮 */} 联系车主 {uid && token && ( )} {/* 温馨提示 */}
💡 温馨提示:请文明用车,合理停放。如需挪车,请耐心等待车主回应。
); }