[แจกฟรี] โปรแกรมจองยานพาหนะ ระบบจองรถออนไลน์ Car Reservation Service (CRS) PHP

[แจกฟรี] โปรแกรมจองยานพาหนะ ระบบจองรถออนไลน์ Car Reservation Service (CRS) PHP

ระบบจองรถสำหรับองค์กรที่พัฒนาบน Now.js และ Kotchasan โดยเชื่อม frontend แบบ SPA เข้ากับ PHP API และ workflow อนุมัติจริงของงานภายในองค์กร จุดเด่นของโปรเจ็กต์นี้คือไม่ได้มองการจองรถเป็นเพียงฟอร์มรับข้อมูล แต่จัดการทั้งวงจร ตั้งแต่การเลือกยานพาหนะ การตรวจช่วงเวลา การกำหนดคนขับ การอนุมัติตามบทบาทและแผนก ไปจนถึงการแจ้งเตือนผู้เกี่ยวข้องและการดูแลข้อมูลหลังบ้าน

โปรเจ็กต์นี้กำลังแก้ปัญหาอะไร

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

โปรเจ็กต์นี้จึงถูกออกแบบมาเพื่อเปลี่ยนกระบวนการเหล่านั้นให้กลายเป็นระบบที่ตรวจสอบได้ มีสถานะชัดเจน และรองรับบทบาทของผู้ใช้แต่ละกลุ่มอย่างจริงจัง ทั้งผู้ขอรถ ผู้อนุมัติ เจ้าหน้าที่ และผู้ดูแลระบบ

ระบบนี้ทำอะไรได้บ้าง

  • เปิดให้ผู้ใช้เลือกดูรถจากแคตตาล็อกพร้อมรูปภาพและข้อมูลประกอบก่อนตัดสินใจจอง
  • สร้างคำขอจองรถโดยระบุช่วงเวลา จำนวนผู้เดินทาง รายละเอียดงาน อุปกรณ์ และตัวเลือกคนขับ
  • ติดตามรายการจองของตนเอง แก้ไขคำขอ หรือยกเลิกตามนโยบายที่องค์กรกำหนด
  • ส่งคำขอเข้าสู่ workflow อนุมัติที่อิงกับสถานะสมาชิกและแผนก
  • ให้ผู้อนุมัติตรวจคำขอ กำหนดคนขับจริง อนุมัติ ปฏิเสธ หรือส่งกลับให้แก้ไขจากหน้ารีวิวเดียว
  • แสดงภาพรวมการใช้งานรถผ่านแดชบอร์ดและปฏิทินการจอง
  • ให้ผู้ดูแลระบบจัดการข้อมูลรถ รูปภาพรถ หมวดหมู่ ยี่ห้อ ประเภท อุปกรณ์ และค่ากติกาของระบบ
  • แจ้งเตือนผู้เกี่ยวข้องผ่าน Email, LINE และ Telegram เมื่อสถานะคำขอเปลี่ยน
  • ใช้ความสามารถส่วนกลางของแพลตฟอร์ม เช่น auth, profile, permissions, social login, theme, language และ system settings ร่วมกับโมดูลจองรถ

สิ่งที่ทำให้โปรเจ็กต์นี้น่าสนใจกว่าฟอร์มจองรถทั่วไป

ความน่าสนใจของระบบนี้อยู่ที่การมอง “การจองรถ” เป็นงานปฏิบัติการที่มีผลต่อหลายฝ่าย ไม่ใช่แค่การกรอกข้อมูลเพื่อขอใช้ทรัพยากรหนึ่งรายการเท่านั้น ผู้ขอรถต้องเลือกยานพาหนะที่เหมาะกับงานจริง ผู้อนุมัติต้องเห็นบริบทพอจะตัดสินใจได้ เจ้าหน้าที่ต้องรู้ว่าจะมอบหมายคนขับอย่างไร และผู้ดูแลระบบต้องกำหนดนโยบายให้สอดคล้องกับองค์กร

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

เมื่อมองจากมุมของผู้ใช้งานแต่ละกลุ่ม

ผู้ขอใช้รถ

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

ผู้อนุมัติและเจ้าหน้าที่ที่เกี่ยวข้อง

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

สิ่งที่สำคัญคือการอนุมัติไม่ได้เป็นเพียงการกดปุ่มเปลี่ยนสถานะ แต่มีการตรวจสอบว่ารถยังว่างอยู่จริงในช่วงเวลานั้น และบังคับให้มีรูปแบบการขับที่ใช้งานได้จริง เช่น self-drive หรือมีการมอบหมายคนขับที่ระบบยอมรับ

ผู้ดูแลระบบ

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

