From fc034dc971c38275ba1d2510cab17afdcc92059b Mon Sep 17 00:00:00 2001
From: Eamon <17516219072@163.com>
Date: Tue, 18 Aug 2026 13:33:22 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8A=A8=E9=9D=99=E6=80=81ip?=
=?UTF-8?q?=E6=A0=87=E9=A2=98=E8=B7=B3=E8=BD=AC=E9=97=AE=E9=A2=98=20&=20?=
=?UTF-8?q?=E6=B7=BB=E5=8A=A0admin=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.env | 1 +
bun.lock | 3 +
package.json | 1 +
src/admin/clients.tsx | 14 +-
src/admin/dashboard/page.tsx | 53 +--
src/admin/funds/page.tsx | 26 +-
src/admin/httpRecharge/page.tsx | 32 ++
src/admin/orders/mock.ts | 401 ++++++++++++++++++
src/admin/orders/page.tsx | 290 +++++++++++++
src/admin/product/long.tsx | 3 -
src/admin/product/short.tsx | 3 -
src/admin/record/mock.ts | 40 ++
src/admin/record/page.tsx | 136 ++++++
src/admin/refundOrders/mock.ts | 401 ++++++++++++++++++
src/admin/refundOrders/page.tsx | 272 ++++++++++++
src/admin/resources/long.tsx | 5 +
src/admin/resources/short.tsx | 5 +
src/admin/rosorder/page.tsx | 5 +
src/api/linedata.ts | 56 ++-
src/api/product.ts | 20 +
.../composites/dialogs/editInfoDialog.tsx | 210 +++++----
src/components/data-table.tsx | 20 +-
src/components/productDropdown.tsx | 4 +-
src/components/ui/table.tsx | 8 +-
src/home/ipLine/index.tsx | 376 ++++++++--------
src/home/login/index.tsx | 393 ++++++++++-------
src/home/product/index.tsx | 77 +++-
src/home/product/productTabs.tsx | 4 +-
src/home/product/routeros.tsx | 14 +-
src/home/softDownload/index.tsx | 2 +-
src/lib/models/order.ts | 67 +++
src/lib/models/product.ts | 48 ++-
src/lib/models/record.ts | 30 ++
src/routers/index.tsx | 18 +-
vite.config.ts | 2 +-
35 files changed, 2516 insertions(+), 524 deletions(-)
create mode 100644 src/admin/httpRecharge/page.tsx
create mode 100644 src/admin/orders/mock.ts
create mode 100644 src/admin/orders/page.tsx
delete mode 100644 src/admin/product/long.tsx
delete mode 100644 src/admin/product/short.tsx
create mode 100644 src/admin/record/mock.ts
create mode 100644 src/admin/record/page.tsx
create mode 100644 src/admin/refundOrders/mock.ts
create mode 100644 src/admin/refundOrders/page.tsx
create mode 100644 src/admin/resources/long.tsx
create mode 100644 src/admin/resources/short.tsx
create mode 100644 src/admin/rosorder/page.tsx
create mode 100644 src/lib/models/order.ts
create mode 100644 src/lib/models/record.ts
diff --git a/.env b/.env
index 1ac56d4..3f21b3b 100644
--- a/.env
+++ b/.env
@@ -1,3 +1,4 @@
VITE_API_BASE_URL=
+VITE_PHP_API_BASE_URL=https://php-api.juip.com
VITE_CLIENT_ID=web
VITE_CLIENT_SECRET=web
\ No newline at end of file
diff --git a/bun.lock b/bun.lock
index 65be6f9..c395492 100644
--- a/bun.lock
+++ b/bun.lock
@@ -12,6 +12,7 @@
"@tanstack/react-table": "^8.21.3",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
+ "date-fns": "^4.4.0",
"lucide-react": "^1.17.0",
"next-themes": "^0.4.6",
"radix-ui": "^1.5.0",
@@ -547,6 +548,8 @@
"data-uri-to-buffer": ["data-uri-to-buffer@4.0.1", "https://registry.npmmirror.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", {}, "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A=="],
+ "date-fns": ["date-fns@4.4.0", "https://registry.npmmirror.com/date-fns/-/date-fns-4.4.0.tgz", {}, "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w=="],
+
"debug": ["debug@4.4.3", "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="],
"decode-named-character-reference": ["decode-named-character-reference@1.3.0", "https://registry.npmmirror.com/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", { "dependencies": { "character-entities": "^2.0.0" } }, "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q=="],
diff --git a/package.json b/package.json
index 490e9b7..3f0757b 100644
--- a/package.json
+++ b/package.json
@@ -16,6 +16,7 @@
"@tanstack/react-table": "^8.21.3",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
+ "date-fns": "^4.4.0",
"lucide-react": "^1.17.0",
"next-themes": "^0.4.6",
"radix-ui": "^1.5.0",
diff --git a/src/admin/clients.tsx b/src/admin/clients.tsx
index 29838fd..0d54c36 100644
--- a/src/admin/clients.tsx
+++ b/src/admin/clients.tsx
@@ -156,13 +156,13 @@ export function Navbar() {
expand={navbar}
/>
}
label="订单管理"
expand={navbar}
/>
}
label="退货管理"
expand={navbar}
@@ -180,31 +180,31 @@ export function Navbar() {
expand={navbar}
/>
}
label="充值记录"
expand={navbar}
/>
}
label="短效套餐"
expand={navbar}
/>
}
label="长效管理"
expand={navbar}
/>
}
label="软路由"
expand={navbar}
/>
}
label="使用记录"
expand={navbar}
diff --git a/src/admin/dashboard/page.tsx b/src/admin/dashboard/page.tsx
index 3f589d4..6af13a1 100644
--- a/src/admin/dashboard/page.tsx
+++ b/src/admin/dashboard/page.tsx
@@ -1,5 +1,5 @@
import { useState } from "react"
-import { EditInfoDialog } from "@/components/composites/dialogs/editInfoDialog"
+import { EditInfoDialog, type EditInfoValues } from "@/components/composites/dialogs/editInfoDialog"
import DataTable from "@/components/data-table"
import Page from "@/components/page"
import { Button } from "@/components/ui/button"
@@ -90,7 +90,7 @@ export default function DashboardPage() {
yearConsumption: 2365,
}
const [editDialogOpen, setEditDialogOpen] = useState(false)
- const handleSaveInfo = (data: any) => {
+ const handleSaveInfo = (data: EditInfoValues) => {
console.log("保存的信息:", data)
// 这里调 API 保存数据
}
@@ -300,11 +300,14 @@ export default function DashboardPage() {
{/* 账号信息 */}
-
+
账号信息
-
-
-
{accountInfo.phone}
+
+ {/* 头像/二维码区域 */}
+
+
+ {accountInfo.phone}
+
-
-
-
-
密码
-
+ {/* 信息列表 */}
+
+
+ 密码
+
********
-
-
QQ
-
+
+ QQ
+
{accountInfo.qq || "未绑定"}
-
-
微信号
-
+
+ 微信号
+
{accountInfo.wechat || "未绑定"}
-
-
淘宝会员
-
+
+ 淘宝
+
{accountInfo.taobao || "未绑定"}
-
-
邮箱
+
+ 邮箱
{accountInfo.email || "未绑定"}
-
+
+