# SYSTEM_SPECIFICATION.md V.1 # ระบบจัดการข้อมูลเงินเดือนเจ้าหน้าที่โรงพยาบาล (Hospital Payroll Management System) Version : 1.0 --- # Project Overview พัฒนาระบบจัดการข้อมูลเงินเดือนของเจ้าหน้าที่โรงพยาบาล ใช้สำหรับ * นำเข้าข้อมูลเงินเดือนจากกรมบัญชีกลาง * บันทึกและแก้ไขข้อมูลเงินเดือน * จัดการรายการรายรับและรายจ่าย * พิมพ์สลิปเงินเดือน * พิมพ์หนังสือรับรองการหักภาษี ณ ที่จ่ายประจำปี * รายงานสรุป * บริหารข้อมูลเงินเดือนรายเดือน ระบบพัฒนาด้วย * PHP 8.1 * MySQL 8 * Bootstrap 5.3 * JavaScript ES6 * AJAX * PDO * รองรับ Responsive Design --- # Authentication ผู้ดูแลระบบและเจ้าหน้าที่ ต้อง Login ก่อนใช้งาน Role * Administrator * HR * Finance * Auditor สิทธิ์แต่ละ Role สามารถกำหนดได้ * ดูข้อมูล * เพิ่ม * แก้ไข * ลบ * อนุมัติ * พิมพ์เอกสาร * Export --- # Public Portal สำหรับเจ้าหน้าที่ทั่วไป ไม่ต้อง Login สามารถเข้าดูและพิมพ์สลิปเงินเดือนได้ โดยระบุ * เลขบัตรประชาชน * เดือน * ปี ระบบตรวจสอบ * เลขประชาชน * มีข้อมูลเดือนนั้นหรือไม่ หากถูกต้อง แสดง * สลิปเงินเดือน * Download PDF * Print --- # External Employee Database ข้อมูลเจ้าหน้าที่ ไม่เก็บซ้ำในระบบ ดึงจาก Database อีกเครื่อง เชื่อมผ่าน PDO รองรับ * Host * Database * Username * Password หน้าตั้งค่า สามารถกำหนด * Host * Port * Database * Username * Password ทดสอบการเชื่อมต่อได้ ข้อมูลที่ใช้ * HN * รหัสบุคลากร * เลขประชาชน * คำนำหน้า * ชื่อ * นามสกุล * ตำแหน่ง * หน่วยงาน * ประเภทบุคลากร * สถานะ ใช้เป็น Master Data --- # Dashboard แสดง จำนวนบุคลากรทั้งหมด เงินเดือนรวม รายรับรวม รายจ่ายรวม ภาษีรวม จำนวนผู้ได้รับเงินเดือน กราฟ * เงินเดือนแต่ละเดือน * รายรับ * รายจ่าย * ภาษี * เปรียบเทียบรายปี --- # Import ข้อมูลกรมบัญชีกลาง รองรับ Excel CSV Text กำหนด Mapping Column ได้ Preview ก่อน Import Import Log Validation Duplicate Check Rollback Import History สามารถ Import * เงินเดือน * ค่าตอบแทน * OT * P4P * เงินประจำตำแหน่ง * ค่าครองชีพ * ภาษี * ประกันสังคม * กบข. * เงินกู้ * รายการหักอื่น --- # Payroll Management เลือก ปี เดือน จากนั้นสร้างรายการเงินเดือน สามารถ เพิ่ม แก้ไข ลบ Copy เดือนล่าสุด ค้นหา กรอง เรียงลำดับ --- # Copy เดือนล่าสุด เพื่อความสะดวก มีปุ่ม สร้างข้อมูลจากเดือนล่าสุด เช่น เดือน มิถุนายน กดสร้าง เดือน กรกฎาคม ระบบจะ Copy รายรับ รายจ่าย รายการทั้งหมด มาเป็นข้อมูลตั้งต้น หลังจากนั้น สามารถแก้ไขเฉพาะรายการที่เปลี่ยนแปลง มีหน้าต่างยืนยันก่อนดำเนินการ --- # Payroll Detail ข้อมูลเงินเดือนของแต่ละคน ประกอบด้วย ข้อมูลบุคลากร รายการรายรับ รายการรายจ่าย ภาษี หมายเหตุ แนบไฟล์ Log --- # Income Item รายรับ ตัวอย่าง เงินเดือน ค่าตอบแทน OT P4P ค่าตำแหน่ง ค่าครองชีพ เงินเพิ่มพิเศษ เบี้ยเลี้ยง โบนัส อื่นๆ --- # Deduction Item รายจ่าย ภาษี ประกันสังคม กบข. สหกรณ์ เงินกู้ กองทุน ค่าปรับ เงินสะสม อื่นๆ --- # Master Setting หน้าตั้งค่า สามารถสร้างรายการเองได้ แบ่งเป็น รายรับ รายจ่าย กำหนด ชื่อรายการ Code ลำดับ สี Icon คำนวณรวม Active สามารถแก้ไขได้ตลอดเวลา --- # Salary Slip พิมพ์สลิปเงินเดือน PDF A4 A5 เลือก Template ได้ มี QR Code ข้อมูล ชื่อ ตำแหน่ง หน่วยงาน เดือน ปี รายรับ รายจ่าย ยอดสุทธิ ผู้อนุมัติ ลายเซ็น รองรับ Download Print Email --- # หนังสือรับรองการหักภาษีประจำปี เลือก ปีภาษี เลือก บุคคล หรือ ทั้งหมด ระบบสร้าง PDF ทีละคน หรือ รวมทั้งหมด Export ZIP มีเลข Running รองรับแบบฟอร์มราชการ --- # Reports รายงาน เงินเดือนรวม รายรับ รายจ่าย OT P4P ภาษี ประกันสังคม กบข. เงินกู้ รายงานหน่วยงาน รายงานตำแหน่ง รายงานย้อนหลัง เปรียบเทียบรายเดือน เปรียบเทียบรายปี Export Excel CSV PDF Print --- # Search ค้นหา ชื่อ เลขประชาชน รหัสบุคลากร หน่วยงาน ตำแหน่ง เดือน ปี --- # Notification แจ้งเตือน Import สำเร็จ Import ผิดพลาด ข้อมูลซ้ำ เงินเดือนยังไม่อนุมัติ --- # Audit Log เก็บ Log ทุกเหตุการณ์ Login Logout Import Delete Insert Update Print Export IP Address Browser Device DateTime --- # Backup สำรองฐานข้อมูล Restore Download Backup Auto Backup --- # Security Password Hash Session Timeout CSRF Protection SQL Injection Protection XSS Protection Prepared Statement Audit Log Permission Role Based Access --- # Database Tables users roles permissions employee_salary salary_income salary_deduction salary_month salary_year income_master deduction_master import_history import_detail salary_slip_log tax_certificate tax_certificate_log report_log audit_log system_setting external_database backup_history attachments --- # Workflow Login ↓ เลือกเดือน ↓ Import จากกรมบัญชีกลาง ↓ ตรวจสอบข้อมูล ↓ Copy รายการจากเดือนล่าสุด (ถ้าต้องการ) ↓ แก้ไขข้อมูล ↓ บันทึก ↓ อนุมัติ ↓ พิมพ์สลิป ↓ พิมพ์ใบภาษี ↓ ออกรายงาน --- # UI Design Modern Hospital Theme Glassmorphism Gradient Background Bootstrap 5.3 Light Mode Dark Mode Responsive Mobile First Animation Loading Button Toast Notification Dashboard Card Chart.js DataTables Modal SweetAlert2 --- # Future Features * Single Sign-On (SSO) * Active Directory / LDAP * LINE Notify * Telegram * Email Notification * Digital Signature * e-Payslip * API สำหรับ Mobile App * REST API * รองรับหลายหน่วยงาน (Multi Hospital) * รองรับหลายปีงบประมาณ * เชื่อมต่อระบบ HR * เชื่อมต่อระบบบัญชี * เชื่อมต่อระบบ ERP * Web Service กรมบัญชีกลาง * PWA (Progressive Web Application) --- # Development Standard PHP 8.1 MySQL 8 PDO MVC Structure REST API Ready Bootstrap 5.3 JavaScript ES6 AJAX JSON UTF-8 PSR Coding Standard รองรับการขยายระบบในอนาคต End of Document ---------------------------------- # SYSTEM_SPECIFICATION.md ## Hospital Payroll Management System ### Version 2.0 (Enterprise Edition) --- # โมดูลที่เพิ่มจาก Version 1.0 ## PHASE 1 : Workflow การอนุมัติเงินเดือน (Payroll Workflow) ระบบต้องรองรับ Workflow หลายขั้นตอน ``` สร้างงวดเงินเดือน │ ▼ Import ข้อมูลกรมบัญชีกลาง │ ▼ ตรวจสอบข้อมูล (HR) │ ▼ ตรวจสอบการเงิน (Finance) │ ▼ อนุมัติ (ผู้อำนวยการ/ผู้มีสิทธิ์) │ ▼ Lock งวดเงินเดือน │ ▼ เปิดให้เจ้าหน้าที่พิมพ์สลิป ``` ### สถานะของงวดเงินเดือน * Draft * Imported * Pending Review * HR Approved * Finance Approved * Director Approved * Locked * Published * Cancelled เมื่อ Lock แล้ว * ห้ามแก้ไข * ห้ามลบ * ต้องปลดล็อกโดย Administrator เท่านั้น --- # PHASE 2 : Role Based Access Control (RBAC) ระบบกำหนดสิทธิ์แบบละเอียด Permission Matrix ## Administrator * จัดการทุกอย่าง * ตั้งค่าระบบ * จัดการผู้ใช้ * Backup * Restore * Unlock Payroll --- ## HR * Import เงินเดือน * แก้ไขข้อมูล * สร้างงวดเงินเดือน * พิมพ์สลิป * พิมพ์ใบภาษี * ดูรายงาน --- ## Finance * ตรวจสอบยอดเงิน * ตรวจสอบรายรับ * ตรวจสอบรายจ่าย * อนุมัติการเงิน --- ## Director * ดูรายงาน * อนุมัติ * Lock งวด --- ## Auditor สิทธิ์อ่านอย่างเดียว สามารถ * ดู * Export * Print ห้าม * เพิ่ม * แก้ไข * ลบ --- ## Employee ไม่ต้อง Login สามารถ ค้นหาสลิปด้วย * เลขประชาชน * เดือน * ปี --- # PHASE 3 : Version Control ทุกครั้งที่แก้ไขข้อมูลเงินเดือน ระบบสร้าง Version ใหม่ เช่น Version 1 Import ↓ Version 2 HR แก้ไข ↓ Version 3 Finance แก้ไข ↓ Version 4 Approved สามารถย้อนกลับ Restore Version ได้ทุกเวลา แสดง * ผู้แก้ไข * เวลา * IP * Browser * รายการที่เปลี่ยน --- # PHASE 4 : Template Designer ระบบสร้าง Template PDF แบบ Drag & Drop รองรับ Salary Slip Tax Certificate หนังสือรับรอง หนังสือราชการ ลาก Field ลงบน Template Field ตัวอย่าง Employee Name Department Position Salary Income List Deduction List QR Code Barcode Logo Signature Date Remark รองรับหลาย Template Default Hospital Finance Executive --- # PHASE 5 : Import Wizard Import หลายรูปแบบ Excel CSV TXT XML JSON ขั้นตอน Step 1 Upload File ↓ Step 2 เลือก Sheet ↓ Step 3 Preview ↓ Step 4 จับคู่ Column ↓ Step 5 Validate ↓ Step 6 Import ↓ Step 7 Report สามารถบันทึก Mapping เช่น กรมบัญชีกลาง โรงพยาบาล ERP SAP Oracle --- # PHASE 6 : Formula Engine กำหนดสูตรคำนวณได้เอง เช่น รายรับรวม ``` เงินเดือน + OT + P4P + ค่าตำแหน่ง ``` เงินสุทธิ ``` รายรับทั้งหมด - รายจ่ายทั้งหมด ``` กำหนดสูตรใหม่ได้ โดยไม่ต้องแก้ไขโปรแกรม รองรับ * - * / () IF ROUND SUM ABS MIN MAX --- # PHASE 7 : Notification Center รองรับ Email LINE Telegram Notification ในระบบ แจ้งเตือน Import สำเร็จ Import ผิดพลาด อนุมัติแล้ว เปิดพิมพ์สลิปแล้ว ภาษีพร้อมพิมพ์ --- # PHASE 8 : API REST API JSON JWT OAuth2 Ready ตัวอย่าง GET /api/payroll /api/slip /api/employee /api/report POST /api/login /api/import /api/approve /api/lock /api/unlock --- # PHASE 9 : Dashboard Analytics Dashboard KPI Total Payroll Average Salary OT P4P Tax Social Security Provident Fund Department Comparison Year Comparison Top Allowance Top Deduction Chart Chart.js Export Dashboard PDF --- # PHASE 10 : Digital Signature รองรับ Digital Signature QR Verification Electronic Seal Certificate Number Verification URL ผู้ใช้งานสามารถ Scan QR เพื่อตรวจสอบ สลิปเงินเดือน ใบภาษี หนังสือรับรอง --- # PHASE 11 : Multi Hospital รองรับหลายโรงพยาบาล Master Hospital Branch Department Fiscal Year Company ใช้ระบบเดียว หลายหน่วยงาน --- # PHASE 12 : Multi Database เชื่อมต่อฐานข้อมูลได้หลายแห่ง HR Database Finance Database Accounting Database ERP Database LDAP Active Directory API กำหนด Mapping ได้ --- # PHASE 13 : Scheduled Job Cron Job Import อัตโนมัติ Backup Generate PDF Send Email Archive Delete Temp File --- # PHASE 14 : Archive เก็บข้อมูลย้อนหลัง 5 ปี 10 ปี 20 ปี ค้นหาได้ทันที --- # PHASE 15 : Audit Center Dashboard Log Login Logout Import Delete Export Print PDF Permission Change Password Reset IP Address MAC Address (ถ้ามี) Browser Operating System GPS (ถ้ามี) --- # PHASE 16 : Security Password Hash (bcrypt/Argon2) HTTPS CSRF XSS SQL Injection Rate Limit Account Lock Two-Factor Authentication (2FA) OTP Email OTP SMS OTP Authenticator Password Policy Session Timeout Remember Device Device History Login History Encryption AES-256 --- # PHASE 17 : Backup Center Manual Backup Auto Backup Google Drive NAS FTP Restore Download Backup Schedule Incremental Backup Full Backup Backup Log --- # PHASE 18 : Reports รายงานมากกว่า 50 รายงาน เงินเดือน OT P4P ค่าตอบแทน ภาษี ประกันสังคม กบข. สหกรณ์ หน่วยงาน ตำแหน่ง รายเดือน รายปี ย้อนหลัง Export PDF Excel CSV Word --- # PHASE 19 : Mobile Friendly Responsive PWA Offline Cache Push Notification Install App Android iOS --- # PHASE 20 : Coding Standard PHP 8.1 MySQL 8 PDO MVC Repository Pattern Service Layer REST API Bootstrap 5.3 JavaScript ES6 AJAX Chart.js SweetAlert2 DataTables Composer Ready (Optional) PSR-12 Unit Test Ready Docker Ready CI/CD Ready Git Ready UTF-8 รองรับการขยายระบบในอนาคตทั้งหมด END OF DOCUMENT