รักษาความเย็น ตลอดทาง
ระบบตรวจสอบอุณหภูมิสิ่งส่งตรวจ (cold chain) สำหรับแผนกยานยนต์ BML — ข้อเสนอเข้าเฟสถัดไป
สิ่งที่เกิดขึ้นแล้วในเดือนสิงหาคม
ทีมยานยนต์เริ่มติดเซนเซอร์อุณหภูมิ Bluetooth ในกล่อง cool box ตั้งแต่กลางเดือน — ข้อมูลจริง 3 สัปดาห์แรกอยู่ในตัวเลขนี้
แหล่งข้อมูล: data/trips/*.json · data/registry.json · Python watcher local (17 ส.ค. – 1 ก.ย. 2569)
ข้อมูลมีครบ แต่ยังไม่มีใครดูได้ทันเวลา
ระบบปัจจุบัน sync ไฟล์ผ่าน Google Drive → พนักงานธุรการเปิดคอมพิวเตอร์ที่ออฟฟิศ 1 เครื่อง → รัน start_watcher.bat → เข้า dashboard local เท่านั้น เมื่อพนักงานกลับถึงออฟฟิศ อาจล่าช้าถึง 4-6 ชั่วโมง กว่าจะเห็นว่าเที่ยวไหนอุณหภูมิเกินเกณฑ์ ในบางกรณีสิ่งส่งตรวจถูกส่งเข้าแล็บและเริ่มวิเคราะห์แล้ว
สำหรับ ISO 15189 ที่แล็บต้องเก็บบันทึก cold chain ทุกเที่ยวและตรวจย้อนได้ ตอนนี้เรามีบันทึก — แต่ไม่ได้อยู่ในระบบกลางที่ผู้บริหาร ผู้ตรวจ QA และแมสเซนเจอร์เข้าถึงได้พร้อมกัน
สามช่องว่างสำคัญ
- ไม่มี alert แบบ real-time — deviation ที่ 12:30 กว่าจะรู้ตอน 17:00
- แมสเซนเจอร์เห็นแต่ตัวเลข ไม่เห็นเที่ยวของตัวเอง — ไม่มี app ในมือถือ
- ผู้บริหารไม่มีหน้ารวม — ต้องขอรายงานจากธุรการทุกครั้ง
Cold-chain compliance · 30 วันที่ผ่านมา
ค่านี้คำนวณจากทุก data point ที่เซนเซอร์อ่านได้ในช่วงเวลาสาย — ในเกณฑ์ 2.0 – 8.0 °C
- เที่ยวทั้งหมด
- 438
- เที่ยว PASS
- 412
- เที่ยว DEVIATION
- 26
- Data point รวม
- 127,548
- Point นอกเกณฑ์
- 4,584
- Alert ค้างในระบบ
- 3
สายไหนต้องดูแลใกล้ชิด
สายวิ่งจริง 12 สายจาก 26 สาย เรียงตามจำนวนเที่ยว 30 วัน (บาง messenger รับหลายสายในวันเดียว)
แถบสีบนสุด: ■ เช้า · ■ กลางวัน · ■ ประจำ · ■ เย็น
อ่านกราฟอุณหภูมิ 1 เที่ยว
เที่ยวจริงของ BML10 (กิตติ) วันที่ 16 สิงหาคม เส้นสีฟ้าคืออุณหภูมิใน cool box ทุก 1 นาที แถบเขียวคือช่วงปลอดภัย (2–8 °C) เส้นสีแดงคือช่วงที่หลุดออกจากเกณฑ์
สิ่งที่เกิดขึ้นจริง
ดิอาร์ท 20:00 โดย BML10 · กิตติ — ระหว่างจอดที่จุดรับสิ่งส่งตรวจจุดที่ 3 ผู้ประสานงานที่คลินิกขอตรวจของด้วย เปิดฝา cool box ค้างไว้ประมาณ 18 นาที อุณหภูมิพุ่งจาก 4.6 °C ไปสูงสุด 11.4 °C ก่อนปิดฝากลับ ใช้เวลา ~6 นาทีกว่าจะกลับเข้าเกณฑ์
ระบบตอนนี้ตรวจพบ หลังจาก กลับถึงออฟฟิศตอน 23:15 ห่างจากเหตุ 1 ชั่วโมง 55 นาที — ถ้าเป็นระบบใหม่ที่มี alert real-time ผู้ประสานงานที่แล็บจะได้รับ push notification ทันทีที่ผ่าน 8.0 °C และตัดสินใจว่าจะยอมรับสิ่งส่งตรวจเที่ยวนี้หรือขอเก็บใหม่ได้ก่อนที่พนักงานจะออกจากจุดนั้น
แอปในมือถือ · ไม่ต้องติดตั้งจาก store
เพราะเป็น PWA — เปิดจากเบราว์เซอร์ในมือถือ กด "Add to Home Screen"
- ไม่ต้องผ่าน App Store · deploy พร้อมเว็บ อัปเดตทันที ไม่ต้องรอผู้ใช้กดอัปเดต
- ทำงาน offline ได้ · รอบรถของวันเก็บไว้ในเครื่อง เพิ่งไม่มีเน็ตก็ยังกดสถานะได้ ระบบ sync เมื่อกลับ online
- เข้ากล้องได้ · ถ่ายรูปเทอร์โมมิเตอร์ / ฉลาก / ใบรับ ส่งขึ้นระบบทันที (เป็น audit trail สำหรับ ISO 15189)
- GPS ในตัว · ทุกครั้งที่กดสถานะ ระบบเก็บพิกัดพร้อมเวลา ป้องกันการกดปุ่มโดยไม่ได้อยู่หน้างานจริง
- ประหยัดเวลาพัฒนา 10 เท่า · โค้ดชุดเดียวกับเว็บ ไม่ต้องมี dev iOS + Android แยก
6 เฟส · จบใน 12-14 สัปดาห์
แต่ละเฟสส่งของใช้ได้จริง ตรวจได้ก่อนไปเฟสถัดไป — ไม่ใช่ big-bang
Next.js + Tailwind + Prisma · 13 ตาราง (user, messenger, vehicle, job, temperature, GPS, schedule, fuel, ...) พร้อมใช้
Auth cookie ตามมาตรฐาน BML · sidebar 5 กลุ่ม · หน้า /transport/queue เห็นรอบรถวันนี้ · จ่ายงานได้
หน้าคิวของแมสเซนเจอร์ในมือถือ · กด "รับเสร็จ" + บันทึกอุณหภูมิ + แนบรูปเทอร์โมมิเตอร์ · ระบบตัดสิน PASS/DEVIATION ทันที
ฐานข้อมูลลูกค้าประจำ + พิกัด · แผนที่รวมทุกจุดรับ · วางแผนเวรรายสัปดาห์แบบลากวาง
Coordinator เห็นตำแหน่งทุกคันบนแผนที่ · Push alert เมื่ออุณหภูมิเกิน · สรุปค่าน้ำมันสัปดาห์อัตโนมัติ
Deploy on-premise ในสำนักงาน · เข้า sidebar ของ dashboard.bangkok-medical-lab.com เป็นกลุ่มที่ 5
ตัวเลขที่จะเปลี่ยนใน 3 เดือน
ขั้นตอนถัดไป
ขอเห็นชอบเข้าเฟส 3 (Mobile PWA + Temperature log) · pilot กับแมสเซนเจอร์ 2 คน 2 สัปดาห์ก่อน rollout เต็ม
งบประมาณ: ใช้ทรัพยากรที่มีอยู่ · Google Maps API key ~500 บาท/เดือน · hosting Cloudflare Pages ฟรี · ไม่มี license fee
ผู้จัดทำ
ทีม IT · แผนกยานยนต์ BML
เอกสารนี้เป็น web page — เข้าถึงได้ตลอด:
bml-transport.pages.dev