补齐超时响应唯一 timeoutCode 与智能体按码查询,并增强报价模板预览与解析落库。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
linmianxun
2026-09-18 22:25:04 +08:00
co-authored by Cursor
parent 19f94252f0
commit 6cd6803147
15 changed files with 706 additions and 35 deletions
@@ -1,7 +1,9 @@
<script setup>
/**
* 系统设置:响应超时小时配置。
* 海运 / 空运 / 陆运同页分三块展示,只允许改超时小时;无增删、无 Tab。
* 超时响应:响应超时小时配置。
* 海运 / 空运 / 陆运同页自上而下分块展示,只允许改超时小时;无增删、无 Tab。
* 「编码」= timeoutCode,每条唯一(如 sea_sales / land_hk_express),供智能体单码调用;只读。
* roleCode(销售/产品)仅为角色维度,可重复,不是调用主键。
* 不展示线路类别(维度仍在主账,仅后台列表隐藏)。
* 数据来自主账 inq_response_timeout;本页不做工单超时判定。
*/
@@ -50,6 +52,12 @@ function displayOrDash(v) {
return s || '—';
}
/** 唯一业务编码;缺省时提示需迁移 */
function timeoutCodeOf(row) {
const c = String(row.timeoutCode || '').trim();
return c || '—';
}
async function loadList() {
loading.value = true;
try {
@@ -105,7 +113,7 @@ async function commitHours(row) {
<template>
<div class="sys-setting-page">
<div class="toolbar-bar">
<span class="hint">固定规则,仅可改超时小时;失焦或回车保存</span>
<span class="hint">固定规则,仅可改超时小时;编码唯一只读,供智能体调用;失焦或回车保存</span>
</div>
<div v-if="loading" style="padding: 24px; color: #94a3b8">加载中…</div>
@@ -120,16 +128,22 @@ async function commitHours(row) {
<thead>
<tr>
<th style="width: 88px">角色</th>
<th style="width: 160px" title="每条唯一;智能体用此码取超时小时">编码</th>
<th>运输类型</th>
<th style="width: 140px">超时设置(小时)</th>
</tr>
</thead>
<tbody>
<tr v-if="!block.rows.length">
<td colspan="3" style="color: #94a3b8">暂无配置</td>
<td colspan="4" style="color: #94a3b8">暂无配置</td>
</tr>
<tr v-for="row in block.rows" :key="row.id">
<td>{{ roleLabel(row.roleCode) }}</td>
<td>
<code class="role-code" :title="'智能体调用编码:' + timeoutCodeOf(row)">{{
timeoutCodeOf(row)
}}</code>
</td>
<td>{{ displayOrDash(row.transportType) }}</td>
<td>
<div class="hours-cell">
@@ -202,4 +216,16 @@ async function commitHours(row) {
color: #667085;
font-weight: 600;
}
.role-code {
display: inline-block;
padding: 2px 6px;
border-radius: 4px;
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
font-size: 11px;
font-weight: 600;
color: #344054;
background: #f2f4f7;
border: 1px solid #e4e7ec;
}
</style>