Skip to content

e-safework — เอกสารระบบ

ระบบใบอนุญาตทำงาน (Work Permit) สำหรับโรงงานอุตสาหกรรม ครอบคลุมงานที่มีความเสี่ยงสูงสามประเภท คือ งานร้อน ที่อับอากาศ และ งานบนที่สูง

เริ่มอ่านจากตรงไหน

ถ้าคุณเพิ่งเข้ามาใหม่ ให้อ่านตามลำดับนี้

หน้าตอบคำถามอะไร
เป้าหมายของระบบระบบนี้มีไว้ทำไม แก้ปัญหาอะไร และจะรู้ได้อย่างไรว่าสำเร็จ
ภาพรวมและขอบเขตของระบบศัพท์ที่ใช้ ส่วนต่าง ๆ ของระบบ และกฎที่แต่ละส่วนเป็นเจ้าของ
แต่ละบทบาทต้องทำอะไรผู้รับเหมา จป. และผู้ตรวจสอบ ทำอะไรบ้าง และระบบห้ามอะไรไว้
วิธีใช้แอปผู้รับเหมาแต่ละโมดูลของแอปผู้รับเหมา และวิธีใช้ทีละขั้น
วิธีใช้แอป จป. และผู้ตรวจสอบแต่ละโมดูลของอีกแอปหนึ่ง ทั้งฝั่ง จป. และฝั่งผู้ตรวจสอบ
สิ่งที่รอคนตัดสินใจหรือลงมือรายการที่ค้างอยู่เพราะต้องรอคน ไม่ใช่รอโค้ด

สามแอปพลิเคชัน

แอปผู้ใช้ใช้ทำอะไร
แอปผู้รับเหมาผู้รับเหมาขอใบอนุญาต แก้ไข ส่งอนุมัติ ปิดงานของตนเอง และดูแลทะเบียนผู้ปฏิบัติงานพร้อมบัตร QR ของแต่ละคน
แอป จป. และผู้ตรวจสอบจป. และ ผู้ตรวจสอบอนุมัติหรือปฏิเสธใบอนุญาต ตรวจสอบหน้างานเป็นรอบ ๆ บันทึกค่าก๊าซ
APIเซิร์ฟเวอร์กลางเพียงตัวเดียว เป็นผู้ตัดสินกฎความปลอดภัยทั้งหมด

เปิดอ่านเอกสารบนเครื่องอื่น

ไฟล์ที่ build แล้วเป็นเว็บแบบไฟล์นิ่ง ต้องเปิดผ่านเว็บเซิร์ฟเวอร์ การดับเบิลคลิก index.html จะใช้ไม่ได้ เพราะไฟล์ประกอบทั้งหมดอ้างด้วยพาธเต็ม ซึ่งการเปิดแบบไฟล์ตรง ๆ จะหาไม่เจอ

ขั้นตอน build และบีบอัด (บนเครื่องที่มีโปรเจกต์นี้)

bash
bun install
bun run docs:build
cd docs/.vitepress && zip -r ~/e-safework-docs.zip dist

จะได้ไฟล์ zip ขนาดประมาณ 12 MB คัดลอกไปเครื่องไหนก็ได้

เปิดบนเครื่องปลายทาง (ไม่ต้องมีโปรเจกต์นี้)

bash
unzip e-safework-docs.zip && cd dist
npx serve

แล้วเปิด URL ที่แสดงขึ้นมา ปกติคือ http://localhost:3000

ให้ใช้ serve แทน python3 -m http.server เพราะเว็บนี้ใช้ลิงก์แบบไม่มีนามสกุลไฟล์ ซึ่งเซิร์ฟเวอร์ของ Python จะตอบ 404 เมื่อเปิดลิงก์ตรงหรือรีเฟรชหน้า ทดสอบแล้วทั้งสองแบบ

ถ้าต้องการเป็นไฟล์เอกสาร ไม่ใช่เว็บ

โฟลเดอร์ที่ build ได้เป็นเว็บไซต์ ต้องเปิดผ่านเซิร์ฟเวอร์ ถ้าต้องการส่งไฟล์ให้คนอื่นเปิดด้วยการดับเบิลคลิกได้เลย โดยไม่ต้องติดตั้งอะไร ให้ส่งออกหน้าที่เขียนสำหรับคนอ่านเป็น PDF

bash
bun run docs:pdf          # ได้โฟลเดอร์ docs-pdf/ ทั้งไทยและอังกฤษ

ใช้ Chrome เบื้องหลังในการเรนเดอร์ แผนภาพจึงออกมาครบ ไม่เป็นกล่องว่าง

หมายเหตุเรื่องภาษา

เอกสารส่วนที่อธิบาย ความหมายของระบบ แปลเป็นภาษาไทยแล้ว ส่วนเอกสารทางเทคนิคเชิงลึก เช่น สถาปัตยกรรม โครงสร้างฐานข้อมูล และขั้นตอนการติดตั้ง ยังคงเป็นภาษาอังกฤษโดยตั้งใจ เพราะอ้างถึงชื่อตัวแปร ชื่อฟิลด์ และรหัสข้อผิดพลาดที่เป็นภาษาอังกฤษในโค้ดจริง การแปลครึ่ง ๆ กลาง ๆ จะทำให้อ้างอิงผิดได้ง่ายกว่าการไม่แปลเลย

ตัวแอปพลิเคชันเองรองรับสองภาษาเต็มรูปแบบ และตั้งค่าเริ่มต้นเป็นภาษาไทย