ระบบถูกระงับการใช้งาน

Serial Number ไม่ถูกต้อง หรือหมดอายุการใช้งานแล้ว

Copyright © V-Pro Badminton | {{ appVersion }}

ระบบรอการต่ออายุ

กรุณาแจ้ง Owner เพื่อดำเนินการต่ออายุระบบ

{{ db.settings.posName }}

{{ appVersion }}

Copyright © V-Pro Badminton. All Rights Reserved.

LIVE BOARD

{{ currentTimeLive }}

WAITING FOR SESSION

Next Up

คิวเตรียมตัว {{ idx + 1 }}

{{ p.name }}

Active Courts

COURT {{ c.id }}

Playing
{{ p.name }}
Available

Waitlist

{{ waitingPlayers.length }}
ไม่มีคนรอคิวในขณะนี้
{{ p.name }} Linked

{{ getTabTitle() }}

ยังไม่เปิดก๊วน
{{ toastMsg }}

จัดการรายชื่อเช็คอิน

ขาประจำ

{{ regularMembers.length }} คน
ไม่มีรายชื่อขาประจำ (หรือค้นหาไม่พบ)
{{ m.name }}

ขาจร (แขก/มาไม่บ่อย)

{{ guestMembers.length }} คน
ไม่มีรายชื่อขาจร (หรือค้นหาไม่พบ)
{{ m.name }}

ยังไม่ได้เปิดก๊วน กรุณาไปหน้าเช็คชื่อ

ไม่มีข้อมูลก๊วน

เรียกเก็บเงินขุนทอง

เลือกก๊วน/วันที่:
ไม่พบข้อมูลก๊วนที่เลือก

ยอดค้างชำระ (ขุนทอง)

฿{{ Math.round(pendingKhunThongTotal).toLocaleString() }}

จากทั้งหมด {{ pendingKhunThongPlayers.length }} คนที่ยังไม่เคลียร์บิล

รายชื่อลูกหนี้ & สถานะการจ่ายเงิน

ไม่มีรายชื่อคนตีในรอบนี้
{{ p.name }}

เบิกลูกไป {{ p.games || 0 }} ลูก

฿{{ Math.round(p.paidAmount || 0).toLocaleString() }}

ลูกแบดคงเหลือในคลัง

{{ db.inventory?.stock || 0 }} ลูก

คิดเป็น {{ Math.floor((db.inventory?.stock || 0) / 12) }} หลอด กับอีก {{ (db.inventory?.stock || 0) % 12 }} ลูก

รับของเข้าสต๊อก

ประวัติเข้า-ออก

วันที่In/Outจำนวน(ลูก)หมายเหตุ
ยังไม่มีประวัติ
{{ log.date }} {{ log.type.toUpperCase() }} {{ log.type === 'in' ? '+' : '-' }}{{ log.qty }} {{ log.note }}

สรุปยอดรับเข้าสต๊อก (สำหรับเคลียร์บิล)

เลือกรูปแบบการดูยอด:
{{ invSummaryFilter === 'daily' ? 'วันที่' : 'ช่วงเวลา' }}ยอดรับเข้า (ลูก)คิดเป็นหลอด
ไม่มีประวัติการรับเข้าลูกแบด
{{ g.label }}{{ g.qty.toLocaleString() }} {{ Math.floor(g.qty / 12) }} หลอด กะอีก {{ g.qty % 12 }} ลูก

ประวัติแมตช์ย้อนหลัง

ไม่มีประวัติการลงสนาม
แมตช์ที่ {{ displayMatchHistory.length - idx }} คอร์ด {{ match.courtId }} {{ match.time }}
{{ pn }}
ลูก: {{ match.shuttles && match.shuttles.length > 0 ? match.shuttles.join(', ') : '-' }}

ประวัติการตีของ: {{ viewingPlayerHistoryName }}

