Apps Script · นักเรียน + อุปกรณ์ QR

🎒

ระบบเช็คชื่อนักเรียนและยืม-คืนอุปกรณ์ ออนไลน์

ทำเว็บแอปโรงเรียนด้วย Apps Script — เช็คชื่อรายวัน สร้างบัตร QR นักเรียน สแกนขอยืม/คืนอุปกรณ์ ติดตามคืนไม่ครบ ออกรายงาน และแจ้งเตือน LINE โดยใช้ Google Sheets เป็นฐานข้อมูล

🎯 เป้าหมาย: จบบทนี้ น้องจะได้ ระบบเช็คชื่อนักเรียนและยืม-คืนอุปกรณ์ออนไลน์ — มี Dashboard, เช็คชื่อ, ใบลา, บัตร QR นักเรียน, คิวขอยืมจากมือถือ, รับคืนด้วย QR, รายงาน PDF/CSV และ LINE แจ้งเตือน ทำงานบน Google Sheets แล้วได้ลิงก์เปิดใช้จริง
📖 ระบบนี้ทำงานอย่างไร?

เป็น Web App บน Google Apps Script ที่ใช้ Google Sheets เป็นฐานข้อมูล — มีระบบล็อกอินหลายบทบาท (Admin / Teacher / Equipment Admin / Student) จัดการนักเรียน เช็คชื่อ ใบลา อุปกรณ์ คิวขอยืม การคืน และรายงานในหน้าเดียว

โค้ดทั้งหมดมีให้โหลดจากเมนู ☰ (Code.gs + Index.html) — รันฟังก์ชัน setupSystem ครั้งเดียว ระบบจะสร้างชีตหลักและข้อมูลตัวอย่างให้เอง

✅ เช็คชื่อนักเรียนรายวัน 🎫 สร้างบัตร QR นักเรียน 📱 สแกน QR เพื่อขอยืม 📦 จัดอุปกรณ์จากคิว 🔁 รับคืนด้วยบัตร QR ⚠️ ติดตามคืนไม่ครบ/เกินกำหนด 📝 ยื่น/อนุมัติใบลา 📊 Dashboard Real-time 📄 รายงาน PDF/CSV 💬 แจ้งเตือน LINE 📱 Responsive
🧩 ส่วนประกอบหลัก
ส่วนประกอบหน้าที่
Code.gsฝั่งเซิร์ฟเวอร์ — ล็อกอิน อ่าน/เขียน Sheets จัดการ QR ยืม-คืน ออกรายงาน ส่ง LINE และมี doGet() คืนหน้าเว็บ
Index.htmlหน้าเว็บ Single Page — Login + Dashboard + เช็คชื่อ + QR Borrow + Queue + Return + Equipment + Reports + Settings
google.script.runสะพานเชื่อม — ให้หน้าเว็บเรียกฟังก์ชันใน Code.gs
SpreadsheetAppใช้ Google Sheets เป็นฐานข้อมูล (อ่าน/เขียนข้อมูลจริง)
QR Librariesใช้ html5-qrcode สำหรับสแกน และ qrcodejs สำหรับสร้างบัตร QR
LINE Messaging APIส่งแจ้งเตือนรายการขอยืม ส่งมอบ คืนไม่ครบ และแจ้งเตือนใกล้ครบกำหนด
🗄️ ฐานข้อมูลหลัก (สร้างอัตโนมัติ)
ชีตเก็บอะไร
Studentsข้อมูลนักเรียน + CardToken สำหรับบัตร QR
Attendanceบันทึกเช็คชื่อรายวันตามห้อง/ช่วงเวลา
Classes / StudyPeriodsข้อมูลห้องเรียนและช่วงเวลาเรียน
Equipment / EquipmentCategoriesคลังอุปกรณ์ จำนวนพร้อมใช้ ถูกยืม ชำรุด สูญหาย
CardBorrowQueueคิวคำขอยืมจากมือถือหลังสแกนบัตรนักเรียน
BorrowRequests / BorrowItemsรายการยืมและรายการอุปกรณ์ในแต่ละใบยืม
EquipmentReturns / Repairsประวัติรับคืนและแจ้งซ่อมอุปกรณ์
Users / Sessions / Settingsผู้ใช้ ระบบล็อกอิน และค่าตั้งค่า LINE/โรงเรียน
🎯 ภารกิจ 6 ขั้นตอน