Initial commit
This commit is contained in:
27
app/api/admin/users/[id]/route.ts
Normal file
27
app/api/admin/users/[id]/route.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { type NextRequest, NextResponse } from "next/server"
|
||||
import { executeQuery } from "@/lib/database"
|
||||
|
||||
export async function DELETE(request: NextRequest, { params }: { params: { id: string } }) {
|
||||
try {
|
||||
const nationalId = params.id
|
||||
|
||||
// Check if user exists
|
||||
const users = (await executeQuery("SELECT national_id FROM users WHERE national_id = ?", [nationalId])) as any[]
|
||||
|
||||
if (users.length === 0) {
|
||||
return NextResponse.json({ error: "משתמש לא נמצא" }, { status: 404 })
|
||||
}
|
||||
|
||||
// Delete user
|
||||
await executeQuery(
|
||||
"DELETE FROM admin_actions WHERE admin_id = ? OR target_user_id = ?",
|
||||
[nationalId, nationalId]
|
||||
);
|
||||
await executeQuery("DELETE FROM users WHERE national_id = ?", [nationalId])
|
||||
|
||||
return NextResponse.json({ success: true })
|
||||
} catch (error) {
|
||||
console.error("Delete user error:", error)
|
||||
return NextResponse.json({ error: "שגיאה במחיקת משתמש" }, { status: 500 })
|
||||
}
|
||||
}
|
||||
27
app/api/admin/users/route.ts
Normal file
27
app/api/admin/users/route.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { NextResponse } from "next/server"
|
||||
import { safeQuery } from "@/lib/database"
|
||||
|
||||
export async function GET() {
|
||||
try {
|
||||
const users = (await safeQuery(`
|
||||
SELECT
|
||||
national_id,
|
||||
name,
|
||||
in_shelter,
|
||||
last_updated,
|
||||
is_admin,
|
||||
must_change_password,
|
||||
field,
|
||||
department,
|
||||
team,
|
||||
lock_status
|
||||
FROM users
|
||||
ORDER BY field, department, team, name
|
||||
`)) as any[]
|
||||
|
||||
return NextResponse.json(users)
|
||||
} catch (error) {
|
||||
console.error("Get users error:", error)
|
||||
return NextResponse.json({ error: "שגיאה בטעינת משתמשים" }, { status: 500 })
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user