Files
geo/apps/admin-web/src/i18n/messages/zh-CN.ts
T
root 98ebb12fa1 feat: add generation_mode to RecentArticle and related components
- Updated RecentArticle interface to include generation_mode.
- Modified workspace_service to map generation_mode from database.
- Adjusted domain model for RecentArticle to accommodate generation_mode.
- Enhanced SQL queries to retrieve generation_mode from generation_tasks.
- Created ArticleActionGroup component for article action buttons.
- Implemented ArticleGenerateStatus component to display generation status.
- Developed ArticlePublishStatus component to show publish status and related platforms.
- Introduced ArticleSourceMeta component to display article source information.
- Added utility functions for article actions and clipboard content generation.
2026-04-07 16:07:21 +08:00

864 lines
32 KiB
TypeScript

const zhCN = {
app: {
name: "GEO工具平台",
loginIntro: "面向企业的品牌资产管理与内容生产协作系统",
},
locale: {
"zh-CN": "中文简体",
"en-US": "English",
},
common: {
cancel: "取消",
close: "关闭",
confirm: "确认",
create: "新建",
edit: "编辑",
delete: "删除",
reset: "重置",
refresh: "刷新数据",
loading: "加载中",
search: "搜索",
save: "保存",
next: "下一步",
previous: "上一步",
submit: "提交",
submitGenerate: "提交生成",
back: "返回",
actions: "操作",
title: "标题",
description: "描述",
website: "官网",
wordCount: "字数",
createdAt: "创建时间",
updatedAt: "更新时间",
status: "状态",
required: "必填",
noData: "暂无数据",
optional: "可选",
preview: "预览",
details: "详情",
versions: "版本记录",
total: "总量",
balance: "剩余",
used: "已使用",
source: "来源",
templateType: "模版类型",
generateStatus: "生成状态",
publishStatus: "发布状态",
selectPlease: "请选择",
inputPlease: "请输入",
upgrade: "去升级",
copy: "复制",
copySuccess: "内容已复制",
},
nav: {
workspace: "工作台",
articleCreation: "文章创作",
templates: "模版创作",
custom: "自定义生成",
freeCreate: "自由创作",
media: "媒体管理",
brandManagement: "品牌管理",
brands: "品牌词库",
tracking: "数据追踪",
trackingDetail: "数据详情",
contentManagement: "内容管理",
knowledge: "知识库",
},
auth: {
welcomeBack: "欢迎回来",
tenantAdminLogin: "租户后台登录",
loginAndEnter: "登录并进入工作台",
email: "邮箱",
password: "密码",
defaultTestAccount: "默认测试账号",
defaultTestPassword: "默认测试密码",
},
shell: {
localeLabel: "语言",
quotaTitle: "套餐与额度",
quotaStatus: "状态正常",
remainingQuota: "生成文章",
resetAt: "重置时间",
userFallback: "管理员",
logout: "退出",
planFallback: "免费版",
},
route: {
login: {
title: "欢迎回来",
description: "使用真实租户账号登录 GEO 工具平台。",
},
workspace: {
title: "工作台",
description: "模板入口、数据总览和最近生成都集中在这里。",
},
templates: {
title: "模版创作",
description: "选择合适的模版或使用批量功能,快速生成GEO内容。",
},
wizard: {
title: "模版向导",
description: "按模版驱动的三步流程完成信息填写、结构确认与文章生成。",
},
articleEditor: {
title: "文章编辑",
description: "在独立编辑页中调整标题、正文和发布配置。",
},
custom: {
title: "自定义生成",
description: "基于自定义 Prompt 规则灵活生成文章,支持即时与定时任务。",
},
freeCreate: {
title: "自由创作",
description: "自由创建并编辑文章,无需模版或AI生成。",
},
media: {
title: "媒体管理",
description: "统一管理媒体账号绑定、本地插件状态和一键发布执行链路。",
},
brands: {
title: "品牌词库",
description: "围绕品牌维护关键词、问题集和竞品信息。",
},
tracking: {
title: "数据详情",
description: "当前仓库还没有匹配的后端接口,页面暂保持为设计占位。",
},
knowledge: {
title: "知识库",
description: "当前仓库还没有匹配的后端接口,页面暂保持为设计占位。",
},
},
workspace: {
eyebrow: "Dashboard",
metrics: {
articles: "生成数",
published: "发布数",
brands: "品牌数",
platforms: "媒体平台数",
},
sections: {
templates: "文章模版类型",
recent: "最近生成",
overview: "数据总览",
quota: "套餐与额度",
},
actions: {
enterTemplates: "进入模版创作",
},
quota: {
remaining: "剩余生成额度",
total: "总额度",
used: "已使用",
},
emptyTemplates: "暂无模版卡片数据",
noRecentArticles: "暂无最近生成内容",
},
templateMeta: {
top_x_article: {
eyebrow: "榜单内容",
helper: "排序推荐类文章,适合快节奏种草和结构化比较。",
accent: "Top X",
action: "创建榜单",
},
product_review: {
eyebrow: "单品评测",
helper: "突出卖点、优缺点与适用人群,适合高转化内容。",
accent: "评测稿",
action: "发起评测",
},
research_report: {
eyebrow: "研究报告",
helper: "更长、更专业的分析内容,适合趋势和行业洞察。",
accent: "深度稿",
action: "创建报告",
},
brand_search_expansion: {
eyebrow: "品牌扩写",
helper: "把品牌词和搜索需求扩展成更完整的问答式内容。",
accent: "GEO",
action: "继续扩写",
},
default: {
eyebrow: "内容模版",
helper: "当前模版已经可用,可直接进入生成流程。",
accent: "Ready",
action: "进入模版",
},
},
status: {
generate: {
draft: "草稿",
queued: "排队中",
generating: "生成中",
running: "运行中",
completed: "已完成",
failed: "生成失败",
},
publish: {
unpublished: "未发布",
publishing: "发布中",
success: "发布成功",
failed: "发布失败",
partial_success: "部分成功",
published: "发布成功",
publish_success: "发布成功",
publish_failed: "发布失败",
pending_review: "待审核",
},
sourceType: {
template: "模版单次生成",
custom_generation: "自定义生成",
instant_task: "即时任务",
schedule_task: "定时任务",
free_create: "自由创作",
},
},
freeCreate: {
actions: {
create: "新建文章",
},
filters: {
publishStatus: "发布状态",
keyword: "搜索文章",
createdTime: "创建时间",
createdTimeStart: "开始时间",
createdTimeEnd: "结束时间",
keywordPlaceholder: "请输入标题内容搜索",
},
list: {
eyebrow: "自由创作",
count: "共 {count} 篇文章",
empty: "还未创建文章,点击「新建文章」开始创作~",
edit: "编辑文章",
deleteConfirm: "确认删除这篇文章吗?",
deleteSuccess: "文章已删除",
deleteError: "删除文章失败",
},
createError: "创建文章失败",
},
templates: {
eyebrow: "Article Creation",
actions: {
batchGenerate: "批量生成文章",
chooseTemplate: "选择模版创作",
},
filters: {
template: "模版类型",
publishStatus: "发布状态",
generateStatus: "生成状态",
keyword: "搜索文章",
generationTime: "生成时间",
generationTimeStart: "开始时间",
generationTimeEnd: "结束时间",
keywordPlaceholder: "请输入标题内容搜索",
},
list: {
count: "共 {count} 篇文章",
empty: "还未创建文章,暂无相关数据~",
preview: "预览正文",
edit: "编辑文章",
editDisabled: "只有草稿、生成失败或已完成文章才可编辑",
publishDisabled: "只有已完成文章才可发布",
versions: "查看版本",
deleteConfirm: "确认删除这篇文章吗?",
deleteSuccess: "文章已删除",
deleteError: "删除文章失败",
},
picker: {
title: "选择你需要的模版创作",
viewExample: "查看示例",
},
wizard: {
drawerTitle: "模版生成",
steps: {
basic: "基本信息",
basicDesc: "语言、模版字段与品牌上下文",
structure: "文章结构",
structureDesc: "标题方案与结构段落",
generate: "生成文章",
generateDesc: "确认大纲、补充关键要点并提交生成任务",
},
sections: {
templateFields: "模版字段",
brandContext: "品牌上下文",
language: "文章语言",
brandInfo: "品牌信息",
brandLibrary: "品牌库",
brandName: "品牌名称",
website: "官网地址",
brandSummary: "AI 品牌摘要",
keywords: "关键词",
competitors: "竞品列表",
chooseTitle: "选择文章标题",
customTitle: "自定义标题",
reviewIntroHook: "评测引言钩子",
structure: "文章结构",
customOutline: "自定义结构",
preview: "文章预览",
generatedOutline: "确认文章大纲",
outlinePreview: "大纲预览",
keyPoints: "文章关键要点",
review: "提交前确认",
notes: "生成说明",
inputParams: "输入参数",
},
hints: {
brandContext: "可选。选择后会自动带出关键词与竞品信息。",
brandFlow: "品牌可直接输入,也可以从品牌库带入。点击分析后,AI 会补充关键词、竞品和标题建议。",
brandSummaryPlaceholder: "AI 分析后会在这里补充品牌简介、差异点和适合切入的内容角度。",
keywords: "支持直接输入,也支持复用品牌词库里的关键词。AI 分析结果会自动补充到这里。",
competitors: "竞品支持手动编辑、追加和收藏到品牌词库。AI 分析会尽量补齐候选竞品。",
competitorEmptyEditable: "还没有竞品,先手动添加一条或点击分析让 AI 自动补齐。",
templateFields: "这里保留当前模板自己的补充字段,用来约束 AI 生成角度。",
titleSelection: "下一步前会由 AI 给出 5 个更合适的标题候选,你可以在这里挑选或改写。",
reviewIntroHook: "选择一种开场方式,AI 会按这个评测引言风格组织文章开头。",
structure: "保留文章默认结构,也可以按本次出稿需求删减。",
preview: "右侧会根据当前标题和结构实时预览最终文章框架。",
previewEmpty: "选择结构后,这里会实时预览文章框架。",
generatedOutline: "AI 会先生成完整大纲,你可以继续编辑、补充或删除节点后再正式生成文章。",
outlinePreview: "右侧会根据当前大纲实时预览最终文章框架。",
outlineEmpty: "生成大纲后,这里会显示可编辑的文章结构。",
review: "确认无误后提交,文章会进入生成队列。",
competitorEmpty: "当前品牌下暂无竞品数据",
customTitle: "如需手动改写,可在这里输入最终标题",
keyPoints: "补充希望文章强调的卖点、观点或风格要求",
async: "后端会立即创建文章和任务记录,再异步完成正文生成。提交成功后,列表会自动刷新。",
},
actions: {
analyze: "分析",
addCompetitor: "添加竞品",
addSection: "添加结构",
addOutlineNode: "添加节点",
addOutlineChild: "添加子节点",
favorite: "收藏",
saved: "已收藏",
submit: "提交并生成",
},
review: {
templateName: "模版名称",
articleTitle: "文章标题",
brandContext: "品牌上下文",
outline: "结构段落",
currentTemplate: "当前模版",
promptVisibility: "Prompt 可见性",
selectedKeywords: "已选关键词",
selectedCompetitors: "已选竞品",
},
localeOptions: {
zh: "中文简体",
en: "English",
},
table: {
website: "网址",
name: "名称",
description: "简介",
actions: "操作",
},
placeholders: {
brandLibrary: "从品牌库选择已有品牌",
brandName: "输入品牌名,或在选择品牌后继续微调",
website: "输入官网地址,选填",
keywords: "输入关键词后回车,可多选",
customTitle: "如需覆盖 AI 标题,可在这里直接输入",
customOutline: "补充一个额外结构,例如“选购建议”",
keyPoints: "告诉 AI 还需要强调哪些要点、风格或限制条件",
competitorWebsite: "官网或落地页地址",
competitorName: "竞品名称",
competitorDescription: "一句话说明竞品定位或特点",
outlineNode: "请输入标题",
},
promptVisible: "Prompt 可见",
promptSealed: "Prompt 已封装",
assist: {
analyzeTitle: "AI 正在分析关键词和竞品,请稍后…",
analyzeTitleNoCompetitors: "AI 正在分析关键词和评测上下文,请稍后…",
titleTitle: "AI 正在生成标题,请稍后…",
outlineTitle: "AI 正在生成文章大纲,请稍后…",
analyzeStages: {
brand: "品牌信息分析中…",
keywords: "关键词提炼中…",
competitors: "竞品与官网信息补充中…",
context: "评测上下文整理中…",
},
titleStages: {
context: "正在整理当前内容上下文…",
strategy: "正在结合关键词和竞品生成标题策略…",
strategyNoCompetitors: "正在结合关键词生成标题策略…",
finalize: "正在输出 5 个标题候选…",
},
outlineStages: {
context: "正在整理标题、关键词和竞品上下文…",
contextNoCompetitors: "正在整理标题、关键词和评测上下文…",
structure: "正在根据已选结构生成文章大纲…",
finalize: "正在输出可编辑的大纲结果…",
},
},
messages: {
requiredField: "请先填写 {field}",
missingBrand: "请先选择品牌库对象或输入品牌名称",
missingTitle: "请先选择或输入文章标题",
missingReviewIntroHook: "请先选择一个评测引言钩子",
missingOutline: "请至少选择一个文章结构段落",
missingGeneratedOutline: "请先生成并确认文章大纲",
missingCompetitorName: "至少需要填写竞品名称后才能收藏",
savedCompetitor: "竞品已收藏到品牌词库",
assistReady: "AI 分析已完成,可以继续调整内容。",
assistFailed: "AI 分析失败,请稍后重试。",
assistTimeout: "AI 分析超时,请稍后重试。",
titleFailed: "标题生成失败,请稍后重试。",
titleTimeout: "标题生成超时,请稍后重试。",
outlineFailed: "大纲生成失败,请稍后重试。",
outlineTimeout: "大纲生成超时,请稍后重试。",
draftSaved: "草稿已保存,已返回模版创作列表",
draftSaveFailed: "草稿保存失败,请稍后重试。",
queued: "任务已提交,正在排队生成",
submitted: "生成任务已提交,正在刷新文章列表。",
},
},
},
article: {
drawerTitle: "文章详情",
preview: "正文预览",
versionHistory: "版本记录",
publishedDetails: "已发布详情",
untitled: "未命名文章",
noContent: "当前文章还没有正文内容",
editor: {
publish: "发布",
titlePlaceholder: "请输入文章标题",
leaveConfirm: {
title: "当前文章还没保存",
description: "你有未保存的改动。现在离开会丢失本次编辑内容,是否需要先保存再返回?",
discard: "放弃更改",
saveAndLeave: "保存并返回",
},
platformsTitle: "发布平台",
platformsHint: "这里会同步媒体管理中的平台和绑定状态,支持直接编辑文章的发布平台。",
coverTitle: "封面图",
coverHint: "默认关闭。上传后会保存为文章封面素材。",
coverRequired: "已选择百家号,封面图为必传项。",
coverUpload: "上传封面图",
coverReplace: "重新选择",
coverRemove: "移除封面",
coverSaved: "已保存封面素材",
coverOff: "封面图当前已关闭,开启后可上传并裁剪封面素材。",
coverTagRequired: "必传",
coverTagOptional: "可选",
imagePrompt: "请输入图片地址",
tablePicker: {
empty: "拖拽选择表格尺寸",
hint: "按住拖动到边缘可继续扩展",
},
tableMenu: {
addRowBefore: "上方插行",
addRowAfter: "下方插行",
deleteRow: "删除行",
addColBefore: "左侧插列",
addColAfter: "右侧插列",
deleteCol: "删除列",
alignLeft: "左对齐",
alignCenter: "居中",
alignRight: "右对齐",
deleteTable: "删除表格",
},
imageMenu: {
replace: "替换图片",
caption: "切换图注",
alignLeft: "居左",
alignCenter: "居中",
alignRight: "居右",
resetSize: "重置大小",
delete: "删除图片",
},
aiOptimize: {
title: "AI 优化",
subtitle: "支持连续多段选中,基于你的优化要求生成候选改写",
originalLabel: "当前选中文字",
previewLabel: "优化预览",
previewPlaceholder: "输入你的优化要求后,AI 会在这里实时生成候选内容。",
generating: "正在生成中...",
streamingHint: "正在根据你的要求逐步生成更合适的表达...",
disclaimer: "AI 生成内容仅供参考,请确认后再替换原文。",
promptLabel: "优化要求",
promptPlaceholder: "例如:更自然一点,适合课堂导入,保留原有信息但更有感染力。",
generate: "开始生成",
regenerate: "重新生成",
stop: "停止",
replace: "替换原文",
close: "先不替换",
messages: {
selectionRequired: "请先选中一段或连续多段需要优化的正文内容。",
promptRequired: "请先输入你的优化要求。",
selectionChanged: "原选区已变化,请重新选中后再替换。",
empty: "当前还没有可替换的 AI 内容。",
failed: "AI 优化失败,请稍后重试。",
},
},
messages: {
saved: "文章已保存",
generating: "文章还在生成中,请稍后再编辑。",
locked: "只有已完成文章才可编辑。",
publishPending: "请先保存文章,再选择需要发布的平台。",
},
platforms: {
zhihu: "知乎",
},
},
meta: {
templateType: "模版类型",
currentVersion: "当前版本",
source: "生成来源",
wordCount: "文章字数",
},
versionUntitled: "未命名版本",
},
media: {
hero: {
eyebrow: "Publisher",
},
plugin: {
title: "浏览器发布器",
ready: "插件已连接",
notInstalled: "插件未连接",
installTitle: "请先安装并打开 GEO Publisher 插件",
installDesc: "绑定和发布都依赖浏览器本地登录态执行。插件会保存独立安装实例身份,后续即使网页关闭,也能继续运行后台检测任务。",
backgroundHint: "插件不会直接复用网页 access token。当前实现会为每个浏览器安装实例注册独立身份,为未来后台收录检测和定时扫描预留能力。",
versionLabel: "插件版本",
installationLabel: "安装实例 ID",
connectedSummary: "本地已登录平台",
registerRequired: "插件安装实例尚未注册,请先重新检测。",
},
actions: {
redetect: "重新检测",
bind: "去绑定",
rebind: "重新绑定",
unbind: "解绑",
},
card: {
bound: "已绑定",
unbound: "未绑定",
unboundHint: "{platform} 还未绑定到当前租户,可以直接发起授权。",
needsAttention: "需要处理",
expiredHint: "该账号状态异常,建议重新绑定以恢复发布能力。",
localMissing: "本地未登录",
localMismatch: "本地账号不匹配",
readyHint: "当前浏览器已检测到正确账号,可以直接用于发布和后续后台检测。",
accountLabel: "SaaS 账号",
uidLabel: "平台 UID",
localLabel: "本地状态",
localConnected: "已检测到登录态",
localDisconnected: "未检测到登录态",
updatedAt: "最近同步",
multiAccount: "已绑定 {count} 个账号",
openPlatform: "打开平台官网",
},
account: {
localMissing: "SaaS 已绑定,但当前浏览器未检测到对应登录态。",
localMismatch: "当前浏览器登录的是另一个账号,请重新授权或切换账号。",
ready: "已就绪",
selectable: "可发布",
unavailable: "不可用",
},
empty: {
accounts: "当前租户还没有绑定可发布账号。",
},
messages: {
bindSuccess: "{platform} 绑定成功",
bindSuccessTitle: "绑定成功",
bindSuccessDetail: "已绑定【{platform}】的账号【{account}】",
bindPending: "插件尚未检测到该平台登录态,请先在插件中登录后重试。",
bindPendingTitle: "绑定未完成",
bindFailureTitle: "绑定失败",
unbindSuccess: "账号解绑成功",
unbindSuccessTitle: "解绑成功",
unbindFailureTitle: "解绑失败",
unbindConfirm: "确认解绑这个平台账号吗?解绑后将无法直接发布。",
},
publish: {
title: "发布",
subtitle: "Multi-platform Dispatch",
description: "选择当前浏览器已登录且租户已绑定的平台,插件会逐个平台执行真实发布并回写链接。",
platformsTitle: "发布平台",
platformsHint: "会优先回填文章里已选择且已绑定的账号,未绑定或本地登录态异常的平台不可选。",
coverTitle: "封面图",
coverHint: "默认关闭。点击上传后可选择或裁剪封面。",
coverUpload: "上传封面图",
coverPlaceholder: "请输入封面素材 URL(可选)",
messages: {
success: "已提交 {count} 个平台发布任务",
successTitle: "发布成功",
partial: "发布执行完成,成功 {success} 个,失败 {failed} 个",
partialTitle: "部分发布失败",
selectPlatform: "请先选择至少一个可发布的平台",
coverRequired: "已选择百家号,请先上传封面图",
failureTitle: "发布失败",
failureItem: "文章发布到平台【{platform}】失败【{reason}】",
unknownFailure: "未知错误",
},
},
records: {
tabTitle: "已发布详情",
platform: "已发布平台",
status: "发布状态",
publishedAt: "发布时间",
link: "已发布链接",
open: "打开",
copy: "复制",
empty: "暂无发布记录",
linkEmpty: "当前记录还没有可用链接",
copySuccess: "链接已复制",
},
},
coverPicker: {
title: "选择封面图",
tabs: {
local: "正文/本地上传",
ai: "AI封图",
},
previewTitle: "封面裁剪预览",
previewHintLocked: "已选择百家号,确认时会按 16:9 输出封面。",
previewHintFree: "当前不限制封面比例,可直接上传原图;如需调整也可拖拽缩放后再确认。",
requirementsTitle: "平台封面要求",
requirementsHint: "会根据当前选中的发布平台自动切换要求,百家号为强制上传。",
recommendedRatio: "推荐比例",
recommendedSize: "推荐尺寸",
required: "必传",
optional: "可选",
zoom: "缩放",
fileLabel: "当前封面",
emptyTitle: "暂未选择发布平台",
emptyPlatforms: "选择发布平台后,这里会自动显示每个平台的封面要求。",
emptyHint: "支持 PNG、JPG、GIF、WebP,最大 10MB",
aiTitle: "AI 封图即将开放",
aiHint: "当前先支持本地上传和裁剪,后续会把 AI 生成封面接进这里。",
actions: {
upload: "本地上传",
reset: "重置取景",
remove: "移除封面",
},
notes: {
required: "该平台当前发布链路要求必须携带封面图,未上传时不能提交发布。",
optional: "该平台当前接入已支持独立封面,会复用当前裁剪结果完成发布。",
unsupported: "该平台当前接入暂不消费独立封面,会沿用正文内容或平台默认样式。",
},
messages: {
invalidType: "仅支持 PNG、JPG、GIF、WebP 图片",
tooLarge: "图片不能超过 10MB",
missingImage: "请先选择一张封面图",
missingArticle: "文章信息还没准备好,请刷新后重试",
imageLoadFailed: "封面图加载失败,请重新选择图片",
},
},
brands: {
eyebrow: "Brand Library",
title: "品牌词库",
description: "通过品牌名称和品牌相关信息维护关键词、问题集和竞品资产。",
railTitle: "品牌库",
selectBrand: "选择品牌后即可继续维护关键词和问题集。",
newBrand: "新建品牌",
editBrand: "编辑品牌",
deleteBrand: "删除品牌",
tabs: {
keywords: "关键词",
competitors: "竞品库",
},
sections: {
keywords: "关键词",
questions: "问题集",
competitors: "竞品库",
versions: "版本记录",
},
actions: {
newKeyword: "新建关键词",
newQuestion: "新建问题",
newCompetitor: "新建竞品",
viewVersions: "查看版本",
},
empty: {
brands: "还没有品牌数据,先创建一个品牌。",
questions: "当前关键词下暂无问题集。",
competitors: "当前品牌下暂无竞品数据。",
},
form: {
brandName: "品牌名称",
brandWebsite: "公司官网(选填)",
brandDescription: "品牌描述",
keywordName: "关键词名称",
questionText: "问题内容",
competitorName: "竞品名称",
competitorWebsite: "竞品官网",
competitorDescription: "竞品描述",
competitorLines: "重点产品线",
competitorLinesHint: "使用英文逗号分隔多个产品线",
},
messages: {
createBrand: "品牌已创建",
updateBrand: "品牌已更新",
deleteBrand: "品牌已删除",
createKeyword: "关键词已创建",
updateKeyword: "关键词已更新",
deleteKeyword: "关键词已删除",
createQuestion: "问题已创建",
updateQuestion: "问题已更新",
deleteQuestion: "问题已删除",
createCompetitor: "竞品已创建",
updateCompetitor: "竞品已更新",
deleteCompetitor: "竞品已删除",
chooseBrand: "请先选择品牌",
chooseKeyword: "请先选择关键词",
},
},
custom: {
eyebrow: "Custom Generation",
title: "自定义生成",
description: "基于自定义 Prompt 规则灵活生成文章,支持即时与定时任务。",
cards: {
instantTitle: "即时生成内容",
instantDesc: "快速自定义内容创作任务",
scheduleTitle: "定时计划生成",
scheduleDesc: "配置自动化内容生成计划",
},
tabs: {
articles: "生成文章",
instantTasks: "即时任务",
scheduleTasks: "定时任务",
promptRules: "Prompt 规则",
},
promptRule: {
name: "规则名称",
namePlaceholder: "请输入 Prompt 名称",
content: "Prompt 内容",
scene: "适用场景",
tone: "默认语气",
wordCount: "默认字数",
wordCountHint: "主流大语言模型单次长文本输出普遍存在限制,为了保证生成内容质量,最大建议字数不超过 6000 字。",
status: "状态",
articleCount: "关联文章数",
createTitle: "新建 Prompt 规则",
editTitle: "编辑 Prompt 规则",
deleteConfirm: "确定删除该规则?",
enabled: "启用",
disabled: "停用",
ungrouped: "未分组",
groupPlaceholder: "请选择 Prompt 分组",
contentPlaceholder: "输入 Prompt 内容,支持变量占位符",
},
task: {
basicSection: "基础信息",
advancedSection: "高级设置",
name: "任务名称",
namePlaceholder: "简单易懂的名称更方便区分哦",
prompt: "选择Prompt",
promptPlaceholder: "请选择Prompt",
createPrompt: "新建Prompt",
platforms: "发布平台",
platformsHint: "同步媒体管理中的平台和绑定状态,可不选,支持多选",
platformConnected: "已绑定",
platformUnauthorized: "未授权",
platformEmptyTitle: "暂无发布平台",
platformEmptyHint: "当前还没有可用的平台数据,请先检查媒体管理配置。",
cover: "封面图",
coverHint: "请保证封面清晰、美观和完整",
coverUpload: "上传封面图",
coverUploadHint: "当前仅做本地预览",
scheduleTime: "定时生成文章",
scheduleEveryDay: "每天",
enableWebSearch: "生成文章联网搜索",
generateCount: "生成篇数",
submit: "创建任务",
},
group: {
title: "规则分组",
createTitle: "新建分组",
editTitle: "编辑分组",
deleteConfirm: "删除分组后,该组下的规则将移至未分组。确定删除?",
name: "分组名称",
allRules: "全部规则",
},
schedule: {
name: "任务名称",
rule: "关联规则",
cron: "执行频率",
platform: "目标平台",
nextRun: "下次执行",
startAt: "开始时间",
endAt: "结束时间",
brand: "关联品牌",
createTitle: "新建定时任务",
editTitle: "编辑定时任务",
deleteConfirm: "确定删除该定时任务?",
enabled: "已启用",
disabled: "已停用",
cronOptions: {
daily: "每天一次",
twiceDaily: "每天两次",
weekly: "每周一次",
custom: "自定义 Cron",
},
},
instant: {
title: "即时生成",
createTitle: "新建即时任务",
selectRule: "选择 Prompt 规则",
selectBrand: "选择品牌",
selectPlatform: "目标平台",
submit: "立即生成",
extraParams: "额外参数",
name: "任务名称",
executionStatus: "执行状态",
executionTime: "执行时间",
createdTime: "创建时间",
empty: "还未创建即时任务,暂无相关数据~",
},
filters: {
promptRule: "Prompt 规则",
publishStatus: "发布状态",
generateStatus: "生成状态",
title: "标题",
generateTime: "生成时间",
status: "状态",
name: "名称",
namePlaceholder: "请输入任务名称内搜索",
createdTime: "创建时间",
},
article: {
titleColumn: "文章标题",
titleGenerating: "标题生成中",
},
messages: {
ruleCreated: "规则创建成功",
ruleUpdated: "规则更新成功",
ruleDeleted: "规则删除成功",
ruleEnabled: "规则已启用",
ruleDisabled: "规则已停用",
groupCreated: "分组创建成功",
groupUpdated: "分组更新成功",
groupDeleted: "分组删除成功",
scheduleCreated: "定时任务创建成功",
scheduleUpdated: "定时任务更新成功",
scheduleDeleted: "定时任务删除成功",
scheduleEnabled: "定时任务已启用",
scheduleDisabled: "定时任务已停用",
generateSubmitted: "生成任务已提交",
missingTaskName: "请先填写任务名称",
missingPromptRule: "请先选择 Prompt",
invalidGenerateCount: "生成篇数至少为 1",
invalidScheduleTime: "请选择有效的定时时间",
missingPromptName: "请先填写 Prompt 名称",
missingPromptContent: "请先填写 Prompt 内容",
},
},
featureStub: {
eyebrow: "Feature Placeholder",
currentStatus: "当前状态",
nextPriority: "下一步重点",
integrationStrategy: "联调策略",
currentStatusText: "页面壳子已经接入主导航和鉴权守卫,后续可以直接在这里落真实交互。",
integrationStrategyText: "保持与 tenant-api 的响应结构对齐,先做真实读接口,再逐个补写接口和表单流。",
},
} as const;
export default zhCN;