686 lines
42 KiB
TypeScript
686 lines
42 KiB
TypeScript
export default {
|
|
app: {
|
|
name: 'Hotel OMS',
|
|
theme: 'ธีม',
|
|
language: 'ภาษา',
|
|
navigationAria: 'เมนูการจอง',
|
|
healthUp: 'เชื่อมต่อหลังบ้านแล้ว',
|
|
healthDown: 'หลังบ้านออฟไลน์',
|
|
healthChecking: 'กำลังตรวจสอบ',
|
|
},
|
|
auth: {
|
|
loginTitle: 'เข้าสู่ระบบ',
|
|
loginSubtitle: 'ใช้บัญชีระบบเพื่อเข้าสู่พื้นที่ทำงานการจองของ TH Hotel',
|
|
username: 'ชื่อผู้ใช้',
|
|
password: 'รหัสผ่าน',
|
|
loginSubmit: 'เข้าสู่ระบบ',
|
|
loggingIn: 'กำลังเข้าสู่ระบบ',
|
|
loginFailed: 'ชื่อผู้ใช้หรือรหัสผ่านไม่ถูกต้อง',
|
|
logout: 'ออกจากระบบ',
|
|
currentUser: 'ผู้ใช้ปัจจุบัน',
|
|
currentHotel: 'โรงแรมปัจจุบัน',
|
|
unauthorizedTitle: 'ไม่มีสิทธิ์เข้าถึง',
|
|
unauthorizedMessage: 'บัญชีนี้ไม่มีสิทธิ์เข้าถึงหน้านี้หรือการดำเนินการนี้',
|
|
backHome: 'กลับไปหน้าที่เข้าถึงได้',
|
|
},
|
|
nav: {
|
|
orders: 'รายการออเดอร์',
|
|
taskQueue: 'คิวงาน',
|
|
manualInvoice: 'ออกใบแจ้งหนี้เอง',
|
|
sourceMessages: 'แหล่งที่มาข้อความ',
|
|
systemStatus: 'สถานะระบบ',
|
|
orderDetail: 'รายละเอียดออเดอร์',
|
|
taskDetail: 'รายละเอียดงาน',
|
|
sourceMessageConversation: 'เธรดอีเมล',
|
|
debugEml: 'Debug EML',
|
|
systemSettings: 'ตั้งค่าระบบ',
|
|
systemUsers: 'ผู้ใช้',
|
|
systemRoles: 'บทบาท',
|
|
systemMenus: 'เมนู',
|
|
systemHotels: 'โรงแรม',
|
|
systemAudits: 'บันทึกผู้ดูแล',
|
|
},
|
|
common: {
|
|
loading: 'กำลังโหลด',
|
|
noData: 'ไม่มีข้อมูล',
|
|
endpointPending: 'รอเชื่อมต่อ API',
|
|
endpointMissing: 'ยังขาดข้อมูลจาก API',
|
|
all: 'ทั้งหมด',
|
|
unknownStatus: 'สถานะไม่ทราบ',
|
|
unknownTaskType: 'ประเภทงานไม่ทราบ',
|
|
unknownTaskSubtype: 'ประเภทย่อยไม่ทราบ',
|
|
unknownReadonlyReason: 'ยังประมวลผลไม่ได้',
|
|
unknownActorType: 'ผู้ดำเนินการไม่ทราบ',
|
|
unknownAuditAction: 'การดำเนินการไม่ทราบ',
|
|
unknownOperation: 'การดำเนินการไม่ทราบ',
|
|
previousPage: 'หน้าก่อนหน้า',
|
|
nextPage: 'หน้าถัดไป',
|
|
pageStatus: 'หน้า {current} / {total}',
|
|
pageSize: 'ต่อหน้า',
|
|
refresh: 'รีเฟรช',
|
|
saving: 'กำลังบันทึก',
|
|
cancel: 'ยกเลิก',
|
|
},
|
|
notFound: {
|
|
title: 'หน้านี้ยังไม่พร้อม',
|
|
message: 'เมนูหรือลิงก์นี้ยังไม่มีหน้าฝั่งหน้าเว็บรองรับ',
|
|
backHome: 'กลับไปหน้าที่เข้าถึงได้',
|
|
},
|
|
systemAdmin: {
|
|
title: 'ตั้งค่าระบบ',
|
|
subtitle: 'ดูแลผู้ใช้ บทบาท สิทธิ์ เมนู และข้อมูลโรงแรม',
|
|
navigationAria: 'เมนูตั้งค่าระบบ',
|
|
common: {
|
|
keyword: 'คำค้น',
|
|
viewDetail: 'ดูรายละเอียด',
|
|
selectRow: 'เลือกหนึ่งแถวเพื่อดูรายละเอียด',
|
|
create: 'สร้าง',
|
|
save: 'บันทึก',
|
|
edit: 'แก้ไข',
|
|
yes: 'ใช่',
|
|
no: 'ไม่ใช่',
|
|
},
|
|
status: {
|
|
ACTIVE: 'เปิดใช้งาน',
|
|
DISABLED: 'ปิดใช้งาน',
|
|
},
|
|
users: {
|
|
title: 'ตัวกรองผู้ใช้',
|
|
tableTitle: 'ข้อมูลผู้ใช้',
|
|
detailTitle: 'รายละเอียดผู้ใช้',
|
|
createTitle: 'สร้างผู้ใช้',
|
|
totalSuffix: 'ผู้ใช้',
|
|
keywordPlaceholder: 'ชื่อผู้ใช้ / ชื่อแสดง / อีเมล',
|
|
userStatus: 'สถานะผู้ใช้',
|
|
username: 'ชื่อผู้ใช้',
|
|
initialPassword: 'รหัสผ่านเริ่มต้น',
|
|
displayName: 'ชื่อแสดง',
|
|
email: 'อีเมล',
|
|
phone: 'โทรศัพท์',
|
|
roles: 'บทบาท',
|
|
hotels: 'โรงแรมที่มีสิทธิ์',
|
|
defaultHotel: 'โรงแรมเริ่มต้น',
|
|
saveRoles: 'บันทึกบทบาท',
|
|
saveHotels: 'บันทึกสิทธิ์โรงแรม',
|
|
resetPassword: 'รีเซ็ตรหัสผ่าน',
|
|
temporaryPassword: 'รหัสผ่านชั่วคราว:',
|
|
created: 'สร้างผู้ใช้แล้ว',
|
|
columns: {
|
|
user: 'ผู้ใช้',
|
|
status: 'สถานะ',
|
|
roles: 'บทบาท',
|
|
defaultHotel: 'โรงแรมเริ่มต้น',
|
|
},
|
|
},
|
|
roles: {
|
|
title: 'ตัวกรองบทบาท',
|
|
tableTitle: 'ข้อมูลบทบาท',
|
|
detailTitle: 'รายละเอียดบทบาท',
|
|
createTitle: 'สร้างบทบาทเอง',
|
|
totalSuffix: 'บทบาท',
|
|
keywordPlaceholder: 'รหัสบทบาท / ชื่อบทบาท',
|
|
roleStatus: 'สถานะบทบาท',
|
|
roleCode: 'รหัสบทบาท',
|
|
roleName: 'ชื่อบทบาท',
|
|
builtinReadonly: 'บทบาทระบบถูกดูแลโดยระบบเริ่มต้น จึงแก้ไขที่นี่ไม่ได้',
|
|
savePermissions: 'บันทึกสิทธิ์',
|
|
columns: {
|
|
role: 'บทบาท',
|
|
status: 'สถานะ',
|
|
builtin: 'ระบบ',
|
|
permissions: 'สิทธิ์',
|
|
users: 'จำนวนผู้ใช้',
|
|
},
|
|
},
|
|
menus: {
|
|
title: 'ตัวกรองเมนู',
|
|
managementTitle: 'จัดการเมนู',
|
|
managementHint: 'ดูแลลำดับชั้น ลำดับการแสดง การมองเห็น และสิทธิ์ของเมนูด้านข้าง',
|
|
createTitle: 'สร้างเมนู',
|
|
editTitle: 'แก้ไขเมนู',
|
|
tableTitle: 'ข้อมูลเมนู',
|
|
totalSuffix: 'เมนู',
|
|
keywordPlaceholder: 'รหัสเมนู / ชื่อ / เส้นทาง',
|
|
menuStatus: 'สถานะเมนู',
|
|
visibleOnly: 'ดูเฉพาะเมนูที่แสดง',
|
|
treeWarningTitle: 'โครงสร้างเมนูมีการตั้งค่าที่ต้องตรวจสอบ',
|
|
treeWarningHint: 'หลังบ้านส่งโครงสร้างเมนูกลับมาแล้ว แต่รายการต่อไปนี้ต้องให้ผู้ดูแลตรวจสอบ',
|
|
treeTitle: 'โครงสร้างเมนู',
|
|
treeDirty: 'มีการปรับโครงสร้างที่ยังไม่ได้บันทึก',
|
|
treeDirtyActionBlocked: 'โปรดบันทึกโครงสร้างเมนูก่อนดำเนินการต่อ',
|
|
treeWarningSaveBlocked: 'โปรดแก้ไขคำเตือนของโครงสร้างเมนูและยืนยันเมนูหลักให้ถูกต้องก่อนบันทึก',
|
|
saveTreeOrder: 'บันทึกโครงสร้าง',
|
|
menuCode: 'รหัสเมนู',
|
|
menuName: 'ชื่อเมนู',
|
|
parentMenu: 'เมนูหลัก',
|
|
rootMenu: 'เมนูราก',
|
|
componentKey: 'รหัสคอมโพเนนต์',
|
|
iconKey: 'รหัสไอคอน',
|
|
unknownRoute: 'เส้นทางไม่รู้จัก',
|
|
unknownRouteHint: 'เส้นทางนี้ยังไม่ถูกรู้จักโดยหน้าเว็บ อาจเปิดไปยังหน้าที่ยังไม่พร้อม',
|
|
permissionLoadFailed: 'โหลดรายการสิทธิ์ไม่สำเร็จ จึงยังเลือกสิทธิ์และบันทึกการตั้งค่าเมนูไม่ได้',
|
|
moveUp: 'เลื่อนขึ้น',
|
|
moveDown: 'เลื่อนลง',
|
|
columns: {
|
|
menu: 'เมนู',
|
|
route: 'เส้นทาง',
|
|
permission: 'สิทธิ์',
|
|
visible: 'แสดง',
|
|
status: 'สถานะ',
|
|
sort: 'ลำดับ',
|
|
knownRoute: 'เส้นทางที่รู้จัก',
|
|
},
|
|
},
|
|
hotels: {
|
|
title: 'ตัวกรองโรงแรม',
|
|
createTitle: 'สร้างโรงแรม',
|
|
editTitle: 'แก้ไขโรงแรม',
|
|
tableTitle: 'ข้อมูลโรงแรม',
|
|
totalSuffix: 'โรงแรม',
|
|
keywordPlaceholder: 'รหัสโรงแรม / ชื่อโรงแรม',
|
|
hotelStatus: 'สถานะโรงแรม',
|
|
hotelId: 'รหัสโรงแรม',
|
|
hotelName: 'ชื่อโรงแรม',
|
|
saveStatus: 'บันทึกสถานะ',
|
|
singleActiveRule: 'โหมดโรงแรมเดียวอนุญาตให้มีโรงแรม ACTIVE ได้เพียงหนึ่งแห่ง โรงแรมที่สร้างใหม่จะปิดใช้งานก่อน',
|
|
columns: {
|
|
hotel: 'โรงแรม',
|
|
status: 'สถานะ',
|
|
timeZone: 'เขตเวลา',
|
|
authorizedUsers: 'ผู้ใช้ที่มีสิทธิ์',
|
|
sort: 'ลำดับ',
|
|
},
|
|
},
|
|
audits: {
|
|
title: 'ตัวกรองบันทึก',
|
|
tableTitle: 'ข้อมูลบันทึกผู้ดูแล',
|
|
totalSuffix: 'รายการบันทึก',
|
|
targetType: 'ประเภทเป้าหมาย',
|
|
targetId: 'รหัสเป้าหมาย',
|
|
action: 'การดำเนินการ',
|
|
columns: {
|
|
action: 'การดำเนินการ',
|
|
target: 'เป้าหมาย',
|
|
actor: 'ผู้ดำเนินการ',
|
|
occurredAt: 'เวลาเกิดเหตุ',
|
|
},
|
|
},
|
|
},
|
|
workbench: {
|
|
title: 'โต๊ะงานออเดอร์',
|
|
subtitle: 'ดู กรอง และจัดการงานออเดอร์การจอง',
|
|
filters: 'ตัวกรอง',
|
|
dateRange: 'ช่วงวันที่',
|
|
businessKey: 'เลขธุรกิจ / เลขชั่วคราว',
|
|
orderStatus: 'สถานะออเดอร์',
|
|
taskStatus: 'สถานะงาน',
|
|
taskCardType: 'ประเภทการ์ดงาน',
|
|
reset: 'รีเซ็ต',
|
|
tableTitle: 'ออเดอร์ / งาน',
|
|
columns: {
|
|
businessKey: 'เลขธุรกิจ',
|
|
orderStatus: 'สถานะออเดอร์',
|
|
currentTask: 'งานปัจจุบัน',
|
|
taskStatus: 'สถานะงาน',
|
|
updatedAt: 'อัปเดตล่าสุด',
|
|
operation: 'การดำเนินการ',
|
|
},
|
|
view: 'ดู',
|
|
totalPrefix: 'รวม',
|
|
totalSuffix: 'รายการงาน',
|
|
},
|
|
orderList: {
|
|
title: 'รายการออเดอร์',
|
|
subtitle: 'ดูงานการจองตามออเดอร์',
|
|
keyword: 'เลขกรุ๊ป / เลขยืนยัน',
|
|
keywordPlaceholder: 'เลขกรุ๊ป / เลขยืนยัน',
|
|
groupCode: 'เลขกรุ๊ป',
|
|
groupCodePlaceholder: 'กรอกเลขกรุ๊ป',
|
|
confirmationNumber: 'เลขยืนยัน',
|
|
confirmationNumberPlaceholder: 'กรอกเลขยืนยัน',
|
|
tableTitle: 'ข้อมูลออเดอร์',
|
|
totalSuffix: 'ออเดอร์',
|
|
viewDetail: 'ดูรายละเอียด',
|
|
continueTask: 'ทำงานต่อ',
|
|
noOpenTask: 'ไม่มีงานค้าง',
|
|
endpointPending: 'API รายการออเดอร์ยังไม่เชื่อมต่อ จึงไม่แสดงข้อมูลจำลอง',
|
|
columns: {
|
|
order: 'ออเดอร์',
|
|
status: 'สถานะ',
|
|
openTasks: 'งานที่ยังไม่ปิด',
|
|
createdAt: 'เวลาสร้าง',
|
|
},
|
|
},
|
|
manualInvoice: {
|
|
title: 'ออกใบแจ้งหนี้เอง',
|
|
createTitle: 'สร้าง Invoice',
|
|
subtitle: 'กรอกข้อมูลเองเพื่อสร้าง Proforma Invoice PDF โดยไม่ต้องอ้างอิงออเดอร์หรืองาน',
|
|
sourceBadge: 'สร้างด้วยตนเอง',
|
|
independentHint: 'หน้า V1 นี้ไม่ผูกกับออเดอร์หรืองาน หลังบ้านจะบันทึกประวัติการสร้างและ audit',
|
|
documentSection: 'ข้อมูลเอกสาร',
|
|
recipientSection: 'ผู้รับ',
|
|
bookingSection: 'ข้อมูลการจอง',
|
|
chargesSection: 'รายการค่าใช้จ่าย',
|
|
previewSection: 'ตัวอย่างยอดเงิน',
|
|
resultSection: 'ผลการสร้าง',
|
|
invoiceDate: 'วันที่ Invoice',
|
|
bookingDate: 'วันที่ Booking',
|
|
dueDate: 'Due Date',
|
|
companySeed: 'เลือก Company',
|
|
contactSeed: 'เลือก Attention',
|
|
selectCompany: 'เลือก Company',
|
|
selectContact: 'เลือก Attention',
|
|
company: 'Company',
|
|
attention: 'Attention',
|
|
address: 'Address',
|
|
companyInputPlaceholder: 'กรอกชื่อบริษัท',
|
|
attentionInputPlaceholder: 'กรอกชื่อผู้รับ',
|
|
addressInputPlaceholder: 'กรอกที่อยู่เรียกเก็บเงินแบบเต็ม',
|
|
telephone: 'Tel',
|
|
email: 'Email',
|
|
groupName: 'Group Name',
|
|
arrivalDate: 'Arrival Date',
|
|
departureDate: 'Departure Date',
|
|
roomRateNote: 'Room Rate Note',
|
|
roomRateNotePlaceholder: 'เช่น including BF',
|
|
extraBedRate: 'Extra Bed Rate',
|
|
description: 'Description',
|
|
roomType: 'Room Type',
|
|
quantity: 'Quantity',
|
|
rate: 'Rate',
|
|
nights: 'Nights',
|
|
amount: 'Amount',
|
|
subtotal: 'Sub-Total',
|
|
vat: 'VAT 7%',
|
|
total: 'Total',
|
|
addCharge: 'เพิ่มแถว',
|
|
removeCharge: 'ลบ',
|
|
chargeLineLabel: 'แถวที่ {index}',
|
|
removeChargeLineAria: 'ลบแถวที่ {index}',
|
|
maxChargesReached: 'V1 รองรับได้สูงสุด 10 รายการค่าใช้จ่าย',
|
|
previewDisclaimer: 'ยอดนี้เป็นเพียงตัวอย่าง ยอดสุดท้ายให้ยึด totals จากหลังบ้าน',
|
|
manualOverrideHint: 'เลือก Company / Attention แล้วระบบจะกรอกข้อมูลให้ แต่ยังแก้ไขข้อความได้ทั้งหมด',
|
|
generate: 'ยืนยันและสร้าง PDF',
|
|
generating: 'กำลังสร้าง',
|
|
openPdf: 'เปิด PDF',
|
|
downloadPdf: 'ดาวน์โหลด PDF',
|
|
downloadingPdf: 'กำลังดาวน์โหลด',
|
|
downloadFallback: 'เบราว์เซอร์ดาวน์โหลด PDF โดยตรงไม่ได้ จึงเปิดหน้า PDF ให้แทน',
|
|
technicalDetails: 'รายละเอียดทางเทคนิค',
|
|
generationId: 'รหัสการสร้าง',
|
|
generationStatus: 'สถานะ',
|
|
pdfUrl: 'ลิงก์ PDF',
|
|
hotelId: 'รหัสโรงแรม',
|
|
templateCode: 'เทมเพลต',
|
|
createdAt: 'เวลาสร้าง',
|
|
noPdfUrl: 'หลังบ้านไม่ได้ส่งลิงก์ PDF กลับมา',
|
|
backendTotals: 'ยอดจากหลังบ้าน',
|
|
validationTitle: 'กรุณาแก้ไขแบบฟอร์ม',
|
|
fieldErrors: {
|
|
required: 'จำเป็นต้องกรอก',
|
|
invalidEmail: 'รูปแบบ Email ไม่ถูกต้อง',
|
|
dateOrder: 'ลำดับวันที่ไม่ถูกต้อง',
|
|
positiveNumber: 'ต้องมากกว่า 0',
|
|
nonNegativeNumber: 'ต้องไม่ต่ำกว่า 0',
|
|
},
|
|
statuses: {
|
|
SUCCEEDED: 'สร้างแล้ว',
|
|
GENERATED: 'สร้างแล้ว',
|
|
FAILED: 'สร้างไม่สำเร็จ',
|
|
PROCESSING: 'กำลังสร้าง',
|
|
},
|
|
errors: {
|
|
FRONTEND_VALIDATION: 'ตรวจสอบแบบฟอร์มไม่ผ่าน กรุณาตรวจฟิลด์ที่จำเป็นและรายการค่าใช้จ่าย',
|
|
RESERVATION_INVOICE_VALIDATION_FAILED: 'ตรวจสอบข้อมูล Invoice ไม่ผ่าน กรุณาตรวจแบบฟอร์ม',
|
|
RESERVATION_INVOICE_CONTEXT_MISMATCH: 'ออเดอร์หรืองานไม่ตรงกัน',
|
|
DOCUMENT_CONVERSION_FAILED: 'สร้าง PDF ไม่สำเร็จ กรุณาลองอีกครั้งหรือติดต่อผู้ดูแล',
|
|
DOCUMENT_CONVERSION_TIMEOUT: 'สร้าง PDF หมดเวลา กรุณาลองใหม่ภายหลัง',
|
|
AUTH_401: 'เซสชันหมดอายุ กรุณาเข้าสู่ระบบใหม่',
|
|
AUTH_403: 'บัญชีนี้ไม่มีสิทธิ์ออกใบแจ้งหนี้เอง',
|
|
UNKNOWN: 'สร้างไม่สำเร็จ กรุณาลองอีกครั้ง',
|
|
requiredFields: 'กรุณากรอกวันที่ ผู้รับ ข้อมูลการจอง และอย่างน้อยหนึ่งรายการค่าใช้จ่ายที่ถูกต้อง',
|
|
invalidEmail: 'รูปแบบ Email ไม่ถูกต้อง',
|
|
dueDateBeforeBookingDate: 'Due Date ต้องไม่เร็วกว่าวันที่ Booking',
|
|
departureBeforeArrival: 'Departure Date ต้องหลัง Arrival Date',
|
|
extraBedNegative: 'Extra Bed Rate ต้องไม่ต่ำกว่า 0',
|
|
chargePositive: 'Quantity, Rate และ Nights ต้องมากกว่า 0',
|
|
},
|
|
},
|
|
order: {
|
|
summary: 'สรุปออเดอร์',
|
|
taskQueue: 'คิวงานของออเดอร์นี้',
|
|
sourceMessage: 'ข้อความต้นทาง',
|
|
businessKeySource: 'แหล่งที่มาของเลขธุรกิจ',
|
|
updatedAt: 'อัปเดตล่าสุด',
|
|
guestName: 'แขก',
|
|
arrivalDate: 'วันเข้าพัก',
|
|
roomType: 'ประเภทห้อง',
|
|
amount: 'ยอดเงิน',
|
|
openTask: 'จัดการงาน',
|
|
groupCode: 'เลขกรุ๊ป (Group Code)',
|
|
confirmationNumber: 'เลขยืนยัน (Confirmation No.)',
|
|
temporaryOrderNo: 'เลขออเดอร์ชั่วคราว',
|
|
blockCode: 'เลขบล็อกกรุ๊ป (Block Code)',
|
|
createdAt: 'เวลาสร้าง',
|
|
conversationMessageCount: 'จำนวนอีเมลในเธรด',
|
|
sourceSummaryPending: 'ข้อมูลสรุปอีเมลต้นทางในไทม์ไลน์งานยังรอหลังบ้านเพิ่มเติม โปรดเข้าไปดูจากงานที่เกี่ยวข้อง',
|
|
},
|
|
taskList: {
|
|
title: 'รายการงาน',
|
|
subtitle: 'ดูคิวงานการจองตามงาน',
|
|
keyword: 'คำค้นออเดอร์ / อีเมล',
|
|
keywordPlaceholder: 'เลขออเดอร์ / คำค้นอีเมล',
|
|
taskType: 'ประเภทงาน',
|
|
taskSubtype: 'ประเภทย่อยของงาน',
|
|
tableTitle: 'ข้อมูลงาน',
|
|
totalSuffix: 'งาน',
|
|
noSourceSubject: 'ไม่มีหัวข้ออีเมลต้นทาง',
|
|
sourceReceivedAt: 'เวลารับอีเมล',
|
|
canProcess: 'ประมวลผลได้',
|
|
cannotProcess: 'ประมวลผลไม่ได้',
|
|
queueParticipation: 'อยู่ในคิวหรือไม่',
|
|
queueAll: 'สถานะคิวทั้งหมด',
|
|
queueIncluded: 'อยู่ในคิว',
|
|
queueExcluded: 'ไม่อยู่ในคิว',
|
|
viewTask: 'ดูงาน',
|
|
viewOrder: 'ดูออเดอร์',
|
|
viewConversation: 'ดูเธรดอีเมล',
|
|
sourceOnlyOrderLabel: 'ข้อความต้นทางแบบอ่านอย่างเดียว',
|
|
hiddenTechnicalOrder: 'ไม่มีออเดอร์ที่แสดงได้',
|
|
columns: {
|
|
task: 'งาน',
|
|
order: 'ออเดอร์',
|
|
card: 'การ์ดงาน',
|
|
status: 'สถานะ',
|
|
source: 'อีเมลต้นทาง',
|
|
queue: 'คิว',
|
|
},
|
|
},
|
|
task: {
|
|
title: 'การ์ดงาน',
|
|
fieldContract: 'สัญญาข้อมูล',
|
|
evidence: 'หลักฐาน',
|
|
saveDraft: 'บันทึกร่าง',
|
|
confirm: 'ยืนยันงาน',
|
|
blocked: 'ถูกบล็อก',
|
|
readOnly: 'อ่านอย่างเดียว',
|
|
operaOperations: 'การจำลอง OPERA',
|
|
audits: 'ไทม์ไลน์ตรวจสอบ',
|
|
noOperations: 'การจำลอง OPERA จะถูกสร้างหลังยืนยันงาน',
|
|
noAudits: 'ยังไม่มีบันทึกตรวจสอบ',
|
|
execute: 'ดำเนินการ',
|
|
retry: 'ลองใหม่',
|
|
simulateFailure: 'จำลองความล้มเหลว',
|
|
fieldNotes: 'หมายเหตุข้อมูล',
|
|
emptyValue: 'ยังไม่กรอก',
|
|
attachments: 'ไฟล์แนบ',
|
|
fieldAreaFallback: 'ข้อมูลพื้นฐาน',
|
|
savedLocally: 'บันทึกร่างแล้ว',
|
|
confirmedLocally: 'ยืนยันงานแล้ว',
|
|
validationFailed: 'โปรดแก้ไขข้อมูลก่อน',
|
|
validation: {
|
|
required: '{field} จำเป็นต้องกรอก',
|
|
enum: '{field} ต้องเลือกจากตัวเลือกที่กำหนด',
|
|
date: '{field} ต้องใช้รูปแบบวันที่ YYYY-MM-DD',
|
|
number: '{field} ต้องเป็นตัวเลข',
|
|
},
|
|
viewOrder: 'ดูออเดอร์',
|
|
viewConversation: 'ดูเธรดอีเมล',
|
|
parentGroup: 'Parent Group',
|
|
sourceMessageId: 'รหัสข้อความต้นทาง (ID)',
|
|
sourceSubject: 'หัวข้อต้นทาง',
|
|
sourceSender: 'ผู้ส่ง',
|
|
sourceReceivedAt: 'เวลารับ',
|
|
sourceSummaryPending: 'ข้อมูลสรุปอีเมลต้นทางยังรอหลังบ้านเพิ่มเติม',
|
|
sourceEmailPreview: 'ตัวอย่างอีเมลต้นทาง',
|
|
sourceEmailExcerpt: 'ข้อความบางส่วนของอีเมล',
|
|
sourceEmailAttachments: 'ไฟล์แนบ',
|
|
sourceEmailNoExcerpt: 'ไม่มีข้อความบางส่วน',
|
|
sourceEmailNoAttachments: 'ไม่มีไฟล์แนบ',
|
|
sourceEmailFullConversation: 'ดูเธรดอีเมลทั้งหมด',
|
|
sourceOnlyResult: 'ผลลัพธ์ทางเข้าของข้อความต้นทาง',
|
|
sourceOnlyReadonly: 'งานนี้ใช้แสดงผลลัพธ์ทางเข้าของข้อความต้นทางเท่านั้น ไม่เข้าสู่การจัดการออเดอร์ การแก้ไขข้อมูล หรือ OPERA',
|
|
sourceOnlyNoOpera: 'งานประเภทนี้ไม่เกี่ยวข้องกับ OPERA',
|
|
routeInfo: 'ข้อมูลเส้นทางและการประมวลผล',
|
|
resultType: 'ประเภทผลลัพธ์',
|
|
aiTaskType: 'ประเภทงานจาก AI',
|
|
systemTaskType: 'ประเภทงานของระบบ',
|
|
taskCardType: 'ประเภทการ์ดงาน',
|
|
taskSubtype: 'ประเภทย่อยของงาน',
|
|
routeCode: 'รหัสเส้นทาง',
|
|
systemProcessCategory: 'หมวดการประมวลผลระบบ',
|
|
reviewStatus: 'สถานะการตรวจสอบ',
|
|
entryResultCode: 'รหัสผลลัพธ์ทางเข้า',
|
|
entryResultMeaning: 'ความหมายผลลัพธ์',
|
|
entryResultDescription: 'คำอธิบายผลลัพธ์',
|
|
entryResultSourceMessageId: 'รหัสข้อความต้นทางของผลลัพธ์',
|
|
rawAnswer: 'คำตอบดิบจาก SuperAgent',
|
|
agentAssessment: 'ข้อมูลดิบจาก AI',
|
|
sourceNotification: 'การแจ้งเตือนข้อความต้นทาง',
|
|
manualReviewData: 'ข้อมูลตรวจสอบด้วยคน',
|
|
manualReviewEvidence: 'หลักฐานการตรวจสอบด้วยคน',
|
|
manualReviewEvidenceFallback: 'ยืนยันตัวตน Parent Group จากอีเมลต้นทางและรายการตัวเลือก',
|
|
manualReviewMissingFields: 'ข้อมูลที่ขาด',
|
|
manualReviewBlockingPoints: 'จุดที่บล็อก',
|
|
manualReviewConflictingPoints: 'จุดที่ขัดแย้ง',
|
|
manualReviewSuggestedActions: 'การดำเนินการที่แนะนำ',
|
|
manualReviewEvidenceToCheck: 'หลักฐานที่ควรตรวจ',
|
|
parentIdentityCandidates: 'ตัวเลือก Parent Group',
|
|
parentIdentityCandidate: 'ตัวเลือก',
|
|
noParentIdentityCandidates: 'ยังไม่มีตัวเลือก Parent Group ต้องให้หลังบ้านส่ง context_used.parent_identity_candidates',
|
|
adapterContractErrors: 'ข้อผิดพลาดสัญญา Adapter',
|
|
unhandledIntents: 'เจตนาที่ยังไม่รองรับ',
|
|
noSourceOnlyResult: 'ยังไม่มีผลลัพธ์ทางเข้าของข้อความต้นทาง',
|
|
manualResolution: {
|
|
title: 'ปลดบล็อกการตรวจสอบด้วยคน',
|
|
description: 'เติมข้อมูลที่ขาดบนการ์ดงานเดิม แล้วให้หลังบ้านตรวจสอบและปลดบล็อกงาน',
|
|
pendingStatus: 'รอตรวจสอบ',
|
|
resolvedTitle: 'ตรวจสอบแล้ว',
|
|
reasonCode: 'รหัสเหตุผล',
|
|
reviewInstruction: 'คำแนะนำการตรวจสอบ',
|
|
confirmedOrderId: 'รหัสออเดอร์ที่ยืนยัน',
|
|
fieldValuePlaceholder: 'กรอกค่าที่ยืนยันแล้ว',
|
|
noSupportedMissingFields: 'ข้อมูลที่ขาดปัจจุบันยังไม่รองรับการปลดบล็อกจากหน้าเว็บ โปรดยืนยัน mapping กับหลังบ้าน',
|
|
unopenedFieldsTitle: 'ข้อมูลที่ยังไม่เปิดให้แก้ไข',
|
|
fieldBackendUnopened: 'หลังบ้านยังไม่ได้เปิดให้แก้ไขข้อมูลนี้',
|
|
fieldRequired: 'โปรดกรอกข้อมูลที่ขาดและรหัสออเดอร์ที่ยืนยัน',
|
|
reason: 'หมายเหตุการจัดการ',
|
|
reasonPlaceholder: 'ไม่บังคับ ระบุเหตุผลการตัดสินใจ',
|
|
submit: 'ส่งผลตรวจสอบ',
|
|
succeeded: 'ปลดบล็อกการตรวจสอบด้วยคนแล้ว และรีเฟรชสถานะงานแล้ว',
|
|
},
|
|
manualConversion: {
|
|
title: 'แปลงงานด้วยคน',
|
|
description: 'แปลงงาน Fallback / งานตรวจสอบด้วยคนให้เป็นงานการจองที่ประมวลผลได้',
|
|
targetTaskType: 'ประเภทงานปลายทาง',
|
|
targetOrder: 'ออเดอร์ปลายทาง',
|
|
targetOrderHelp: 'งานแก้ไขหรือยกเลิกต้องเลือกออเดอร์ที่ยังไม่ถูกลบ',
|
|
targetOrderKeyword: 'ค้นหาออเดอร์ปลายทาง',
|
|
targetOrderKeywordPlaceholder: 'เลขกรุ๊ป เลขยืนยัน หรือคำค้นออเดอร์',
|
|
searchTargetOrders: 'ค้นหาออเดอร์',
|
|
noTargetOrderCandidates: 'กรอกคำค้นแล้วค้นหาออเดอร์ปลายทาง',
|
|
orderDeletedDisabled: 'เลือกออเดอร์ที่ถูกลบแล้วไม่ได้',
|
|
newBookingHint: 'การแปลงเป็นจองใหม่ไม่จำเป็นต้องเลือกออเดอร์ปลายทาง ระบบหลังบ้านจะจัดออเดอร์ตามบริบทงาน',
|
|
reason: 'เหตุผลการแปลง',
|
|
reasonPlaceholder: 'ไม่บังคับ ระบุเหตุผลการตัดสินใจ',
|
|
submit: 'แปลงงาน',
|
|
targetOrderRequired: 'โปรดเลือกออเดอร์ปลายทาง',
|
|
succeeded: 'แปลงงานสำเร็จ: {taskType}, ออเดอร์ปลายทาง {orderId}',
|
|
orderId: 'รหัสออเดอร์',
|
|
},
|
|
},
|
|
conversation: {
|
|
title: 'รายละเอียดเธรดอีเมล',
|
|
subtitle: 'ดูอีเมลทั้งหมดและการตอบกลับในเธรดต้นทาง',
|
|
endpointPending: 'API รายละเอียดเธรดอีเมลยังไม่เชื่อมต่อ จึงไม่แสดงข้อมูลจำลอง',
|
|
subject: 'หัวข้อเธรด',
|
|
messageCount: 'จำนวนอีเมล',
|
|
channel: 'ช่องทาง',
|
|
firstReceivedAt: 'รับครั้งแรก',
|
|
lastReceivedAt: 'รับล่าสุด',
|
|
emptyBody: 'เนื้อหาอีเมลว่าง',
|
|
attachments: 'ไฟล์แนบ / รูปภาพในอีเมล',
|
|
unnamedAttachment: 'ไฟล์แนบไม่มีชื่อ',
|
|
relatedOrders: 'ออเดอร์ที่เกี่ยวข้อง',
|
|
relatedTasks: 'งานที่เกี่ยวข้อง',
|
|
},
|
|
debugEml: {
|
|
title: 'อัปโหลด Debug EML',
|
|
subtitle: 'อัปโหลดอีเมล .eml หนึ่งฉบับและดูผล Debug ของ SourceMessage กับ SuperAgent',
|
|
uploadConfig: 'ค่าการอัปโหลด',
|
|
hotelId: 'Hotel ID',
|
|
debugUploadKey: 'คีย์อัปโหลด Debug',
|
|
runLabel: 'ป้ายกำกับรัน',
|
|
emlFile: 'ไฟล์ .eml',
|
|
submit: 'ส่ง Debug',
|
|
submitting: 'รอ SuperAgent',
|
|
executionStatus: 'สถานะการทำงาน',
|
|
status: 'สถานะ',
|
|
debugRunId: 'Debug run ID',
|
|
backendStatus: 'สถานะจากระบบหลังบ้าน',
|
|
backendMessage: 'ข้อความจากระบบหลังบ้าน',
|
|
waitingSuperAgent: 'กำลังแยกอีเมลและรอ SuperAgent ตอบกลับ',
|
|
systemStages: 'ขั้นตอนของระบบ',
|
|
superAgentTrace: 'SuperAgent Trace',
|
|
traceToolName: 'เครื่องมือ',
|
|
traceInputSummary: 'สรุป input',
|
|
traceOutputSummary: 'สรุป output',
|
|
traceStatus: 'สถานะ',
|
|
traceTime: 'เวลา',
|
|
sourceTrace: 'การติดตาม SourceMessage',
|
|
sourceMessageId: 'SourceMessage ID',
|
|
sourceProvider: 'Source provider',
|
|
externalMessageId: 'External message ID',
|
|
externalConversationId: 'External conversation ID',
|
|
mailPreview: 'ตัวอย่างอีเมล',
|
|
noSafeHtml: 'ยังไม่มี HTML ที่ปลอดภัยสำหรับแสดงผล',
|
|
uploadedMedia: 'สื่อที่อัปโหลด',
|
|
unnamedMedia: 'สื่อไม่มีชื่อ',
|
|
rawHtml: 'HTML หลังประมวลผลดิบ',
|
|
superAgentResult: 'ผลจาก SuperAgent',
|
|
superAgentSessionId: 'SuperAgent session ID',
|
|
superAgentRunId: 'SuperAgent run ID',
|
|
parsedJson: 'JSON ที่แยกแล้ว',
|
|
rawAnswer: 'คำตอบดิบ',
|
|
warnings: 'คำเตือน',
|
|
debugPayload: 'Debug payload',
|
|
statuses: {
|
|
idle: 'รออัปโหลด',
|
|
uploading: 'กำลังทำงาน',
|
|
succeeded: 'สำเร็จ',
|
|
failed: 'ล้มเหลว',
|
|
},
|
|
errors: {
|
|
REQUEST_FIELD_REQUIRED: 'ขาดข้อมูลจำเป็น โปรดตรวจ Hotel ID ไฟล์ หรือพารามิเตอร์คำขอ',
|
|
EML_FILE_REQUIRED: 'โปรดเลือกไฟล์อีเมล .eml',
|
|
EML_FILE_TOO_LARGE: 'ไฟล์อีเมลเกินขนาดที่หลังบ้านกำหนด',
|
|
INVALID_FILE_TYPE: 'รองรับเฉพาะไฟล์อีเมล .eml',
|
|
DEBUG_UPLOAD_KEY_INVALID: 'คีย์อัปโหลด Debug ขาดหายหรือไม่ถูกต้อง',
|
|
EML_PARSE_FAILED: 'ไม่สามารถแยกไฟล์อีเมลได้',
|
|
OSS_UPLOAD_FAILED: 'อัปโหลด OSS ล้มเหลว โปรดให้หลังบ้านตรวจสอบ',
|
|
SUPERAGENT_OPEN_API_FAILED: 'เรียก SuperAgent ล้มเหลว SourceMessage อาจถูกบันทึกแล้ว',
|
|
DEBUG_EML_RUN_FAILED: 'กระบวนการ Debug EML ล้มเหลวภายใน',
|
|
UNKNOWN: 'อัปโหลด Debug EML ล้มเหลว',
|
|
},
|
|
},
|
|
status: {
|
|
TEMPORARY: 'ชั่วคราว',
|
|
ACTIVE: 'ใช้งานอยู่',
|
|
ENDED: 'สิ้นสุดแล้ว',
|
|
LOGIC_DELETED: 'ลบแล้ว',
|
|
PENDING_CONFIRM: 'รอยืนยัน',
|
|
READY: 'รอดำเนินการ',
|
|
EXECUTING: 'กำลังดำเนินการ',
|
|
FAILED: 'ล้มเหลว',
|
|
COMPLETED: 'เสร็จแล้ว',
|
|
PENDING: 'รอดำเนินการ',
|
|
SUCCEEDED: 'สำเร็จ',
|
|
BLOCKED: 'ถูกบล็อก',
|
|
SKIPPED: 'ข้าม',
|
|
},
|
|
cardType: {
|
|
NEW_BOOKING: 'จองใหม่',
|
|
UPDATE_BOOKING: 'แก้ไขการจอง',
|
|
CANCEL_BOOKING: 'ยกเลิกการจอง',
|
|
CANCEL_ALLOTMENT: 'ยกเลิกโควตา Parent Group',
|
|
VOUCHER: 'วอเชอร์',
|
|
ROOMING_LIST: 'รายชื่อห้องพัก',
|
|
AMEND_GROUP_CODE: 'แก้ไขเลขกรุ๊ป',
|
|
TRACE_NOTE: 'หมายเหตุติดตาม (Trace)',
|
|
TA_RECORD: 'ข้อมูลบริษัททัวร์',
|
|
MESSAGE_NOTIFICATION: 'แจ้งเตือนข้อความ',
|
|
INFORMATIONAL_MESSAGE: 'แจ้งเตือนข้อความ (เดิม)',
|
|
SOURCE_MESSAGE_REVIEW_NOTIFICATION: 'แจ้งเตือนข้อความต้นทาง',
|
|
SOURCE_MESSAGE_ONLY: 'ข้อความต้นทางแบบอ่านอย่างเดียว',
|
|
MANUAL_REVIEW: 'ตรวจสอบด้วยคน',
|
|
FALLBACK_REVIEW: 'ตรวจสอบด้วยคน',
|
|
},
|
|
taskSubtype: {
|
|
NEW_BOOKING: 'จองใหม่',
|
|
UPDATE_BOOKING: 'แก้ไขการจอง',
|
|
CANCEL_BOOKING: 'ยกเลิกการจอง',
|
|
RATE_CHANGE: 'ปรับราคา',
|
|
UPDATE_STAY_DATES: 'แก้ไขวันเข้าพัก',
|
|
UPDATE_ROOM_TYPE: 'แก้ไขประเภทห้อง',
|
|
UPDATE_FIX_CHARGE: 'แก้ไขค่าบริการคงที่',
|
|
CANCEL_ALLOTMENT_CONTROL_BLOCK: 'ยกเลิกบล็อก Parent Group ทั้งก้อน',
|
|
NEW_GROUP_BLOCK: 'บล็อกกรุ๊ปใหม่',
|
|
NEW_FIT_RESERVATION: 'จองรายบุคคลใหม่',
|
|
MANUAL_REVIEW: 'ตรวจสอบด้วยคน',
|
|
S10: 'อีเมลข้อมูลทั่วไป (S10)',
|
|
S99: 'สร้างชุดข้อมูลธุรกิจไม่ได้ (S99)',
|
|
S000: 'อีเมลข้อมูลทั่วไป',
|
|
S999: 'ไม่สามารถสร้างชุดข้อมูลธุรกิจได้',
|
|
},
|
|
resultType: {
|
|
NORMAL_TASK: 'งานปกติ',
|
|
MANUAL_REVIEW: 'ตรวจสอบด้วยคน',
|
|
SOURCE_MESSAGE_REVIEW_NOTIFICATION: 'แจ้งเตือนข้อความต้นทาง',
|
|
ADAPTER_CONTRACT_ERROR: 'ข้อผิดพลาดสัญญา Adapter',
|
|
UNHANDLED_CURRENT_INTENT: 'เจตนาที่ยังไม่รองรับ',
|
|
},
|
|
systemProcessCategory: {
|
|
BUSINESS_TASK: 'งานธุรกิจ',
|
|
SOURCE_MESSAGE_NOTIFICATION: 'แจ้งเตือนข้อความต้นทาง',
|
|
ADAPTER_CONTRACT_ERROR: 'ข้อผิดพลาดสัญญา Adapter',
|
|
UNHANDLED_CURRENT_INTENT: 'เจตนาที่ยังไม่รองรับ',
|
|
},
|
|
readonlyReason: {
|
|
PROCESSABLE: 'ประมวลผลได้',
|
|
PREVIOUS_TASK_NOT_FINISHED: 'งานก่อนหน้ายังไม่เสร็จ',
|
|
TASK_FINISHED: 'งานเสร็จแล้ว',
|
|
TASK_READ_ONLY: 'งานเป็นอ่านอย่างเดียว',
|
|
ORDER_CLOSED: 'ออเดอร์ปิดแล้ว',
|
|
QUEUE_EXCLUDED: 'ไม่อยู่ในคิว',
|
|
BLOCKED: 'ถูกบล็อก',
|
|
MANUAL_REVIEW_REQUIRED: 'ต้องตรวจสอบด้วยคน',
|
|
},
|
|
actorType: {
|
|
USER: 'ผู้ใช้',
|
|
SYSTEM: 'ระบบ',
|
|
AI: 'AI',
|
|
AGENT: 'ผู้ช่วยภายนอก',
|
|
BACKEND: 'บริการหลังบ้าน',
|
|
},
|
|
auditAction: {
|
|
TASK_CREATED: 'สร้างงาน',
|
|
TASK_LOADED: 'อ่านงาน',
|
|
TASK_CONFIRMED: 'ยืนยันงาน',
|
|
TASK_CONFIRM: 'ยืนยันงาน',
|
|
DRAFT_SAVED: 'บันทึกร่าง',
|
|
TASK_UPDATED: 'อัปเดตงาน',
|
|
OPERA_EXECUTED: 'ดำเนินการ OPERA',
|
|
OPERA_RETRIED: 'ลอง OPERA ใหม่',
|
|
MANUAL_REVIEW_CREATED: 'สร้างงานตรวจสอบด้วยคน',
|
|
MANUAL_REVIEW_CONVERT: 'แปลงงานด้วยคน',
|
|
MANUAL_REVIEW_RESOLVED: 'ปลดบล็อกการตรวจสอบด้วยคน',
|
|
},
|
|
operaOperation: {
|
|
CREATE_RESERVATION: 'สร้างการจอง',
|
|
UPDATE_RESERVATION: 'อัปเดตการจอง',
|
|
CANCEL_RESERVATION: 'ยกเลิกการจอง',
|
|
UPDATE_ROOMING_LIST: 'อัปเดตรายชื่อห้องพัก',
|
|
ADD_TRACE_NOTE: 'เพิ่มหมายเหตุติดตาม',
|
|
},
|
|
}
|