From 31754ef398bf99d6ef63291bee20db05eda9569b Mon Sep 17 00:00:00 2001 From: Linzm <1015157648@qq.com> Date: Tue, 10 Nov 2026 10:44:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=E7=94=9F=E5=9B=BE?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E6=96=87=E6=A1=88=E6=8F=90=E7=A4=BA=E5=92=8C?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=A4=B4=E5=83=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/jingdong/jingdong.png | Bin 0 -> 44294 bytes src/config/jingdong.ts | 8 ++++- src/utils/jingdong-error.ts | 60 +++++++++++++++++++++++++++---- src/views/jingdong/index.vue | 23 ++++++------ 4 files changed, 72 insertions(+), 19 deletions(-) create mode 100644 src/assets/jingdong/jingdong.png diff --git a/src/assets/jingdong/jingdong.png b/src/assets/jingdong/jingdong.png new file mode 100644 index 0000000000000000000000000000000000000000..356639e71a0dd8dac79901cb41ed5709cdd308bc GIT binary patch literal 44294 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�<`ao1gkdbT&D+KIx(9RZD^SNjvn|H;by!*{ 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 KMNUMnLSTY>H literal 0 HcmV?d00001 diff --git a/src/config/jingdong.ts b/src/config/jingdong.ts index 0812fe2..6c6cc96 100644 --- a/src/config/jingdong.ts +++ b/src/config/jingdong.ts @@ -1,5 +1,6 @@ import logoAvatar from '@/assets/jingdong/logo-mark.png' import logoIcon from '@/assets/jingdong/logo_1.png' +import userAvatar from '@/assets/jingdong/jingdong.png' import caseOriginal from '@/assets/jingdong/原图.png' import caseEffect from '@/assets/jingdong/效果图.png' import caseScene from '@/assets/jingdong/场景图.png' @@ -19,9 +20,11 @@ export const jingdongConfig = { background: '#F5F5F5', images: { - /** 顶栏 / 对话头像 */ + /** 顶栏 / Agent 对话头像 */ avatar: logoAvatar, logo: logoAvatar, + /** 用户侧对话头像 */ + userAvatar, /** 浏览器标签 favicon */ logoIcon, caseOriginal, @@ -74,5 +77,8 @@ export const jingdongConfig = { effectPreparing: '效果图准备中,请稍后再试', generateFail: '这次没生成成功,请换个描述或照片再试', editFail: '这次调整没成功,请换个描述再试', + /** 内容安全策略拒绝(未成年 / 公众人物等) */ + contentPolicyFail: + '当前照片不符合内容规范,可能涉及未成年或公众人物,请换一张照片再试', }, } diff --git a/src/utils/jingdong-error.ts b/src/utils/jingdong-error.ts index ff6db7b..0dcc83c 100644 --- a/src/utils/jingdong-error.ts +++ b/src/utils/jingdong-error.ts @@ -1,5 +1,7 @@ /** 将后端 / 网络 / 前端技术错误转成用户可读提示 */ +import { jingdongConfig } from '@/config/jingdong' + const KNOWN: Record = { 未登录: '登录已失效,请关闭后重新进入再试', 请求失败: '服务繁忙,请稍后重试', @@ -17,7 +19,7 @@ const KNOWN: Record = { '签发上传地址失败:缺少 upload_url': '照片上传失败,请稍后重试', '获取 upload_id 失败': '照片上传失败,请稍后重试', 'upload/url 响应无法解析': '照片上传失败,请稍后重试', - 生成失败: '这次没生成成功,请换个描述或照片再试', + 生成失败: jingdongConfig.messages.generateFail, 提交生成失败: '提交失败了,请稍后重试', 没有生成结果: '这次没有生成出效果图,请再试一次', 生成超时: '生成时间有点久,请稍后重试', @@ -32,6 +34,32 @@ const KNOWN: Record = { 'product_id不在Agent开放分类': '当前产品暂不支持在线生图,请联系客服', } +/** 生图 / 编辑:内容策略单独翻译;Processing/ApiError 走场景兜底文案 */ +const GENERATE_EDIT_RULES: Array<{ test: RegExp; tipKey: 'contentPolicyFail' | 'processingFail' }> = [ + { + test: /content\s*policy|minor|public\s*figure|recognizable\s*public/i, + tipKey: 'contentPolicyFail', + }, + { + test: /processing\s*failed|ApiError/i, + tipKey: 'processingFail', + }, +] + +/** 前端自抛、可原样映射的短文案(生图场景仍保留) */ +const GENERATE_EDIT_KEEP = new Set([ + '已取消生成', + '生成超时', + '生成超时,请稍后重试', + '提交生成失败', + '没有生成结果', + '请先上传照片', + '缺少可编辑的效果图', + '缺少会话信息,请刷新后重试', + '缺少产品信息,请刷新后重试', + 'product_id不在Agent开放分类', +]) + const PATTERN_RULES: Array<{ test: RegExp; tip: string }> = [ { test: /timeout|超时|ETIMEDOUT|ECONNABORTED/i, tip: '等待超时,请稍后重试' }, { test: /network|fetch failed|ERR_NETWORK|断网|网络/i, tip: '网络异常,请检查网络后重试' }, @@ -49,8 +77,8 @@ const PATTERN_RULES: Array<{ test: RegExp; tip: string }> = [ export type FriendlyErrorScene = 'generate' | 'edit' | 'upload' | 'inspect' | 'download' | 'common' const SCENE_FALLBACK: Record = { - generate: '这次没生成成功,请换个描述或照片再试', - edit: '这次调整没成功,请换个描述再试', + generate: jingdongConfig.messages.generateFail, + edit: jingdongConfig.messages.editFail, upload: '照片上传失败,请换一张或稍后重试', inspect: '照片识别失败,请换一张或稍后重试', download: '下载失败,请换用其他浏览器,或长按效果图保存', @@ -86,11 +114,27 @@ function looksTechnical(text: string) { return false } +function mapGenerateEditError(text: string, tip: string): string { + for (const rule of GENERATE_EDIT_RULES) { + if (!rule.test.test(text)) continue + // 内容策略用专用文案;Processing/ApiError 与其它失败一样走场景兜底 + if (rule.tipKey === 'contentPolicyFail') { + return jingdongConfig.messages.contentPolicyFail + } + return tip + } + if (GENERATE_EDIT_KEEP.has(text) && KNOWN[text]) return KNOWN[text] + for (const key of GENERATE_EDIT_KEEP) { + if (key.length >= 4 && text.includes(key) && KNOWN[key]) return KNOWN[key] + } + // 生图/编辑:未识别的后端英文或其它错误,统一兜底 + return tip +} + /** * 任意错误 → 友好中文提示。 - * - 优先命中已知文案 / 规则 - * - 短中文业务提示可原样展示 - * - 技术性内容回落场景默认文案 + * - 生图/编辑:仅内容策略、Processing/ApiError 单独翻译,其余走 generateFail / editFail + * - 其它场景:已知文案 / 规则优先,技术性内容回落默认文案 */ export function friendlyError( error: unknown, @@ -101,6 +145,10 @@ export function friendlyError( const text = rawMessage(error) if (!text) return tip + if (scene === 'generate' || scene === 'edit') { + return mapGenerateEditError(text, tip) + } + if (KNOWN[text]) return KNOWN[text] for (const [key, value] of Object.entries(KNOWN)) { diff --git a/src/views/jingdong/index.vue b/src/views/jingdong/index.vue index cea316e..2ba5dfb 100644 --- a/src/views/jingdong/index.vue +++ b/src/views/jingdong/index.vue @@ -17,7 +17,9 @@ - +
@@ -1143,15 +1145,12 @@ onBeforeUnmount(() => { } .msg__avatar--user { - display: inline-flex; - align-items: center; - justify-content: center; - background: #3a8e4d; - border: 0; - color: #fff; - font-size: 13px; - font-weight: 600; - line-height: 1; + background: #ffffff; + + img { + object-fit: cover; + object-position: center; + } } .msg__body { @@ -1182,7 +1181,7 @@ onBeforeUnmount(() => { } .msg.is-user .msg__bubble { - border-radius: 16px 16px 4px 16px; + border-radius: 16px 4px 16px 16px; } .msg:not(.is-user) .msg__bubble { @@ -1197,7 +1196,7 @@ onBeforeUnmount(() => { width: 100%; box-sizing: border-box; padding: 10px; - background: #f0f1f3; + background: #e9e9eb; box-shadow: none; color: #222;