🏥 ระบบบริหารจัดการโรงพยาบาล - ฝั่งผู้ใช้งาน (Frontend)

โปรเจคนี้เป็น ส่วน Frontend ของระบบบริหารจัดการโรงพยาบาล (Hospital Management System)
Frontend พัฒนาโดยใช้ React (Vite) ทำงานร่วมกับ Backend API v2.0 ที่เก็บอยู่ที่:
🌐 Hospital Management API - Gitea

ส่วน Frontend ให้บริการทั้งผู้ใช้งานทั่วไป (ผู้ป่วย) และผู้ดูแลระบบ (Admin) โดยเชื่อมต่อกับ API สำหรับฟีเจอร์ต่าง ๆ ตามเวอร์ชัน 2.0


🚀 ฟีเจอร์หลักที่รองรับ (v2.0)

👨‍⚕️ การจัดการข้อมูลหลัก (Core Data Management)

แพทย์ (Doctor)

  • R1 - ลงทะเบียนแพทย์
  • R2 - รายชื่อแพทย์
  • R3 - แก้ไขข้อมูลแพทย์
  • R4 - ลบข้อมูลแพทย์

ผู้ป่วย (Patient)

  • R5 - ลงทะเบียนผู้ป่วย
  • R6 - รายชื่อผู้ป่วย
  • R7 - แก้ไขข้อมูลผู้ป่วย
  • R8 - ลบข้อมูลผู้ป่วย

พนักงาน / นางพยาบาล (Staff / Nurse)

  • R9 - เพิ่มพนักงาน
  • R10 - ลงทะเบียนนางพยาบาล
  • R11 - รายชื่อนางพยาบาล
  • R12 - แก้ไขข้อมูลนางพยาบาล
  • R13 - ลบข้อมูลนางพยาบาล

🩺 การจัดการเฉพาะทาง (Specialized Management)

การนัดหมาย (Consultation)

  • R14 - จัดตารางการนัดหมาย
  • R15 - ยกเลิกนัดหมาย
  • R16 - ดูรายละเอียดการนัดหมายแต่ละรายการ

ตารางแพทย์ / นางพยาบาล (Doctor / Nurse Schedule)

  • R17 - เพิ่มตารางแพทย์
  • R18 - เพิ่มตารางนางพยาบาล
  • R19 - ดูตารางนางพยาบาล (Pagination)

ห้องผ่าตัด (Operating Room)

  • R20 - เพิ่ม / แก้ไข / ลบ ห้องผ่าตัด
  • R21 - ดูรายชื่อห้องผ่าตัด
  • R22 - จัดตารางใช้งานห้องผ่าตัด

เวชระเบียน / ใบสั่งยา / ผลวินิจฉัย (Medical Record / Prescription / Lab Result / Medical Image)

  • R23 - สร้างเวชระเบียน
  • R24 - แก้ไขเวชระเบียน
  • R25 - ลบเวชระเบียน
  • R26 - ดูเวชระเบียนตาม ID
  • R27 - สร้างใบสั่งยาใหม่
  • R28 - อัปโหลด / ดาวน์โหลดภาพทางการแพทย์
  • R29 - สร้าง / ดูผล Lab ตามเวชระเบียน

การจัดการคลังสินค้า (Inventory Management)

  • R30-R33 - จัดการ Inventory Item
  • R34 - สร้าง Inventory Transaction
  • R35 - จัดการ Supplier
  • R36 - จัดการ Item Type

การประกัน / การเรียกร้อง (Insurance Management)

  • R37-R38 - จัดการ Insurance Provider
  • R39-R40 - จัดการ Insurance Claim

การเรียกเก็บเงิน / การชำระเงิน (Billing & Payment)

  • R41-R45 - จัดการ Billing / Payment

รายงาน (Reports)

  • R46 - รายงานสินค้าคงเหลือต่ำ
  • R47 - รายงานสรุปการเงิน
  • R48 - รายงานการนัดหมาย

การจัดการผู้ใช้งาน (User Management)

  • R49-R56 - อัปเดตบัญชีผู้ใช้ / ตั้งค่าบทบาท / เชื่อมต่อผู้ป่วยและผู้ใช้งานอื่น ๆ

🔑 Default Credentials

สำหรับเข้าระบบครั้งแรก (Admin)

  • Username: admin@softwarecraft.tech
  • Password: pasword123

📖 API Endpoints

Frontend ใช้ API v2.0 สำหรับฟีเจอร์ต่าง ๆ เช่น:

Authentication

  • POST /api/auth/register-patient - ลงทะเบียนผู้ป่วย
  • POST /api/auth/register-doctor-and-link - ลงทะเบียนแพทย์และเชื่อมบัญชี
  • POST /api/auth/register-staff - เพิ่มพนักงาน
  • POST /api/auth/login - เข้าสู่ระบบ
  • POST /api/auth/link-patient-to-user - เชื่อมผู้ป่วยกับบัญชี

User Management

  • PUT /api/v1.0/users/{id}/username - อัปเดต username
  • PUT /api/v1.0/users/{id}/role - อัปเดต role
  • PUT /api/v1.0/users/{id}/password - อัปเดต password
  • PATCH /api/v1.0/users/{id}/deactivate - ปิดใช้งานบัญชี
  • PATCH /api/v1.0/users/{id}/activate - เปิดใช้งานบัญชี

Doctor / Patient / Staff / Consultation / Medical Record / Prescription / Payment / Inventory

  • รองรับ CRUD ตามฟีเจอร์ v2.0 (ดูรายละเอียด API ด้านบน)

🧰 เทคโนโลยีที่ใช้

  • Frontend Framework: React (Vite)
  • UI Library: Tailwind CSS / Daisy UI
  • Routing: React Router
  • State Management: React Hooks
  • API Integration: Fetch / Axios (เชื่อมต่อกับ Hospital Management API)
  • Authentication: JWT

🧪 การรันในเครื่องนักพัฒนา (Dev Environment)

# ติดตั้ง dependencies
npm install

# รัน Frontend บนโหมดพัฒนา
npm run dev
Description
No description provided
Readme 204 KiB
Languages
JavaScript 97.6%
Dockerfile 1.5%
HTML 0.5%
CSS 0.4%