关键字管理

This commit is contained in:
2026-03-30 13:07:33 +08:00
parent 7d3e6654fd
commit 3f53a6c7d0
13 changed files with 1349 additions and 197 deletions

View File

@@ -278,6 +278,9 @@ const en = {
scholarCrawlers: 'Scholar Crawlers',
crawlerKeywords: 'Crawl Keywords',
expertDatabase: 'Expert Database',
keywordManagement: 'Keyword Management',
crawlTasks: 'Crawl Tasks',
expertList: 'Expert List',
autoPromotion: 'Auto Promotion',
ReArticles: 'Rejected Manuscripts', // 被拒稿件
editorialBoard: 'Boss System',
@@ -295,6 +298,7 @@ const en = {
expertDatabase: {
fieldSelectPlaceholder: 'Please select field',
keywordPlaceholder: 'Name / Email / Affiliation',
fieldPlaceholder: 'Please enter field',
searchBtn: 'Search',
resetBtn: 'Reset',
downloadExcelBtn: 'Download Excel',
@@ -311,7 +315,7 @@ const en = {
emailLabel: 'Email:',
acquisitionTimeLabel: 'Acquisition Time:'
},
exportWarn: 'Please select a research area or enter a keyword before exporting.',
exportWarn: 'Please select a research area, enter a keyword, or enter a field before exporting.',
exportFailed: 'Export failed'
},
mailboxConfig: {
@@ -583,6 +587,83 @@ colTitle: 'Template title',
crawlFail: 'Failed to start crawl',
exportFail: 'Failed to export',
},
crawlTask: {
pageTitle: 'Task Monitor',
pageDesc: 'View currently running and completed crawl tasks.',
exportData: 'Export Data',
startCrawl: 'Start Crawl',
searchPlaceholder: 'Search by keyword...',
searchBtn: 'Search',
allKeywords: 'All Keywords',
enabled: 'Enabled',
disabled: 'Disabled',
allStatus: 'All Status',
statusCrawling: 'Crawling',
statusDone: 'Done',
statusPaused: 'Paused',
statusError: 'Error',
source: 'Source',
startTime: 'Start Time',
endTime: 'End Time',
progress: 'Progress',
totalPages: 'Total Pages',
crawledPages: 'Crawled Pages',
expertCountLabel: 'Experts Stored',
expertCount: 'Expert Count',
created: 'Created',
completed: 'Completed',
updated: 'Updated',
viewDetail: 'View Detail',
viewLogs: 'View Logs',
pause: 'Pause',
resume: 'Resume',
restart: 'Restart',
delete: 'Delete',
deleteConfirm: 'Are you sure to delete this task? This cannot be undone.',
confirmTitle: 'Confirm',
confirmOk: 'OK',
confirmCancel: 'Cancel',
operationSuccess: 'Operation succeeded',
operationFail: 'Operation failed',
operationRetry: 'Operation failed, please try again later',
crawlStarted: 'Crawl task started',
crawlFail: 'Failed to start crawl',
exportFail: 'Failed to export',
detailTitle: 'Task Detail',
basicInfo: 'Basic Information',
taskName: 'Task Name',
status: 'Status',
resultSummary: 'Result Summary',
totalFound: 'Total Found',
newAdded: 'New Added',
duplicates: 'Duplicates',
failed: 'Failed',
logsTitle: 'Run Logs',
noLogs: 'No logs yet',
noData: 'No tasks',
emptyResult: 'No matching task records found',
addKeyword: 'Add Keyword',
keyword: 'Keyword',
keywordPlaceholder: 'Enter keyword, e.g.: Infectious Diseases',
runOnce: 'Single Crawl',
runOnceBtn: 'Single Crawl',
runOnceLoading: 'Crawling...',
yes: 'Yes',
no: 'No',
cancel: 'Cancel',
confirm: 'OK',
enterKeyword: 'Please enter a keyword',
addKeywordSuccess: 'Keyword added successfully',
addKeywordFailed: 'Failed to add keyword',
runOnceSuccess: 'Single crawl triggered',
runOnceFailed: 'Failed to trigger single crawl',
disabledMsg: 'Disabled',
enabledMsg: 'Enabled',
pauseFailed: 'Failed to pause',
resumeFailed: 'Failed to resume',
missingKeyword: 'Missing keyword, cannot perform single crawl',
restartSuccess: 'Sync restarted (local mock)',
},
mailboxSend: {
title: 'Write mail',
to: 'To:',
@@ -955,6 +1036,16 @@ colTitle: 'Template title',
styleName: 'Style Name',
defaultStyle: 'Default',
changeTemplate: 'Change Template',
selectPromotionFields: 'Select Promotion Fields',
choosePromotionFields: 'Choose Fields',
selectedCount: 'Selected {count}',
selectAll: 'Select All',
clearAll: 'Clear All',
selectPromotionFieldsTip: 'Multiple selection supported; leave empty for no field restriction.',
fieldSearchPlaceholder: 'Search promotion fields',
noFieldMatch: 'No matching fields',
confirm: 'Confirm',
fieldsSaved: 'Promotion fields saved',
confirmAndEnable: 'Confirm and Enable',
onlySaveConfig: 'Save configuration only',
enableNowNextDay: 'Enable auto promotion now (starts next day)'

View File

@@ -266,6 +266,9 @@ const zh = {
scholarCrawlers: '学者数据库',
crawlerKeywords: '抓取关键词配置',
expertDatabase: '专家库',
keywordManagement: '关键词管理',
crawlTasks: '抓取任务',
expertList: '专家列表',
autoPromotion: '自动推广',
ReArticles: '被拒稿件', // 被拒稿件
editorialBoard: '编委管理',
@@ -284,6 +287,7 @@ const zh = {
expertDatabase: {
fieldSelectPlaceholder: '请选择研究领域',
keywordPlaceholder: '姓名 / 邮箱 / 单位',
fieldPlaceholder: '请输入领域 field',
searchBtn: '搜索',
resetBtn: '重置',
downloadExcelBtn: '下载 Excel',
@@ -300,7 +304,7 @@ const zh = {
emailLabel: '邮箱:',
acquisitionTimeLabel: '采集时间:'
},
exportWarn: '请选择研究领域或输入关键词后再导出。',
exportWarn: '请选择研究领域或输入关键词或领域 field 后再导出。',
exportFailed: '导出失败'
},
mailboxConfig: {
@@ -572,6 +576,83 @@ const zh = {
crawlFail: '启动抓取失败',
exportFail: '导出失败',
},
crawlTask: {
pageTitle: '任务监控',
pageDesc: '查看当前正在运行和已完成的抓取任务。',
exportData: '导出数据',
startCrawl: '开始抓取',
searchPlaceholder: '按关键词搜索...',
searchBtn: '搜索',
allKeywords: '全部关键词',
enabled: '启用',
disabled: '停用',
allStatus: '全部状态',
statusCrawling: '抓取中',
statusDone: '已完成',
statusPaused: '已暂停',
statusError: '异常',
source: '来源',
startTime: '开始时间',
endTime: '结束时间',
progress: '进度',
totalPages: '总页数',
crawledPages: '已抓取页数',
expertCountLabel: '入库专家数',
expertCount: '专家数量',
created: '创建',
completed: '完成',
updated: '更新',
viewDetail: '查看详情',
viewLogs: '查看日志',
pause: '暂停',
resume: '继续',
restart: '重新抓取',
delete: '删除',
deleteConfirm: '确定删除该任务吗?删除后无法恢复。',
confirmTitle: '提示',
confirmOk: '确定',
confirmCancel: '取消',
operationSuccess: '操作成功',
operationFail: '操作失败',
operationRetry: '操作失败,请稍后重试',
crawlStarted: '抓取任务已启动',
crawlFail: '启动抓取失败',
exportFail: '导出失败',
detailTitle: '任务详情',
basicInfo: '基本信息',
taskName: '任务名称',
status: '状态',
resultSummary: '抓取结果',
totalFound: '发现总数',
newAdded: '新增',
duplicates: '重复',
failed: '失败',
logsTitle: '运行日志',
noLogs: '暂无日志',
noData: '暂无任务',
emptyResult: '未发现匹配的任务记录',
addKeyword: '新建关键词',
keyword: '关键词',
keywordPlaceholder: '请输入关键词Infectious Diseases',
runOnce: '单次抓取',
runOnceBtn: '单次抓取',
runOnceLoading: '抓取中...',
yes: '是',
no: '否',
cancel: '取消',
confirm: '确定',
enterKeyword: '请输入关键词',
addKeywordSuccess: '新增关键词成功',
addKeywordFailed: '新增关键词失败',
runOnceSuccess: '已触发单次抓取',
runOnceFailed: '单次抓取触发失败',
disabledMsg: '已停用',
enabledMsg: '已启用',
pauseFailed: '暂停失败',
resumeFailed: '恢复失败',
missingKeyword: '缺少关键词,无法执行单次抓取',
restartSuccess: '已重启同步(本地模拟)',
},
mailboxSend: {
title: '写邮件',
to: '收件人:',
@@ -940,6 +1021,16 @@ const zh = {
styleName: '风格名称',
defaultStyle: '默认风格',
changeTemplate: '更换模版',
selectPromotionFields: '选择推广领域',
choosePromotionFields: '选择领域',
selectedCount: '已选 {count} 项',
selectAll: '全选',
clearAll: '取消全选',
selectPromotionFieldsTip: '可多选;未选择则不限制推广领域。',
fieldSearchPlaceholder: '搜索推广领域',
noFieldMatch: '没有匹配的领域',
confirm: '确定',
fieldsSaved: '推广领域已保存',
confirmAndEnable: '确认并开启',
onlySaveConfig: '仅保存配置',
enableNowNextDay: '立即激活自动推广(次日开始自动推广)'