68 lines
3.3 KiB
PHP
68 lines
3.3 KiB
PHP
<?php
|
|
session_start(); ob_start();
|
|
if (!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true || !isset($_SESSION['is_admin']) || !$_SESSION['is_admin']) {
|
|
ob_clean(); header("Content-Type: application/json; charset=utf-8"); echo json_encode(["data" => []]);
|
|
exit;
|
|
}
|
|
require_once '../includes/db_assessment.php';
|
|
require_once '../includes/db_hosoffice.php';
|
|
|
|
$filter_year = $_GET['year'] ?? (date('Y')+543);
|
|
$rules = $pdo_assess->query("SELECT id FROM it_rules ORDER BY order_no ASC")->fetchAll(PDO::FETCH_ASSOC);
|
|
$slas = $pdo_assess->query("SELECT id FROM it_slas ORDER BY order_no ASC")->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
$assessments = [];
|
|
try {
|
|
$stmt = $pdo_assess->prepare("SELECT * FROM it_assessments WHERE assess_year = :year ORDER BY created_at DESC");
|
|
$stmt->execute(['year' => $filter_year]);
|
|
$assessments = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
} catch (Exception $e) { }
|
|
|
|
$data = [];
|
|
$no = 1;
|
|
foreach ($assessments as $row) {
|
|
$rules_data = json_decode($row['rules_data'], true) ?: [];
|
|
$sla_data = json_decode($row['sla_data'], true) ?: [];
|
|
|
|
$rowData = [];
|
|
$rowData[] = '<div class="text-center">'.$no++.'</div>';
|
|
$rowData[] = '<div class="text-center">'.htmlspecialchars($row['assess_year']).'</div>';
|
|
$rowData[] = htmlspecialchars($row['fullname']);
|
|
$rowData[] = htmlspecialchars($row['position']);
|
|
$rowData[] = htmlspecialchars($row['department']);
|
|
|
|
if($row['computer_use'] == '1'){
|
|
$rowData[] = '<div class="text-center"><span class="badge bg-success">ใช้</span></div>';
|
|
} else {
|
|
$rowData[] = '<div class="text-center"><span class="badge bg-secondary">ไม่ใช้</span></div>';
|
|
}
|
|
|
|
foreach($rules as $r){
|
|
$r_id = $r['id'];
|
|
$k = $rules_data[$r_id]['k'] ?? '-';
|
|
$u = $rules_data[$r_id]['u'] ?? '-';
|
|
$p = $rules_data[$r_id]['p'] ?? '-';
|
|
$rowData[] = '<div class="text-center">'.($k == 'yes' ? '✔️' : ($k == 'no' ? '❌' : '-')).'</div>';
|
|
$rowData[] = '<div class="text-center">'.($u == 'yes' ? '✔️' : ($u == 'no' ? '❌' : '-')).'</div>';
|
|
$rowData[] = '<div class="text-center">'.($p == 'yes' ? '✔️' : ($p == 'no' ? '❌' : '-')).'</div>';
|
|
}
|
|
|
|
foreach($slas as $s){
|
|
$s_id = $s['id'];
|
|
$score = $sla_data[$s_id]['score'] ?? '-';
|
|
$comment = $sla_data[$s_id]['comment'] ?? '-';
|
|
$rowData[] = '<div class="text-center">'.htmlspecialchars($score).'</div>';
|
|
$rowData[] = htmlspecialchars($comment);
|
|
}
|
|
|
|
$rowData[] = '<div class="text-center">'.date('d/m/Y H:i', strtotime($row['created_at'])).'</div>';
|
|
|
|
$deleteForm = '<div class="text-center"><form method="POST" action="actions/delete_assessment.php" onsubmit="return confirm(\'ยืนยันการลบข้อมูลประเมินของ '.htmlspecialchars($row['fullname']).' ใช่หรือไม่?\');"><input type="hidden" name="id" value="'.$row['id'].'"><input type="hidden" name="filter_year" value="'.htmlspecialchars($filter_year).'"><button type="submit" class="btn btn-sm btn-danger py-0 px-2" title="ลบข้อมูล">ลบ</button></form></div>';
|
|
|
|
$rowData[] = $deleteForm;
|
|
|
|
$data[] = $rowData;
|
|
}
|
|
|
|
ob_clean(); header("Content-Type: application/json; charset=utf-8"); echo json_encode(["data" => $data]);
|