1. ภาพรวมระบบ
ระบบ MRA Audit (Medical Record Audit) เป็นระบบตรวจสอบคุณภาพเวชระเบียนผู้ป่วยใน (IP) และผู้ป่วยนอก (OP) ประกอบด้วยฟีเจอร์หลัก:
- จัดการเคส — เพิ่ม แก้ไข นำเข้า ลบ เคสผู้ป่วย IP/OP
- มอบหมายเคส — มอบหมายเคสให้ผู้ตรวจ (Auditor) แบบรายบุคคลหรือเป็นกลุ่ม
- ตรวจสอบเวชระเบียน — แบบฟอร์มตรวจสอบรายเกณฑ์พร้อมคำนวณคะแนนอัตโนมัติ
- รายงานและสถิติ — Dashboard, กราฟ, ตาราง, ส่งออก CSV
- จัดการรอบตรวจ — สร้าง/ปิดรอบตรวจ เปรียบเทียบข้ามรอบ
- จัดการผู้ใช้ — สร้าง/แก้ไขผู้ใช้ กำหนดบทบาท
ข้อมูลส่วนบุคคล (ชื่อผู้ป่วย, ชื่อแพทย์) ถูกเข้ารหัส AES-256-GCM ในฐานข้อมูล และจะถูกถอดรหัสเฉพาะเมื่อแสดงผลให้ผู้ใช้ที่มีสิทธิ์เท่านั้น
2. การเข้าสู่ระบบ
เปิดเว็บเบราว์เซอร์แล้วไปที่ http://<server-ip>:8080
- กรอก ชื่อผู้ใช้ (Username)
- กรอก รหัสผ่าน (Password)
- คลิกปุ่ม "เข้าสู่ระบบ"
สำคัญ: ชื่อผู้ใช้และรหัสผ่านจะได้รับจากผู้ดูแลระบบ ควรเปลี่ยนรหัสผ่านทันทีหลังเข้าสู่ระบบครั้งแรก โดยไปที่เมนู "โปรไฟล์"
3. บทบาทผู้ใช้งาน (Roles)
ระบบมี 9 บทบาท แต่ละบทบาทมีสิทธิ์การเข้าถึงแตกต่างกัน:
| บทบาท | สิทธิ์การใช้งาน | ขอบเขตข้อมูล |
| admin |
เข้าถึงทุกฟังก์ชัน, จัดการผู้ใช้, มอบหมายเคส, ตรวจสอบ, ลบ |
ทุกข้อมูล |
| auditor |
ตรวจสอบเคสที่ได้รับมอบหมาย, ดูรายงาน |
เฉพาะเคสที่มอบหมาย |
| data_entry |
เพิ่ม/แก้ไขเคส, ตรวจสอบเคสที่มอบหมาย |
เฉพาะเคสที่มอบหมาย |
| discharge_head |
มอบหมายเคส, แก้ไข/ลบเคส, จัดการรอบตรวจ, ดูรายงาน |
ทุกข้อมูล |
| nursing_head |
ดูเคสและรายงานทั้งหมด (อ่านอย่างเดียว) |
ทุกข้อมูล |
| mr_assistant |
ดูเคสและรายงานทั้งหมด (อ่านอย่างเดียว) |
ทุกข้อมูล |
| dept_head |
ดูเคสและรายงานทั้งหมด (อ่านอย่างเดียว) |
ทุกข้อมูล |
| medical_record |
ดูเคสและรายงานทั้งหมด (อ่านอย่างเดียว) |
ทุกข้อมูล |
| ward_head |
ดูเคสเฉพาะวอร์ดที่รับผิดชอบ |
เฉพาะวอร์ดตนเอง |
4. แดชบอร์ด
หน้าแรกหลังเข้าสู่ระบบ แสดงภาพรวมสถิติผู้ป่วยใน (IP) และผู้ป่วยนอก (OP)
4.1 KPI ผู้ป่วยใน (IP)
| ตัวชี้วัด | คำอธิบาย |
| เคสทั้งหมด | จำนวนเคส IP ทั้งหมดในระบบ |
| รอดำเนินการ | เคสที่ยังไม่ได้มอบหมาย (pending) |
| กำลังตรวจสอบ | เคสที่กำลังดำเนินการ (in_progress) |
| เสร็จสิ้น | เคสที่ตรวจสอบเสร็จแล้ว (completed) |
| ค่าเฉลี่ยคะแนน | ค่าเฉลี่ย % ของเคสที่ตรวจแล้ว |
| ตรวจแล้ว | จำนวนเคสที่ส่งผลตรวจแล้ว |
4.2 KPI ผู้ป่วยนอก (OP)
แสดงข้อมูลเดียวกันสำหรับเคส OP รวมถึง:
- ผ่านเกณฑ์ — จำนวนเคส OP ที่ผ่านเกณฑ์
- ไม่ผ่านเกณฑ์ — จำนวนเคส OP ที่ไม่ผ่านเกณฑ์
4.3 กราฟและแผนภูมิ
- อัตราผ่านรายเกณฑ์ — กราฟแท่งแสดง % ผ่านของแต่ละเกณฑ์
- แนวโน้มรายเดือน — กราฟเส้นแสดงจำนวนเคสและค่าเฉลี่ยย้อนหลัง 6 เดือน
- สถิติรายวอร์ด — แสดงค่าเฉลี่ย % แต่ละวอร์ด (IP)
- สถิติรายคลินิก — แสดงค่าเฉลี่ย % แต่ละคลินิก (OP)
4.4 กรองตามรอบตรวจ
ใช้ dropdown "กรองรอบตรวจ" ด้านบนเพื่อดูข้อมูลเฉพาะรอบที่ต้องการ
4.5 เปรียบเทียบข้ามรอบ
- คลิกปุ่ม "เปรียบเทียบรอบ"
- เลือกรอบอย่างน้อย 2 รอบจาก dropdown (กด Ctrl ค้างเพื่อเลือกหลายรอบ)
- คลิก "เปรียบเทียบ"
- ระบบจะแสดงตารางเปรียบเทียบ KPI และกราฟแท่ง
5. จัดการเคสผู้ป่วยใน (IP)
เมนู "เคส IP" แสดงรายการเคสผู้ป่วยในทั้งหมด
5.1 ตัวกรอง
| ตัวกรอง | คำอธิบาย |
| สถานะ | ทั้งหมด / รอดำเนินการ / มอบหมายแล้ว / กำลังดำเนินการ / เสร็จสิ้น |
| วอร์ด | กรองตามวอร์ด (โหลดจากข้อมูลจริง) |
| รอบ | กรองตามรอบตรวจ |
| ผู้ได้รับมอบหมาย | กรองตามผู้ตรวจที่ได้รับมอบหมาย |
| ค้นหา | ค้นหาด้วย HN, AN หรือชื่อวอร์ด |
5.2 คอลัมน์ในตาราง
| คอลัมน์ | คำอธิบาย |
| HN | เลขที่เวชระเบียน (9 หลัก) |
| AN | เลขที่รับบริการ |
| ชื่อผู้ป่วย | ชื่อ-สกุล (ถอดรหัสอัตโนมัติ) |
| วอร์ด | หอผู้ป่วย |
| วันรับ | วันที่รับเข้ารักษา |
| สถานะเคส | สถานะปัจจุบัน |
| ผู้ได้รับมอบหมาย | ชื่อผู้ตรวจที่ได้รับมอบหมาย |
| ผล Audit | สถานะและคะแนนการตรวจ |
| จัดการ | ปุ่มตรวจสอบ / แก้ไข / ลบ |
5.3 เพิ่มเคสใหม่
- คลิกปุ่ม "+ เพิ่มเคส"
- กรอกข้อมูล: HN*, AN*, ชื่อผู้ป่วย*, วอร์ด, แพทย์, ICD-10, วันรับ/จำหน่าย, LOS, รอบตรวจ
- คลิก "บันทึก"
ช่องที่มีเครื่องหมาย * เป็นข้อมูลบังคับ
5.4 แก้ไข / ลบเคส
- แก้ไข — แก้ไขข้อมูลเคส (สิทธิ์: admin, data_entry, discharge_head)
- ลบ — ลบเคส (สิทธิ์: admin, discharge_head) ระบบจะถามยืนยันก่อนลบ
6. จัดการเคสผู้ป่วยนอก (OP)
เมนู "เคส OP" แสดงรายการเคสผู้ป่วยนอก คล้ายกับเคส IP แต่มีฟิลด์เพิ่มเติม:
6.1 ตัวกรองเพิ่มเติม
| ตัวกรอง | คำอธิบาย |
| คลินิก | กรองตามคลินิก (แทนวอร์ด) |
| ประเภท | General / Chronic |
| ฟอร์ม | ทั่วไป / จิตเวช |
| ผู้ได้รับมอบหมาย | กรองตามผู้ตรวจ |
6.2 ฟิลด์เฉพาะ OP
- VN — Visit Number (แทน AN)
- คลินิก — คลินิกที่ตรวจ (แทนวอร์ด)
- วันที่ Visit — วันที่มาตรวจ
- ประเภท — general (ทั่วไป) หรือ chronic (เรื้อรัง)
- ฟอร์ม — general (ทั่วไป) หรือ psychiatric (จิตเวช)
7. การมอบหมายเคส
เมนูนี้สำหรับ admin และ discharge_head เท่านั้น
7.1 มอบหมายเคส IP
- ไปที่เมนู "มอบหมาย IP"
- เลือกวอร์ดจาก dropdown เพื่อกรองเคส (ถ้าต้องการ)
- ติ๊กเลือกเคสที่ต้องการมอบหมาย (หรือใช้ "เลือกทั้งหมด")
- เลือกผู้ตรวจจาก dropdown "มอบหมายให้"
- คลิกปุ่ม "มอบหมายที่เลือก"
7.2 มอบหมายเคส OP
ขั้นตอนเดียวกับ IP แต่กรองด้วยคลินิกแทนวอร์ด
หลังมอบหมาย สถานะเคสจะเปลี่ยนจาก รอดำเนินการ เป็น มอบหมายแล้ว และชื่อผู้ตรวจจะปรากฏในคอลัมน์ "ผู้ได้รับมอบหมาย"
8. การตรวจสอบเวชระเบียน IP
ผู้ตรวจ (auditor) เปิดเคสที่มอบหมายแล้วเพื่อทำการตรวจสอบ
8.1 เปิดแบบฟอร์มตรวจสอบ
- ไปที่เมนู "เคส IP"
- คลิกปุ่ม ที่เคสที่ต้องการตรวจ
- ระบบจะแสดงข้อมูลผู้ป่วยและแบบฟอร์มตรวจ
8.2 ข้อมูลผู้ป่วย (ด้านบน)
แสดง HN, AN, ชื่อ, วอร์ด, วันรับ/จำหน่าย, แพทย์, ICD-10
8.3 หมวดการตรวจ (Tabs)
แบบฟอร์มแบ่งเป็นหมวดย่อยตามเกณฑ์ที่กำหนด แต่ละหมวดมีหลายรายการให้ประเมิน
- คลิกแท็บด้านบนเพื่อสลับหมวด
- แท็บจะเปลี่ยนสี: ตรวจครบ / N/A
8.4 การให้คะแนนแต่ละรายการ
| ปุ่ม | ความหมาย |
| ผ่าน | ผ่านเกณฑ์ (ได้คะแนน) |
| ไม่ผ่าน | ไม่ผ่านเกณฑ์ (ไม่ได้คะแนน) |
| N/A | ไม่เกี่ยวข้อง (ไม่นับคะแนน) |
สามารถกรอก หมายเหตุ เพิ่มเติมในแต่ละรายการได้
8.5 สรุปคะแนน (ด้านล่าง)
- คะแนนรวม — คะแนนที่ได้ / คะแนนเต็ม
- เปอร์เซ็นต์ — คำนวณอัตโนมัติ
- วันที่ตรวจ — เลือกวันที่ตรวจสอบ
- หมายเหตุ — บันทึกเพิ่มเติม (ถ้ามี)
8.6 บันทึกผล
| ปุ่ม | การทำงาน |
| บันทึกร่าง | บันทึกแบบร่าง สามารถกลับมาแก้ไขภายหลังได้ |
| ส่งผล | ส่งผลตรวจ (ยืนยันแล้ว) เคสจะเปลี่ยนสถานะเป็น "เสร็จสิ้น" |
9. การตรวจสอบเวชระเบียน OP
ขั้นตอนคล้ายกับ IP แต่มีความแตกต่างดังนี้:
9.1 ฟอร์มตรวจ 2 แบบ
| ฟอร์ม | หมวด | คะแนนเต็ม | เกณฑ์ผ่าน |
| ทั่วไป (General) | 4 หมวด | 20 คะแนน | ≥ 14 คะแนน |
| จิตเวช (Psychiatric) | 5 หมวด | 25 คะแนน | ≥ 18 คะแนน |
9.2 ผลการตรวจ OP
OP มีระบบ ผ่าน/ไม่ผ่าน นอกเหนือจากเปอร์เซ็นต์:
- ผ่าน (Pass) — คะแนนรวมถึงเกณฑ์
- ไม่ผ่าน (Fail) — คะแนนต่ำกว่าเกณฑ์
10. รายงาน
10.1 รายงาน IP
เมนู "รายงาน IP" แสดง:
- จำนวนที่ตรวจ และ ค่าเฉลี่ย %
- อัตราผ่านรายเกณฑ์ — แถบแสดง % ของแต่ละเกณฑ์
- กราฟเรดาร์ — ภาพรวมทุกเกณฑ์
- ผลงานผู้ตรวจ — ค่าเฉลี่ยและจำนวนเคสของแต่ละ Auditor
- ตารางรายละเอียด — ผลตรวจทุกเคส
ตัวกรอง
วอร์ด, รอบตรวจ, จากวันที่, ถึงวันที่
10.2 รายงาน OP
เมนู "รายงาน OP" คล้ายกับ IP โดยมีเพิ่มเติม:
- อัตราผ่าน / ไม่ผ่าน
- กรองตามคลินิก, ประเภทเคส, ฟอร์ม
10.3 ส่งออก CSV
- คลิกปุ่ม "ส่งออก CSV" (สีเขียว)
- ระบบจะดาวน์โหลดไฟล์ .csv ตาม filter ที่เลือก
- ไฟล์รองรับภาษาไทย (UTF-8 BOM)
10.4 รหัสสี
| สี | ช่วงคะแนน |
| เขียว | ≥ 80% |
| ส้ม | 60% - 79% |
| แดง | < 60% |
11. จัดการรอบตรวจ
เมนูนี้สำหรับ admin และ discharge_head เท่านั้น
11.1 สร้างรอบตรวจใหม่
- ไปที่เมนู "จัดการรอบตรวจ"
- คลิก "+ สร้างรอบใหม่"
- กรอก: ชื่อรอบ*, ปี (พ.ศ.), ลำดับรอบ, คำอธิบาย, วันเริ่ม/สิ้นสุด
- คลิก "บันทึก"
11.2 ปิดรอบตรวจ
คลิกปุ่ม "ปิดรอบ" เพื่อเปลี่ยนสถานะเป็น Closed
เมื่อปิดรอบแล้วจะไม่สามารถเปิดใหม่ได้ กรุณาตรวจสอบก่อนดำเนินการ
11.3 ตารางแสดงรอบตรวจ
| คอลัมน์ | คำอธิบาย |
| ชื่อรอบ | เช่น "รอบ1ปี2569" |
| ปี / ลำดับ | ปี พ.ศ. และลำดับรอบ |
| จำนวน IP | จำนวนเคส IP ในรอบนี้ |
| จำนวน OP | จำนวนเคส OP ในรอบนี้ |
| สถานะ | Active หรือ Closed |
12. จัดการผู้ใช้
เมนูนี้สำหรับ admin เท่านั้น
12.1 เพิ่มผู้ใช้ใหม่
- คลิก "+ เพิ่มผู้ใช้"
- กรอก: ชื่อผู้ใช้*, ชื่อ-สกุล*, รหัสผ่าน*, อีเมล, แผนก, โทรศัพท์
- เลือกบทบาท จาก dropdown
- ถ้าเลือก ward_head — ต้องระบุ "วอร์ด" ที่รับผิดชอบ
- คลิก "บันทึก"
12.2 รีเซ็ตรหัสผ่าน
- คลิกปุ่ม ที่ผู้ใช้ต้องการ
- กรอกรหัสผ่านใหม่ (ขั้นต่ำ 6 ตัวอักษร)
- คลิก "ตกลง"
12.3 ระงับ / เปิดใช้งาน
แก้ไขผู้ใช้แล้วเปลี่ยนสถานะเป็น suspended หรือ active
13. โปรไฟล์
เมนู "โปรไฟล์" สำหรับดูข้อมูลส่วนตัวและเปลี่ยนรหัสผ่าน
เปลี่ยนรหัสผ่าน
- กรอก รหัสผ่านเดิม
- กรอก รหัสผ่านใหม่ (ขั้นต่ำ 6 ตัวอักษร)
- กรอก ยืนยันรหัสผ่านใหม่
- คลิก "เปลี่ยนรหัสผ่าน"
14. การนำเข้าข้อมูล
รองรับการนำเข้าเคสจำนวนมากผ่านไฟล์ JSON
14.1 นำเข้าเคส IP
- ไปที่เมนู "เคส IP"
- คลิกปุ่ม "นำเข้า" (สีเขียว)
- เลือกไฟล์ JSON ที่มีรูปแบบตามตัวอย่าง
- คลิก "อัปโหลด"
รูปแบบไฟล์ JSON (IP)
[
{
"round_no": "รอบ1ปี2569",
"hn": "000123456",
"an": "680012345",
"ptname": "นายสมชาย ใจดี",
"ward": "อายุรกรรมชาย",
"doctor_name": "นพ.สุรพล จิตเมตตา",
"icd10_pdx": "I10",
"icd10_sdx": "E11.9",
"admit_date": "2025-10-01",
"discharge_date": "2025-10-05",
"los": "4"
}
]
14.2 นำเข้าเคส OP
รูปแบบไฟล์ JSON (OP)
[
{
"round_no": "รอบ1ปี2569",
"hn": "000123456",
"vn": "680012345",
"ptname": "นางสาวสมหญิง รักดี",
"clinic_code": "MED",
"clinic_name": "อายุรกรรม",
"doctor_name": "พญ.วิภา สุขสันต์",
"visit_date": "2025-10-15",
"case_type": "general",
"form_type": "general"
}
]
กฎการนำเข้า:
- ถ้า AN (IP) หรือ VN (OP) ซ้ำกับที่มีอยู่แล้ว — จะข้ามรายการนั้น
- HN จะถูก pad เป็น 9 หลักอัตโนมัติ (เช่น 123456 → 000123456)
- ชื่อผู้ป่วยและชื่อแพทย์จะถูกเข้ารหัสอัตโนมัติ
- สถานะเริ่มต้นเป็น "รอดำเนินการ" (pending)
15. ขั้นตอนการทำงาน (Workflow)
15.1 วงจรชีวิตเคส
สร้าง/นำเข้า
pending
มอบหมาย
assigned
กำลังตรวจ
in_progress
เสร็จสิ้น
completed
15.2 ขั้นตอนสำหรับผู้ดูแลระบบ (Admin)
- สร้างรอบตรวจใหม่ (ถ้ายังไม่มี)
- สร้างผู้ใช้ Auditor (ถ้ายังไม่มี)
- นำเข้าเคส IP/OP จากไฟล์
- มอบหมายเคสให้ผู้ตรวจแต่ละคน
- ติดตามผลจาก Dashboard และรายงาน
- ปิดรอบตรวจเมื่อตรวจครบ
15.3 ขั้นตอนสำหรับผู้ตรวจ (Auditor)
- เข้าสู่ระบบด้วยบัญชีของตน
- ไปที่ "เคส IP" หรือ "เคส OP" — จะเห็นเฉพาะเคสที่มอบหมายให้
- คลิกปุ่ม เพื่อเปิดแบบฟอร์มตรวจ
- ตรวจสอบตามเกณฑ์แต่ละรายการ (ผ่าน/ไม่ผ่าน/N/A)
- บันทึกร่างระหว่างทาง หรือส่งผลเมื่อตรวจครบ
15.4 ขั้นตอนสำหรับผู้บริหาร (Nursing Head / Dept Head / etc.)
- เข้าสู่ระบบ
- ดู Dashboard เพื่อดูภาพรวม
- ดูรายงาน IP/OP เพื่อวิเคราะห์ผล
- ส่งออก CSV เพื่อนำไปประมวลผลต่อ
16. คำถามที่พบบ่อย
Q: ลืมรหัสผ่าน ทำอย่างไร?
A: แจ้งผู้ดูแลระบบ (admin) เพื่อทำการรีเซ็ตรหัสผ่านที่เมนู "จัดการผู้ใช้"
Q: ทำไมไม่เห็นเคสในรายการ?
A: ตรวจสอบสิ่งต่อไปนี้:
- ตัวกรอง — อาจมีตัวกรองที่ซ่อนข้อมูลอยู่ ลองคลิก "ล้าง"
- บทบาท — Auditor จะเห็นเฉพาะเคสที่มอบหมายให้, Ward Head เห็นเฉพาะวอร์ดตนเอง
Q: ส่งผลตรวจแล้ว แก้ไขได้ไหม?
A: เคสที่ส่งผลแล้ว (submitted) ไม่สามารถแก้ไขได้ หากต้องการแก้ ให้ติดต่อ admin
Q: เปิดไม่เห็นเมนู "มอบหมาย" หรือ "จัดการผู้ใช้"?
A: เมนูเหล่านี้จะแสดงเฉพาะบทบาทที่มีสิทธิ์:
- "มอบหมาย IP/OP" — เฉพาะ admin, discharge_head
- "จัดการผู้ใช้" — เฉพาะ admin
- "จัดการรอบตรวจ" — เฉพาะ admin, discharge_head
Q: ไฟล์ CSV ที่ส่งออกเปิดแล้วภาษาไทยเพี้ยน?
A: ไฟล์ใช้ UTF-8 with BOM เปิดด้วย Excel ให้ใช้ "Open" → เลือก encoding เป็น "65001: Unicode (UTF-8)" หรือเปิดด้วย Google Sheets
Q: ระบบรองรับเบราว์เซอร์อะไรบ้าง?
A: รองรับเบราว์เซอร์สมัยใหม่ทั้งหมด: Chrome, Edge, Firefox, Safari (แนะนำ Chrome หรือ Edge)