ผู้ใช้ & สิทธิ์
จัดการบัญชีผู้ใช้งาน บทบาท (Roles) และสิทธิ์การเข้าถึง (Permissions) แบบละเอียด
จัดการบัญชีผู้ใช้
Admin สามารถสร้างและจัดการบัญชีผู้ใช้งานระบบ:
| ข้อมูล | รายละเอียด |
|---|---|
| Username | ชื่อผู้ใช้สำหรับเข้าสู่ระบบ (ไม่ซ้ำกัน) |
| รหัสผ่าน | เข้ารหัสด้วย Bcrypt (Hash) |
| ชื่อ-นามสกุล | ชื่อแสดงผลในระบบ |
| อีเมล | อีเมลสำหรับติดต่อ |
| บทบาท (Role) | บทบาทที่กำหนดสิทธิ์การเข้าถึง |
| เชื่อมโยงพนักงาน | เชื่อมบัญชีผู้ใช้กับข้อมูลพนักงาน |
| สาขา | สาขาที่สามารถเข้าถึงข้อมูลได้ |
| สถานะ | Active / Inactive (ปิดการเข้าถึง) |
ระบบบทบาท (Roles)
บทบาท (Role) คือชุดสิทธิ์ที่กำหนดให้ผู้ใช้ สามารถสร้างบทบาทได้ไม่จำกัด:
👑 Admin — ผู้ดูแลระบบ
🧑💼 HR — ฝ่ายบุคคล
📋 Manager — หัวหน้า
👤 Employee — พนักงาน
บทบาท Admin มีสิทธิ์ Super Admin ที่เข้าถึงทุกอย่างโดยไม่ต้องกำหนดสิทธิ์เพิ่ม ไม่สามารถลบได้
ระบบสิทธิ์ (Permissions)
สิทธิ์ถูกจัดเป็นโมดูล แต่ละโมดูลมี Actions ที่กำหนดได้:
| โมดูล | view | create | edit | delete | approve |
|---|---|---|---|---|---|
| employees | ✓ | ✓ | ✓ | ✓ | — |
| attendance | ✓ | ✓ | ✓ | ✓ | — |
| leaves | ✓ | ✓ | ✓ | ✓ | ✓ |
| overtime | ✓ | ✓ | ✓ | ✓ | ✓ |
| shifts | ✓ | ✓ | ✓ | ✓ | — |
| payroll | ✓ | ✓ | ✓ | ✓ | ✓ |
| departments | ✓ | ✓ | ✓ | ✓ | — |
| users | ✓ | ✓ | ✓ | ✓ | — |
| settings | ✓ | — | ✓ | — | — |
ตัวอย่างสิทธิ์ตามบทบาท
HR — ฝ่ายบุคคล
- ดู/เพิ่ม/แก้ไข พนักงาน
- อนุมัติใบลา, OT
- คำนวณเงินเดือน, ออกสลิป
- จัดการแผนก, ตำแหน่ง, สาขา
- ดูรายงานทั้งหมด
Manager — หัวหน้าแผนก
- ดูข้อมูลพนักงานในแผนก
- อนุมัติใบลา, OT ของลูกทีม
- ดูรายงานเฉพาะแผนก
Employee — พนักงานทั่วไป
- ลงเวลาเข้า-ออก
- ยื่นใบลา, ขอ OT
- ดูสลิปเงินเดือนของตนเอง
- ขอเอกสาร
- แก้ไขโปรไฟล์ส่วนตัว
ความปลอดภัย
- รหัสผ่าน — เข้ารหัสด้วย Bcrypt (ไม่เก็บรหัสผ่านจริง)
- Session Regeneration — สร้าง Session ID ใหม่ทุกครั้งที่ Login
- CSRF Protection — ป้องกัน Cross-Site Request Forgery
- Login Logging — บันทึกประวัติ Login ทุกครั้ง (IP, User-Agent, สำเร็จ/ล้มเหลว)
- Permission Caching — Cache สิทธิ์ใน Session เพื่อประสิทธิภาพ
การตั้งค่าส่วนตัว
ผู้ใช้ทุกคนสามารถปรับแต่ง UI ได้ตามความชอบ:
- ธีมสี — เลือกสีหลักของระบบ (Teal, Blue, Purple ฯลฯ)
- ฟอนต์ — เลือกแบบอักษร (Sarabun ฯลฯ)
- ขนาดตัวอักษร — เล็ก (sm), กลาง (md), ใหญ่ (lg)
- ภาษา — ไทย หรือ English