修正用戶管理查詢失敗問題
This commit is contained in:
@@ -54,8 +54,8 @@ export async function GET(request: NextRequest) {
|
|||||||
GROUP BY judge_id
|
GROUP BY judge_id
|
||||||
) review_stats ON u.id = review_stats.judge_id
|
) review_stats ON u.id = review_stats.judge_id
|
||||||
ORDER BY u.created_at DESC
|
ORDER BY u.created_at DESC
|
||||||
LIMIT ? OFFSET ?
|
LIMIT ${limit} OFFSET ${offset}
|
||||||
`, [limit, offset]);
|
`);
|
||||||
|
|
||||||
// 分頁資訊
|
// 分頁資訊
|
||||||
const totalPages = Math.ceil(total / limit);
|
const totalPages = Math.ceil(total / limit);
|
||||||
|
@@ -171,7 +171,7 @@ export function AdminLayout({ children, currentPage, onPageChange }: AdminLayout
|
|||||||
setShowLogoutDialog(false)
|
setShowLogoutDialog(false)
|
||||||
|
|
||||||
// Check if this is a popup/new tab opened from main site
|
// Check if this is a popup/new tab opened from main site
|
||||||
if (window.opener && !window.opener.closed) {
|
if (typeof window !== 'undefined' && window.opener && !window.opener.closed) {
|
||||||
// If opened from another window, close this tab and focus parent
|
// If opened from another window, close this tab and focus parent
|
||||||
window.opener.focus()
|
window.opener.focus()
|
||||||
window.close()
|
window.close()
|
||||||
@@ -214,7 +214,7 @@ export function AdminLayout({ children, currentPage, onPageChange }: AdminLayout
|
|||||||
<Button onClick={() => (window.location.href = "/")} variant="outline">
|
<Button onClick={() => (window.location.href = "/")} variant="outline">
|
||||||
返回首頁
|
返回首頁
|
||||||
</Button>
|
</Button>
|
||||||
{window.opener && !window.opener.closed && (
|
{typeof window !== 'undefined' && window.opener && !window.opener.closed && (
|
||||||
<Button
|
<Button
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
window.opener.focus()
|
window.opener.focus()
|
||||||
|
@@ -85,7 +85,9 @@ export function UserManagement() {
|
|||||||
const usersData = await usersResponse.json()
|
const usersData = await usersResponse.json()
|
||||||
setUsers(usersData.users || [])
|
setUsers(usersData.users || [])
|
||||||
} else {
|
} else {
|
||||||
console.error('獲取用戶列表失敗')
|
const errorData = await usersResponse.json().catch(() => ({}))
|
||||||
|
console.error('獲取用戶列表失敗:', errorData.error || usersResponse.statusText)
|
||||||
|
setError(errorData.error || '獲取用戶列表失敗')
|
||||||
}
|
}
|
||||||
|
|
||||||
// 獲取統計資料
|
// 獲取統計資料
|
||||||
@@ -99,7 +101,8 @@ export function UserManagement() {
|
|||||||
const statsData = await statsResponse.json()
|
const statsData = await statsResponse.json()
|
||||||
setStats(statsData)
|
setStats(statsData)
|
||||||
} else {
|
} else {
|
||||||
console.error('獲取統計資料失敗')
|
const errorData = await statsResponse.json().catch(() => ({}))
|
||||||
|
console.error('獲取統計資料失敗:', errorData.error || statsResponse.statusText)
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('載入資料失敗:', error)
|
console.error('載入資料失敗:', error)
|
||||||
|
Reference in New Issue
Block a user