Sunday, 28 September 2025

ระบบ API VISIT HIS & SMAST OPD & ปิดสิทธิ





🚀 ระบบ API VISIT HIS & SMAST OPD & ปิดสิทธิ เชื่อมต่อทุกระบบการแพทย์อย่างไร้รอยต่อ

VISIT API Python - Complete System

Version: 1.0.0
Author: Development Team
Description: ระบบจัดการการรับบริการของผู้ป่วย (Hospital Visit Management System) แบบครบวงจร พร้อม GUI และ Web API


🔎 ภาพรวมระบบ

VISIT API  Complete System ถูกออกแบบมาเพื่ออำนวยความสะดวกให้กับหน่วยบริการสาธารณสุขและโรงพยาบาล โดยมีทั้ง GUI Interface สำหรับเจ้าหน้าที่ และ Web API สำหรับเชื่อมต่อกับระบบ HIS  รวมถึงการทำงานร่วมกับ NHSO API อย่างครบถ้วน

ระบบนี้เน้นความง่ายในการใช้งาน ความปลอดภัย และรองรับการทำงานหลายรูปแบบ ทั้งในสถานที่และนอกสถานที่


✨ คุณสมบัติเด่น (Features)

  • GUI Interface ใช้งานง่ายด้วย Tkinter

  • Web API รองรับการเรียกใช้งานผ่าน HTTP

  • Database Support รองรับ MySQL, MariaDB และ PostgreSQL

  • License System ระบบจัดการสิทธิ์การใช้งาน

  • Key Generator สำหรับสร้าง License Key

  • Multi-threading รองรับการทำงานพร้อมกันหลายคำสั่ง

  • Settings Management บันทึกการตั้งค่าอัตโนมัติ


🌐 API Endpoints

1. เปิด Visit

GET /visit.php
Parameters:

  • cid (required) – เลขบัตรประชาชน

  • staff – รหัสเจ้าหน้าที่

  • department – แผนก

  • vital signs – rr, pulse, bw, height, temperature, bps, bpd, bmi, waist

  • อื่น ๆ เช่น hcode, hospmain, hospsub, icode ฯลฯ

Example:

GET /visit.php?cid=1234567890123&staff=001&department=01

2. ปิดสิทธิการรักษากับ สปสช

GET /endvisitAPI.php
Parameters:

  • vn (required) – หมายเลข Visit

  • cid (required) – เลขบัตรประชาชน

Example:

GET /endvisitAPI.php?vn=1234567890&cid=1234567890123

3. ค้นหาข้อมูลผู้ป่วย

GET /patient
Parameters: hn หรือ cid

Example:

GET /patient?hn=0018413 GET /patient?cid=1234567890123

4. ค้นหาสิทธิติดตัวผู้ป่วย

GET /pttype


5. บันทึก/อัพเดท Vital Signs

GET /bp?vn=vn&pulse=pulse&bpd=bpd&=bps&bw=bw&temperature=temperature&height=height&cc=cc
รองรับการบันทึกค่าความดันโลหิต ชีพจร น้ำหนัก ส่วนสูง อุณหภูมิ และข้อร้องเรียน (cc)


6. Health Check

GET /health
ตรวจสอบสถานะระบบและฐานข้อมูล


📦 Response Format

Success Response:

{ "success": true, "message": "บันทึกสำเร็จ", "data": { ... } }

Error Response:

{ "error": "Invalid CID" }

🗄️ Database Configuration

  • Host: 127.0.0.1

  • Database: hosxp

  • User: admin

  • Password: ******

  • Charset: utf8mb4


⚙️ API Configuration

NHSO API

  • Hospital Code: 00000

  • Token: xxx50a12-xxx9d-xxx38-8xx46-48xxxbc79ae4

  • Endpoint: https://nhsoapi.nhso.go.th/nhsoendpoint/api/

FDH API

  • Endpoint: https://fdh.moph.go.th/


🕒 Working Hours

  • เวลาทำการ: 08:00–16:30

  • วันทำงาน: จันทร์–ศุกร์

  • วันหยุดนักขัตฤกษ์: ตั้งค่าได้ใน APIConfig.PUBLIC_HOLIDAYS


💰 ICode Configuration

  • Normal ICode: เวลาราชการ

  • Overtime ICode: 3000977

  • Unit Price: 50 บาท

  • Income Types: I (Normal), O (Overtime)


🛠️ ขั้นตอนการใช้งาน (Usage Instructions)

  1. ตั้งค่าฐานข้อมูล

  2. กำหนด API NHSO

  3. ปรับค่าระบบ (Working hours, ICode)

  4. ทดสอบการเชื่อมต่อทั้งหมด

  5. กด Start Server (port 5000)

  6. จัดการ License Key


