接入M002V4订单任务多卡前端

This commit is contained in:
andy
2026-07-19 13:48:07 +07:00
parent 13364e7edf
commit cae169cefd
19 changed files with 4084 additions and 343 deletions

View File

@@ -33,6 +33,7 @@ export default {
orderDetail: 'Order detail',
taskDetail: 'Task detail',
sourceMessageConversation: 'Email conversation',
sourceNotificationDetail: 'Source notification detail',
debugEml: 'Debug EML',
systemSettings: 'System settings',
systemUsers: 'Users',
@@ -432,6 +433,19 @@ export default {
totalSuffix: 'tasks',
noSourceSubject: 'No source subject',
sourceReceivedAt: 'Source time',
itemType: 'Work item type',
itemTypeOrderTask: 'Order task',
itemTypeSourceNotification: 'Source notification',
orderTaskStatus: 'Order task status',
cardStatus: 'Card status',
orderUnresolved: 'Order ownership pending',
sourceNotificationNoOrder: 'No linked order',
sourceNotificationNoOrderHint: 'S10/S99 read-only source notification',
cardCountsTotal: '{total} cards',
cardCountsPending: 'Pending {count}',
cardCountsReview: 'Review {count}',
cardCountsConfirmed: 'Confirmed {count}',
viewNotification: 'View notification',
canProcess: 'Processable',
cannotProcess: 'Not processable',
queueParticipation: 'Queue participation',
@@ -444,14 +458,89 @@ export default {
sourceOnlyOrderLabel: 'Source message only',
hiddenTechnicalOrder: 'No visible order',
columns: {
item: 'Work item',
task: 'Task',
order: 'Order',
card: 'Task card',
status: 'Status',
source: 'Source email',
cards: 'Cards',
queue: 'Queue',
},
},
taskV4: {
title: 'V4 order task detail',
subtitle: 'Handle the current order task with the backend V4 task card model.',
orderTaskSummary: 'Order task summary',
orderTaskId: 'Order task ID',
orderReference: 'Order reference',
targetBookingType: 'Target booking type',
targetLocator: 'Target locator',
targetResolutionStatus: 'Target resolution status',
cardCounts: 'Card counts',
sourceMessageCard: 'Source email card',
basicInformationCard: 'Basic information card',
businessCards: 'Business task cards',
adapterContractErrors: 'Adapter contract diagnostics',
noAdapterContractErrors: 'No adapter contract errors.',
noBusinessCards: 'No business task cards.',
displayPayload: 'Display summary',
rawCardPayload: 'Safe card summary',
readonlyReason: 'Read-only reason',
blockedReason: 'Blocked reason',
confirmCard: 'Confirm card',
confirmingCard: 'Confirming',
resolveReview: 'Submit review',
resolvingReview: 'Submitting',
reviewReason: 'Review note',
reviewReasonPlaceholder: 'Optional note for the manual decision',
confirmedOrderId: 'Confirmed order ID',
confirmedOrderIdPlaceholder: 'Enter when order ownership is unresolved',
confirmedOrderRequired: 'Order ownership is unresolved. Enter the confirmed order ID first.',
cardConfirmed: 'Card confirmed and detail refreshed.',
reviewResolved: 'Review submitted and detail refreshed.',
validationFailed: 'Fix current-card field errors first.',
sourceMessage: {
subject: 'Subject',
sender: 'Sender',
receivedAt: 'Received at',
conversationCount: 'Conversation messages',
attachments: 'Attachments',
excerpt: 'Email excerpt',
noExcerpt: 'No email excerpt',
noAttachments: 'No attachments',
},
field: {
required: 'Required',
readonly: 'Read only',
empty: 'Empty',
hidden: 'Sensitive content hidden',
selectPlaceholder: 'Select',
},
error: {
loadFailed: 'Failed to load V4 order task detail.',
actionFailed: 'Action failed. Check backend response details.',
},
},
sourceNotification: {
title: 'Source notification detail',
subtitle: 'S10/S99 read-only source message notification. It does not enter order or task-card handling.',
summary: 'Notification summary',
notificationId: 'Notification ID',
routeCode: 'Route code',
status: 'Notification status',
sourceMessage: 'Source email',
ackReason: 'Handling note',
ackReasonPlaceholder: 'Optional note for acknowledging or handling this notification',
ack: 'Acknowledge',
acking: 'Acknowledging',
acked: 'Acknowledged and detail refreshed.',
noBusinessEntry: 'This notification has no linked order, business card, field editing, review, or OPERA action.',
error: {
loadFailed: 'Failed to load source notification detail.',
ackFailed: 'Failed to acknowledge. Check backend response details.',
},
},
task: {
title: 'Task card',
fieldContract: 'Field contract',
@@ -653,6 +742,12 @@ export default {
SUCCEEDED: 'Succeeded',
BLOCKED: 'Blocked',
SKIPPED: 'Skipped',
OPEN: 'Open',
READONLY: 'Read only',
REVIEW_REQUIRED: 'Review required',
CONFIRMED: 'Confirmed',
ACK_REQUIRED: 'Pending acknowledgement',
ACKED: 'Acknowledged',
},
cardType: {
NEW_BOOKING: 'New booking',

View File

@@ -33,6 +33,7 @@ export default {
orderDetail: 'รายละเอียดออเดอร์',
taskDetail: 'รายละเอียดงาน',
sourceMessageConversation: 'เธรดอีเมล',
sourceNotificationDetail: 'รายละเอียดแจ้งเตือนต้นทาง',
debugEml: 'Debug EML',
systemSettings: 'ตั้งค่าระบบ',
systemUsers: 'ผู้ใช้',
@@ -432,6 +433,19 @@ export default {
totalSuffix: 'งาน',
noSourceSubject: 'ไม่มีหัวข้ออีเมลต้นทาง',
sourceReceivedAt: 'เวลารับอีเมล',
itemType: 'ประเภทงานในคิว',
itemTypeOrderTask: 'งานออเดอร์',
itemTypeSourceNotification: 'แจ้งเตือนต้นทาง',
orderTaskStatus: 'สถานะงานออเดอร์',
cardStatus: 'สถานะการ์ด',
orderUnresolved: 'ยังรอยืนยันออเดอร์',
sourceNotificationNoOrder: 'ไม่ผูกกับออเดอร์',
sourceNotificationNoOrderHint: 'แจ้งเตือนต้นทาง S10/S99 แบบอ่านอย่างเดียว',
cardCountsTotal: 'รวม {total} การ์ด',
cardCountsPending: 'รอยืนยัน {count}',
cardCountsReview: 'รอตรวจสอบ {count}',
cardCountsConfirmed: 'ยืนยันแล้ว {count}',
viewNotification: 'ดูแจ้งเตือน',
canProcess: 'ประมวลผลได้',
cannotProcess: 'ประมวลผลไม่ได้',
queueParticipation: 'อยู่ในคิวหรือไม่',
@@ -444,14 +458,89 @@ export default {
sourceOnlyOrderLabel: 'ข้อความต้นทางแบบอ่านอย่างเดียว',
hiddenTechnicalOrder: 'ไม่มีออเดอร์ที่แสดงได้',
columns: {
item: 'รายการงาน',
task: 'งาน',
order: 'ออเดอร์',
card: 'การ์ดงาน',
status: 'สถานะ',
source: 'อีเมลต้นทาง',
cards: 'การ์ด',
queue: 'คิว',
},
},
taskV4: {
title: 'รายละเอียดงานออเดอร์ V4',
subtitle: 'จัดการงานออเดอร์ปัจจุบันตามโมเดลการ์ดงาน V4 จากหลังบ้าน',
orderTaskSummary: 'สรุปงานออเดอร์',
orderTaskId: 'รหัสงานออเดอร์',
orderReference: 'อ้างอิงออเดอร์',
targetBookingType: 'ประเภทการจองเป้าหมาย',
targetLocator: 'ข้อมูลระบุเป้าหมาย',
targetResolutionStatus: 'สถานะการยืนยันเป้าหมาย',
cardCounts: 'จำนวนการ์ด',
sourceMessageCard: 'การ์ดอีเมลต้นทาง',
basicInformationCard: 'การ์ดข้อมูลพื้นฐาน',
businessCards: 'การ์ดงานธุรกิจ',
adapterContractErrors: 'ข้อมูลวินิจฉัยสัญญา Adapter',
noAdapterContractErrors: 'ไม่มีข้อผิดพลาดสัญญา Adapter',
noBusinessCards: 'ยังไม่มีการ์ดงานธุรกิจ',
displayPayload: 'สรุปสำหรับแสดงผล',
rawCardPayload: 'สรุปการ์ดที่ปลอดภัย',
readonlyReason: 'เหตุผลที่แก้ไขไม่ได้',
blockedReason: 'เหตุผลที่ถูกบล็อก',
confirmCard: 'ยืนยันการ์ด',
confirmingCard: 'กำลังยืนยัน',
resolveReview: 'ส่งผลตรวจสอบ',
resolvingReview: 'กำลังส่ง',
reviewReason: 'หมายเหตุการตรวจสอบ',
reviewReasonPlaceholder: 'ไม่บังคับ ระบุเหตุผลการตัดสินใจ',
confirmedOrderId: 'รหัสออเดอร์ที่ยืนยัน',
confirmedOrderIdPlaceholder: 'กรอกเมื่อยังไม่ยืนยันออเดอร์',
confirmedOrderRequired: 'ยังไม่ยืนยันออเดอร์ โปรดกรอกรหัสออเดอร์ที่ยืนยันก่อน',
cardConfirmed: 'ยืนยันการ์ดแล้วและรีเฟรชรายละเอียดแล้ว',
reviewResolved: 'ส่งผลตรวจสอบแล้วและรีเฟรชรายละเอียดแล้ว',
validationFailed: 'โปรดแก้ไขข้อมูลในการ์ดปัจจุบันก่อน',
sourceMessage: {
subject: 'หัวข้อ',
sender: 'ผู้ส่ง',
receivedAt: 'เวลารับ',
conversationCount: 'จำนวนอีเมลในเธรด',
attachments: 'ไฟล์แนบ',
excerpt: 'ข้อความบางส่วนของอีเมล',
noExcerpt: 'ไม่มีข้อความบางส่วน',
noAttachments: 'ไม่มีไฟล์แนบ',
},
field: {
required: 'จำเป็นต้องกรอก',
readonly: 'อ่านอย่างเดียว',
empty: 'ยังไม่กรอก',
hidden: 'ซ่อนข้อมูลที่อ่อนไหวแล้ว',
selectPlaceholder: 'เลือก',
},
error: {
loadFailed: 'โหลดรายละเอียดงานออเดอร์ V4 ไม่สำเร็จ',
actionFailed: 'ดำเนินการไม่สำเร็จ โปรดตรวจข้อมูลตอบกลับจากหลังบ้าน',
},
},
sourceNotification: {
title: 'รายละเอียดแจ้งเตือนต้นทาง',
subtitle: 'แจ้งเตือนข้อความต้นทาง S10/S99 แบบอ่านอย่างเดียว ไม่เข้าสู่การจัดการออเดอร์หรือการ์ดงาน',
summary: 'สรุปแจ้งเตือน',
notificationId: 'รหัสแจ้งเตือน',
routeCode: 'รหัสเส้นทาง',
status: 'สถานะแจ้งเตือน',
sourceMessage: 'อีเมลต้นทาง',
ackReason: 'หมายเหตุการจัดการ',
ackReasonPlaceholder: 'ไม่บังคับ ระบุเหตุผลที่อ่านแล้วหรือจัดการแล้ว',
ack: 'ยืนยันว่าอ่านแล้ว',
acking: 'กำลังยืนยัน',
acked: 'ยืนยันว่าอ่านแล้วและรีเฟรชรายละเอียดแล้ว',
noBusinessEntry: 'แจ้งเตือนนี้ไม่ผูกกับออเดอร์ การ์ดธุรกิจ การแก้ไขข้อมูล การตรวจสอบ หรือ OPERA',
error: {
loadFailed: 'โหลดรายละเอียดแจ้งเตือนต้นทางไม่สำเร็จ',
ackFailed: 'ยืนยันว่าอ่านแล้วไม่สำเร็จ โปรดตรวจข้อมูลตอบกลับจากหลังบ้าน',
},
},
task: {
title: 'การ์ดงาน',
fieldContract: 'สัญญาข้อมูล',
@@ -653,6 +742,12 @@ export default {
SUCCEEDED: 'สำเร็จ',
BLOCKED: 'ถูกบล็อก',
SKIPPED: 'ข้าม',
OPEN: 'กำลังดำเนินการ',
READONLY: 'อ่านอย่างเดียว',
REVIEW_REQUIRED: 'รอตรวจสอบ',
CONFIRMED: 'ยืนยันแล้ว',
ACK_REQUIRED: 'รอยืนยันว่าอ่านแล้ว',
ACKED: 'อ่านแล้ว',
},
cardType: {
NEW_BOOKING: 'จองใหม่',

View File

@@ -33,6 +33,7 @@ export default {
orderDetail: '订单详情',
taskDetail: '任务详情',
sourceMessageConversation: '邮件会话',
sourceNotificationDetail: '来源通知详情',
debugEml: 'Debug EML',
systemSettings: '系统设置',
systemUsers: '用户管理',
@@ -432,6 +433,19 @@ export default {
totalSuffix: '条任务',
noSourceSubject: '暂无来源主题',
sourceReceivedAt: '来源时间',
itemType: '工作项类型',
itemTypeOrderTask: '订单任务',
itemTypeSourceNotification: '来源通知',
orderTaskStatus: '订单任务状态',
cardStatus: '卡片状态',
orderUnresolved: '订单归属待确认',
sourceNotificationNoOrder: '不关联订单',
sourceNotificationNoOrderHint: 'S10/S99 只读来源通知',
cardCountsTotal: '共 {total} 张卡',
cardCountsPending: '待确认 {count}',
cardCountsReview: '待复核 {count}',
cardCountsConfirmed: '已确认 {count}',
viewNotification: '查看通知',
canProcess: '可处理',
cannotProcess: '不可处理',
queueParticipation: '是否参与队列',
@@ -444,14 +458,89 @@ export default {
sourceOnlyOrderLabel: '来源消息只读',
hiddenTechnicalOrder: '不关联可见订单',
columns: {
item: '工作项',
task: '任务',
order: '订单',
card: '任务卡',
status: '状态',
source: '来源邮件',
cards: '卡片',
queue: '队列',
},
},
taskV4: {
title: 'V4 订单任务详情',
subtitle: '按后端 V4 任务卡模型处理当前订单任务',
orderTaskSummary: '订单任务摘要',
orderTaskId: '订单任务编号',
orderReference: '订单引用',
targetBookingType: '目标预订类型',
targetLocator: '目标定位信息',
targetResolutionStatus: '归属确认状态',
cardCounts: '任务卡统计',
sourceMessageCard: '来源邮件卡',
basicInformationCard: '基础信息卡',
businessCards: '业务任务卡',
adapterContractErrors: '适配契约诊断',
noAdapterContractErrors: '暂无适配契约异常。',
noBusinessCards: '暂无业务任务卡。',
displayPayload: '展示摘要',
rawCardPayload: '卡片安全摘要',
readonlyReason: '不可操作原因',
blockedReason: '阻塞原因',
confirmCard: '确认卡片',
confirmingCard: '确认中',
resolveReview: '提交复核',
resolvingReview: '提交中',
reviewReason: '复核说明',
reviewReasonPlaceholder: '可选,说明人工判断依据',
confirmedOrderId: '确认订单编号',
confirmedOrderIdPlaceholder: '订单归属未解决时填写',
confirmedOrderRequired: '订单归属未解决,请先填写确认订单编号。',
cardConfirmed: '卡片已确认,详情已刷新。',
reviewResolved: '复核已提交,详情已刷新。',
validationFailed: '请先修正当前卡片字段。',
sourceMessage: {
subject: '主题',
sender: '发件人',
receivedAt: '接收时间',
conversationCount: '会话邮件数',
attachments: '附件',
excerpt: '邮件片段',
noExcerpt: '暂无邮件片段',
noAttachments: '无附件',
},
field: {
required: '必填',
readonly: '只读',
empty: '未填写',
hidden: '敏感内容已隐藏',
selectPlaceholder: '请选择',
},
error: {
loadFailed: 'V4 订单任务详情加载失败。',
actionFailed: '操作失败,请检查后端返回信息。',
},
},
sourceNotification: {
title: '来源通知详情',
subtitle: 'S10/S99 来源消息只读通知,不进入订单或任务卡处理。',
summary: '通知摘要',
notificationId: '通知编号',
routeCode: '路由代码',
status: '通知状态',
sourceMessage: '来源邮件',
ackReason: '处理说明',
ackReasonPlaceholder: '可选,说明已读或已处理依据',
ack: '确认已读',
acking: '确认中',
acked: '已确认已读,详情已刷新。',
noBusinessEntry: '该通知不关联订单、业务卡、字段编辑、复核或 OPERA 操作。',
error: {
loadFailed: '来源通知详情加载失败。',
ackFailed: '确认已读失败,请检查后端返回信息。',
},
},
task: {
title: '任务卡',
fieldContract: '字段契约',
@@ -653,6 +742,12 @@ export default {
SUCCEEDED: '成功',
BLOCKED: '阻塞',
SKIPPED: '跳过',
OPEN: '处理中',
READONLY: '只读',
REVIEW_REQUIRED: '待复核',
CONFIRMED: '已确认',
ACK_REQUIRED: '待确认已读',
ACKED: '已读',
},
cardType: {
NEW_BOOKING: '新预订',