VeloxonHub เจาะลึกระบบจองอีเวนต์จากตะกร้าสินค้าสู่ที่นั่ง
เรียนรู้เบื้องหลังการทำงานของ VeloxonHub ในการแปลงคำสั่งซื้อทั้งแบบฟรีและเสียเงินให้กลายเป็นตั๋วงานอีเวนต์ผ่านขั้นตอนการตั้งค่า 6 ขั้นตอน

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

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
สำหรับขั้นตอนการทำงานเบื้องหลัง เริ่มต้นจากการที่โฮสต์สร้างอีเวนต์ผ่านหน้าต่างลิ้นชักที่มีทั้งหมด 6 ขั้นตอนประกอบด้วย รายละเอียด, ประเภท, กำหนดการ, การลงทะเบียน, ราคา และการแจ้งเตือน โดยในระบบภายในจะมองสิ่งนี้ว่าเป็นผลิตภัณฑ์กำหนดการ (scheduling product) ที่มีการตั้งค่าอีเวนต์และรอบเวลาการจัดงานหนึ่งรอบหรือมากกว่านั้น รวมถึงการกำหนดเขตเวลาและผู้ให้บริการระบบประชุม
ในส่วนของการกำหนดราคานั้นจะกระทำหลังจากทำการบันทึกข้อมูลครั้งแรก โดยใช้โมเดลราคาเดียวกับผลิตภัณฑ์อื่นๆ ทั้งหมด ซึ่งช่วยให้วิดเจ็ตแสดงรายการสินค้าและตะกร้าสินค้าไม่ต้องแยกแยะว่าสินค้าชิ้นนั้นคืออีเวนต์หรือไม่ นอกจากนี้ วิดเจ็ตรายการสินค้าที่โฮสต์นำไปวางบนหน้าเว็บจะทำการดึงข้อมูลผลิตภัณฑ์สาธารณะเพื่อแสดงผลอีเวนต์ร่วมกับสินค้าประเภทอื่น พร้อมฟังก์ชันการค้นหา ตัวกรอง และปุ่มเพิ่มลงตะกร้าสินค้า
การนำระบบอีเวนต์มารวมเข้ากับโครงสร้างพื้นฐานของผลิตภัณฑ์ที่มีอยู่แล้ว (Unified Product Architecture) ถือเป็นแนวทางทางสถาปัตยกรรมซอฟต์แวร์ที่ช่วยลดความซ้ำซ้อนของโค้ดได้อย่างมีประสิทธิภาพ การใช้ตะกร้าสินค้าและระบบชำระเงินตัวเดียวกันทำให้ทีมพัฒนาไม่ต้องสร้างตรรกะการชำระเงินใหม่สำหรับอีเวนต์โดยเฉพาะ ซึ่งช่วยลดโอกาสเกิดบั๊กและทำให้การดูแลรักษาระบบในระยะยาวทำได้ง่ายขึ้น
เมื่อมีคำสั่งซื้อที่ชำระเงินเรียบร้อยแล้ว ระบบบริการจัดการสิทธิ์จะทำการตรวจสอบรายการสินค้าและให้สิทธิ์ตามประเภทของผลิตภัณฑ์นั้นๆ สำหรับสินค้าประเภทกำหนดการ ระบบจะทำการสร้างการจองของผู้ซื้อสำหรับอีเวนต์นั้นทันที แต่หากอีเวนต์ดังกล่าวจำเป็นต้องมีการอนุมัติผ่านระบบรายชื่อรอ (waitlist) สถานะการจองจะถูกเก็บบันทึกไว้ในฐานะรอดำเนินการพร้อมกับแจ้งเตือนไปยังโฮสต์ ซึ่งกระบวนการแจ้งเตือนนี้จะเกิดขึ้นหลังจากบันทึกการชำระเงินเรียบร้อยแล้ว เพื่อป้องกันไม่ให้ปัญหาความขัดข้องของการแจ้งเตือนส่งผลกระทบให้คำสั่งซื้อที่สำเร็จแล้วกลายเป็นข้อผิดพลาดสำหรับผู้ซื้อ
ทางด้านหน้าแดชบอร์ดของผู้ซื้อจะแสดงผลการจองในรูปแบบปฏิทิน โดยปุ่มเข้าร่วมงานจะถูกซ่อนไว้และจะปลดล็อกก็ต่อเมื่อถึงเวลาที่กำหนดเท่านั้น ในช่วงเวลาก่อนหน้านั้น การ์ดแสดงผลจะปรากฏเพียงวันและเวลาตามเขตเวลาของผู้ซื้อเอง เนื่องจากหากแสดงลิงก์เร็วเกินไปมักจะทำให้ผู้เข้าร่วมต้องไปนั่งรออยู่ในห้องประชุมที่ว่างเปล่าเพียงลำพัง
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น