prepare("INSERT INTO it_years (year_text, is_active) VALUES (?, 0)");
$stmt->execute([$year]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'ADD_YEAR', "เพิ่มปีประเมินใหม่: $year");
$_SESSION['success_msg'] = "เพิ่มปีประเมินเรียบร้อยแล้ว";
} catch (PDOException $e) {
$_SESSION['error_msg'] = "มีปีนี้ในระบบแล้ว หรือเกิดข้อผิดพลาด";
}
}
elseif ($action == 'set_active_year') {
$id = $_POST['id'];
$ystmt = $pdo_assess->prepare("SELECT year_text FROM it_years WHERE id = ?");
$ystmt->execute([$id]);
$yr = $ystmt->fetchColumn();
$pdo_assess->query("UPDATE it_years SET is_active = 0");
$stmt = $pdo_assess->prepare("UPDATE it_years SET is_active = 1 WHERE id = ?");
$stmt->execute([$id]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'SET_ACTIVE_YEAR', "เปิดรับประเมินสำหรับปี: $yr");
$_SESSION['success_msg'] = "เปิดใช้งานปีที่เลือกเรียบร้อยแล้ว (สามารถเปิดได้เพียง 1 รายการเท่านั้น)";
}
elseif ($action == 'add_rule' || $action == 'edit_rule') {
$content = $_POST['content'];
$order = $_POST['order_no'];
$active = isset($_POST['is_active']) ? 1 : 0;
if ($action == 'add_rule') {
$stmt = $pdo_assess->prepare("INSERT INTO it_rules (content, order_no, is_active) VALUES (?, ?, ?)");
$stmt->execute([$content, $order, $active]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'ADD_RULE', "เพิ่มระเบียบปฏิบัติ: " . mb_substr($content, 0, 50) . "...");
} else {
$id = $_POST['id'];
$stmt = $pdo_assess->prepare("UPDATE it_rules SET content=?, order_no=?, is_active=? WHERE id=?");
$stmt->execute([$content, $order, $active, $id]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'EDIT_RULE', "แก้ไขระเบียบปฏิบัติ ID $id: " . mb_substr($content, 0, 50) . "...");
}
$_SESSION['success_msg'] = "บันทึกข้อมูลระเบียบปฏิบัติเรียบร้อยแล้ว";
}
elseif ($action == 'delete_rule') {
$id = $_POST['id'];
$stmt = $pdo_assess->prepare("SELECT content FROM it_rules WHERE id=?");
$stmt->execute([$id]);
$r_content = $stmt->fetchColumn();
$stmt = $pdo_assess->prepare("DELETE FROM it_rules WHERE id=?");
$stmt->execute([$id]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'DELETE_RULE', "ลบระเบียบปฏิบัติ: " . mb_substr($r_content, 0, 50) . "...");
$_SESSION['success_msg'] = "ลบข้อมูลระเบียบปฏิบัติเรียบร้อยแล้ว";
}
elseif ($action == 'add_sla' || $action == 'edit_sla') {
$name = $_POST['service_name'];
$time = $_POST['standard_time'];
$order = $_POST['order_no'];
$active = isset($_POST['is_active']) ? 1 : 0;
if ($action == 'add_sla') {
$stmt = $pdo_assess->prepare("INSERT INTO it_slas (service_name, standard_time, order_no, is_active) VALUES (?, ?, ?, ?)");
$stmt->execute([$name, $time, $order, $active]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'ADD_SLA', "เพิ่ม SLA: $name ($time นาที)");
} else {
$id = $_POST['id'];
$stmt = $pdo_assess->prepare("UPDATE it_slas SET service_name=?, standard_time=?, order_no=?, is_active=? WHERE id=?");
$stmt->execute([$name, $time, $order, $active, $id]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'EDIT_SLA', "แก้ไข SLA ID $id: $name ($time นาที)");
}
$_SESSION['success_msg'] = "บันทึกข้อมูลบริการ SLA เรียบร้อยแล้ว";
}
elseif ($action == 'delete_sla') {
$id = $_POST['id'];
$stmt = $pdo_assess->prepare("SELECT service_name FROM it_slas WHERE id=?");
$stmt->execute([$id]);
$s_name = $stmt->fetchColumn();
$stmt = $pdo_assess->prepare("DELETE FROM it_slas WHERE id=?");
$stmt->execute([$id]);
logAdminAction($pdo_assess, $admin_cid, $admin_name, 'DELETE_SLA', "ลบ SLA: $s_name");
$_SESSION['success_msg'] = "ลบข้อมูลบริการ SLA เรียบร้อยแล้ว";
}
header("Location: admin_settings.php");
exit;
}
// Fetch Data
$it_years = $pdo_assess->query("SELECT * FROM it_years ORDER BY year_text DESC")->fetchAll();
$counts_stmt = $pdo_assess->query("SELECT assess_year, COUNT(id) as total_assessments FROM it_assessments GROUP BY assess_year");
$counts_map = [];
foreach ($counts_stmt->fetchAll() as $c) {
$counts_map[$c['assess_year']] = $c['total_assessments'];
}
$rules = $pdo_assess->query("SELECT * FROM it_rules ORDER BY order_no ASC")->fetchAll();
$slas = $pdo_assess->query("SELECT * FROM it_slas ORDER BY order_no ASC")->fetchAll();
$logs = $pdo_assess->query("SELECT * FROM it_logs ORDER BY created_at DESC LIMIT 50")->fetchAll();
?>
ตั้งค่าระบบประเมิน (Super Admin)
| ปีประเมิน |
จำนวนผู้ทำประเมิน |
สถานะปัจจุบัน |
จัดการ |
| ปี |
รายการ |
กำลังเปิดรับประเมิน
ปิด
|
|
| ยังไม่ได้เพิ่มปีประเมิน กรุณาเพิ่มปีด้านบน |
| ลำดับ | ระเบียบปฏิบัติ | สถานะ | จัดการ |
|
|
เปิดใช้' : 'ปิด'; ?> |
|
| ลำดับ | ชื่อบริการ | เวลามาตรฐาน (นาที) | สถานะ | จัดการ |
|
|
|
เปิดใช้' : 'ปิด'; ?> |
|
| วัน-เวลา |
ผู้ดำเนินการ |
ประเภท |
รายละเอียด |
|
|
|
|
| ยังไม่มีประวัติการดำเนินการ |