ระบบจัดตารางเวรพยาบาลอัจฉริยะ
เวอร์ชัน 1.0 | อัปเดตล่าสุด: กุมภาพันธ์ 2569
Smart Nurse Rostering System เป็นระบบจัดตารางเวรพยาบาลอัจฉริยะที่ใช้เทคโนโลยี AI (CSP Solver) ในการสร้างตารางเวรโดยอัตโนมัติ พร้อมระบบจัดการครบวงจร ตั้งแต่การจำแนกผู้ป่วย คำนวณภาระงาน สร้างตารางเวร บริการตนเองของพยาบาล ไปจนถึงรายงานและการแจ้งเตือน
ระบบรองรับทั้งโหมด SAAS (หลายองค์กร) และ SINGLE_SITE (องค์กรเดียว)
| ฟีเจอร์ | รายละเอียด |
|---|---|
| 🤖 สร้างเวรอัตโนมัติ (AI) | ใช้ CSP Solver จัดเวรตามเงื่อนไขและข้อจำกัดทั้งหมด |
| 📊 คำนวณภาระงาน | NHPPD / FTE ตามมาตรฐาน POR 2010 |
| 🔄 แลกเวร | พยาบาลขอแลกเวรกันเองผ่านระบบ |
| 📅 ลางาน | ยื่นคำขอลา 5 ประเภท พร้อมระบบอนุมัติ |
| 📋 เวรว่าง | แสดงเวรที่ขาดคน เปิดให้สมัครรับ |
| 📈 รายงาน | PDF/Excel — ตารางเวร, OT, อัตรากำลัง, ดัชนีความเป็นธรรม |
| 🔔 แจ้งเตือน | Real-time ในระบบ + อีเมล + Telegram |
| 🏥 Multi-tenant | รองรับหลายโรงพยาบาล แยก Tenant |
| 💳 ระบบชำระเงิน | PromptPay QR / โอนธนาคาร / บัตรเครดิต |
| 🌙 Dark Mode | รองรับโหมดมืด/สว่าง |
| 📱 Responsive | Mobile Card / Desktop Table ทุกหน้า |
ระบบมี 4 บทบาทหลัก:
| บทบาท | รหัส | คำอธิบาย |
|---|---|---|
| ผู้ดูแลระบบ รพ. | HOSPITAL_ADMIN | ผู้ดูแลระบบโรงพยาบาล — ตั้งค่าองค์กร, จัดการผู้ใช้, อนุมัติ |
| ผู้อำนวยการฝ่ายการพยาบาล | NURSING_DIRECTOR | ดูแลภาพรวมการพยาบาล — ดูรายงาน, อนุมัติ, จัดเวร |
| หัวหน้าหอผู้ป่วย | HEAD_NURSE | หัวหน้าระดับหอผู้ป่วย — จัดเวร, อนุมัติ, ดูเวรตนเอง |
| พยาบาลประจำการ | STAFF_NURSE | พยาบาลปฏิบัติงาน — ดูเวร, ขอแลก, ขอลา, รับเวรว่าง |
ระดับพยาบาล (Nurse Level) — 3 ระดับ:
| ระดับ | รหัส | คำอธิบาย |
|---|---|---|
| พยาบาลวิชาชีพ | RN | Registered Nurse |
| พยาบาลเทคนิค | PN | Practical Nurse |
| ผู้ช่วยพยาบาล | NA | Nurse Assistant |
| เมนู/ฟีเจอร์ | HA | ND | HN | SN |
|---|---|---|---|---|
| แดชบอร์ด | ✅ | ✅ | ✅ | ✅ |
| เวรของฉัน | - | - | ✅ | ✅ |
| ตารางเวร | ✅ | ✅ | ✅ | ✅ |
| สร้างเวร AI | ✅ | ✅ | ✅ | - |
| พยาบาล | ✅ | ✅ | ✅ | ✅ |
| จำแนกผู้ป่วย | ✅ | ✅ | ✅ | - |
| ภาระงาน | ✅ | ✅ | ✅ | ✅ |
| แลกเวร | ✅ | ✅ | ✅ | ✅ |
| ลางาน | ✅ | ✅ | ✅ | ✅ |
| เวรว่าง | ✅ | ✅ | ✅ | ✅ |
| รายงาน | ✅ | ✅ | ✅ | - |
| ตั้งค่าองค์กร | ✅ | - | - | - |
| อัปเกรดแพ็คเกจ | ✅ | - | - | - |
| ประวัติชำระเงิน | ✅ | - | - | - |
| โปรไฟล์ | ✅ | ✅ | ✅ | ✅ |
HA = Hospital Admin, ND = Nursing Director, HN = Head Nurse, SN = Staff Nurse
สมัครสมาชิก → ยืนยัน OTP → เข้าสู่ระบบ → ตั้งค่าโปรไฟล์
📍 หน้า: /register
👤 สิทธิ์: สาธารณะ (ไม่ต้อง login)
วัตถุประสงค์: สร้างบัญชีองค์กรใหม่ในระบบ (SAAS mode)
ขั้นตอน:
⚠️ หมายเหตุ: อีเมลต้องไม่ซ้ำกับบัญชีที่มีอยู่แล้วในระบบ
📍 หน้า: /verify-email
👤 สิทธิ์: สาธารณะ
วัตถุประสงค์: ยืนยันตัวตนผ่านรหัส OTP ที่ส่งทางอีเมล
ขั้นตอน:
⚠️ หมายเหตุ:
📍 หน้า: /login
👤 สิทธิ์: สาธารณะ
วัตถุประสงค์: เข้าสู่ระบบด้วยอีเมลและรหัสผ่าน
ขั้นตอน:
/verify-email/dashboard⚠️ หมายเหตุ:
📍 หน้า: /dashboard
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE, STAFF_NURSE
วัตถุประสงค์: แสดงภาพรวมสถิติสำคัญของระบบ
KPI Cards 4 ตัว:
| KPI | คำอธิบาย |
|---|---|
| 👩⚕️ พยาบาลทั้งหมด | จำนวนพยาบาลในระบบ |
| 📅 ตารางเวร | จำนวนเวรที่กำหนด |
| 🏥 หน่วยงาน | จำนวนหน่วยงาน/วอร์ด |
| 🔄 คำขอแลกเวรรอ | จำนวนคำขอแลกเวรที่รออนุมัติ |
ข้อมูลจะอัปเดตอัตโนมัติเมื่อกลับมาที่หน้าจอ (tab visibility)
📍 หน้า: /profile
👤 สิทธิ์: ทุก Role
วัตถุประสงค์: ดูและแก้ไขข้อมูลส่วนตัว เปลี่ยนรหัสผ่าน อัปโหลดรูปโปรไฟล์
Tab 1: ข้อมูลส่วนตัว
Tab 2: เปลี่ยนรหัสผ่าน
💡 เคล็ดลับ: คลิกไอคอนตาเพื่อแสดง/ซ่อนรหัสผ่าน
โรงพยาบาล → แผนก → หน่วยงาน/วอร์ด → ผู้ใช้ → พยาบาล
⚠️ สำคัญ: ต้องสร้างตามลำดับนี้เท่านั้น เพราะข้อมูลมีความสัมพันธ์กัน
📍 หน้า: /settings/hospitals
👤 สิทธิ์: HOSPITAL_ADMIN
วัตถุประสงค์: เพิ่ม/แก้ไข/ลบ โรงพยาบาลในองค์กร
ขั้นตอนการเพิ่ม:
การแก้ไข:
การลบ:
⚠️ หมายเหตุ: ลบโรงพยาบาลจะลบแผนกและหน่วยงานที่อยู่ภายใต้ด้วย
📍 หน้า: /settings/departments
👤 สิทธิ์: HOSPITAL_ADMIN
วัตถุประสงค์: เพิ่ม/แก้ไข/ลบ แผนกในแต่ละโรงพยาบาล
ประเภทแผนก 6 ประเภท:
| รหัส | ชื่อ |
|---|---|
| OPD | ผู้ป่วยนอก |
| IPD | ผู้ป่วยใน |
| ER | ฉุกเฉิน |
| ICU | ห้อง ICU |
| OR | ห้องผ่าตัด |
| OTHER | อื่นๆ |
ขั้นตอนการเพิ่ม:
📍 หน้า: /settings/units
👤 สิทธิ์: HOSPITAL_ADMIN
วัตถุประสงค์: เพิ่ม/แก้ไข/ลบ หน่วยงานหรือวอร์ดในแต่ละแผนก
ขั้นตอนการเพิ่ม:
💡 ตัวอย่าง: โรงพยาบาล A → แผนก IPD → วอร์ดอายุรกรรมชาย 1
📍 หน้า: ผ่านเมนู พยาบาล 👤 สิทธิ์: HOSPITAL_ADMIN
วัตถุประสงค์: เพิ่มผู้ใช้ใหม่เข้าสู่ระบบ กำหนดบทบาท
ขั้นตอนการเพิ่ม:
📍 หน้า: /nurses (รายการ), /nurses/new (เพิ่ม), /nurses/[id] (แก้ไข)
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR
วัตถุประสงค์: สร้างโปรไฟล์พยาบาลจากผู้ใช้ที่มีอยู่ในระบบ
ขั้นตอนการเพิ่ม:
การดูรายการพยาบาล:
การลบพยาบาล:
⚠️ หมายเหตุ: ลบพยาบาลจะตรวจสอบ FK constraints — หากมีเวรที่เชื่อมโยงอยู่จะไม่สามารถลบได้
จำแนกผู้ป่วย → ดูภาระงาน → สร้างเวร AI → ตรวจสอบ/แก้ไข → เผยแพร่ → ล็อก
📍 หน้า: /patients/classification
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE
วัตถุประสงค์: บันทึกจำนวนผู้ป่วยแต่ละหมวดในแต่ละหน่วยงาน เพื่อคำนวณภาระงาน
หมวดผู้ป่วย 5 ระดับ:
| หมวด | ชื่อ | คำอธิบาย |
|---|---|---|
| CAT 1 | ดูแลตนเอง | ผู้ป่วยที่ดูแลตนเองได้ |
| CAT 2 | ดูแลน้อย | ต้องการดูแลเล็กน้อย |
| CAT 3 | ดูแลปานกลาง | ต้องการดูแลปานกลาง |
| CAT 4 | ดูแลมาก | ต้องการดูแลมาก |
| CAT 5 | ดูแลวิกฤต | ผู้ป่วยวิกฤต ต้องดูแลตลอดเวลา |
ขั้นตอน:
กิจกรรมพยาบาล 15 กิจกรรม (POR 2010):
| # | กิจกรรม | เวลา (นาที) |
|---|---|---|
| 1 | วัดสัญญาณชีพ | 15 |
| 2 | ดูแลความสะอาดร่างกาย | 30 |
| 3 | จัดการโภชนาการ | 20 |
| 4 | ดูแลการขับถ่าย | 20 |
| 5 | ดูแลการเคลื่อนไหว | 25 |
| 6 | ให้ยา | 20 |
| 7 | ให้สารน้ำทางหลอดเลือด | 25 |
| 8 | ดูแลแผล | 30 |
| 9 | ดูแลท่อระบาย | 20 |
| 10 | ดูแลระบบทางเดินหายใจ | 25 |
| 11 | เฝ้าระวังอาการผู้ป่วย | 30 |
| 12 | ให้ความรู้ผู้ป่วย/ครอบครัว | 20 |
| 13 | ดูแลจิตใจสังคม | 15 |
| 14 | บันทึกทางการพยาบาล | 15 |
| 15 | หัตถการพิเศษ | 45 |
📍 หน้า: /workload
👤 สิทธิ์: ทุก Role (ดูได้), HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE (จัดการ)
วัตถุประสงค์: แสดงภาระงานพยาบาลตามมาตรฐาน POR 2010
ตัวชี้วัดที่แสดง:
| ตัวชี้วัด | คำอธิบาย |
|---|---|
| NHPPD | Nursing Hours Per Patient Day — ชั่วโมงพยาบาลต่อผู้ป่วยต่อวัน (ค่าสัมประสิทธิ์ 13.47) |
| FTE ต้องการ | จำนวนพยาบาลที่ต้องการ (Full-Time Equivalent) |
| FTE มีจริง | จำนวนพยาบาลที่มีอยู่จริง |
| Productivity | อัตราผลิตภาพ (%) |
| Burnout Risk | ระดับความเสี่ยงเหนื่อยล้า (LOW / MEDIUM / HIGH) |
| RN Mix Ratio | สัดส่วน RN ต่อพยาบาลทั้งหมด (ต้อง ≥ 80%) |
โหมดการแสดงผล:
สีบ่งบอกสถานะ:
📍 หน้า: /schedules/generate
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE
วัตถุประสงค์: ใช้ AI (CSP Solver) สร้างตารางเวรโดยอัตโนมัติ
ขั้นตอน:
⚠️ หมายเหตุ:
📍 หน้า: /schedules
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE, STAFF_NURSE (ดูอย่างเดียว)
วัตถุประสงค์: ตรวจสอบ แก้ไข และจัดการตารางเวร
ขั้นตอนการตรวจสอบ:
การแก้ไข (เฉพาะเวรที่ยังไม่ล็อก):
📍 หน้า: /schedules
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE
วัตถุประสงค์: เผยแพร่ตารางเวรให้พยาบาลเห็น พร้อมแจ้งเตือน
ขั้นตอน:
⚠️ หลัง Publish พยาบาลจะเห็นเวรในหน้า "เวรของฉัน"
📍 หน้า: /schedules
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE
วัตถุประสงค์: ล็อกตารางเวรเพื่อป้องกันการแก้ไข
ขั้นตอน:
⚠️ คำเตือน: เมื่อล็อกแล้ว ไม่สามารถแก้ไขหรือลบได้ — กรุณาตรวจสอบให้แน่ใจก่อนล็อก
ดูเวรของฉัน → ขอแลกเวร / ขอลา / รับเวรว่าง → รอผลอนุมัติ
📍 หน้า: /my-schedule
👤 สิทธิ์: HEAD_NURSE, STAFF_NURSE (เฉพาะผู้ที่มี Nurse Profile)
วัตถุประสงค์: ดูตารางเวรส่วนตัวในแต่ละเดือน
โหมดการแสดงผล 2 แบบ (เลือกจาก SegmentedControl):
1. Card View:
2. Calendar View:
สรุปเวร:
📍 หน้า: /swap-requests (tab "ของฉัน")
👤 สิทธิ์: HEAD_NURSE, STAFF_NURSE
วัตถุประสงค์: ส่งคำขอแลกเวรกับพยาบาลคนอื่น
ขั้นตอนการขอแลกเวร:
การยกเลิกคำขอ:
การตอบรับ/ปฏิเสธ (เมื่อมีคนขอแลกเวรกับคุณ):
📍 หน้า: /leave-requests (tab "ของฉัน")
👤 สิทธิ์: HEAD_NURSE, STAFF_NURSE
วัตถุประสงค์: ส่งคำขอลางาน 5 ประเภท
ประเภทการลา:
| ประเภท | รหัส |
|---|---|
| ลาพักผ่อน | VACATION |
| ลาป่วย | SICK |
| ลากิจ | PERSONAL |
| ลาอบรม | TRAINING |
| ลาคลอด | MATERNITY |
ขั้นตอนการขอลา:
การยกเลิกคำขอ:
📍 หน้า: /open-shifts
👤 สิทธิ์: HEAD_NURSE, STAFF_NURSE (รับเวร), ทุก Role (ดู)
วัตถุประสงค์: แสดงเวรที่ยังขาดคน เปิดให้พยาบาลสมัครรับ
ขั้นตอน:
💡 เคล็ดลับ: วันที่แสดงเป็นภาษาไทย พร้อมสีระบุวัน (🔴 อาทิตย์, 🔵 เสาร์)
ดูคำขอรออนุมัติ → ตรวจสอบรายละเอียด → อนุมัติ / ปฏิเสธ
📍 หน้า: /swap-requests (tab "ทั้งหมด")
👤 สิทธิ์: HEAD_NURSE, NURSING_DIRECTOR, HOSPITAL_ADMIN
วัตถุประสงค์: ตรวจสอบและจัดการคำขอแลกเวร
ขั้นตอน:
⚠️ หมายเหตุ: พยาบาลคู่แลกเป็นผู้ตอบรับ/ปฏิเสธ เมื่อตอบรับแล้วระบบจะแลกเวรอัตโนมัติ
📍 หน้า: /leave-requests (tab "ทั้งหมด")
👤 สิทธิ์: HEAD_NURSE, NURSING_DIRECTOR, HOSPITAL_ADMIN
วัตถุประสงค์: ตรวจสอบและอนุมัติ/ปฏิเสธคำขอลางาน
ขั้นตอน:
💡 เคล็ดลับ: Default tab: Admin/Director จะเปิด tab "ทั้งหมด" ก่อน, พยาบาลจะเปิด tab "ของฉัน" ก่อน
เลือกประเภทรายงาน → กำหนดเงื่อนไข (หน่วยงาน, เดือน, ปี) → ดู/ดาวน์โหลด
📍 หน้าหลัก: /reports
👤 สิทธิ์: HOSPITAL_ADMIN, NURSING_DIRECTOR, HEAD_NURSE
📍 หน้า: /reports/schedule
วัตถุประสงค์: ดาวน์โหลดตารางเวรรายเดือนเป็นไฟล์ PDF
ขั้นตอน:
เนื้อหา PDF:
📍 หน้า: /reports/ot
วัตถุประสงค์: แสดงชั่วโมงทำงานและ OT ของพยาบาลแต่ละคน
ขั้นตอน:
ข้อมูลที่แสดง (ต่อพยาบาล):
| คอลัมน์ | คำอธิบาย |
|---|---|
| เช้า | จำนวนเวรเช้า |
| บ่าย | จำนวนเวรบ่าย |
| ดึก | จำนวนเวรดึก |
| รวมเวร | จำนวนเวรทั้งหมด |
| ชม.รวม | ชั่วโมงทำงานรวม |
| ชม.OT | ชั่วโมงล่วงเวลา (Badge สีแดงถ้ามี) |
| Weekend | จำนวนเวรวันหยุดสุดสัปดาห์ |
📍 หน้า: /reports/staffing
วัตถุประสงค์: วิเคราะห์ความเพียงพอของอัตรากำลังพยาบาล
KPI Cards:
| KPI | คำอธิบาย |
|---|---|
| พยาบาลทั้งหมด | จำนวน (แยก RN/PN/NA) |
| Total Slots | จำนวนช่องเวรทั้งหมด |
| Adequacy % | อัตราความเพียงพอรวม (Ring Progress) |
| RN Adequacy % | อัตราความเพียงพอ RN (Ring Progress) |
ตาราง Daily Inadequate Shifts:
📍 หน้า: /reports/fairness
วัตถุประสงค์: วัดความเป็นธรรมในการกระจายเวรด้วย Jain's Fairness Index
KPI:
ข้อมูลรายพยาบาล:
💡 หมายเหตุ: ค่า Fairness Index ใกล้ 1.0 = เป็นธรรมมาก, ใกล้ 0 = ไม่เป็นธรรม
ตำแหน่ง: ไอคอนกระดิ่ง 🔔 ที่มุมขวาบนของ Header
วิธีใช้งาน:
ประเภทแจ้งเตือน 12 ประเภท:
| ประเภท | คำอธิบาย | สี |
|---|---|---|
| ตารางเวรใหม่ | เมื่อตารางเวรถูก Publish | 🔵 น้ำเงิน |
| คำขอแลกเวร | เมื่อมีคนขอแลกเวรกับคุณ | 🟠 ส้ม |
| แลกเวรสำเร็จ | เมื่อคำขอแลกเวรถูกตอบรับ | 🟢 เขียว |
| แลกเวรถูกปฏิเสธ | เมื่อคำขอแลกเวรถูกปฏิเสธ | 🔴 แดง |
| คำขอลางาน | เมื่อมีคนส่งคำขอลา | 🟡 เหลือง |
| อนุมัติการลา | เมื่อคำขอลาได้รับอนุมัติ | 🟢 เขียว |
| คำขอลาถูกปฏิเสธ | เมื่อคำขอลาถูกปฏิเสธ | 🔴 แดง |
| เวรว่างถูกรับ | เมื่อมีคนรับเวรว่าง | 🟢 เขียวเข้ม |
| ชำระเงินสำเร็จ | เมื่อการชำระเงินได้รับการยืนยัน | 🟢 เขียว |
| ชำระเงินถูกปฏิเสธ | เมื่อการชำระเงินถูกปฏิเสธ | 🔴 แดง |
| แพ็คเกจใกล้หมดอายุ | 7 วันก่อนแพ็คเกจหมดอายุ | 🟠 ส้ม |
| ประกาศระบบ | ประกาศจากผู้ดูแลระบบ | 🔵 น้ำเงิน |
Real-time: แจ้งเตือนส่งทันทีผ่าน Socket.IO — ไม่ต้อง refresh หน้าจอ
ระบบส่งอีเมลอัตโนมัติ 11 ประเภท:
| อีเมล | Trigger | ผู้รับ |
|---|---|---|
| OTP | สมัครสมาชิก/Login | ผู้ใช้ |
| ยินดีต้อนรับ | หลังยืนยัน OTP | ผู้ใช้ |
| ชำระเงินสำเร็จ | ทีมงานยืนยันชำระเงิน | ผู้ดูแลระบบ รพ. (แนบ Receipt PDF) |
| ชำระเงินถูกปฏิเสธ | ทีมงานปฏิเสธชำระเงิน | ผู้ดูแลระบบ รพ. |
| เปิดใช้งาน Subscription | หลังยืนยันชำระเงิน | ผู้ดูแลระบบ รพ. |
| แพ็คเกจใกล้หมดอายุ | ระบบตรวจสอบอัตโนมัติ (7 วันก่อนหมด) | ผู้ดูแลระบบ รพ. |
| แพ็คเกจหมดอายุ | ระบบตรวจสอบอัตโนมัติ (หมดอายุ) | ผู้ดูแลระบบ รพ. |
| คำขอแลกเวร | พยาบาลขอแลกเวร | พยาบาลคู่แลก |
| สถานะการลา | อนุมัติ/ปฏิเสธลา | พยาบาลผู้ขอ |
| ตารางเวรเผยแพร่ | Publish ตารางเวร | พยาบาลทุกคนในหน่วยงาน |
การตั้งค่า: ผู้ดูแลแพลตฟอร์มตั้งค่า Bot Token และ Chat ID ในหน้าตั้งค่าระบบ
เหตุการณ์ที่ส่ง Telegram:
เลือกแพ็คเกจ → เลือกวิธีชำระ → ชำระเงิน → อัปโหลดสลิป → รอตรวจสอบ → เปิดใช้งาน
📍 หน้า: /upgrade
👤 สิทธิ์: HOSPITAL_ADMIN (SAAS mode)
วัตถุประสงค์: เลือกและอัปเกรดแพ็คเกจบริการ
แพ็คเกจที่มี:
| แพ็คเกจ | รายเดือน (฿) | รายปี (฿) | ประหยัด |
|---|---|---|---|
| ทดลองใช้งาน (Free Trial) | ฟรี 30 วัน | - | - |
| Starter | 990 | 9,900 | ~17% |
| Professional | 2,490 | 24,900 | ~17% |
| Enterprise | 5,990 | 59,900 | ~17% |
ขั้นตอน:
วิธีชำระเงิน 2 วิธี:
1. พร้อมเพย์ (PromptPay):
2. โอนเงิน (Bank Transfer):
การอัปโหลดสลิป:
📍 หน้า: /payments
👤 สิทธิ์: HOSPITAL_ADMIN
วัตถุประสงค์: ดูประวัติการชำระเงินทั้งหมด
ขั้นตอน:
สถานะการชำระเงิน:
| สถานะ | สี | คำอธิบาย |
|---|---|---|
| รอดำเนินการ | 🟡 เหลือง | สร้างรายการแล้ว ยังไม่ชำระ |
| รอส่งสลิป | 🟠 ส้ม | ชำระแล้ว ยังไม่ส่งสลิป |
| รอตรวจสอบ | 🔵 น้ำเงิน | ส่งสลิปแล้ว รอทีมงานตรวจ |
| สำเร็จ | 🟢 เขียว | ตรวจสอบแล้ว ยืนยันสำเร็จ |
| ปฏิเสธ | 🔴 แดง | ตรวจสอบแล้ว ถูกปฏิเสธ |
| ยกเลิก | ⚪ เทา | ยกเลิกโดยผู้ใช้ |
| หมดอายุ | ⚪ เทา | หมดเวลาชำระ |
| หน้า | เส้นทาง | HA | ND | HN | SN |
|---|---|---|---|---|---|
| Landing | / | ✅ | ✅ | ✅ | ✅ |
| เข้าสู่ระบบ | /login | ✅ | ✅ | ✅ | ✅ |
| สมัครสมาชิก | /register | ✅ | ✅ | ✅ | ✅ |
| ยืนยัน OTP | /verify-email | ✅ | ✅ | ✅ | ✅ |
| แดชบอร์ด | /dashboard | ✅ | ✅ | ✅ | ✅ |
| เวรของฉัน | /my-schedule | - | - | ✅ | ✅ |
| ตารางเวร | /schedules | ✅ | ✅ | ✅ | ✅ |
| สร้างเวร AI | /schedules/generate | ✅ | ✅ | ✅ | - |
| พยาบาล | /nurses | ✅ | ✅ | ✅ | ✅ |
| เพิ่มพยาบาล | /nurses/new | ✅ | ✅ | - | - |
| แก้ไขพยาบาล | /nurses/[id] | ✅ | ✅ | - | - |
| จำแนกผู้ป่วย | /patients/classification | ✅ | ✅ | ✅ | - |
| ภาระงาน | /workload | ✅ | ✅ | ✅ | ✅ |
| แลกเวร | /swap-requests | ✅ | ✅ | ✅ | ✅ |
| ลางาน | /leave-requests | ✅ | ✅ | ✅ | ✅ |
| เวรว่าง | /open-shifts | ✅ | ✅ | ✅ | ✅ |
| รายงาน | /reports/* | ✅ | ✅ | ✅ | - |
| โรงพยาบาล | /settings/hospitals | ✅ | - | - | - |
| แผนก | /settings/departments | ✅ | - | - | - |
| หน่วยงาน | /settings/units | ✅ | - | - | - |
| โปรไฟล์ | /profile | ✅ | ✅ | ✅ | ✅ |
| อัปเกรด | /upgrade | ✅ | - | - | - |
| ประวัติชำระเงิน | /payments | ✅ | - | - | - |
| กะ | รหัส | เวลาเริ่ม | เวลาจบ | ชั่วโมง | สี |
|---|---|---|---|---|---|
| เช้า | MORN | 07:00 | 15:00 | 8 | 🟡 เหลือง |
| บ่าย | AFTER | 15:00 | 23:00 | 8 | 🟠 ส้ม |
| ดึก | NIGHT | 23:00 | 07:00 | 8 | 🟣 ม่วง |
| กฎ | รายละเอียด |
|---|---|
| Forward Rotation | เช้า → บ่าย → ดึก (ห้ามย้อนกลับ) |
| Night → Morning | ❌ ห้ามเด็ดขาด (ช่วงพักระหว่างกะ ≥ 10 ชม.) |
| NHPPD Coefficient | 13.47 ชม./ผู้ป่วย/วัน (มาตรฐาน POR 2010) |
| Staff Mix Ratio | RN ≥ 80% ต่อกะ |
| อัตราพยาบาล:ผู้ป่วย (วิกฤต) | 1:2 |
| อัตราพยาบาล:ผู้ป่วย (ทั่วไป) | 1:4 |
| ชั่วโมงทำงานสูงสุด/สัปดาห์ | กำหนดต่อพยาบาล |
| เวรดึกสูงสุด/เดือน | กำหนดต่อพยาบาล |
| ระดับ | รหัส | คำอธิบาย | สัดส่วนขั้นต่ำ |
|---|---|---|---|
| พยาบาลวิชาชีพ | RN | Registered Nurse | ≥ 80% ต่อกะ |
| พยาบาลเทคนิค | PN | Practical Nurse | ส่วนที่เหลือ |
| ผู้ช่วยพยาบาล | NA | Nurse Assistant | ส่วนที่เหลือ |
คำขอแลกเวร (Swap Request):
PENDING (รออนุมัติ) → ACCEPTED (ตอบรับ) / REJECTED (ปฏิเสธ)
→ CANCELLED (ยกเลิกโดยผู้ขอ)
คำขอลางาน (Leave Request):
PENDING (รออนุมัติ) → APPROVED (อนุมัติ) / REJECTED (ปฏิเสธ)
→ CANCELLED (ยกเลิกโดยผู้ขอ)
การชำระเงิน (Payment):
PENDING (รอดำเนินการ) → AWAITING_SLIP (รอส่งสลิป) → REVIEWING (รอตรวจสอบ)
→ COMPLETED (สำเร็จ) / REJECTED (ปฏิเสธ)
PENDING → CANCELLED (ยกเลิก) / EXPIRED (หมดอายุ)
Subscription:
ACTIVE (ใช้งาน) → EXPIRED (หมดอายุ) / CANCELLED (ยกเลิก)
| แพ็คเกจ | รายเดือน | รายปี | ประหยัด | ระยะเวลาทดลอง |
|---|---|---|---|---|
| Free Trial | ฟรี | - | - | 30 วัน |
| Starter | ฿990 | ฿9,900 | ~17% | - |
| Professional | ฿2,490 | ฿24,900 | ~17% | - |
| Enterprise | ฿5,990 | ฿59,900 | ~17% | - |
ขีดจำกัดต่อแพ็คเกจ:
💡 ขีดจำกัดสามารถปรับได้โดยผู้ดูแลแพลตฟอร์ม
Q: ลืมรหัสผ่านทำอย่างไร? A: ติดต่อผู้ดูแลระบบโรงพยาบาล (Hospital Admin) เพื่อรีเซ็ตรหัสผ่าน
Q: ไม่ได้รับอีเมล OTP? A: ตรวจสอบโฟลเดอร์ Spam/Junk → รอ 60 วินาที → คลิก "ส่งรหัสใหม่"
Q: ทำไมไม่เห็นเมนู "เวรของฉัน"? A: เมนูนี้แสดงเฉพาะบทบาท HEAD_NURSE และ STAFF_NURSE ที่มี Nurse Profile เท่านั้น
Q: ทำไมไม่สามารถแก้ไขเวรได้? A: เวรที่ถูก "ล็อก" แล้วไม่สามารถแก้ไขหรือลบได้ — ติดต่อผู้ดูแลระบบ
Q: AI สร้างเวรใช้เวลานานแค่ไหน? A: ขึ้นอยู่กับจำนวนพยาบาลและเงื่อนไข — ปกติไม่เกิน 1-2 นาที (ทำงานใน Background)
Q: สามารถดูเวรย้อนหลังได้หรือไม่? A: ได้ — เลือกเดือน/ปีที่ต้องการในหน้าตารางเวร
Q: แพ็คเกจทดลองใช้หมดอายุแล้วจะเกิดอะไร? A: ระบบจะแจ้งเตือน 7 วันก่อนหมดอายุ → หลังหมดอายุจะไม่สามารถใช้งานบางฟีเจอร์ได้ → อัปเกรดแพ็คเกจเพื่อใช้งานต่อ
Q: ชำระเงินแล้วรอตรวจสอบนานแค่ไหน? A: ทีมงานจะได้รับแจ้งเตือนทันที — ปกติภายใน 1 วันทำการ
Q: ระบบรองรับ Dark Mode หรือไม่? A: รองรับ — คลิกไอคอน 🌙/☀️ ที่มุมขวาบนเพื่อสลับโหมดมืด/สว่าง
Q: Timezone ของระบบคืออะไร? A: Asia/Bangkok (UTC+7) — ทุก layer ใช้ timezone เดียวกัน วันที่ในรายงาน/PDF แสดงเป็น พ.ศ.
© 2569 AJ Software Dev. สงวนลิขสิทธิ์. Powered by AJ Software Dev.
Smart Nurse Rostering System — ระบบจัดตารางเวรพยาบาลอัจฉริยะ
Smart Nurse Rostering System v1.0 | คู่มือการใช้งาน
ดาวน์โหลด PDF