เส้นทางการทำงานของระบบตั้งแต่ต้นจนจบ

  1. ผู้ใช้เข้าสู่ระบบ และต้องมีข้อมูลแผนกก่อนจึงจะเริ่มขอใช้รถได้
  2. ผู้ใช้เลือกดูรถจากแคตตาล็อกหรือเข้าฟอร์มจองโดยตรง
  3. ระบบรับข้อมูลคำขอและตรวจสอบความครบถ้วนของช่วงเวลา รายละเอียดการเดินทาง และตัวเลือกต่างๆ
  4. ก่อนบันทึก ระบบจะตรวจสอบว่ารถคันนั้นพร้อมใช้งานในช่วงเวลาที่ระบุหรือไม่
  5. ถ้าองค์กรเปิด workflow อนุมัติ คำขอจะเข้าสู่สถานะรอการพิจารณาตามขั้นและเงื่อนไขของผู้อนุมัติ
  6. ผู้อนุมัติเข้าไปที่หน้ารีวิว ตรวจข้อมูลทั้งหมด และกำหนดคำตัดสิน
  7. ก่อนอนุมัติขั้นสุดท้าย ระบบตรวจสอบความซ้ำซ้อนของเวลาใช้งานอีกครั้ง เพื่อป้องกันการชนกันของทรัพยากร
  8. เมื่อสถานะเปลี่ยน ระบบส่งการแจ้งเตือนไปยังผู้เกี่ยวข้องผ่าน Email, LINE และ Telegram
  9. รายการที่ได้รับอนุมัติแล้วจะถูกนำไปแสดงในปฏิทินการจองและสรุปผลในแดชบอร์ด

ข้อตกลงการนำไปใช้งาน

  • สามารถนำไปใช้งานส่วนตัวได้
  • สามารถพัฒนาต่อยอดได้
  • ต้องการให้ผู้เขียนพัฒนาเพิ่มเติม ติดต่อผู้เขียนได้โดยตรง (อาจมีค่าใช้จ่าย)
  • ผู้เขียนไม่รับผิดชอบข้อผิดพลาดใดๆในการใช้งาน
  • ห้ามขาย ถ้าต้องการนำไปพัฒนาต่อเพื่อขายให้ติดต่อผู้เขียนก่อน (เพื่อบริจาค)

การติดตั้งและการอัปเกรด

  • ดาวน์โหลดไฟล์ล่าสุดจาก Github
  • แตกไฟลฺ zip ที่ได้มาออกและอัปโหลดโค้ดทั้งหมดจากที่แตกไฟล์ขึ้นไปบน Server ไม่แนะนำให้อัปโหลดสคริปต์จากที่ทดสอบไปยัง Server ต้องใช้ไฟล์ใหม่และติดตั้งใหม่บน Server เท่านั้น รวมถึงการอัปเกรดด้วย
  • เรียกตัวติดตั้ง http://domain.tld/install/ (เปลี่ยน domain.tld เป็นโดเมนรวมพาธที่ทำการติดตั้งไว้) และดำเนินการตามขั้นตอนการติดตั้งหรืออัปเกรดจนกว่าจะเสร็จสิ้น
  • ลบไดเร็คทอรี่ install/ ออก
สำหรับใครที่ไม่รู้ว่าวิธีการติดตั้งทำอย่างไร ดูคลิปวิธีการติดตั้งนี้ได้เลย วิธีการอัปโหลดสคริปต์ และการติดตั้งโปรแกรมที่สร้างจากคชสาร
พบปัญหาการติดตั้ง แนะนำอ่านกระทู้นี้ก่อน https://www.kotchasan.com/forum.html?wbid=3809
 

สามารถเข้าใช้งานได้โดย User

ผู้ดูแลระบบ : admin@localhost + admin (เว็บตัวอย่างเข้าระบบด้วยบัญชีโซเชียล และปิดการใช้งานบางส่วนไว้)
สมาชิกทั่วไป  : demo@localhost + demo

พบปัญหาการใช้งานหรือต้องการเสนอแนะ หรือ ต้องการสอบถามใดๆ โพสต์ถามไว้บนเว็บบอร์ดของเว็บไซต์นี้ได้เลยนะครับ ผมยินดีตอบทุกคำถาม

เว็บไซต์ตัวอย่าง https://car.acc.in.th

ดาวน์โหลดโค้ดได้จาก Github

หากต้องการสนับสนุนผู้เขียน สามารถบริจาคช่วยเหลือค่า Server ได้ที่
ธนาคาร กสิกรไทย สาขากาญจนบุรี
เลขที่บัญชี 221-2-78341-5
ชื่อบัญชี กรกฎ วิริยะ
0SHAREFacebookLINE it!