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)
1. ตั้งค่าปีที่เปิดให้ประเมิน (เปิดได้เพียง 1 รายการ)
ปีประเมิน จำนวนผู้ทำประเมิน สถานะปัจจุบัน จัดการ
ปี รายการ กำลังเปิดรับประเมิน ปิด
ยังไม่ได้เพิ่มปีประเมิน กรุณาเพิ่มปีด้านบน
2. ส่วนที่ 3 - การประเมินการรับรู้ (ระเบียบปฏิบัติ)
ลำดับระเบียบปฏิบัติสถานะจัดการ
เปิดใช้' : 'ปิด'; ?>
3. ส่วนที่ 4 - ข้อตกลงการให้บริการ (SLA)
ลำดับชื่อบริการเวลามาตรฐาน (นาที)สถานะจัดการ
เปิดใช้' : 'ปิด'; ?>
ประวัติการดำเนินการ (System Logs) - 50 รายการล่าสุด
วัน-เวลา ผู้ดำเนินการ ประเภท รายละเอียด
ยังไม่มีประวัติการดำเนินการ