บลูพรินต์ฟีเจอร์ · 11 โมดูลหลัก · 211 รายการ
⚙️ ระบบสมาชิก
ระบบจัดการบัญชีผู้ใช้ การสมัครสมาชิก การยืนยันตัวตน และการจัดการโป รไฟล์
✨ สมัครสมาชิก
ระบบลงทะเบียนผู้ใช้ใหม่พร้อมการยืนยันเบอร์โทรศัพท์และอีเมล
- 🔌 API ลงทะเบียน — POST /api/v1/auth/register รับข้อมูลผู้ใช้ สร้างบัญชี ส่ง OTP ยืนยันเบอร์โทร
- 🎨 หน้าลงทะเบียน — /register ฟอร์มกรอกข้อมูลส่วนตัว รหัสผ่าน ยืนยันรหัสผ่าน แสดงข้อผิดพลาดแบบ real-time
- 🗄️ ตารางผู้ใช้ — table: users เก็บ id, phone, email, password_hash, full_name, status, created_a t, verified_at
✨ เข้าสู่ระบบ
ระบบ login ด้วยเบอร์โทร/อีเมลและรหัสผ่าน พร้อม JWT token
- 🔌 API เข้าสู่ระบบ — POST /api/v1/auth/login ตรวจสอบ credentials สร้าง access_token และ refresh_toke n
- 🔌 API refresh token — POST /api/v1/auth/refresh สร้าง access_token ใหม่จาก refresh_token
- 🎨 หน้าเข้าสู่ระบบ — /login ฟอร์ม login ลืมรหัสผ่าน จำฉันไว้ แสดงสถานะ loading
✨ ยืนยันตัวตน KYC
ระบบยืนยันตัวตนด้วยบัตรประชาชนและใบหน้าเพื่อถอนเงิน
- 🔌 API อัปโหลดเอกสาร KYC — POST /api/v1/kyc/upload รับไฟล์บัตรประชาชน รูปถ่าย selfie ส่งตรวจสอบ OCR
- 🎨 UI อัปโหลด KYC — /kyc/verify อัปโหลดรูปบัตรประชาชน ถ่ายรูปหน้าตรง แสดงสถานะการตรวจสอบ
- 🗄️ ตาราง KYC — table: kyc_verifications เก็บ user_id, id_card_image, selfie_image, ocr_data, s tatus, verified_by, verified_at
✨ จัดการโปรไฟล์
แก้ไขข้อมูลส่วนตัว เปลี่ยนรหัสผ่าน ตั้งค่าการแจ้งเตือน
- 🔌 API แก้ไขโปรไฟล์ — PUT /api/v1/users/profile อัปเดตข้อมูลส่วนตัวที่อนุญาตให้แก้ไข
- 🎨 หน้าโปรไฟล์ — /profile แสดงและแก้ไขข้อมูลส่วนตัว ประวัติการซื้อ ยอดเงินในกระเป๋า
- 🗄️ ตารางการตั้งค่า — table: user_settings เก็บ user_id, notification_preferences, language, theme
✨ ระบบลืมรหัสผ่าน
รีเซ็ตรหัสผ่านผ่าน OTP ที่ส่งไปยังเบอร์โทรหรืออีเมล
- 🔌 API ขอรีเซ็ตรหัสผ่าน — POST /api/v1/auth/forgot-password ส่ง OTP ไปยังช่องทางที่เลือก
- 🔌 API ยืนยันรีเซ็ตรหัสผ่าน — POST /api/v1/auth/reset-password ตรวจสอบ OTP และอัปเดตรหัสผ่านใหม่
- 🎨 หน้ารีเซ็ตรหัสผ่าน — /forgot-password กรอกเบอร์โทร/อีเมล กรอก OTP ตั้งรหัสผ่านใหม่
⚙️ ระบบสลากกินแบ่ง
ระบบจัดการสลากที่นำมาขาย การอัปโหลด การจัดหมวดหมู่ และการ แสดงผล
✨ อัปโหลดสลาก
ระบบอัปโหลดรูปสลากจริงพร้อมระบุเลขและราคา
- 🔌 API อัปโหลดรูปสลาก — POST /api/v1/tickets/upload รับไฟล์รูปสลาก อัปโหลดไป S3 สร้าง thumbnail
- 🎨 UI อัปโหลดสลาก — /admin/tickets/upload ลากวางไฟล์หลายรูป พรีวิวรูป กรอกเลขสลาก ราคา ชุดที่
- 🗄️ ตารางสลาก — table: lottery_tickets เก็บ id, ticket_number, set_number, draw_date, price, im age_url, status, uploaded_by
✨ จัดหมวดหมู่สลาก
จัดกลุ่มสลากตามประเภท เลขสวย เลขเด็ด ชุดพิเศษ
- 🔌 API จัดหมวดหมู่ — PUT /api/v1/tickets/categorize กำหนดหมวดหมู่และแท็กให้สลาก
- 🎨 UI จัดการหมวดหมู่ — /admin/categories สร้าง แก้ไข ลบหมวดหมู่ กำหนดสี ไอคอน
- 🗄️ ตารางหมวดหมู่ — table: ticket_categories เก็บ id, name, slug, color, icon, display_order, is_ac tive
✨ ค้นหาสลาก
ค้นหาสลากตามเลข ช่วงราคา หมวดหมู่ สถานะ
- 🔌 API ค้นหาสลาก — GET /api/v1/tickets/search?q=123&min_price=80&max_price=100&category=beauty ค้น หาด้วยหลายเงื่อนไข
- 🎨 UI ค้นหาสลาก — /search ช่องค้นหาเลข ตัวกรองราคา หมวดหมู่ แสดงผลแบบ grid พร้อมรูปสลาก
- 🗄️ ตาราง search index — table: ticket_search_index เก็บ search_vector สำหรับ full-text search ด้วย Postgr eSQL
✨ แสดงรายละเอียดสลาก
หน้าแสดงข้อมูลสลากแบบละเอียดพร้อมรูปภาพขนาดใหญ่
- 🔌 API ดูรายละเอียดสลาก — GET /api/v1/tickets/:id ดึงข้อมูลสลากพร้อมรูปภาพหลายมุม
- 🎨 UI หน้ารายละเอียด — /tickets/:id แสดงรูปสลากขนาดใหญ่ ซูมได้ ข้อมูลเลข ราคา ปุ่มซื้อ
- 🗄️ ตารางรูปภาพสลาก — table: ticket_images เก็บ ticket_id, image_url, thumbnail_url, angle_type, crea ted_at
✨ จัดการสต็อกสลาก
ตรวจสอบสถานะสลาก จอง ขายแล้ว ยกเลิก
- 🔌 API อัปเดตสถานะสลาก — PATCH /api/v1/tickets/:id/status เปลี่ยนสถานะสลาก available/reserved/sold/cancel led
- 🎨 UI จัดการสต็อก — /admin/inventory แดชบอร์ดแสดงสลากคงเหลือ สลากขายดี กราฟสถิติ
- 🗄️ ตารางสต็อก — table: ticket_inventory เก็บ ticket_id, status, reserved_by, reserved_until, so ld_at, sold_to
⚙️ ระบบตะกร้าและการสั่งซื้อ
ระบบเพิ่มสลากเข้าตะกร้า ดำเนินการสั่งซื้อ และยืนยันการช ำระเงิน
✨ ตะกร้าสลาก
ระบบเพิ่ม ลบ แก้ไขจำนวนสลากในตะกร้า
- 🔌 API เพิ่มเข้าตะกร้า — POST /api/v1/cart/items เพิ่มสลากเข้าตะกร้าพร้อมตรวจสอบสถานะ available
- 🔌 API ดูตะกร้า — GET /api/v1/cart ดึงรายการสลากในตะกร้าพร้อมยอดรวม
- 🎨 UI ตะกร้า — /cart แสดงรายการสลาก รูป thumbnail ราคารวม ปุ่มลบ ปุ่มไปชำระเงิน
- 🗄️ ตารางตะกร้า — table: cart_items เก็บ user_id, ticket_id, added_at, session_id สำหรับผู้ไม่ได้ logi n
✨ สร้างคำสั่งซื้อ
แปลงตะกร้าเป็นคำสั่งซื้อพร้อมสร้างเลขที่อ้างอิง
- 🔌 API สร้างออเดอร์ — POST /api/v1/orders สร้างคำสั่งซื้อ คำนวณยอดรวม สร้าง order_number
- 🎨 UI สรุปคำสั่งซื้อ — /checkout แสดงรายการสลากที่จะซื้อ ยอดรวม ช่องทางชำระเงิน เงื่อนไขการซื้อ
- 🗄️ ตารางคำสั่งซื้อ — table: orders เก็บ id, order_number, user_id, total_amount, status, created_at, expired_at
✨ ชำระเงิน
รองรับหลายช่องทางการชำระเงิน โอนเงิน พร้อมเพย์ บัตรเครดิต
- 🔌 API สร้างการชำระเงิน — POST /api/v1/payments สร้างรายการชำระเงินตามช่องทางที่เลือก
- 🔌 API webhook แจ้งเตือน — POST /api/v1/payments/webhook รับการแจ้งเตือนจากธนาคาร/payment gateway
- 🎨 UI หน้าชำระเงิน — /payment/:orderId เลือกช่องทาง แสดง QR code พร้อมเพย์ อัปโหลดสลิป
- 🗄️ ตารางการชำระเงิน — table: payments เก็บ order_id, method, amount, status, transaction_id, slip_url , verified_at
✨ ยืนยันการชำระเงิน
ระบบตรวจสอบสลิปและยืนยันการชำระเงินอัตโนมัติและ manual
- 🔌 API อัปโหลดสลิป — POST /api/v1/payments/:id/slip อัปโหลดรูปสลิปการโอนเงิน
- 🔌 API ตรวจสอบสลิป OCR — POST /api/v1/payments/verify-ocr ใช้ OCR ตรวจสอบยอดและเวลาในสลิป
- 🚀 Queue ตรวจสอบอัตโนมัติ — Bull queue สำหรับตรวจสอบสลิปอัตโนมัติ เปรียบเทียบกับ statement ธนาคาร
✨ ประวัติการสั่งซื้อ
ดูรายการสั่งซื้อทั้งหมด สถานะ ดาวน์โหลดใบเสร็จ
- 🔌 API ประวัติออเดอร์ — GET /api/v1/orders/history ดึงรายการสั่งซื้อของผู้ใช้พร้อม pagination
- 🎨 UI ประวัติการซื้อ — /orders รายการออเดอร์ กรองตามสถานะ ดูรายละเอียด ดาวน์โหลดใบเสร็จ PDF
- 🗄️ ตารางรายการสั่งซื้อ — table: order_items เก็บ order_id, ticket_id, price_at_purchase, ticket_image_ur l
⚙️ ระบบกระเป๋าเงิน
ระบบกระเป๋าเงินอิเล็กทรอนิกส์สำหรับฝาก ถอน และใช้จ่าย
✨ เติมเงินเข้ากระเป๋า
เติมเงินเข้ากระเป๋าผ่านหลายช่องทาง
- 🔌 API เติมเงิน — POST /api/v1/wallet/deposit สร้างรายการเติมเงิน สร้าง QR code
- 🎨 UI เติมเงิน — /wallet/deposit เลือกจำนวนเงิน ช่องทางชำระ แสดง QR code อัปโหลดสลิป
- 🗄️ ตารางธุรกรรม — table: wallet_transactions เก็บ user_id, type, amount, balance_after, reference _id, status
✨ ถอนเงิน
ถอนเงินออกจากกระเป๋าไปบัญชีธนาคาร (ต้องผ่าน KYC)
- 🔌 API ขอถอนเงิน — POST /api/v1/wallet/withdraw สร้างรายการถอนเงิน ตรวจสอบยอดขั้นต่ำ KYC
- 🎨 UI ถอนเงิน — /wallet/withdraw เลือกบัญชีธนาคาร กรอกจำนวน ยืนยันรหัสผ่าน
- 🗄️ ตารางบัญชีธนาคาร — table: bank_accounts เก็บ user_id, bank_code, account_number, account_name, is_ primary
✨ โอนเงินระหว่างสมาชิก
โอนเงินในระบบให้สมาชิกอื่นได้ทันทีไม่มีค่าธรรมเนียม
- 🔌 API โอนเงิน — POST /api/v1/wallet/transfer โอนเงินให้ผู้ใช้อื่นด้วยเบอร์โทรหรือ user ID
- 🎨 UI โอนเงิน — /wallet/transfer ค้นหาผู้รับด้วยเบอร์โทร กรอกจำนวน ยืนยันการโอน
✨ ประวัติธุรกรรม
ดูประวัติการเติม ถอน โอน ใช้จ่ายทั้งหมด
- 🔌 API ประวัติธุรกรรม — GET /api/v1/wallet/transactions ดึงรายการธุรกรรมพร้อมกรองตามประเภท
- 🎨 UI ประวัติ — /wallet/history รายการธุรกรรม กรองตามเดือน ดูรายละเอียด ส่งออก CSV
✨ ตั้งค่าการแจ้งเตือนยอดเงิน
แจ้งเตือนเมื่อยอดเงินต่ำหรือมีธุรกรรมเกิดขึ้น
- 🔌 API ตั้งค่าแจ้งเตือน — PUT /api/v1/wallet/notification-settings กำหนดเกณฑ์ยอดเงินต่ำ
- 🗄️ ตารางการแจ้งเตือน — table: wallet_notifications เก็บ user_id, low_balance_threshold, notify_on_depo sit, notify_on_withdraw
⚙️ ระบบผลรางวัล
ระบบตรวจสอบผลรางวัล ประกาศผล และแจ้งเตือนผู้ถูกรางวัล
✨ อัปเดตผลรางวัล
ระบบอัปเดตผลการออกรางวัลจากสำนักงานสลากกินแบ่ง
- 🔌 API รับผลรางวัล — POST /api/v1/results/update รับข้อมูลผลรางวัลจาก API สำนักงานสลาก
- 🔌 API ดึงผลรางวัล — GET /api/v1/results/:date ดึงผลรางวัลตามงวดวันที่
- 🗄️ ตารางผลรางวัล — table: lottery_results เก็บ draw_date, prize_1st, prize_2nd[], prize_3rd[], las t_2_digits, first_3_digits[]
✨ ตรวจสลากอัตโนมัติ
ตรวจสอบสลากที่ซื้ออัตโนมัติเมื่อประกาศผล
- 🚀 Queue ตรวจรางวัล — Bull queue ตรวจสอบสลากทั้งหมดที่ขายในงวดนั้นเมื่อมีผลรางวัล
- 🔌 API ตรวจสลาก — POST /api/v1/tickets/check-prize ตรวจสอบสลากกับผลรางวัล
- 🗄️ ตารางผลการตรวจ — table: ticket_prize_results เก็บ ticket_id, draw_date, matched_prize, prize_amo unt, claimed_status
✨ แจ้งเตือนผู้ถูกรางวัล
ส่งการแจ้งเตือนแบบ real-time และ push notification
- 🔌 API ส่งแจ้งเตือน — POST /api/v1/notifications/prize-win ส่งแจ้งเตือนไปยังผู้ถูกรางวัล
- 🔌 Socket.io real-time — emit prize-won ส่ง event ไปยัง client ที่ online อยู่
- 🎨 UI แจ้งเตือนถูกรางวัล — แสดง popup แจ้งเตือนถูกรางวัล พร้อมเสียงประกอบ
✨ รับรางวัล
ระบบรับรางวัลและโอนเงินเข้ากระเป๋า
- 🔌 API รับรางวัล — POST /api/v1/prizes/claim ยืนยันรับรางวัล โอนเงินเข้ากระเป๋าอัตโนมัติ
- 🎨 UI รับรางวัล — /prizes แสดงสลากที่ถูกรางวัล ยอดรวม ปุ่มรับรางวัลทั้งหมด
- 🗄️ ตารางการรับรางวัล — table: prize_claims เก็บ user_id, ticket_id, prize_amount, claimed_at, transfer red_at
✨ ประวัติผลรางวัล
ดูผลรางวัลย้อนหลังและสถิติ
- 🔌 API ประวัติผลรางวัล — GET /api/v1/results/history ดึงผลรางวัลย้อนหลัง
- 🎨 UI สถิติรางวัล — /results แสดงผลรางวัลงวดล่าสุด สถิติเลขออกบ่อย กราฟวิเคราะห์
⚙️ ระบบแอดมิน
แผงควบคุมสำหรับผู้ดูแลระบบ จัดการสลาก ออเดอร์ ผู้ใช้ และรายงาน
✨ แดชบอร์ดแอดมิน
ภาพรวมของระบบ ยอดขาย สถิติ กราฟ
- 🔌 API สถิติแดชบอร์ด — GET /api/v1/admin/dashboard ดึงข้อมูลสถิติสรุป ยอดขายวันนี้ สลากคงเหลือ
- 🎨 UI แดชบอร์ด — /admin/dashboard กราฟยอดขาย สถิติผู้ใช้ สลากขายดี แจ้งเตือนล่าสุด
✨ จัดการสลาก
CRUD สลากทั้งหมด อัปเดตสถานะ ลบสลาก
- 🔌 API จัดการสลาก — GET /api/v1/admin/tickets ดึงรายการสลากทั้งหมดพร้อม filter
- 🔌 API ลบสลาก — DELETE /api/v1/admin/tickets/:id ลบสลากออกจากระบบ
- 🎨 UI รายการสลาก — /admin/tickets ตารางสลากทั้งหมด ค้นหา กรอง แก้ไขสถานะ ลบ
✨ จัดการออเดอร์
ดูและจัดการคำสั่งซื้อทั้งหมด ยืนยันการชำระเงิน
- 🔌 API รายการออเดอร์ — GET /api/v1/admin/orders ดึงรายการออเดอร์พร้อม filter ตามสถานะ
- 🔌 API ยืนยันการชำระเงิน — POST /api/v1/admin/orders/:id/verify ยืนยันการชำระเงิน manual
- 🎨 UI จัดการออเดอร์ — /admin/orders ตารางออเดอร์ ดูรายละเอียด ยืนยัน ยกเลิก คืนเงิน
✨ จัดการผู้ใช้
ดูรายชื่อผู้ใช้ ระงับบัญชี ตั้งค่าสิทธิ์
- 🔌 API รายชื่อผู้ใช้ — GET /api/v1/admin/users ดึงรายชื่อผู้ใช้พร้อม filter
- 🔌 API ระงับบัญชี — PATCH /api/v1/admin/users/:id/suspend ระงับหรือปลดล็อกบัญชีผู้ใช้
- 🎨 UI จัดการผู้ใช้ — /admin/users ตารางผู้ใช้ ดูโปรไฟล์ ประวัติการซื้อ ระงับบัญชี
✨ ตรวจสอบ KYC
อนุมัติหรือปฏิเสธการยืนยันตัวตน
- 🔌 API อนุมัติ KYC — POST /api/v1/admin/kyc/:id/approve อนุมัติการยืนยันตัวตน
- 🔌 API ปฏิเสธ KYC — POST /api/v1/admin/kyc/:id/reject ปฏิเสธพร้อมระบุเหตุผล
- 🎨 UI ตรวจสอบ KYC — /admin/kyc รายการรอตรวจสอบ ดูรูปบัตร เปรียบเทียบ selfie อนุมัติ/ปฏิเสธ
✨ รายงานและสถิติ
รายงานยอดขาย ผู้ใช้ สลาก ส่งออกไฟล์
- 🔌 API รายงานยอดขาย — GET /api/v1/admin/reports/sales ดึงข้อมูลรายงานยอดขายตามช่วงเวลา
- 🔌 API ส่งออกรายงาน — GET /api/v1/admin/reports/export ส่งออกรายงานเป็น Excel หรือ PDF
- 🎨 UI รายงาน — /admin/reports เลือกประเภทรายงาน ช่วงวันที่ แสดงกราฟ ปุ่มส่งออก
⚙️ ระบบแจ้งเตือน
ระบบส่งการแจ้งเตือนผ่านหลายช่องทาง push, SMS, email, LINE
✨ Push Notification
ส่งแจ้งเตือนแบบ real-time ไปยังแอปและเว็บ
- 🔌 API ส่ง push — POST /api/v1/notifications/push ส่ง push notification ไปยัง device
- 🎨 Service Worker — ลงทะเบียน service worker รับ push notification แสดง badge
- 🗄️ ตาราง device token — table: push_tokens เก็บ user_id, device_token, platform, created_at
✨ SMS Notification
ส่ง SMS แจ้งเตือนสำคัญ OTP การซื้อขาย
- 🔌 API ส่ง SMS — POST /api/v1/notifications/sms ส่ง SMS ผ่าน provider เช่น Twilio หรือ ThaiBulkSMS
- 🚀 Queue SMS — Bull queue สำหรับส่ง SMS แบบ bulk พร้อม retry mechanism
- 🗄️ ตาราง SMS log — table: sms_logs เก็บ phone, message, status, provider_response, sent_at
✨ Email Notification
ส่งอีเมลแจ้งเตือน ใบเสร็จ โปรโมชั่น
- 🔌 API ส่งอีเมล — POST /api/v1/notifications/email ส่งอีเมลผ่าน SMTP หรือ SendGrid
- 🎨 Template อีเมล — ออกแบบ template อีเมลสวยงาม responsive สำหรับใบเสร็จ ยืนยันการสมัคร
- 🗄️ ตารางอีเมล log — table: email_logs เก็บ to_email, template, subject, status, opened_at
✨ LINE Notify
ผูกบัญชี LINE เพื่อรับแจ้งเตือน
- 🔌 API เชื่อมต่อ LINE — POST /api/v1/notifications/line/connect ขอสิทธิ์เชื่อมต่อ LINE Notify
- 🔌 API ส่ง LINE — POST /api/v1/notifications/line/send ส่งข้อความแจ้งเตือนผ่าน LINE
- 🗄️ ตาราง LINE connection — table: line_connections เก็บ user_id, line_user_id, notify_token, is_active
✨ ตั้งค่าการแจ้งเตือน
ผู้ใช้เลือกรับการแจ้งเตือนประเภทใดบ้าง
- 🔌 API ตั้งค่า — PUT /api/v1/notifications/settings อัปเดตการตั้งค่าการแจ้งเตือน
- 🎨 UI ตั้งค่า — /settings/notifications สวิตช์เปิด/ปิด แจ้งเตือนแต่ละประเภท
⚙️ ระบบคอนเทนต์
ระบบจัดการเนื้อหาเว็บ ข่าวสาร บทความ โปรโมชั่น แบนเนอร์
✨ จัดการข่าวสาร
โพสต์ข่าวสาร ประกาศ อัปเดตระบบ
- 🔌 API CRUD ข่าว — POST/PUT/DELETE /api/v1/admin/news จัดการข่าวสาร
- 🎨 UI หน้าข่าว — /news แสดงรายการข่าว อ่านรายละเอียด
- 🗄️ ตารางข่าว — table: news_articles เก็บ title, content, cover_image, is_pinned, published_at
✨ จัดการแบนเนอร์
แบนเนอร์โฆษณา โปรโมชั่นหน้าแรก
- 🔌 API จัดการแบนเนอร์ — POST /api/v1/admin/banners อัปโหลดรูปแบนเนอร์ กำหนดลำดับ
- 🎨 UI แบนเนอร์ — component BannerSlider บนหน้าแรก แสดงแบนเนอร์แบบ carousel
- 🗄️ ตารางแบนเนอร์ — table: banners เก็บ image_url, link_url, position, display_order, is_active, st art_date, end_date
✨ จัดการโปรโมชั่น
สร้างโปรโมชั่น ส่วนลด แจกเครดิต
- 🔌 API CRUD โปรโมชั่น — POST /api/v1/admin/promotions สร้างโปรโมชั่นใหม่
- 🔌 API ใช้โปรโมชั่น — POST /api/v1/promotions/apply นำโค้ดส่วนลดไปใช้กับออเดอร์
- 🎨 UI โปรโมชั่น — /promotions แสดงโปรโมชั่นที่ใช้งานได้ นับถอยหลังหมดอายุ
- 🗄️ ตารางโปรโมชั่น — table: promotions เก็บ code, discount_type, discount_value, min_purchase, usage _limit, valid_until
✨ หน้าเพจ CMS
สร้างหน้าเพจเนื้อหา เช่น วิธีซื้อ เงื่อนไขการใช้งาน
- 🔌 API จัดการหน้าเพจ — POST /api/v1/admin/pages สร้างและแก้ไขหน้าเพจ
- 🎨 UI แสดงหน้าเพจ — /pages/:slug แสดงเนื้อหาหน้าเพจแบบ dynamic
- 🗄️ ตารางหน้าเพจ — table: cms_pages เก็บ title, slug, content, meta_title, meta_description
⚙️ ระบบรายงานและวิเคราะห์
ระบบสร้างรายงาน วิเคราะห์ข้อมูล สถิติการขาย
✨ รายงานยอดขาย
รายงานยอดขายรายวัน รายเดือน รายปี
- 🔌 API ยอดขาย — GET /api/v1/reports/sales ดึงข้อมูลยอดขายตามช่วงเวลา
- 🎨 UI รายงานยอดขาย — /admin/reports/sales กราฟยอดขาย เปรียบเทียบรายเดือน ส่งออก Excel
- 🗄️ ตารางสรุปยอดขาย — table: sales_summary เก็บ date, total_orders, total_amount, total_tickets_sold
✨ รายงานสลาก
สถิติสลากขายดี สลากคงเหลือ สลากที่ถูกรางวัล
- 🔌 API สถิติสลาก — GET /api/v1/reports/tickets ดึงสถิติการขายสลากแยกตามเลข
- 🎨 UI แดชบอร์ดสลาก — /admin/reports/tickets กราฟสลากขายดี ตารางเลขยอดนิยม
✨ รายงานผู้ใช้
วิเคราะห์พฤติกรรมผู้ใช้ การซื้อซ้ำ มูลค่าลูกค้า
- 🔌 API วิเคราะห์ผู้ใช้ — GET /api/v1/reports/users ดึงข้อมูลผู้ใช้สำหรับวิเคราะห์
- 🎨 UI รายงานผู้ใช้ — /admin/reports/users กราฟการเติบโตผู้ใช้ segmentation ลูกค้า
- 🗄️ ตาราง analytics — table: user_analytics เก็บ user_id, first_purchase_date, total_orders, total_sp ent, last_active
✨ รายงานการเงิน
รายงานการเงิน กระแสเงินสด ยอดค้างรับ
- 🔌 API รายงานการเงิน — GET /api/v1/reports/finance ดึงข้อมูลการเงินรายวัน
- 🎨 UI รายงานการเงิน — /admin/reports/finance ตารางรายรับรายวัน ยอดค้างชำระ กราฟ cash flow
⚙️ ระบบความปลอดภัย
ระบบรักษาความปลอดภัย การเข้ารหัส การป้องกันการโจมตี
🔒 การเข้ารหัสข้อมูล
เข้ารหัสข้อมูลสำคัญในฐานข้อมูล
🔒 Encryption at rest
ใช้ PostgreSQL encryption สำหรับข้อมูล sensitive เช่น เลขบัตรประชาชน
🔒 Encryption in transit
บังคับใช้ HTTPS TLS 1.3 สำหรับทุกการเชื่อมต่อ
🗄️ ตาราง encrypted data
ใช้ pgcrypto extension เข้ารหัสคอลัมน์ sensitive
🔒 การป้องกันการโจมตี
ระบบป้องกัน common attacks
🔒 Rate Limiting
Redis-based rate limiting จำกัด requests ต่อ IP และ user
🔒 SQL Injection Protection
ใช้ Prisma ORM parameterized queries ป้องกัน SQL injection
🔒 XSS Protection
Content Security Policy headers input sanitization output encoding
🔒 การตรวจสอบและบันทึก
ระบบ audit log บันทึกการกระทำสำคัญ
🔌 API audit log
POST /api/v1/audit/log บันทึกการกระทำสำคัญทุกครั้ง
🗄️ ตาราง audit log
table: audit_logs เก็บ user_id, action, entity_type, entity_id, old_value, new_ value, ip_address, user_agent, created_at
🎨 UI ดู audit log
/admin/audit-logs ค้นหาและกรอง audit log ตาม user action เวลา
🔒 การยืนยันตัวตนแบบสองชั้น
2FA สำหรับแอดมินและการทำธุรกรรมสำคัญ
🔌 API ตั้งค่า 2FA
POST /api/v1/auth/2fa/setup สร้าง QR code สำหรับ TOTP
🔌 API ยืนยัน 2FA
POST /api/v1/auth/2fa/verify ตรวจสอบรหัส TOTP
🎨 UI ตั้งค่า 2FA
/settings/security เปิด/ปิด 2FA สแกน QR code บันทึก backup codes
⚙️ ระบบโครงสร้างพื้นฐาน
ระบบ deployment scaling backup และ monitoring
🚀 Docker Containerization
แพ็คระบบด้วย Docker สำหรับ deployment
🚀 Dockerfile
Multi-stage build สำหรับ Next.js และ Node.js API
🚀 Docker Compose
docker-compose.yml รวม services: app, db, redis, nginx
🚀 CI/CD Pipeline
ระบบ automated testing และ deployment
🚀 GitHub Actions
Workflow สำหรับ run tests build image deploy อัตโนมัติ
🚀 Automated Testing
Unit tests integration tests E2E tests ด้วย Jest และ Playwright
🚀 Database Backup
ระบบสำรองข้อมูลอัตโนมัติ
🚀 Scheduled Backup
Cron job สำรองฐานข้อมูลทุกวัน เก็บย้อนหลัง 30 วัน
🚀 Point-in-time Recovery
WAL archiving สำหรับ recovery ระดับนาที
🚀 Monitoring และ Logging
ระบบตรวจสอบสถานะและบันทึก log
🚀 Application Monitoring
ใช้ Prometheus Grafana ตรวจสอบ performance errors
🚀 Log Aggregation
รวม logs ด้วย ELK stack หรือ Loki สำหรับการค้นหา
🚀 Alerting
แจ้งเตือนเมื่อระบบมีปัญหา ผ่าน Slack หรือ PagerDuty