ลงไปทั้งหมด: {{ playerHistoryMatches.length }} แมตช์ ใช้ลูกรวม: {{ playerHistoryTotalShuttles }} ลูก
ไม่พบประวัติการลงสนาม
คอร์ด {{ m.courtId }} {{ m.time }} ลูก: {{ m.shuttles && m.shuttles.length > 0 ? m.shuttles.join(', ') : '-' }}

เพื่อนร่วมก๊วนในแมตช์นี้:

{{ p }} ไม่มีเพื่อนร่วมก๊วน

รายงานบัญชี

ยอดขายรวม

฿{{ Math.round(pnlSummary.rev).toLocaleString() }}

ต้นทุนรวม

฿{{ Math.round(pnlSummary.cost).toLocaleString() }}

กำไรสุทธิ

฿{{ Math.round(pnlSummary.profit).toLocaleString() }}

{{ reportFilter === 'daily' ? 'วันที่' : 'ช่วงเวลา' }} รายละเอียด ยอดเก็บ (Rev) ต้นทุน (Cost) กำไร (Profit)
ไม่มีข้อมูล
{{ h.dateStr }} {{ Math.round(h.revenue || 0).toLocaleString() }} {{ Math.round(h.cost || 0).toLocaleString() }} {{ Math.round(h.profit || 0).toLocaleString() }}

รายละเอียดบัญชี วันที่: {{ pastReportView.dateStr }}

สรุปกำไรขั้นต้น

บัญชีค่าสนาม
รายรับค่าสนาม ({{ pastReportView.playersCount }} คน) ฿{{ Math.round(pastReportView.courtRev ?? (pastReportView.playersCount * db.settings.chargeCourtFlat)).toLocaleString() }}
ต้นทุนค่าเช่าคอร์ด ({{ Number(pastReportView.courtHours||0).toFixed(1) }} ชม.) - ฿{{ Math.round(pastReportView.courtCost ?? (pastReportView.courtHours * db.settings.costCourtHr)).toLocaleString() }}
กำไรจากสนาม ฿{{ Math.round((pastReportView.courtRev ?? (pastReportView.playersCount * db.settings.chargeCourtFlat)) - (pastReportView.courtCost ?? (pastReportView.courtHours * db.settings.costCourtHr))).toLocaleString() }}
บัญชีค่าลูกแบด
รายรับจากลูก ฿{{ Math.round(pastReportView.shuttleRev ?? (pastReportView.revenue - (pastReportView.playersCount * db.settings.chargeCourtFlat))).toLocaleString() }}
ต้นทุนลูกแบด ({{ pastReportView.shuttlesUsed }} ลูก) - ฿{{ Math.round(pastReportView.shuttleCost ?? (pastReportView.shuttlesUsed * db.settings.costShuttle)).toLocaleString() }}
กำไรจากลูก ฿{{ Math.round((pastReportView.shuttleRev ?? (pastReportView.revenue - (pastReportView.playersCount * db.settings.chargeCourtFlat))) - (pastReportView.shuttleCost ?? (pastReportView.shuttlesUsed * db.settings.costShuttle))).toLocaleString() }}

สรุปช่องทางรับเงินรวม

  • ไม่มีข้อมูลแยกช่องทาง
  • {{ method }} ฿{{ Math.round(amount).toLocaleString() }}

ตั้งค่าระบบ

License (การต่ออายุใช้งาน) {{ isLicenseValid ? 'ปกติ' : 'หมดอายุ' }}

สถานะ: {{ isLicenseValid ? 'ใช้งานได้' : 'หมดอายุ / ระงับการใช้งาน' }}

หมดอายุวันที่: {{ getLicenseExpiryDate }}

1. ธีมและโลโก้

2. ราคา & ต้นทุน

3. จัดการพนักงาน *Owner เท่านั้น

ชื่อPINตำแหน่งลบ
{{ s.name }}

4. สิทธิ์การใช้งาน (Permissions) *Owner

{{ r.name }}

5. จัดการฐานข้อมูล (Database)