บันทึกการอัปเดตระบบ
ติดตามการเปลี่ยนแปลง ฟีเจอร์ใหม่ และการปรับปรุงประสิทธิภาพของ Sakura Medical
1.6.6
01 Jul 2026
V. 1.6.6
01 Jul 2026
Announcement Bell, Discord Publish Tools, Emoji Server, and Syntax Fixes
LATEST- ประกาศอัปเดตหมอ – แจ้งเตือนกระดิ่ง Header: เมื่อมีการสร้างประกาศใหม่ ระบบจะส่งการแจ้งเตือนไปยังผู้ใช้ทุกคนผ่านกระดิ่ง (Bell) ใน Header อัตโนมัติ พร้อม Badge สีแดงและกดเพื่อเข้าหน้าประกาศได้ทันที
- ประกาศอัปเดตหมอ – ซ่อนเมนูแถบซ้าย: นำเมนูประกาศอัปเดตหมอออกจากแถบนำทางด้านซ้าย เนื่องจากมีปุ่มกระดิ่งลอย (Floating Bell) และกระดิ่ง Header ให้เข้าถึงได้อยู่แล้ว เพื่อลดความซ้ำซ้อนของเมนู
- ประกาศอัปเดตหมอ – ส่งประกาศไป Discord: เพิ่มปุ่มประกาศ Discord ให้แต่ละการ์ด พร้อมรองรับ Webhook ผ่านค่า DISCORD_CASE_WEBHOOK_ANNOUCE และส่งเป็นข้อความเต็มแบบ Plain Text ไม่ใช่ Embed Card
- ประกาศอัปเดตหมอ – ข้อความสำหรับ Discord เท่านั้น: เพิ่มช่องข้อความแท็กดิสคอร์ดและแท็ก <hideweb>...</hideweb> เพื่อซ่อนข้อความบนหน้าเว็บ แต่ยังส่งไป Discord ได้ตามปกติ
- ประกาศอัปเดตหมอ – อัปโหลดรูปและเส้นประกาศ: รองรับการอัปโหลดรูปประกาศลง Storage ของเว็บ, เลือกเส้นเปิดด้านบนและเส้นปิดท้ายด้านล่าง พร้อมหน้าจอพรีวิวรูปเส้นหลังเลือกชื่อ
- ประกาศอัปเดตหมอ – รูปแบบส่ง Discord 3 ส่วน: ตอนกดประกาศจะส่งเส้นเปิดเป็นข้อความแรก, รายละเอียดประกาศพร้อมข้อความแท็ก Discord เป็นข้อความกลาง และเส้นปิดท้ายเป็นข้อความสุดท้ายเสมอ แม้เนื้อหาจะเกิน 2,000 ตัวอักษรและต้องแบ่งข้อความ
- ประกาศอัปเดตหมอ – Emoji Server สำหรับเว็บ: เพิ่มระบบอัปโหลดอีโมจิสำหรับแสดงบนเว็บ โดยจับคู่รูปภาพกับข้อความ Discord รองรับการเพิ่ม แก้ไข ลบ และแสดงรายการอีโมจิเป็นแถวละ 4 รายการ
- ประกาศอัปเดตหมอ – แสดง Emoji ในตัวแก้ไขและการ์ด: ตัวแก้ไขประกาศ ป๊อปอัป และการ์ดประกาศสามารถแสดงอีโมจิจาก Discord/Emoji Server เป็นรูปภาพบนเว็บ ขณะบันทึกและส่ง Discord ยังใช้ข้อความอีโมจิเดิม
- ประกาศอัปเดตหมอ – ตรวจจำนวนตัวอักษร Discord: เพิ่มตัวนับจำนวนตัวอักษรในรายละเอียดประกาศและแจ้งเตือนก่อนส่งเมื่อข้อความมีโอกาสเกินลิมิต 2,000 ตัวอักษรของ Discord
- MedBot Chatbot – ตั้งค่าหมวดหมู่ที่ไม่แสดงในแชทบอท: เพิ่มการตั้งค่าในหน้า System Settings ให้ Admin สามารถเลือกหมวดหมู่ประกาศ (ประกาศ / ทั่วไป / อัปเดตการทำงาน / กิจกรรม / กฎและข้อปฏิบัติ / การสอบ) ที่ไม่ต้องการให้บอทนำข้อมูลมาตอบในแชท
- ระบบแจ้งเตือน (Notifications) – ฟังก์ชัน sendAllUsersNotification: เพิ่มฟังก์ชันหลังบ้านสำหรับส่งการแจ้งเตือนหาผู้ใช้ทุกคนในระบบ (ประเภท announcement) แยกจากการส่งเฉพาะ Admin/Director/Assistant เดิม
- แก้ไข JavaScript Syntax Error: แก้ปัญหา Uncaught SyntaxError จากโค้ด Event Listener ของเมนูด้านข้าง (Sidebar) ใน index.php ที่มีบล็อกซ้ำซ้อนและวงเล็บปีกกาปิดไม่ตรงคู่
- เวอร์ชันแคชของระบบ (Cache Version): อัปเดตเวอร์ชันของแอปพลิเคชันเป็น 1.6.6 เพื่อบังคับให้เบราว์เซอร์ดาวน์โหลดไฟล์หน้าบ้านล่าสุด
1.6.5
30 Jun 2026
V. 1.6.5
30 Jun 2026
MedCenter Map Version Workbench, Default Map Version, Duplicate Workflow, and Doctor Manual UI Improvements
- MedCenter – เมนูจัดการแผนที่ด้านขวา: เพิ่มชุดเครื่องมือสำหรับ Admin, Director และ Assistant ในหน้าแผนที่คู่มือแพทย์ แยกการทำงานเป็นพื้นที่แก้ไข Live/Draft, บันทึกงาน, เผยแพร่ Version และจัดการ Version เพื่อให้ลำดับการใช้งานชัดเจนขึ้น
- MedCenter – Draft Workflow: เพิ่มระบบบันทึก Draft สำหรับข้อมูลที่กำลังแก้ไข โดยการแก้ไข Draft จะไม่กระทบข้อมูลแผนที่ที่ผู้ใช้ทั่วไปเห็นจนกว่าจะเลือก Version ที่ต้องการเผยแพร่จริง
- MedCenter – Default Version: เพิ่ม Default Version จากไฟล์ต้นฉบับ 629 blip เป็น Version ตั้งต้นของระบบ สามารถเลือกใช้งาน กู้คืน หรือเซฟทับได้ แต่ไม่สามารถลบได้ เพื่อป้องกันข้อมูลแผนที่หลักสูญหาย
- MedCenter – Duplicate Version: เพิ่มปุ่ม Duplicate เป็น Version ใหม่ ให้เลือก Version ต้นทางแล้วสร้างสำเนาใหม่พร้อมโหลดเข้า Draft อัตโนมัติ เพื่อแก้ไขต่อโดยไม่กระทบ Version เดิม
- MedCenter – ลบ Version: เปลี่ยนปุ่มในเมนูจัดการจากลบ blip เป็นลบ Version โดยเลือก Version ที่ต้องการลบจากรายการได้โดยตรง และบล็อกการลบ Default Version ทั้งฝั่งหน้าเว็บและ API
- MedCenter – UI เลือก Version: ปรับหน้าต่างเลือก Version จาก dropdown เดิมที่อ่านยากเป็นรายการแบบการ์ด แสดงชื่อ Version, ป้าย Default/ลบไม่ได้, จำนวนจุด, เวลา และชื่อไฟล์ พร้อมปรับสีและขนาดตัวอักษรให้ชัดขึ้นใน Dark Mode
- MedCenter – Save Version: ปรับการเซฟ Version ให้ระบุชื่อเองได้ หากไม่กรอกจะใช้วันที่และเวลาอัตโนมัติ พร้อมแสดงจำนวนจุดที่เซฟ และเพิ่มสิทธิ์ลบ Save สำหรับ Admin/Director/Assistant
- Doctor Manual Search: ปรับระบบค้นหาให้เลื่อนไปยังจุดที่ highlight หลังค้นหา, คลิกเพื่อลบ highlight ได้ในครั้งเดียว, และแก้ปัญหาข้อความ HTML เพี้ยนหลังลบ highlight
- MedBot Chatbot: ปรับการตอบของบอทคู่มือแพทย์ให้ดึงข้อมูลคู่มือจากหน้าเดียวกันได้ถูกต้องทั้งหน้า Index และ MedCenter, เอาภาษาจีนด้านหน้าแชทออก, เพิ่มคำใกล้เคียงสำหรับคำถามที่พบบ่อย และปรับข้อความเมื่อไม่พบคำตอบให้สั้นพร้อมลิงก์ไปหน้าคู่มือแพทย์
- MedBot – หัวข้อแนะนำด่วน: เพิ่มคำตอบตรงสำหรับหัวข้ออัตราค่ารักษาพยาบาล, กฎการใช้โรงพยาบาล และขั้นตอนการทำงานของแพทย์ พร้อมลิงก์อ่านต่อไปยังโซนคู่มือที่เกี่ยวข้องโดยตรง
- MedBot – ประกาศอัปเดตหมอ: เพิ่มการดึงข้อมูลจากประกาศอัปเดตหมอให้บอทนำมาตอบได้ ค้นหาจากหัวข้อ หมวดหมู่ และรายละเอียดประกาศ พร้อมเลือกข้อมูลล่าสุดจากวันที่เผยแพร่เมื่อพบเนื้อหาซ้ำ
- Camp Injection: ปรับหน้าตั้งค่าคิวฉีดยาแคมป์ให้เหมือนหน้าเปิดรอบ Run Case มากขึ้น เปิดรอบด้วยวันที่วันนี้อัตโนมัติ แสดงเงินได้ต่อนาทีและจำนวนหมอที่เข้าคิว โดยไม่จำกัดจำนวนคนและไม่ให้แพทย์ออกคิวเองหลังลงคิว
- Camp Injection – ปิดรอบและส่งโบนัสอัตโนมัติ: เมื่อปิดรอบฉีดยาแคมป์ ระบบจะบันทึกเวลาของแพทย์ที่ยังค้างคิว สรุปยอดนาทีแบบปัดขึ้น และสร้างหรืออัปเดตรายการโบนัสแคมป์ใน Budget Management อัตโนมัติ
- Budget Management: เพิ่มช่องโบนัสแคมป์ให้ทำงานเหมือนโบนัสรันเคส เพื่อรองรับการรวมรายได้จากงานแคมป์ในรอบเงินเดือน และรองรับรายการโบนัสที่สร้างจากการปิดรอบฉีดยาแคมป์โดยตรง
- Salary Management: เพิ่มการแสดงยอดโบนัสแคมป์แยกในกล่องสรุป ตารางเงินเดือน รายละเอียดรายบุคคล และ Export โดยยังนำยอดไปรวมในเงินเดือนอัตโนมัติ
- เวอร์ชันแคชของระบบ (Cache Version): อัปเดตเวอร์ชันของแอปพลิเคชันเป็น 1.6.5 เพื่อบังคับให้เบราว์เซอร์ดาวน์โหลดไฟล์หน้าบ้านและปลั๊กอินล่าสุด
1.6.4
29 Jun 2026
V. 1.6.4
29 Jun 2026
Camp Injection Queue Controls and MapDocter URL Alias
- บอทช่วยค้นหาคู่มือแพทย์ (MedBot): กู้คืนการเข้ารหัสภาษาไทยและแผนผังคำพ้องความหมาย (Synonyms) ของบอทช่วยสืบค้นเสร็จสมบูรณ์, แก้ไขบั๊กของ JavaScript Template Literal ที่แสดงเป็น `${text}` และ `${content}` บนกล่องข้อความ, และเปลี่ยนการเรียกค้นหาข้อมูลคู่มือให้ผ่าน API ตรงจากระบบหลังบ้าน แทนการเรียกจาก locations.json
- ปุ่มเปิด/ปิดแชทบอทในหน้าตั้งค่า: เพิ่มสวิตช์เปิด/ปิด (สีชมพู) ในหน้าตั้งค่าระบบทั่วไป (System Settings) เพื่อเปิด/ปิดการแสดงผลของบอทลอยได้ทั่วทั้งระบบในทุกหน้าเพจ
- คิวฉีดยาที่แคมป์: แพทย์จะไม่สามารถกดออกจากคิวฉีดยาที่แคมป์ได้ด้วยตนเองหลังจากเข้าร่วมแล้ว โดยสิทธิ์การจัดการคิวยังคงเป็นของแอดมิน/สต๊าฟ และการกดออกเวร (Clock-out) จะลบรายชื่อแพทย์ออกจากคิวแคมป์พร้อมกับบันทึกเวลาสะสมลงในประวัติการเข้าเวรโดยอัตโนมัติ
- ลิงก์นำทาง MapDocter URL: เพิ่มเส้นทางนำทางใหม่ผ่าน URL `/MapDocter` สำหรับเข้าสู่หน้าแผนที่คู่มือแพทย์โดยตรง โดยยังคงรักษาให้สินทรัพย์และ API ของปลั๊กอิน `doc_manual` เดิมสามารถทำงานได้ปกติจากทั้งสอง URL
- เวอร์ชันแคชของระบบ (Cache Version): อัปเดตเวอร์ชันของแอปพลิเคชันเป็น 1.6.4 เพื่อบังคับให้เบราว์เซอร์ดาวน์โหลดและเรียกใช้งานไฟล์หน้าบ้านล่าสุดทันที
1.6.3
29 Jun 2026
V. 1.6.3
29 Jun 2026
Doctor Manual Plugin, Interactive GTA GPS Map, Custom Blips Upload, and UI Contrast Optimizations
- คู่มือหมอ – ลบ Blip จากจุดบนแผนที่: เพิ่มปุ่ม Delete Blip ใน popup ของจุดพิกัดสำหรับ Admin, Director และ Assistant พร้อมหน้าต่างยืนยันก่อนลบ และอัปเดตรายการ/marker บนแผนที่ทันทีหลังลบสำเร็จ
- คู่มือหมอ – ปุ่มทางลัดบน Header: ปรับปุ่มคู่มือหมอให้แสดงเป็นไอคอนหนังสืออย่างเดียวตามดีไซน์เดิม และทำให้ปุ่มแสดงทันทีโดยไม่รอ tooltip หรือจังหวะโหลด permission ฝั่ง JavaScript
- คู่มือหมอ – Light/Dark Mode และการอ่านตัวอักษร: เพิ่ม theme ให้ SweetAlert2 โดยตรง แก้ปัญหา dark mode พื้นขาวแต่ตัวอักษรอ่อน พร้อมปรับคลาสสี Tailwind ที่ไม่มาตรฐานให้เป็นสีที่ render แน่นอน
- คู่มือหมอ – Pagination รายการจุดพิกัด: เปลี่ยนจากการแสดงเฉพาะ 60 รายการแรกเป็นระบบแบ่งหน้า แสดงหน้าละ 60 รายการ พร้อมปุ่ม <<, <, เลขหน้า, >, >> และ reset กลับหน้าแรกเมื่อค้นหา
- คู่มือหมอ – ศูนย์คู่มือปฏิบัติงานแพทย์ (Doctor Manual): เพิ่มการตั้งค่าสิทธิ์การมองเห็นหน้าศูนย์คู่มือแพทย์ในPermissions Management และเพิ่มปุ่มนำทางรูปหนังสือเปิดที่แถบเมนูด้านบนเพื่อนำทางไปยังหน้าคู่มือแพทย์
- คู่มือหมอ – แผนที่แบบตอบโต้ (Interactive GPS Map): พัฒนาระบบแผนที่จากพิกัดเกม GTA รองรับการย่อขยาย ค้นหาสปอตตำแหน่ง คัดลอกพิกัดด่วน 634 จุด และคัดลอกคำสั่งวาร์ปด่วน (/tp) สำหรับผู้ดูแลระบบ
- คู่มือหมอ – บันทึกเวอร์ชันแผนที่ (Save & Rollback): เพิ่มปุ่มเฉพาะสำหรับ Admin, Director และ Assistant ในการสั่งบันทึกสถานะจุดพิกัดปัจจุบัน (Save Version) และกู้คืนข้อมูลพิกัดย้อนกลับตามเวลาที่ต้องการ (Rollback)
- คู่มือหมอ – คลิกขวาเพื่อเพิ่มจุดพิกัดใหม่: เพิ่มฟังก์ชันสำหรับแอดมินในการคลิกขวาจุดบนแผนที่เพื่อปักหมุดใหม่ กำหนดชื่อ เลือกรูปสัญลักษณ์ไอคอน และอัปโหลดไฟล์ไอคอนประเภท PNG ใหม่ขึ้นเซิร์ฟเวอร์โดยตรง
- คู่มือหมอ – ปุ่มปรับปรุงข้อมูลพิน (Edit Blip): ปรับโฉมปุ่มแก้ไขหมุดเดิมเป็นเมนู "Edit Blip" ซึ่งจะเปิดหน้าต่างตั้งค่าเต็มรูปแบบเหมือนตอนสร้างใหม่ สามารถพิมพ์แก้ไขชื่อ เลือกไอคอน หรืออัปโหลดรูปภาพทดแทน และเปลี่ยนรูปหมุดบนแผนที่ทันทีแบบเรียลไทม์
- คู่มือหมอ – ประสิทธิภาพการเลื่อนและซูมแผนที่: เพิ่มความลื่นไหลด้วย Canvas Rendering และระบบกรองวาดป้ายข้อความเฉพาะหมุดที่ปรากฏอยู่บนหน้าจอ (Dynamic Viewport Tooltip) ลดการทำงานของซีพียูลงกว่า 95%
- คู่มือหมอ – การแสดงผลโหมดสว่างและโหมดมืด (Light/Dark Mode Contrast): ปรับสีตัวอักษรของแบนเนอร์หัวข้อ การ์ด Coming Soon แผงรายการแผนที่ สีป๊อปอัพพิกัด และป้ายคำอธิบายบน Leaflet รวมถึงหน้าต่างกรอกข้อมูลของ SweetAlert2 ให้คมชัดและอ่านง่ายในทุกสภาวะแสง
- คู่มือหมอ – การคงสถานะการมองเห็นปุ่ม (AllowedPages Sync): ปรับปรุงระบบหลังบ้าน (Backend API) ให้เชื่อมโยงและคำนวณสิทธิ์ allowedPages ของผู้ใช้ร่วมกันในทุกเซสชันอัปเดตข้อมูลเบื้องหลัง แก้ปัญหาการสิทธิ์เปิดทับแล้วปุ่มนำทางซ่อนตัวเอง
1.6.2
28 Jun 2026
V. 1.6.2
28 Jun 2026
Chief of Staff Command Updates, Favorite Actions, Popup Details, and Case Run Restore
- Case Run – ย้ายสำรองรายชื่อเข้าฐานข้อมูลกลาง: เปลี่ยนจากการเก็บข้อมูลสำรองรายชื่อบอร์ดลง localStorage ของเบราว์เซอร์แต่ละเครื่อง ไปบันทึกในตารางฐานข้อมูลกลาง `case_run_board_backups` แทน เพื่อป้องกันปัญหาข้อมูลของแต่ละคนชนกันและเกิดการเขียนทับ (Rollback) รายชื่อแบบไม่ได้ตั้งใจเมื่อมีคนเปิดใช้งานบอร์ดพร้อมกันหลายคน
- Case Run – เงื่อนไขการสำรองประวัติเฉพาะล่าสุด: ปรับปรุงระบบบันทึกสำรองให้เก็บข้อมูลบอร์ดชุดล่าสุดเพียงชุดเดียวต่อเซสชัน เพื่อความรวดเร็วและประหยัดพื้นที่ และล็อกเงื่อนไขว่าจะเขียนทับข้อมูลประวัติสำรองก็ต่อเมื่อบนบอร์ดมีรายชื่อแพทย์ลงทะเบียนอยู่อย่างน้อย 1 คนเท่านั้น เพื่อป้องกันไม่ให้บอร์ดที่ว่างเปล่าไปเซฟทับประวัติสำรองเดิม
- Case Run – กู้คืนรายชื่อล่าสุด (Direct Restore): เพิ่มปุ่ม "กู้คืนรายชื่อล่าสุด" สีส้มในแถบ Header ด้านบนข้าง ๆ ปุ่ม "ปิดรอบและจ่ายโบนัส" เมื่อคลิกจะทำการยืนยันความต้องการกู้คืน และดึงรายชื่อแพทย์ชุดล่าสุดกลับมาคืนบอร์ดได้ทันทีในคลิกเดียวอย่างปลอดภัย
- Chief of Staff – คำสั่งเวรตามช่วงเวลา: เพิ่มคำสั่ง "ขอรายชื่อหมอเวร 00:00 - 06:00" และ "ขอรายชื่อหมอเวรจริง 00:00 - 06:00" เพื่อดึงรายชื่อแพทย์ตามช่วงเวลาที่กรอก พร้อมตรวจว่าเข้าเวรครบ 3 ชั่วโมงในช่วงเวรของตัวเองหรือไม่
- Chief of Staff – ชุดคำสั่งวิเคราะห์และเงินเดือน: เพิ่มคำสั่งดูรอบเงินเดือนทั้งหมด, ดูประวัติเงินเดือนเป็นรอบของแพทย์ที่แท็ก, เปลี่ยนสถานะเงินเดือนได้จากผลลัพธ์, ตรวจยอดค้างจ่าย/จำนวนหมอที่ยังไม่ได้รับเงิน และจัดอันดับ Top ขยันสุด จากข้อมูลย้อนหลัง 15 วัน
- Chief of Staff – คำสั่งงานค้างและคิวรันเคส: เพิ่มคำสั่งตรวจงานรออนุมัติ, สรุปงานค้างทั้งหมด, เคสรอ/ค้างตรวจ, เคสเกินเวลาที่กำหนด, คิวรันเคส, ปิด/ซ่อนรอบคิวรันเคส และกดเสร็จคิวรันเคสทั้งหมดผ่าน preview/confirm
- Chief of Staff – ปุ่มลัดแบบติดดาว: เพิ่มปุ่มดาวใน Action Registry ด้านขวา ให้ผู้ใช้เลือกคำสั่งที่ใช้บ่อยมาแสดงเหนือช่องพิมพ์แชทได้เอง โดยซ่อนปุ่มลัดค่าเริ่มต้นทั้งหมดและจำรายการที่ติดดาวไว้ในเครื่องผู้ใช้
- Chief of Staff – Popup รายละเอียดคำสั่ง: เปลี่ยนไอคอน i ใน Action Registry จาก tooltip ธรรมดาเป็น popup ของระบบ แสดงชื่อคำสั่ง รายละเอียด ประเภท Read/Confirm และตัวอย่างคำสั่งที่กดเติมลงช่องพิมพ์แชทได้ทันที
- Chief of Staff – ประสบการณ์ช่องพิมพ์แชท: ปรับช่องพิมพ์ให้เห็นข้อความระหว่างพิมพ์ชัดเจน แยกสีเฉพาะ mention/ชื่อและคำสำคัญ ลดปัญหาสีซ้อน และเพิ่มปุ่มเคลียร์แชทใกล้ปุ่มซ่อนแถบขวา
1.6.1
27 Jun 2026
V. 1.6.1
27 Jun 2026
Chief of Staff Command Center, Camp Injection Queue, Salary Payment Status, and Case Workflow Updates
- Chief of Staff – แชทสั่งงานในเว็บ: เพิ่มหน้า Chief of Staff สำหรับถามข้อมูล วิเคราะห์ภาพรวม และสร้าง action preview จากข้อความธรรมชาติ พร้อมระบบแชทที่ไม่ refresh หน้า มีสถานะกำลังพิมพ์แบบจุด 3 จุด และตอบกลับแบบหน่วงสั้นให้ใช้งานลื่นขึ้น
- Chief of Staff – Action Registry และ Confirm / Approval: เพิ่ม Action Registry แบบซ่อนได้/เลื่อนได้ พร้อมคำอธิบายผ่านไอคอน i และระบบยืนยันก่อนทำงานจริง รวมถึงส่งคำขออนุมัติสำหรับ action ที่ต้องใช้สิทธิ์สูง
- Chief of Staff – สิทธิ์รายบุคคล: เพิ่มแท็บ Chief of Staff ใน permissionsManagement เพื่อกำหนดผู้ใช้งานรายบุคคลนอกเหนือจาก Admin/Director/Assistant และปรับปุ่มลอยให้แสดงตามสิทธิ์ที่ได้รับ
- Chief of Staff – คำสั่งวิเคราะห์ระบบ: เพิ่มคำสั่งวิเคราะห์ภาพรวมวันนี้, งานค้างทั้งหมด, เคสค้างตรวจ, เงินเดือนยังไม่จ่าย, สรุปเวรวันนี้, สรุปคิวรันเคส, ใคร ว.11 / ว.12 อยู่บ้าง, ใครรันเคสอยู่ และ Analytics ช่วงเวลาคนเข้าเวรมากสุด
- Chief of Staff – สีสถานะผลตรวจ: ปรับผลการตรวจสอบให้แยกสีอัตโนมัติ โดยรายการที่เสร็จ/ปกติเป็นสีเขียว, รายการที่ยังต้องจัดการเป็นสีแดง และรายการที่กำลังดำเนินการอยู่เป็นสีส้ม
- Chief of Staff – คำสั่งแพทย์ด้วย @Mention: เพิ่ม autocomplete เมื่อพิมพ์ @ เพื่อค้นชื่อแพทย์และแนะนำคำสั่งใกล้เคียง เช่น เข้าเวรวันนี้, การเข้าเวรล่าสุด, ประวัติทั้งหมด, ตารางเงินเดือนล่าสุด, เคสล่าสุด, แต้มล่าสุด, ประวัติ ว.11/ว.12, รันเคสล่าสุด และขายยาล่าสุด
- Chief of Staff – คำสั่งจัดการผู้เล่น: เพิ่มคำสั่งปรับยศพร้อมแสดงยศเดิมและตัวเลือกยศ, เพิ่มใบขับขี่ฮอร์, ปรับเงินต่อนาทีรายคน, ปรับเงินทั้งยศ, ปรับสถานะ Active / Non-Active และตรวจสอบเข้าเวรครบ 3 ชั่วโมง
- Chief of Staff – คำสั่งเงินเดือน: เพิ่มคำสั่งเปลี่ยนสถานะเงินเดือนของแพทย์ที่แท็ก เช่น รับเงินเดือนล่าสุดแล้ว, รอรับเงินเดือน และเปลี่ยนสถานะเงินเดือน พร้อมคำแนะนำ pattern อัตโนมัติระหว่างพิมพ์
- Chief of Staff – คำสั่ง Points: เพิ่มคำสั่งเพิ่ม/ลบ Points แบบกรอกจำนวนเอง เช่น "เพิ่มพ้อย @name <จำนวน>", "@name เพิ่มพ้อยให้ <จำนวน> พ้อย", "ลบพ้อย @name <จำนวน>" หรือ "@name ลบพ้อย <จำนวน> พ้อย" โดยแสดงแต้มเดิม/แต้มใหม่และบันทึกประวัติ points_history หลังยืนยัน
- Chief of Staff – Autocomplete คำสั่ง Points: ปรับคำแนะนำเพิ่ม/ลบพ้อยให้ใช้จำนวนที่กรอกเอง ไม่ fix 500 และเมื่อพิมพ์จำนวนแล้วจะไม่แสดง autofill ซ้ำ เพื่อให้กด Enter ส่งข้อความได้ทันที
- Chief of Staff – Top Ranking: เพิ่มคำสั่ง Top 1-10 ตามจำนวนที่ขอ สำหรับเวลาเวร, ตั๋วเคส, เข้าครบเวลาเวร และเคส/เคสร่วม โดยเลือกช่วงเดือนนี้ สัปดาห์ที่ หรือวันที่ได้
- Chief of Staff – Force / Queue Actions: เพิ่มคำสั่ง force out หมอทั้งหมด และกดเสร็จคิวรันเคสทั้งหมด พร้อม preview และ confirm ก่อนทำงานจริง
- Salary Management – สถานะการรับเงินเดือน: เพิ่มสถานะรายคนในรายงานเงินเดือนหลัง Final ให้เลือก รอรับเงินเดือน / จ่ายเงินเดือนแล้ว และบันทึกได้จากหน้ารายละเอียดรายงาน
- My Salary Report – สถานะเงินเดือน: เพิ่มการแสดงสถานะ รอรับเงินเดือน / ได้รับเงินเดือนแล้ว ในหน้ารายงานเงินเดือนของแพทย์ พร้อมสีสถานะส้ม/เขียวให้ดูง่าย
- Salary Management – ปรับตารางให้พอดีจอ: ปรับความกว้างและการจัดวางคอลัมน์ในตารางเงินเดือนให้ใช้งานบนหน้าจอเดสก์ท็อปได้พอดีขึ้น โดยยังคงข้อมูลสำคัญครบถ้วน
- Case Review – ตรวจและจัดการเคส: แก้ปัญหามีเคสค้างแต่ไม่แสดงให้ตรวจ เพิ่มเมนูแก้ไขสถานะสำหรับ Admin/Assistant และเพิ่มการบันทึกเวลา Run Operator / คนช่วย / คนประกาศแบบนาทีอัตโนมัติเมื่อปิดรอบรันเคสและจ่ายโบนัส
- Case Run – จัดการคิวรับเคส: เพิ่มปุ่มกดเสร็จคิวรับเคสทั้งหมด เพื่อปิดรายการผู้ต่อคิวในรอบ active ได้เร็วขึ้น
- Case Run – สำรองชื่อในตาราง: เพิ่มระบบเก็บ snapshot เฉพาะช่องชื่อแพทย์และชื่อคู่ในตารางรันเคสเป็นระยะ เพื่อกู้ชื่อกลับมาอัตโนมัติเมื่อข้อมูลหายจากการ refresh, อัปโหลดไฟล์ หรือการแก้ไขหน้าเว็บ โดยไม่ดึงช่องอื่นกลับ และยังเคารพการล้าง/ลบแถวที่ผู้ใช้ตั้งใจทำ
- Shift Attendance Info: ปรับ shiftAttendanceInfo และ myShiftAttendanceInfo ให้ดึงข้อมูลเคสใหม่เสมอเพื่อให้ข้อมูลตั๋วเคสและเคส/เคสร่วมเป็นปัจจุบัน
- ชื่อหัวข้อเคสร่วม: ปรับชื่อจาก เคสร่วม (เพื่อนแท็ก) [Approved] เป็น เคส/เคสร่วม ให้ตรงกับข้อมูลปัจจุบันและการคำนวณเงินเดือน
- ปลั๊กอิน Social Event: แก้ปัญหา JavaScript redeclare ตัวแปร badge และปรับการโหลด resource เพื่อลดปัญหา request ยาวเกินจนเจอ HTTP 414
- System Logs และ User Logs: เพิ่ม label log สำหรับ action จาก Chief of Staff เช่น ปรับยศ, เพิ่มใบขับขี่ฮอร์, ปรับเงินต่อนาที, เพิ่ม Points, ปรับสถานะ, ขออนุมัติ และอนุมัติ action
- Camp Injection – เปิดคิวและจัดการรอบฉีดยา: เพิ่มหน้าตั้งค่าคิวฉีดยาแคมป์สำหรับผู้ดูแลระบบและแพทย์เฉพาะทางในการสร้าง คัดลอก แก้ไข และลบรอบคิวฉีดยา โดยรองรับการกำหนดอัตราค่าจ้าง (ต่อชั่วโมง/ต่อนาที) และกำหนดจำนวนแพทย์สูงสุดในแต่ละรอบ
- Camp Injection – โควต้าลงทะเบียน: เพิ่มการตั้งค่าจำกัดรอบการลงทะเบียนคิวฉีดยาแคมป์ของแพทย์ต่อวัน (Daily Limit) เพื่อความยืดหยุ่นในการลงคิวของแพทย์
- Camp Injection – ตรวจสอบผังและสิทธิ์ผู้ดูแล: เพิ่มหน้าต่างดูผังตำแหน่งแพทย์ที่ลงทะเบียนในแต่ละรอบย่อย พร้อมระบบช่วยเหลือให้ Admin/Staff สามารถกดเลือกแพทย์เพื่อลงทะเบียนหรือยกเลิกคิวจองแทนแพทย์รายบุคคลได้
- Camp Injection – จองคิวแดชบอร์ดแพทย์: เพิ่มตารางจองคิวฉีดยาแคมป์บนแดชบอร์ดของแพทย์ ให้แพทย์สามารถลงทะเบียนจองรอบและยกเลิกรายการด้วยตนเองผ่าน UI ที่อัปเดตแบบเรียลไทม์
- Camp Injection – คำนวณรายได้เงินเดือน: เชื่อมโยงข้อมูลการลงทะเบียนคิวฉีดยาแคมป์เข้าสู่ระบบคำนวณเงินเดือนอัตโนมัติ โดยคิดเรทสะสมตามจริง (ชั่วโมง/นาที) พร้อมรายงานประวัติรายรับและยอดเงินเคลมในหน้า slip เงินเดือนของแพทย์และรายงานหลักของผู้บริหาร
- Camp Injection – การปรับปรุงเงื่อนไขเวลา (Update): นำระบบล็อกห้ามลงทะเบียนหรือยกเลิกคิวล่วงหน้า 2 ชั่วโมงออก เพื่อให้แพทย์จองคิวล่วงหน้าของพรุ่งนี้หรืออนาคตได้ทันที และบล็อกการยกเลิกคิวเฉพาะเมื่ออยู่ในช่วงเวลาให้บริการจริงของรอบนั้นๆ เท่านั้น
- Camp Injection – ซ่อนรอบที่สิ้นสุดและสถานะรอประกาศ (Update): ปรับปรุงการแสดงผลให้ซ่อนรอบคิวฉีดยาที่สิ้นสุดเวลาให้บริการแล้วโดยอัตโนมัติ พร้อมทั้งแสดงสถานะ 'รอประกาศ' ด้วยเอฟเฟกต์แอนิมชันกระพริบเรียบง่ายเมื่อยังไม่มีรอบเปิดให้บริการ
1.5.11
26 Jun 2026
V. 1.5.11
26 Jun 2026
Cross-Day Surge, Salary Recalculation, and Client Info Logs
- Event Settings – Surge Pricing / Happy Hour: รองรับการตั้งช่วงเวลาพิเศษแบบข้ามวัน เช่น 22:50 - 01:50 โดยระบบจะแยกช่วงปลายทางเป็นวันถัดไป แสดงป้ายข้ามวัน และนำรายการข้ามวันไปใช้กับการกรองวันที่ได้ถูกต้อง
- Event Settings – แก้ไขรายการ Surge: เพิ่มปุ่มแก้ไขในรายการช่วง Surge Pricing / Happy Hour เพื่อโหลดข้อมูลเดิมกลับขึ้นฟอร์มและบันทึกปรับปรุงรายการเดิมได้
- Dashboard Doctor – ช่วงเวลาพิเศษ: ปรับการแสดงผล Surge/Happy Hour ให้รองรับรอบข้ามวันหลังเที่ยงคืน พร้อมคำนวณเงินรางวัลรวมจากช่วงเวลาจริงได้ถูกต้อง
- Salary Management – Update การคำนวณ: ปุ่ม Update การคำนวณจะดึงตั๋วเคสและเคส/เคสร่วมจากข้อมูลล่าสุดอีกครั้ง โดยตั๋วเคสมาจากเมนูแต้มตั๋วเคส ส่วนเคส/เคสร่วมมาจากเคสที่ส่งเองหรือถูกแท็กและผ่านการอนุมัติแล้ว
- System Logs – Client Info: เพิ่มการเก็บข้อมูลหน้าใช้งาน, Board ID/ชื่อบอร์ด, ประเภทอุปกรณ์, Browser/OS, ขนาดหน้าจอ และแสดงเป็น popover สมูทที่ไอคอน i หลัง Details พร้อมแก้ปัญหา API header เมื่อข้อมูลมีภาษาไทย
- Dashboard Admin และ User Management: เพิ่มเวลาเวรและเมนูเรียงลำดับในรายชื่อแพทย์ที่กำลังเข้าเวร พร้อมแยกยอดเคส/เคสร่วมและตั๋วเคสให้ดูชัดเจนขึ้น
1.5.10
25 Jun 2026
V. 1.5.10
25 Jun 2026
Salary Surge Pricing and Special Time History
- Salary Management – Surge Pricing / Happy Hour: ปรับการคำนวณโบนัสช่วงเวลาพิเศษจากรอบใน Event Settings ตามช่วงเวลาที่แพทย์เข้าเวรจริงแบบทับซ้อน (Overlap) และคิดเงินตามนาทีจริง เช่น ตั้ง 30,000/ชม. เข้า 10 นาที ได้ 5,000 บาท
- Salary Management – ลืมลงเวลา: นำรายการลืมลงเวลาที่ได้รับอนุมัติแล้วเข้าคำนวณเงินเดือนเหมือนช่วงเข้าเวรจริง พร้อมตัดช่วงที่ทับกับเวรจริงออกเพื่อไม่ให้ชั่วโมงและเงินถูกบวกซ้ำ
- Salary Management – ใบลา: ปรับให้ใบลาที่อนุมัติแล้วแสดงเป็นประวัติ/สรุปการลาเท่านั้น ไม่ถูกนำไปคิดเป็นชั่วโมงเงินเดือนหรือโบนัส Surge เพราะไม่ได้เป็นการเข้าเวรจริง
- รายงานเงินเดือนแพทย์ (My Salary Report): เพิ่มส่วน ประวัติช่วงเวลาพิเศษ ในหน้ารายละเอียด แสดงรอบ Surge/Happy Hour, ช่วง Event, ช่วงที่เข้าเวรจริง, นาที, อัตรา/ชม. และเงินที่ได้รับ
- รายงานเงินเดือน – รายละเอียดและ Export: แยกยอด Surge / Happy Hour ออกจากยอดตั๋วเคสและรวมเข้าโบนัสอัตโนมัติอย่างถูกต้อง พร้อมปรับ cache version ของโมดูลรายงานเงินเดือนให้โหลดไฟล์ล่าสุด
- Dashboard Admin – Final Reports: ปรับกราฟสัดส่วนรายจ่ายและแนวโน้มการเงินให้ใช้ข้อมูลจริงจากรายงานเงินเดือน final แยกเป็นเงินเดือนปกติ, เงินช่วงเวลาพิเศษ, ค่าตั๋วเคส, ค่าเคสร่วม, เงินรันเคส, เงินอัดฉีด, เงินค่าตำแหน่ง, โบนัส Story และอื่นๆ
1.5.9
24 Jun 2026
V. 1.5.9
24 Jun 2026
Multi-Board Case Run, Prioritized Queue Pool, and Enforcement Constraints
- ระบบรันเคสหลายชุด (Multi-Board Case Run): ผู้ดูแลสามารถเปิดรอบการรันเคสได้หลายบอร์ดพร้อมกัน โดยกำหนดชื่อบอร์ด (เช่น นอกเมือง, ในเมือง) และแสดงผลในรูปแบบการ์ดบริหารจัดการแยกจากกัน
- แดชบอร์ดแพทย์ – เลือกบอร์ดและระบบล็อกคิวป้องกันซ้ำซ้อน: เพิ่ม Dropdown ให้แพทย์เลือกดูข้อมูลและลงคิวในบอร์ดต่างๆ ได้ และระบบจะทำการล็อกปิดสิทธิ์การสลับบอร์ด/ซ่อนปุ่มลงทะเบียนทันทีหากแพทย์กำลังต่อคิวอยู่ในบอร์ดใดบอร์ดหนึ่ง เพื่อบังคับให้ลงคิวได้สูงสุดเพียง 1 บอร์ดพร้อมกัน
- การจัดระเบียบรายชื่อผู้ต่อคิว (Queue Pool Prioritization): ดึงรายชื่อแพทย์ที่ยังไม่มีคิวในตารางหลักขึ้นไปอยู่บนสุดของรายชื่อผู้ต่อคิว พร้อมแสดงผลเป็นตัวอักษรสีเหลืองกระพริบและวงเล็บกำกับ (ยังไม่ได้ลงคิว) ส่วนแพทย์ที่มีคิวแล้วจะแสดงเป็นสีเขียวปกติ
- ล้างช่องข้อมูลในลำดับตาราง (Clear Row Data): เพิ่มปุ่มล้างข้อมูลแถว (ไอคอนกากบาท) ในตารางรันเคส ช่วยให้สามารถล้างประวัติแพทย์คู่และฟิลด์เคสมีปัญหาในแถวนั้นๆ ให้ว่างเพื่อเตรียมจัดคิวใหม่ได้สะดวกยิ่งขึ้น
- จัดระเบียบคิวหลังยกเลิก/บีบแถวว่าง (Queue Reordering): เพิ่มปุ่ม 'เรียงคิวใหม่' ช่วยให้ผู้ดูแลระบบยกคิวแพทย์จากแถวล่างขึ้นมาแทนที่แถวที่ว่างและรักษาลำดับคิวปัจจุบัน (Active Row Index) ให้อยู่กับตัวแพทย์คนเดิมอย่างถูกต้องอัตโนมัติ
- ปรับสัดส่วนคอลัมน์เคสมีปัญหา: ปรับลดความกว้างของช่องเช็คบ็อกซ์แจ้งซัพ/ประกาศหา/เคลื่อนย้าย เพื่อขยายความกว้างช่องเบอร์โทรศัพท์ให้แสดงผลได้เต็มเบอร์และชัดเจนยิ่งขึ้น
- บันทึกประวัติอัตโนมัติเมื่อออกเวร (Clock-out Auto History): เมื่อแพทย์กดออกเวร ระบบจะค้นหาและถอดรายชื่อแพทย์ออกจากคิวของทุก active sessions พร้อมกัน พร้อมคำนวณและบันทึกเวลาทำงานสะสมเข้าสู่ประวัติโดยอัตโนมัติ
1.5.7
21 Jun 2026
V. 1.5.7
21 Jun 2026
Active Shift Duration Support & Leaderboard/Chart Boundary Splitting
- การคำนวณเวลาเข้าเวร – รองรับเวรที่กำลังทำงาน (Active Shift): ระบบสามารถคำนวณและสะสมชั่วโมงงานสำหรับเวรที่กำลังทำงานอยู่ ณ ปัจจุบัน (ยังไม่ได้กดออกเวร) เข้าสู่ผลสรุปชั่วโมงทำงานวันนี้/สัปดาห์นี้/เดือนนี้ ได้แบบ Real-time
- แดชบอร์ดแพทย์ – ปรับปรุงการตัดแบ่งชั่วโมงในชาร์ตและตารางผู้นำ: ปรับปรุงชาร์ตประวัติการทำงาน และตารางผู้นำ Top 10 แพทย์ที่เข้าเวร ให้แสดงผลโดยนำการตัดแบ่งเวลาเวรที่คาบเกี่ยวเที่ยงคืน (00:00) และเวลาของเวรที่กำลังทำงานอยู่มาคำนวณร่วมด้วยอย่างสมบูรณ์
- อนุมัติคำขอ – ซ่อนการขายยาแก้ปวด: ซ่อนแท็บ 'ขาย Painkiller' ออกจากหน้าอนุมัติ และหักลบจำนวนรอตรวจสอบในเมนูด้านซ้ายออกโดยสมบูรณ์
- แดชบอร์ดผู้ดูแล – ปรับปรุงกราฟประสิทธิภาพและผู้นำส่งเคส: เปลี่ยนการแสดงผล 'Top 10 ยอดขาย' เป็น 'Top 10 เคส แบบส่งเคส' และแทนที่ตัววัดยอดขายยาเป็นสถิติจำนวนเคสที่ส่งจริงในกราฟเรดาร์แสดงประสิทธิภาพแพทย์
- เมนูหลัก – เพิ่มแจ้งเตือนรอบการสอบและตรวจเคส: แสดงตัวเลขแจ้งเตือน (Notification Badges) สีแดงในรายการเมนู 'สอบเลื่อนขั้น' และ 'ตรวจเคส' เพื่อระบุจำนวนรายการที่รอดำเนินการอย่างชัดเจน
- จัดการเงินเดือน – อัตราค่าตั๋วเริ่มต้นและชื่อหัวข้อ: ปรับเปลี่ยนค่าตั้งต้นของตั๋วเคสพิเศษในรอบบิลนี้เป็น 0 บาท และเปลี่ยนชื่อหัวข้อ 'เคสร่วม' เป็น 'เคส/เคสร่วม' และ 'เงินเคสร่วม' เป็น 'เงินเคสรวม'
- ประวัติการทำงาน – วันเข้าเวรและการลาสาย: ปรับปรุงการนับจำนวนวันเข้าเวร (≥3ชม) ให้นับเฉพาะชั่วโมงเวรปกติของตนเองโดยไม่รวม OT และเพิ่มชั่วโมงคำนวณเวรอีก 1 ชั่วโมงสำหรับวันที่ได้รับอนุมัติใบลาประเภทสาย 1 ชั่วโมง พร้อมปุ่มตัว i ระบุคำอธิบายชัดเจน
- ประวัติเงินเดือน – การจัดเรียงรายการตามรหัสงวด (ID): ปรับปรุงการแสดงผลรายการประวัติเงินเดือนในหน้ารายงานแพทย์ให้จัดเรียงตามรหัสงวด (ID) ล่าสุดเป็นหลัก (งวดใหม่สุดอยู่บนสุด) โดยไม่มีการแสดงผลคอลัมน์รหัสงวดบนตารางให้รกสายตา
- ตรวจเคส – เพิ่มการ์ดสถิติตัวกรอง (Bento Filter Cards) และปรับปรุงกรอบสัดส่วน: ปรับปรุงส่วนตัวกรองในหน้าตรวจเคส โดยเปลี่ยนเป็นตัวการ์ดสถิติจำนวนเคส ทั้งหมด / รอตรวจ / อนุมัติแล้ว (สไตล์ Bento Grid) แสดงตัวเลขจำนวนเคสเรียลไทม์ และระบบสลับตัวกรองที่ไฮไลท์ขอบและสีพื้นหลังการ์ด พร้อมเพิ่มกรอบกล่อง (Frame) จัดกลุ่มแผงควบคุมและรายการส่งเคสให้แยกส่วนอย่างสวยงามเป็นสัดส่วนชัดเจน
- ตรวจเคส – ระบบแนะนำรายชื่อแพทย์อัตโนมัติ (Autocomplete) และสืบค้นผ่านการแท็ก: ปรับปรุงช่องค้นหาผู้ส่งในหน้าตรวจเคสให้รองรับการสืบค้นข้อมูลเพิ่มเติมจากรายชื่อแพทย์ร่วมที่ถูกแท็ก (Tagged Users) และเพิ่มกล่องแนะนำรายชื่อแพทย์แนะนำในระบบแบบเรียลไทม์ขณะกรอก (Autocomplete Dropdown) เพื่อความสะดวกในการกรองผลลัพธ์
- สอบเลื่อนขั้น – เพิ่มหัวข้อย่อยในเกณฑ์การประเมิน (Evaluation Criteria): พัฒนาระบบเกณฑ์การประเมินในเมนูผู้ดูแลสอบ ให้หัวข้อหลักแต่ละข้อสามารถเพิ่ม แก้ไข และจัดการหัวข้อย่อย (Sub-criteria) ได้เพื่อการลงคะแนนและประเมินผลที่สะดวกรวดเร็วและละเอียดยิ่งขึ้น
- แก้ไขบั๊ก – ปัญหา JavaScript Syntax ในหน้าสอบ: แก้ไขข้อผิดพลาด JavaScript Syntax Error ในส่วนตรวจประเมินข้อสอบและการจัดการข้อมูลของแพทย์ (ตรวจพบ Uncaught SyntaxError ใน plugins/exam/assets/js/examinationAdmin.js และ examinationUser.js) ให้กลับมาทำงานได้เป็นปกติ
- แก้ไขบั๊ก – ปัญหา 500 Internal Server Error: แก้ไขข้อผิดพลาด Fatal Error ใน api/users.php และ plugins/exam/api.php เกี่ยวกับฟังก์ชัน array_map() เมื่อมีผู้คุมสอบหรือผู้รับผิดชอบเพียงคนเดียว (รับค่าแบบไม่ใช่ Array) ให้ระบบรองรับการแปลงค่าแบบยืดหยุ่นโดยไม่ล่ม
- การตรวจข้อสอบ – กรองข้อมูลจัดส่งผลคะแนน: ปรับปรุงแบบฟอร์มการส่งคะแนนในหน้าผู้ดูแลสอบ (examinationAdmin.js) ให้ส่งข้อมูลเฉพาะข้อสอบชุดที่ผู้ตรวจเป็นผู้รับผิดชอบโดยตรง เพื่อป้องกันข้อผิดพลาดการปฏิเสธสิทธิ์จากฝั่งหลังบ้าน (Backend Security Validation)
1.5.6
21 Jun 2026
V. 1.5.6
21 Jun 2026
Simplified Exam Grading Flow & Confirmation Timestamps
- รอบสอบ – รายละเอียดและสถิติ: ปรับปรุงการ์ดเลือกรอบการสอบในเมนูผู้ดูแลให้ดึงสถิติจำนวนเคส 'รอตรวจ', 'ผ่าน', 'ไม่ผ่าน' และ 'รวมทั้งหมด' มาแสดงผลทันทีแบบ Real-time โดยไม่ต้องคลิกเลือกก่อน
- การตรวจข้อสอบ – หน้าจอตรวจเรียงแถว: เปลี่ยนหน้าจอตรวจข้อสอบแบบ Tab ในหน้ารวม เป็นหน้าจอรายการคำถามคำตอบเรียงลงมาตามแนวตั้งแบบหน้าเดียว (Continuous Scroll) พร้อม Sticky Header ระบุชุดข้อสอบและคะแนนสะสม เพื่อความสะดวก รวดเร็ว และไม่ต้องสลับหน้าไปมา
- การตรวจข้อสอบ – ซ่อนปุ่มประเมินรายชุดข้อสอบในหน้ารวม: เปลี่ยนการบันทึกสถานะของชุดข้อสอบให้ประมวลผลผ่าน/ไม่ผ่าน (เกณฑ์ 60%) อัตโนมัติในฐานข้อมูลเมื่อมีการบันทึกคะแนน และเก็บปุ่มประเมินรายชุดข้อสอบแบบดั้งเดิมไว้เฉพาะในโหมดตรวจแยกประเมินรายชุดข้อสอบ
- ประวัติผู้สอบ – คอลัมน์วันที่ส่งผล: เพิ่มการตรวจคิวรีเวลาส่งผลการประเมินที่ได้รับการยืนยัน (Confirmed At) และแสดงผลเวลาที่ผู้คุมสอบกดยืนยันการตรวจ (ส่งผล) เคียงคู่กับวันเวลาส่งข้อสอบปกติในตารางตรวจข้อสอบ
- แดชบอร์ดแพทย์ – สรุปชั่วโมงเวร วันนี้/สัปดาห์นี้/เดือนนี้: ปรับปรุงการ์ดสรุปผลชั่วโมงรวมเข้าเวรให้แสดงผลสถิติทั้ง 3 ช่วงเวลาพร้อมกันแบบทันที เพื่อให้แพทย์มองเห็นข้อมูลได้ครบถ้วนโดยไม่ต้องกดเลือกตัวกรองสลับไปมา
- การคำนวณเวลาเข้าเวร – ตัดแบ่งรอบเวลาเที่ยงคืน (00:00): พัฒนาระบบคำนวณเวลาเข้าเวรแบบคาบเกี่ยววัน โดยระบบจะแบ่งชั่วโมงเข้าเวรตรงจุดตัดเวลาเที่ยงคืน (00:00) และนับจำนวนชั่วโมงให้กับวันหรือช่วงการประเมินนั้นๆ อย่างถูกต้อง ไม่เกิดการสูญเสียชั่วโมงทำงาน
1.5.5
20 Jun 2026
V. 1.5.5
20 Jun 2026
Suppress Generic Loading Indicators
- Loading Indicator: ยกเลิกการแสดงผลหลอดโหลดสำหรับการนำเข้าข้อมูลหรือเปลี่ยนหน้าจอทั่วไป เพื่อไม่ให้รบกวนผู้ใช้งานบ่อยเกินไป โดยจะแสดงหลอดโหลดเฉพาะตอนอัปโหลดรูปภาพของ caseSubmit และ ว.12 เท่านั้น
1.5.4
20 Jun 2026
V. 1.5.4
20 Jun 2026
Real-time Image Upload Progress Indicator Bars
- Case Submission – หลอดโหลดแสดงความคืบหน้า: เพิ่มหน้าต่างแสดงเปอร์เซ็นต์ความคืบหน้าการอัปโหลดไฟล์รูปภาพหลักฐานส่งเคส (Real-time Upload Progress Bar) พร้อมระบบปิดการกดส่งซ้ำซ้อน
- ว.12 Break Status – หลอดโหลดแสดงความคืบหน้า: เพิ่มหน้าต่างแสดงเปอร์เซ็นต์ความคืบหน้าการอัปโหลดรูปหลักฐานการขอพักเวร ว.12 ในหน้าต่างแจ้งเตือนทันทีหลังจากกดยืนยัน
1.5.3
20 Jun 2026
V. 1.5.3
20 Jun 2026
My Salary Report & Break Time Evidence Uploads
- My Salary Report – โบนัสรันเคส: เพิ่มการแสดงผลตาราง 'ประวัติโบนัสรันเคส' ในหน้ารายละเอียดรายงานเงินเดือน เพื่อให้แพทย์สามารถตรวจสอบเวลาการรันเคสและจำนวนโบนัสเงินสะสมได้อย่างชัดเจน
- ว.12 Break Status – อัปโหลดหลักฐาน: เพิ่มฟังก์ชันการอัปโหลดรูปภาพหลักฐานประกอบการขอพักเวร (ว.12) โดยรองรับการเลือกไฟล์ปกติ, Drag and Drop ลากไฟล์มาวาง, และการใช้ Clipboard Paste (Ctrl + V) วางภาพจากหน้าต่างอื่นได้ทันทีพร้อมระบบแสดงภาพตัวอย่างย่อ
- ว.12 Break Status – Discord Hook integration: ดึงลิงก์รูปภาพที่อัปโหลดขึ้น Discord CDN Webhook กลับมาบันทึกเก็บในฐานข้อมูล เพื่อแก้ไขปัญหาลิมิตการโหลดรูปภาพข้ามเครือข่าย/เครื่อง (Cross-Device/Localhost)
- Summary Report – คอลัมน์หลักฐาน ว.12: เพิ่มคอลัมน์และปุ่มเปิดแสดงหลักฐานรูปภาพประกอบ ว.12 (จากลิงก์ Discord CDN) ในตารางตรวจสอบประวัติการพักเวร
- Case Submission – หน่วงเวลาการกดส่ง: เพิ่มระบบหน่วงเวลา 1.5 วินาทีหลังจากกดปุ่มส่งเคสสำเร็จเพื่อป้องกันปัญหาระบบอัปโหลดไฟล์ซ้ำหรือกดย้ำสองครั้งโดยไม่ตั้งใจ
1.5.2
20 Jun 2026
V. 1.5.2
20 Jun 2026
Summary Report: Break Time Tab, Discord Hooks & Salary Card Refinements
- Summary Report – ว.11/12 Tab: เพิ่มแท็บ 'ตรวจเวลา ว.11/12' ในหน้า summaryReport สำหรับ admin/director/assistant ให้ตรวจสอบประวัติการพักเวร (ว.11/ว.12) ของแพทย์ได้ โดยสามารถกรองตามชื่อ, ประเภท (ว.11/ว.12), และช่วงวันที่ พร้อม Summary Cards แสดงจำนวนรายการ, จำนวนแต่ละประเภท, และรายการที่กำลังใช้งานอยู่
- Summary Report – ว.11/12 Tab: ตารางแสดงข้อมูลชื่อแพทย์, ประเภท (badge สี), เวลาเริ่ม, เวลาสิ้นสุด, เวลารวม และรองรับ Pagination 20 รายการ/หน้า รายการที่ยังไม่สิ้นสุดจะแสดง badge 'กำลังใช้งาน' สีส้ม
- Dashboard Admin – Break Time Navigation: รายชื่อแพทย์ในกล่อง 'เวลารวมพักเวรวันนี้ (ว.11 / ว.12)' สามารถคลิกได้ เมื่อคลิกจะนำทางไปยังหน้า summaryReport แท็บ 'ตรวจเวลา ว.11/12' โดย filter ข้อมูลเฉพาะแพทย์ที่เลือกของวันนั้น (00:00 – 23:59) โดยอัตโนมัติ
- Popup Notify: ปรับเปลี่ยน Toast Notification ให้เป็น Custom Component แบบ Premium โดยสีเขียวสำหรับสำเร็จ, สีแดงสำหรับไม่สำเร็จ, พร้อม Progress Bar นับถอยหลัง และสามารถกดปิดได้
- Left Menu UI: ปรับ UI เมนูซ้ายให้ระยะห่างระหว่างช่องลดลง, เปลี่ยนการ Highlight รายการที่เลือกอยู่เป็นแท่งสีแนวตั้งด้านซ้าย (1.5px) ไล่สีจาก 40% ไป 0% ไม่มีขอบมนทั้งปุ่มและแท่ง
- Sakura Town & Salary Report Card: ปรับขนาดกล่อง Sakura Town ให้เท่ากับกล่อง 'รายงานเงินเดือน' และคงขนาดคงที่ตลอดเวลาไม่ขยายตามเนื้อหา
- Sidebar Fix: แก้ไขปัญหา Sidebar ขยายตัวดันเนื้อหาขึ้นเมื่อเมนูเปิดเต็ม ปัจจุบัน Layout คงที่ตลอดเวลาไม่ว่า Sidebar จะพับหรือขยาย
- User Management – Mobile UI: ซ่อน Username (ID) และ Discord ID ในหน้าจัดการผู้ใช้บนหน้าจอมือถือ (ขนาดน้อยกว่า 640px) เพื่อให้ตารางอ่านง่ายและไม่แน่นเกินไป โดยข้อมูลยังคงแสดงบน Tablet และ Desktop ตามปกติ
- Bug Fix – LANG Object Null Reference: แก้ไขข้อผิดพลาด Uncaught TypeError: Cannot read properties of null (reading 'menu_luckyspin_settings') และ 'menu_admin_dashboard' โดยการปรับปรุงการจ่ายค่า LANG ของระบบใน index.php ให้เปลี่ยนเป็น {} หากไม่มีข้อมูลหรือแปลงค่าล้มเหลว พร้อมเพิ่มการตรวจสอบตัวแปรแบบปลอดภัย (Defensive Check) ในปลั๊กอินวงล้อนำโชค (Lucky Spin)
- Discord Webhooks: ปรับปรุงรูปแบบข้อความการสลับสถานะ ว.11 / ว.12 ให้ตรงรูปแบบอื่น และปรับ Footer ท้ายข้อความของทุก Discord Hook ให้แสดงรูปแบบ 'Sakura Hospital - [วันที่] • วันนี้ เวลา [ชั่วโมง:นาที]' โดยถอดการแสดงผลวินาทีออกตามเงื่อนไขความต้องการ
- My Salary Report: ปรับปรุงระบบประวัติการเข้าเวรให้แสดงผลเป็น 'เวลารวม' ของการปฏิบัติงานทั้งหมด โดยไม่แยกแสดงเวรปกติและเวรโอทีออกจากกัน
- My Salary Report: ปรับดีไซน์ส่วน 'ประวัติเคส (ในงวดนี้)' ให้แสดงเป็นกล่องสรุปแบบการ์ด 2 ฝั่ง (เคสส่งตรวจ/เคสร่วม) สวยงามแบบเดียวกับหน้า Salary Management ของผู้บริหาร
- Database Mockup: ดำเนินการ Mockup ข้อมูลตอกเวร (Shifts) ของแพทย์ทั้งหมดในช่วงวันที่ 15-20 มิถุนายน 2026 เรียบร้อยรวม 127 รายการ เพื่อจำลองการแสดงผลสลิปเงินเดือนและประวัติอย่างสมบูรณ์
1.5.1
17 Jun 2026
V. 1.5.1
17 Jun 2026
Bug Fixes & UI Enhancements for On-Duty and Status Controls
- Database Connectivity: เพิ่มระบบตรวจสอบและสร้างตาราง `user_licenses` โดยอัตโนมัติหากไม่มีอยู่ในระบบ เพื่อแก้ไขและป้องกันข้อผิดพลาด 500 Internal Server Error
- Doctor Dashboard: ปรับปรุงกล่อง 'จัดการสถานะ' (ว.11 / ว.12) ให้แสดงผลอยู่เสมอในรูปแบบเบลอ (Glassmorphism Blur) พร้อมป้ายเตือน 'กรุณาเข้าเวรก่อนจัดการสถานะ' แทนการซ่อนการ์ดเพื่อสัดส่วนหน้าเว็บที่สวยงามยิ่งขึ้น
- Force Clock-out System: อัปเดตระบบบังคับออกเวรและระบบตารางตั้งเวลาออกเวร (Cron Job) ให้ทำการรีเซ็ตสถานะของแพทย์ที่กำลังพักเวรกลับเป็นสถานะปกติ (Active) และปิดบันทึกการพักเวรโดยอัตโนมัติเมื่อออกจากเวร
1.4.18
16 Jun 2026
V. 1.4.18
16 Jun 2026
Doctor Announcements System & Editor Enhancements
- Doctor Announcements: พัฒนาระบบประกาศข่าวสารอัปเดตแพทย์ โดยแยกการแสดงผลตามสิทธิ์และจัดเก็บประวัติลงฐานข้อมูลอย่างเป็นระบบ
- Announcements UI: ปรับปรุงรูปแบบรายการประกาศเป็นแบบ Bento Grid การ์ดพรีเมียม 4 คอลัมน์ รองรับเอฟเฟกต์จุดตารางด้านหลัง และไอคอนสัญลักษณ์ Feather ตามประเภทหมวดหมู่ประกาศ
- Detail Modal: ออกแบบหน้าต่างแสดงเนื้อหารายละเอียดของประกาศให้มีโครงสร้างสวยงามคล้ายหน้าหนังสือคู่มือ พร้อมระบบขยายรูปภาพสไลด์โชว์ และปุ่มกดย้อนกลับแยกต่างหาก
- Emoji Picker: ติดตั้งระบบเลือกอิโมจิสไตล์ iPhone (iOS-Style Emoji Keyboard) แยกตามประเภท พร้อมระบบค้นหาอัจฉริยะในหน้าฟอร์มสร้าง/แก้ไขประกาศ
- Highlight & Links Toolbar: เพิ่มแถบปุ่มสีไฮไลท์ข้อความ (เขียว, เหลือง, แดง, น้ำเงิน, เทา) และการผูกลิงก์ระบบจากบาร์โดยตรง รวมถึงปรับปรุงคลิกขวาเป็นกล่องโต้ตอบของ SweetAlert2 แทน Browser Prompts ทั้งหมด
- Typography & Scrollbar: ปรับสเปซการเลื่อน Scrollbar ของโมดอลไม่ให้เบียดชนกับปุ่มปิด และเรียกคืนขนาดตัวอักษรของหัวข้อ H1-H6 ให้ถูกต้องเหมาะสมตามระดับลำดับความสำคัญ
- Category Filter Popup: เพิ่มแถบตัวกรองหมวดหมู่ (Category Filter) บนป๊อปอัปประกาศข่าวสาร ช่วยให้แพทย์สามารถคลิกแยกดูเฉพาะเรื่องที่ต้องการได้ทันที
- Multi-Image Upload & URLs: ปรับปรุงระบบเพิ่มรูปภาพประกาศให้สามารถแนบได้ทีละหลายๆ รูป ทั้งรูปแบบลิงก์ URL และการอัปโหลดไฟล์ภาพจากเครื่องพร้อมกัน
- Rich Text Features: เพิ่มเครื่องมือปรับขนาด ฟอนต์ สีตัวอักษร และการแทรกรูปภาพเข้าไปในเนื้อความประกอบประกาศ ณ จุดที่ต้องการโดยตรง
- Nested Highlights: แก้ไขและปรับปรุงตัวถอดรหัสโค้ดพิเศษ (Regex Parser) ให้ประมวลผลข้อความไฮไลท์แบบวงเล็บซ้อนกันเช่น #[[ ข้อความ ]](สี) ให้แสดงผลได้อย่างถูกต้องสมบูรณ์
1.4.17
15 Jun 2026
V. 1.4.17
15 Jun 2026
Salary Management & Case Awards Integration
- Salary Management: ปรับปรุงการคำนวณค่าตั๋วพิเศษ โดยคำนวณรวมจากทั้งประวัติส่งเคสและประวัติที่กรอกเพิ่มคะแนนเคส (Case Awards) ตลอดทั้งรอบบิลโดยไม่ต้องมีตัวกรองวันที่
- Salary Management: ปรับปรุงตารางผลการคำนวณโดยนำช่องกรอกโบนัสค่าตั๋วเคส (ข้างชั่วโมงรวม) และซ่อนคอลัมน์ระบบกาชา (Auto/Manual/รวม) เพื่อความคล่องตัวในการดูข้อมูล
- My Salary Report: เพิ่มการแสดงผลยอดเงินรายรับของตนเองในหน้ารายชื่อแพทย์ (มุมบนขวา) เพื่อให้ตรวจสอบรายได้งวดนั้นๆ ได้ทันที
- My Salary Report: ซ่อนตัวเลือกช่วงวันที่สำหรับตั๋วพิเศษ ให้แสดงเฉพาะยอดเงินสะสมจากอัตราค่าตั๋วในรอบบิลนั้นๆ
- User Management: แก้ไขและปรับปรุงส่วนแก้ไขข้อมูลแพทย์ให้เป็นไปตามสิทธิ์ และบันทึกสังกัดยศรองได้อย่างถูกต้อง
1.4.16
13 Jun 2026
V. 1.4.16
13 Jun 2026
Case Run & Dashboard: UI Improvements & Fixes
- Case Run Bonus: เพิ่มฟังก์ชันกำหนดอัตราเงินได้ต่อนาทีแยกกันสำหรับคนรันเคส/คนประกาศ (Operator) และคนรับเคสปกติ
- Case Run Bonus: แก้ไขปัญหาการกดเพิ่มรายชื่อแพทย์ไม่ได้ในหน้าโบนัสรันเคส
- Case Run Bonus: ปรับปรุงการคำนวณและแสดงผลเงินโบนัสคนรัน/คนประกาศในทุกจุดที่เกี่ยวข้อง
- Case Run: รวม Input อัตราเงินได้ต่อนาทีแสดงเรียงบน-ล่างพร้อมเส้นคั่น รองรับทศนิยม 2 ตำแหน่ง (step=0.01)
- Case Run: ปรับสัดส่วนตาราง 'เคสมีปัญหา' Padding กว้างขึ้น Checkbox ใหญ่ขึ้น (w-5 h-5) พร้อม Transition Hover
- Case Run: แก้ไขข้อความ 'ค่าปรับบิลลอยให้แจ้งส่วนกลางก่อนปรับ', 'อย่าลืม OVERLAY !!' และ typo 'ติ๊ก'
- Dashboard Doctor: ปรับปรุง UI ปุ่ม 'ลงคิวรับเคส' เป็น Gradient พร้อม Hover Glow และ Shimmer Effect
- Dashboard Doctor: เปลี่ยนแสดงสถานะเป็น 'แถวที่ X ในตารางรันเคส' หากถูกจัดลงตารางแล้ว หรือ 'โปรดแจ้งผู้รันเคสให้ลงคิว' หากยังไม่มี
1.4.15
06 Jun 2026
V. 1.4.15
06 Jun 2026
Lucky Spin Dynamic Weight Scaling
- Lucky Spin: เพิ่มระบบปรับอัตราน้ำหนักแบบไดนามิก (Dynamic Weight Scaling) ในลักษณะเรียลไทม์ตามจำนวนตัวเลือกที่ลดลง (เช่น มี 10 รายการ ตั้งไว้ 2% เมื่อสุ่มออกไปจนเหลือ 5 รายการ อัตราจะเพิ่มขึ้นเป็น 4% โดยอัตโนมัติ)
- System Core: ปรับปรุงความถูกต้องของอัลกอริทึมการสุ่มระหว่างส่วนการแสดงผลของวงล้อ (Frontend Canvas) และการคำนวณผลรางวัล (Backend luckySpin API) ให้สอดคล้องกัน 100%
- System Core: อัปเดตเลขเวอร์ชันสคริปต์ (Cache Busting) เพื่อบังคับให้เบราว์เซอร์ดาวน์โหลดไฟล์ตั้งค่าและฟังก์ชันการสุ่มล่าสุดทันที
1.4.14
06 Jun 2026
V. 1.4.14
06 Jun 2026
Lucky Spin Doctor Avatar Integration
- Lucky Spin: รองรับการแสดงผลรูปภาพโปรไฟล์แพทย์ (Doctor Avatar) ในระบบวงล้อเสนอชื่อแพทย์ (auto_doctor_names)
- Lucky Spin: ดึงรูปโปรไฟล์แพทย์มาวาดลงในช่องแบ่งของวงล้อสุ่ม (Canvas segments) พร้อมจัดวางข้อความเยื้องเข้าหาศูนย์กลางเพื่อไม่ให้ซ้อนทับกัน
- Lucky Spin: เพิ่มการแสดงผลรูปโปรไฟล์ของแพทย์ผู้โชคดีลงในหน้าต่างป๊อปอัปประกาศผล (Result Modal) โดยจัดวางในกรอบรูปพรีเมียมตามระดับความพิเศษของรางวัลแทนที่ไอคอนแบบเก่า
1.4.13
05 Jun 2026
V. 1.4.13
05 Jun 2026
Comprehensive Thai Quote Fix & Cache Busting
- Bug Fix: แก้ไขข้อผิดพลาด Syntax Error สำหรับภาษาไทยทั้งหมดในระบบโดยการแปลง Single Quotes เป็น Double Quotes ในสคริปต์หน้าต่างๆ
- System Core: ปรับเพิ่มเวอร์ชันเพื่อทำลายแคชของเบราว์เซอร์ (Cache Busting) บังคับเบราว์เซอร์ดาวน์โหลดสคริปต์แก้ไขไวยากรณ์เวอร์ชันล่าสุด
- Redeem Points: ปรับปรุงหน้าประวัติการแลกของรางวัลให้แสดงผลเป็นตารางที่อ่านง่ายขึ้น พร้อมระบุผู้ดำเนินรายการและเวลาที่อนุมัติสำเร็จ
- Redeem Points: เพิ่มการแสดงผลสิทธิ์คงเหลือรายบุคคล (Max/User) ของผู้ใช้ในหน้าแลกรางวัล (เช่น 1/3 ครั้ง)
- Profile Management: เพิ่มปุ่มข้อมูล (ไอคอน i) ที่กล่อง My Points เพื่อแสดงประวัติการได้รับและใช้งานพ้อยท์ส่วนตัวผ่าน Popup
- Bug Fix: แก้ไขฟังก์ชันการอนุมัติคำขอแลกพ้อยท์ขัดข้องเนื่องจากการเรียกใช้ฟังก์ชันส่งพารามิเตอร์ไม่ครบถ้วน (ArgumentCountError)
- Doctor Dashboard: ปรับปรุงการแสดงผล TOP 10 เวลาเข้าเวรของแพทย์ใหม่ โดยแสดงภาพโปรไฟล์ ชื่อ และระยะเวลาที่เข้าเวรในรูปแบบ วัน/ชั่วโมง/นาที พร้อมดีไซน์อันดับ 1-3 อย่างพรีเมียม
1.4.12
05 Jun 2026
V. 1.4.12
05 Jun 2026
Thai Translation Quote & Encoding Fix
- Bug Fix: แก้ไขข้อผิดพลาด Syntax Error จากการใช้เครื่องหมายคำพูด (Quotes) สำหรับภาษาไทยในไฟล์สคริปต์ของระบบ เพื่อเสถียรภาพในการใช้งาน
1.4.11
05 Jun 2026
V. 1.4.11
05 Jun 2026
Module Cache Busting & Syntax Correction
- System Core: เพิ่มระบบ Cache Busting สำหรับโมดูล JavaScript เพื่อบังคับเบราว์เซอร์ให้โหลดโค้ดเวอร์ชันล่าสุดโดยอัตโนมัติ
- System Core: เพิ่มการกำหนดค่า .htaccess เพื่อยกเลิกการแคชไฟล์สคริปต์ในเบราว์เซอร์ผู้ใช้ ป้องกันปัญหาไฟล์ค้าง
- Bug Fix: แก้ไขข้อผิดพลาดทางไวยากรณ์ (SyntaxError) ของภาษาไทย 'คน' ใน dashboardAdmin.js และ 'เพิ่มของรางวัล' ใน redeemSettings.js ให้กลับมาทำงานได้เป็นปกติ
- Plugin Manager: กู้คืนระบบการโหลดสคริปต์ของปลั๊กอินวงล้อนำโชค (Lucky Spin) ในหน้าแรกของระบบ
1.4.10
04 Jun 2026
V. 1.4.10
04 Jun 2026
Lucky Spin Reset Board & Strict History Filtering
- Lucky Spin: เพิ่มปุ่ม 'รีเซ็ตกระดาน' (Reset Board) เพื่อรีเซ็ตจำนวนคงเหลือของไอเท็มทั้งหมดในวงล้อปัจจุบันกลับเป็นค่าตั้งต้น
- Lucky Spin: เพิ่มการบันทึกประวัติ (Logs) การรีเซ็ตกระดานลงในประวัติการหมุน พร้อมเก็บชื่อผู้ทำรายการและเวลา
- Lucky Spin: ปรับปรุงการแสดงผลประวัติการรีเซ็ตกระดานในตารางให้เด่นชัดด้วยไอคอนย้อนกลับสีแดง (rotate-ccw)
- Lucky Spin: ปรับปรุงระบบตัวกรองประวัติให้แสดงผลเฉพาะประวัติการหมุนของวงล้อที่เลือกอยู่เท่านั้น เพื่อป้องกันข้อมูลปะปนกัน
1.4.9
03 Jun 2026
V. 1.4.9
03 Jun 2026
Salary Report Label & Summary Update
- Salary Management: เปลี่ยนชื่อรายการ โบนัส (กรอกเอง) เป็น ค่าตั๋วเคส ในตาราง สรุปรายบุคคล และ Export
- Salary Management: เพิ่มการ์ด ค่าตั๋วเคส รวม และให้อัปเดตยอดแบบทันทีเมื่อแก้ไขค่าในรายงานร่าง
- Salary Management: ซ่อนสรุป Painkiller ที่ขายไปทั้งหมด และแทนพื้นที่สรุปกาชาด้วยยอดค่าตั๋วเคสตามที่ใช้งานจริง
- My Salary Report: ปรับการแสดงผลโบนัส manual เป็น ค่าตั๋วเคส โดยยังใช้ข้อมูลเดิมเพื่อไม่กระทบรายงานเก่า
- Language: อัปเดตคำแปล bonus_manual เป็น ค่าตั๋วเคส / Case Ticket Fee
- Bug Fix: แก้ไขปัญหาโครงสร้างไฟล์หลัก (main.js) ทำงานผิดพลาด (Unexpected end of input) และกู้คืนเมนูที่หายไป
- Bug Fix: แก้ไขการแสดงผลข้อความภาษาไทย (Mojibake) ในระบบการแจ้งเตือน (Notifications) และหน้าต่างยืนยัน
- Dashboard Admin: เพิ่มปุ่ม 'บังคับออกเวรทั้งหมด' เพื่อจบเวรผู้ปฏิบัติงานทั้งหมดในครั้งเดียว
- Profile Management: เปลี่ยนการแสดงผลช่อง 'ชั่วโมง OT' เป็น 'จำนวนรวมเคสทั้งหมด' ของตนเอง
- Profile Management: เปลี่ยนการแสดงผล 'กาชารวม' เป็น 'เงินจากค่าตั๋วเคสรวม' ของตนเอง
- Bug Fix: แก้ไขปัญหาปุ่ม Hamburger Menu บนเวอร์ชันมือถือกดแล้วเมนูไม่แสดง (แก้การทำงานซ้อนทับกัน)
- Bug Fix: แก้ไขชื่อหน้า ตรวจเคส/ส่งเคส และข้อความเมนูต่างๆ ที่กลายเป็นภาษาแปลกๆ (Mojibake) ให้กลับมาเป็นภาษาไทยที่ถูกต้อง
- System Logs: เพิ่มการบันทึกประวัติ (Logs) การตั้งค่า Surge Pricing อย่างละเอียด (บันทึกผู้เพิ่ม/ลบ/แก้ไข, ฟิลด์ที่เปลี่ยนแปลงเทียบค่าเก่า-ใหม่)
- Event Settings: เพิ่มปุ่ม 'ดูประวัติ' (Logs) รายบุคคลในตาราง Surge Pricing เพื่อดูเวลาและผู้ทำรายการล่าสุดในรูปแบบ Popup
- Redeem Settings: เพิ่มคอลัมน์แสดง 'ผู้สร้าง' ในตารางการจัดการของรางวัล
- Redeem Settings: เพิ่มระบบบันทึก Logs จัดการของรางวัลแบบละเอียด (การสร้าง, ประวัติการแก้ไขแต่ละฟิลด์, และการลบ) และส่งข้อมูลไปยัง System Logs
- Case Submit: ปรับสิทธิ์การแสดงผลตารางประวัติส่งเคส ให้ทุกคนมองเห็นเฉพาะเคสของตนเองเท่านั้น (รวมถึงระดับ Admin)
1.4.8
03 Jun 2026
V. 1.4.8
03 Jun 2026
System Settings, Login Background & Dashboard Fixes
- System Settings: เปลี่ยนชื่อโปรแกรมให้ดึงจาก systemSettings และแสดงผลกับ sidebar, footer และหน้า Login
- Appearance: เพิ่มการตั้งค่าสีหลักของระบบให้ปรับจาก Web Setting และแสดงผลตาม CSS variables จริง
- Login Background: เพิ่มอัปโหลดรูปพื้นหลังหน้า Login จาก systemSettings พร้อมขนาดแนะนำ 3840*2160 px และบันทึกลง system_settings.login_background_config
- Plugins UI: ปรับกล่องจัดการระบบเสริม (Plugins) ให้ระยะห่างและความสูงสม่ำเสมอ ไม่ชนกัน
- Dark/Light Mode: ปรับสีที่ค้างเป็นโทนฟ้าและแก้ footer copyright ให้ใช้พื้นดำโปร่งตามโหมด พร้อมแก้ข้อความหายใน Light Mode
- Automation: เพิ่มปุ่มเปิด/ปิดการบันทึก cron_log โดย Cron Job ยังทำงานตามปกติเมื่อปิดเฉพาะ log
- Dashboard Admin: แก้การนับผู้เข้าเวรวันนี้กับกำลังปฏิบัติงาน และแก้ข้อความภาษาไทยที่แสดงผลผิด encoding
- Case Workflow: ปรับแนวทางระบบเคสเป็นส่งจำนวนเคสและลิงก์ Google Drive จาก Doctor พร้อมหน้าอนุมัติสำหรับ Admin, Director และ Assistant
- Stability: แก้ timezone ของฐานข้อมูลเป็น +07:00 เพื่อให้เวลาเข้าเวรตรงกับเวลาไทย
1.4.7
03 Feb 2026
V. 1.4.7
03 Feb 2026
Points System & Plugin Management
- Points System: เพิ่มระบบสะสมคะแนน (Points) ทดแทนบางส่วนของรางวัลที่เป็นตัวเงิน พร้อมประวัติแต้ม
- Skill Matrix: ระบบประเมินทักษะแพทย์รูปแบบ Spider Chart พร้อมตัวช่วยคำนวณอัตโนมัติจากเวรและเคส
- System Plugins: เพิ่มแท็บ 'Plugins' ในตั้งค่าระบบ สำหรับเปิด-ปิดโมดูล Skill Matrix, Achievements, Surge Pricing และ Event Activity
- Plugin Visibility: ซ่อน UI, แบนเนอร์ และไอคอนที่เกี่ยวข้องอัตโนมัติเมื่อปิดการใช้งาน Plugin นั้นๆ
- Achievements: ปรับปรุงระบบความสำเร็จให้เชื่อมโยงเทบคะแนน (Points) และบันทึกประวัติ
- Events: เพิ่มการตั้งค่า Bonus Points สำหรับกิจกรรมพิเศษ
1.4.5
21 Jan 2026
V. 1.4.5
21 Jan 2026
Comprehensive UI/UX Improvements
- Dark Mode: เพิ่ม Theme สำหรับ SweetAlert2 popups และ Select dropdowns ให้รองรับ Dark Mode อย่างสมบูรณ์
- Pagination: ปรับรูปแบบปุ่มเลือกหน้าเป็น << < 1 2 3 > >> ในหน้า Summary Report และ Approve Work
- User Management: เพิ่มกราฟ Doughnut Chart แสดงสัดส่วนจำนวนแพทย์แยกตามยศ พร้อม Card Animation แบบใหม่
- User Management: แก้ไขบั๊กแสดง 'undefined' ในประวัติการแก้ไขผู้ใช้
- Event Activity: แก้ไขบั๊กการปั๊มตราที่แสดง Error เนื่องจากรูปแบบเวลาไม่ถูกต้อง
- Micro-animations: เพิ่ม CSS Animation classes (bounce-in, slide-up, stagger-animation) สำหรับใช้ทั้งระบบ
- Rank Simulation: เพิ่มโหมดจำลองยศสำหรับ Admin ทดสอบสิทธิ์การเข้าถึงหน้าต่างๆ ได้
- Summary Report: ปรับแสดงเวลาในรายงานสรุปตามยศเป็นรูปแบบ HH:MM
1.4.4
20 Jan 2026
V. 1.4.4
20 Jan 2026
UI Refinements & System Settings
- เพิ่มแท็บ Setting System ใน System Settings สำหรับตั้งชื่อโปรแกรมและปรับสี UI หลัก (Color Picker + Hue/Saturation)
- ปรับหน้า Summary Report แสดง 'ไม่มีคำขอที่รอดำเนินการ' เมื่อยังไม่เลือกตัวกรอง
- ปรับ Checkbox UI ในหน้า Budget Management ให้เป็นแบบ Custom Styled
- ปรับ Pagination ในหน้า User Management เป็นแบบ << < 1 2 3 > >>
- ปรับการแสดงเวลาเวรใน User Management ให้เป็นข้อความเฉยๆ (ไม่มีกรอบ)
- ปรับการแสดง Pay Rate ไม่ให้มีทศนิยม .00
- แก้ไขการอัปโหลดรูปโปรไฟล์ให้ทำได้โดยไม่ต้องส่งข้อมูลยศ
- แก้ไข session_start warning ในหน้า Changelog
1.4.3
10 Jan 2025
V. 1.4.3
10 Jan 2025
Sidebar & UX Improvements
- ปรับ Layout เมนูทางซ้าย (Sidebar) ให้ไอคอนและข้อความอยู่บรรทัดเดียวกัน (Flex-row)
- ปรับขนาดไอคอนเมนูให้เล็กลง (18px) เพื่อความสมดุลและสวยงาม
- แก้ไขบั๊กเมนูแจ้งเตือน (Notification Dropdown) ที่กดแล้วปิดเองทันที
- เพิ่มลิงก์ที่เลขเวอร์ชัน (Footer) ให้สามารถกดดูประวัติการอัปเดตได้ (Changelog)
1.4.2
08 Jan 2025
V. 1.4.2
08 Jan 2025
Modern UI & Dark Mode Polish
- อัปเดตไฟล์ CSS (style.css) เป็นเวอร์ชันใหม่ รองรับ Dark Mode ที่สมบูรณ์ขึ้น
- เพิ่ม Effect พื้นหลังจางๆ (Soft Highlight) เมื่อเอาเมาส์วางบนเมนู
- ปรับปรุง Animation การเลื่อนเปิด/ปิดเมนูย่อย (Submenu) ให้ลื่นไหล
- เพิ่มเส้นขอบ (Accent Border) ด้านซ้ายของเมนูที่กำลังใช้งานอยู่
1.4.0
05 Jan 2025
V. 1.4.0
05 Jan 2025
Major System Update (Notification & Refactor)
- เพิ่มระบบแจ้งเตือน (Notification System) แบบ Real-time (Polling)
- เพิ่มปุ่มกระดิ่งแจ้งเตือนที่แถบด้านบน แสดงจุดแดงเมื่อมีรายการใหม่
- Refactor โครงสร้าง API ใหม่ทั้งหมด แยกไฟล์เป็นหมวดหมู่ (api/auth.php, api/users.php, etc.)
- เพิ่มระบบส่งแจ้งเตือนหา Admin อัตโนมัติเมื่อมีคำขอลา, ลืมลงเวร หรือขายยา
- รวมเมนูตั้งค่า (Language, Theme, Admin Tools) ไว้ในปุ่มเดียว
1.3.18
01 Jan 2025
V. 1.3.18
01 Jan 2025
Event System Enhancement
- ปรับปรุงระบบกิจกรรม (Event) ให้คำนวณเวลางานได้แม่นยำขึ้น
- รองรับการนับเวลางานจากทั้ง 'การเข้าเวรปกติ' และ 'ใบแจ้งลืมลงเวร' ที่อนุมัติแล้ว
- เพิ่มการตรวจสอบช่วงเวลาทับซ้อน (Overlap Check) ก่อนสร้างกิจกรรมใหม่
- แก้ไขการแสดงผลปฏิทินกิจกรรมให้รองรับสถานะ 'สำเร็จ', 'รอปั๊ม', 'พลาด' ได้ถูกต้อง
1.3.17
27 Dec 2025
V. 1.3.17
27 Dec 2025
Update
- UI/UX Overhaul: ปรับโฉมหน้าตาของระบบใหม่ทั้งหมด (Modern UI) ให้ดูทันสมัย สะอาดตา และใช้งานง่ายขึ้น (Login แบบ Glassmorphism, การจัดวางแบบ Card Layout, เมนูและ Tabs ดีไซน์ใหม่)
- Salary Management: ปรับปรุงหน้ารายงานเงินเดือน แยกยอด Gacha (Auto/Manual) ชัดเจน, เพิ่มรายละเอียดใน Popup ของแพทย์ (ยอดสุทธิ, หักเงิน, หมายเหตุ), และปรับโหมด Read-only สำหรับรายงานที่ปิดงวดแล้ว
- Approve Work: ปรับดีไซน์หน้าอนุมัติ แยก Tab และตารางให้ดูง่าย พร้อมปุ่ม Bulk Action ที่เด่นชัดขึ้น
- Calendar Report: ปรับปรุงหน้าปฏิทินและ Timeline รายวันให้ดูง่ายขึ้น และเชื่อมโยงการคลิกแท่งเวลาไปยังหน้าแก้ไขข้อมูล (Summary Admin Edit) ได้ทันที
- System Core: ขยายเวลา Session Login ให้ค้างอยู่ในระบบได้นานขึ้น (3 วัน) และเพิ่ม Animation การเปลี่ยนหน้าให้ดูลื่นไหล
1.3.16
26 Dec 2025
V. 1.3.16
26 Dec 2025
Update
- Shift & Story Requests: ปรับปรุงหน้าขออนุมัติอัดฉีดและโบนัสสตอรี่ให้เป็นแบบ Modern Form พร้อมระบบเลือกรายชื่อแพทย์แบบใหม่
- User Management: ปรับปรุงตารางจัดการผู้ใช้งาน เพิ่มการแสดงสถานะ (Active/Non-active) และการเรียงลำดับข้อมูล
- Summary Report: ปรับปรุงหน้าสรุปผล แยกส่วน Admin Edit ออกเป็น Card ย่อยตามประเภท (Shift, Missed, Sales) เพื่อความสะดวกในการแก้ไข
1.3.15
26 Dec 2025
V. 1.3.15
26 Dec 2025
Update
- Salary Management: ปรับปรุงระบบคำนวณเวรข้ามคืนให้แม่นยำขึ้น, แสดงเวลาที่เข้าไม่ครบ (Missed Time), เปลี่ยนรูปแบบเวลาเป็น HH:MM, และนำช่องกรอก เงินหัก/หมายเหตุ กลับมา
- Dashboard (Admin & Doctor): ปรับกราฟ Top 10 ให้แสดงข้อมูลผลรวมจริง (ไม่ใช่ค่าเฉลี่ย), แก้ไข Tooltip และแกนเวลาเป็น HH:MM, Admin เพิ่มตัวกรอง Custom Range
- User Management: ปรับดีไซน์ใหม่ (Modern UI), เพิ่มคอลัมน์ ID, และเพิ่มระบบ Sorting (คลิกหัวตารางเพื่อเรียงลำดับ)
- Budget & Approve Work: เพิ่มระบบ Bulk Approval/Rejection (อนุมัติ/ปฏิเสธ แบบกลุ่ม) พร้อม Checkbox เลือกรายการ และเพิ่ม Pagination
- Reports Integration: เชื่อมโยง Calendar Report (คลิกที่แท่งเวลา) ให้ส่งค่า Filter ไปเปิดหน้าแก้ไขข้อมูลใน Summary Report โดยอัตโนมัติ
- My Salary Report: ปรับปรุง UI หน้ารายละเอียด และเพิ่มระบบ Pagination ในตารางประวัติ
1.3.14
23 Dec 2025
V. 1.3.14
23 Dec 2025
Update
- Dashboard (Analytics): ปรับปรุงกราฟ Performance Radar ให้เส้น Max (สีเขียว) คือค่าเฉลี่ยของ Top 10 และเส้น Avg (สีส้ม) คงที่เมื่อเปลี่ยนคน
- Dashboard (Analytics): ปรับ Heatmap ให้แสดงเป็น 'ค่าเฉลี่ย' การเข้าเวร เพื่อความแม่นยำ และเพิ่มโหมดกราฟเส้น
- Dashboard (Analytics): เพิ่มกราฟ Top 10 เวลาเข้าเวร และ ยอดขายยา
- Dashboard (Analytics): กราฟการเงิน (Financial Trend) ดึงข้อมูลเฉพาะรายงานที่ ปิดงาน (Final) แล้วเท่านั้น และแสดงตามรอบบิลจริง
- Dashboard (Overview): สรุปยศ (Rank) นับเฉพาะคนที่ เข้าเวรอยู่ (Active) และนำปุ่ม บังคับออกเวร กลับมา
- Calendar Report: เพิ่ม Tab Timeline (รายวัน) แสดงกราฟแท่งช่วงเวลาเข้าเวร 24 ชม. พร้อมเส้นแดงบอกเวลาปัจจุบัน
- System-wide: ปรับรูปแบบปีเป็น ค.ศ. (เช่น 2025) ทั้งระบบ
1.3.13
09 Dec 2025
V. 1.3.13
09 Dec 2025
Update
- System Fix: แก้ไขปัญหาการบันทึกข้อมูล รายชื่อที่ซ่อนจากปฏิทิน (Calendar Hidden Users) ไม่ทำงาน
- Permissions: อนุญาตให้ระดับ Director สามารถบันทึกการตั้งค่าระบบ (ในส่วนปฏิทิน) ได้
- UI Update: ปรับรูปแบบปีจาก พ.ศ. (เช่น 2568) เป็น ค.ศ. (เช่น 2025) ในทุกหน้าของระบบ (Dashboard, Reports, History, Approvals)
1.3.12
25 Nov 2025
V. 1.3.12
25 Nov 2025
Update
- Core Fix: แก้ไขสิทธิ์ (Permission) ให้ระดับ Doctor สามารถบันทึก/แก้ไข แจ้งลืมลงเวลา และ ขายยา ได้
- Admin Dashboard: เพิ่มยศหลังชื่อแพทย์ในรายการเข้าเวร และแสดงสีตามยศ
- Admin Dashboard: เพิ่มสรุปจำนวนแพทย์ที่เข้าเวรแยกตามยศ
- Admin Dashboard: ปรับรูปแบบเวลาในกราฟ Top 10 เป็น HH:MM
- Budget Management: เพิ่มคอลัมน์ ช่วงเวลา ในตารางอนุมัติ (Story & Shift Incentive)
- Missed Shift: ปรับฟอร์มแจ้งลืมลงเวลาให้ระบุ วัน-เวลา เริ่มต้น และ สิ้นสุด แยกกันได้ (รองรับข้ามวัน)
- Summary Report (Admin): เพิ่มระบบ Pagination (แบ่งหน้า) ในตารางแก้ไขข้อมูล
1.3.11
20 Nov 2025
V. 1.3.11
20 Nov 2025
Update
- เพิ่มระบบ Setting Autofill สำหรับช่วยพิมพ์คำสั่งประกาศ (Story Commands)
- เพิ่มปุ่ม Filter หมวดหมู่ ในหน้าคำสั่งประกาศ (Tab Use) เพื่อให้หาง่ายขึ้น
- ปรับปรุงช่องกรอกข้อมูลให้แสดงเฉพาะตัวแปรที่เกี่ยวข้องกับหมวดหมู่ที่เลือก
- เพิ่ม Datalist ในช่องกรอกตัวแปร ให้เลือกค่าจาก Autofill หรือพิมพ์เองได้
- เพิ่มปุ่ม ดูรายชื่อแพทย์ (รูปตา) ในหน้าอนุมัติและประวัติ (Budget Management) เพื่อดูรายละเอียดก่อนอนุมัติ
- เพิ่ม Badge แจ้งเตือน จำนวนคำขอที่รออนุมัติ ในเมนูจัดการโบนัส (Sidebar)
-
แก้ไขปัญหา
Tailwind CSS fail to loadโดยเพิ่มระบบตรวจสอบ (Polling) - แก้ไขปัญหา Clipboard API บน HTTP โดยเพิ่ม Fallback function
1.3.10
15 Nov 2025
V. 1.3.10
15 Nov 2025
Update
- เพิ่มเมนู Story Commands สำหรับจัดการคำสั่งประกาศ
- เพิ่มเมนู Story Incentive Request สำหรับขออนุมัติโบนัสสตอรี่
- เพิ่มเมนู Shift Incentive Request สำหรับขออนุมัติอัดฉีดเวร
- ปรับปรุงระบบจัดการสิทธิ์ (Roles) ให้รองรับเมนูใหม่
© 2026 Sakura Medical