🌍 Remote Access (การเชื่อมต่อจากนอกสถานที่)

ระบบ VISIT API Complete System รองรับการทำงานนอกสถานที่ เช่น การเปิด Visit ผ่าน Mobile, Tablet หรือ Laptop ของเจ้าหน้าที่ใน หน่วยบริการปฐมภูมิ, รพ.สต., จุดบริการนอกโรงพยาบาล โดยยังคงรักษาความปลอดภัยสูงสุด

วิธีการเชื่อมต่อจากภายนอก

  1. VPN (Virtual Private Network)

    • เชื่อมต่อเข้าระบบโรงพยาบาลผ่าน SSL VPN / IPSec VPN

    • เข้ารหัสข้อมูลทั้งหมดระหว่างอุปกรณ์นอกสถานที่และเซิร์ฟเวอร์

    • รองรับทั้ง Mobile VPN Client และ Desktop VPN Client

  2. Reverse Proxy / API Gateway

    • ใช้ Nginx / HAProxy / Kong ทำหน้าที่เป็นเกราะกลางก่อนเข้าถึง API

    • เพิ่มการตรวจสอบสิทธิ์ (Authentication) และการเข้ารหัส (TLS Offloading)

    • สามารถใช้ Rate Limit + Firewall Rules ป้องกันการโจมตี

  3. Secure HTTPS with Mutual TLS

    • ใช้ SSL Certificates ที่ออกโดย CA

    • เปิดใช้งาน Client Certificate Authentication เพื่อตรวจสอบตัวตนของเครื่องที่เชื่อมต่อ


ตัวอย่างโฟลว์การเชื่อมต่อจากนอกสถานที่

  1. เจ้าหน้าที่เปิด VPN Client → เชื่อมเข้าระบบเครือข่ายของโรงพยาบาล

  2. เมื่อ VPN เชื่อมสำเร็จ → เรียกใช้ API ผ่าน HTTPS (TLS 1.2+)

  3. ระบบ ตรวจสอบ API License Key

  4. หากผ่าน → อนุญาตให้เปิด Visit, ปิดสิทธิ, หรือบันทึก Vital Signs ได้ตามสิทธิ์


  • 🛡️ การป้องกันการโจมตี API (API Security)

    • Rate Limiting: จำกัดจำนวนการเรียก API ต่อวินาที/นาที เพื่อป้องกัน Brute-force

    • IP Whitelisting/Blacklisting: จำกัดการเข้าถึงเฉพาะ IP ที่อนุญาต

    • Input Validation: ตรวจสอบและ sanitize parameters เพื่อป้องกัน SQL Injection / XSS

    • CSRF Protection: เพิ่ม CSRF Token สำหรับ API ที่มีการเขียนข้อมูล


👉 ระบบ API VISIT HIS & SMAST OPD คือกุญแจสำคัญในการ ยกระดับบริการสาธารณสุข ให้ทันสมัย รวดเร็ว และพร้อมเชื่อมต่อกับเทคโนโลยีทุกแพลตฟอร์มในอนาคต

// ตัวอย่าง HL7 Message สำหรับส่งข้อมูลผู้ป่วย

MSH|^~\&|BPM01|SCK MED PLUS|HIS|SCK-HOSCS|20230922142041||ORU^R01|2701|P|2.4

PID|1|||1111111111119

PV1||O|||||||||||||||||

OBR|1|||||20230220093044||||||||20230220093044

// ตัวอย่าง HL7 Message สำหรับส่งข้อมูลการวัด Vital Signs และอื่นๆ

OBX|1|ST|WEIGHT||45.5|KG.|||||F|||20230220093044

OBX|2|ST|HEIGHT||155.0|CM.|||||F|||20230220093044

OBX|3|ST|BMI||24.1|Kg/m2|||||F|||20230220093044

OBX|4|ST|WAIST||90.0|CM.|||||F|||20230220093044

OBX|5|ST|TEMP||36.6|C|||||F|||20230220093044

OBX|6|ST|SYSTOLIC||123.0|mmHg|||||F|||20230220093044

OBX|7|ST|DIASTOLIC||85.0|mmHg|||||F|||20230220093044

OBX|8|ST|PULSE||76.0|bpm|||||F|||20230220093044

OBX|9|ST|O2SAT||111.0|%Spo2|||||F|||20230220093044

OBX|10|ST|RR||20.0|RM|||||F|||20230220093044



electronic

About electronic

Author Description here.. Nulla sagittis convallis. Curabitur consequat. Quisque metus enim, venenatis fermentum, mollis in, porta et, nibh. Duis vulputate elit in elit. Mauris dictum libero id justo.

Subscribe to this Blog via Email :