export const zhCN = { common: { cancel: '取消', confirm: '确认', delete: '删除', close: '关闭', clear: '清空' }, app: { projectConflict: { title: '检测到项目重复打开', desc: '项目「{name}」已在其他页面处于活跃状态。为避免 IndexedDB 数据冲突,本页面已阻断编辑。', countdown: '本页将在 {seconds} 秒后自动尝试关闭。你也可以先在新标签页打开其他项目。', opened: '(已打开)', lastEdited: '最后编辑:{time}', openDefault: '打开默认项目', createAndOpen: '新建项目并打开' } }, home: { title: '计算入口', subtitle: '项目计算 · 单项速算 · 导入数据', projectCalcTab: '项目计算', quickCalcTab: '快速计算', cards: { heroTitle: '智能预算一键生成', heroSubTitle: '助力《规范》高效落地', heroDesc: '交通建设项目工程造价咨询服务费计算', projectBudget: '项目预算', projectBudgetDesc: '适用于多合同段、项目级整体计算,支持导出/导入完整项目数据', quickCalc: '单项速算', quickCalcDesc: '适用于单项服务试算,选择行业、咨询类型、工程专业,输入基数秒出结果', importData: '导入数据', importDataDesc: '导入".zw"数据包,快速恢复项目计算状态,续未完成工作', enter: '进入计算', pickFile: '选择文件' }, dialog: { newProject: '新建项目', chooseIndustryDesc: '选择工程行业后,直接进入项目计算页面。', industry: '工程行业', selectIndustry: '请选择工程行业', entering: '进入中...', enterProjectCalc: '进入项目计算', confirmImport: '确认导入数据', confirmImportDesc: '将导入“{file}”,并立即进入工作台覆盖当前项目数据。', confirmImportAction: '确认导入' } }, tab: { toolbar: { light: '浅色', dark: '深色', language: '语言', importExport: '导入/导出', importData: '导入数据', exportData: '导出数据', exportReport: '导出报表', userGuide: '使用引导', reset: '重置', resetting: '重置中...', projectList: '项目列表', projectCount: '项目数量:{count}', createProject: '新建项目', resetAll: '重置全部项目', opened: '(已打开)', lastEdited: '最后编辑:{time}' }, menu: { closeAll: '删除所有', closeLeft: '删除左侧', closeRight: '删除右侧', closeOther: '删除其他' }, dialog: { resetTitle: '确认重置', resetDesc: '将清空全部项目数据,并恢复默认页面,确认继续吗?', confirmReset: '确认重置', importOverrideTitle: '确认导入覆盖', importOverrideDesc: '将使用“{file}”覆盖当前本地全部数据,是否继续?', confirmOverride: '确认覆盖', newProjectTitle: '新建项目', newProjectDesc: '选择工程行业后,将在新标签页直接打开新项目计算页面。', createAndOpen: '新建并打开', creating: '创建中...', projectLimitTitle: '项目数量已达上限', projectLimitDesc: '当前项目数量已达到 {max} 个,请先删除一个项目后再添加。', iKnow: '我知道了', deleteProjectTitle: '确认删除项目', deleteCurrentProjectDesc: '确认删除当前项目「{name}」吗?将先清空该项目全部本地数据并返回首页。', deleteProjectDesc: '确认删除项目「{name}」吗?这会移除该项目本地数据。' }, guide: { title: '新用户引导', later: '稍后再看', prev: '上一步', next: '下一步', finish: '完成并不再自动弹出', jumpToStep: '跳转到第 {index} 步', steps: { step1: { title: '欢迎使用', description: '这个引导会覆盖系统主要功能和完整使用路径,建议按顺序走一遍。', point1: '顶部是标签页区,可在项目、合同段、服务计算页之间快速切换。', point2: '页面里的表格与表单会自动保存到本地,无需手动点击保存。', point3: '你可以随时点击右上角“使用引导”重新打开本教程。' }, step2: { title: '项目卡片与四个模块', description: '默认标签“项目卡片”是入口,左侧流程线包含四个项目级功能。', point1: '基础信息:填写项目名称与项目规模明细。', point2: '合同段管理:新建、排序、搜索、导入/导出合同段。', point3: '咨询分类系数 / 工程专业系数:维护系数预算取值和备注。' }, step3: { title: '基础信息填写', description: '先在“基础信息”中补齐项目级数据,再进入后续合同段计算。', point1: '项目名称会用于导出文件名和页面展示。', point2: '项目明细表支持直接编辑、复制粘贴、撤销重做。', point3: '分组行自动汇总,顶部固定行显示总合计。' }, step4: { title: '合同段管理', description: '在“合同段管理”中完成合同段生命周期操作。', point1: '“添加合同段”用于新增,卡片右上角可编辑或删除。', point2: '支持搜索、网格/列表切换,非搜索状态可拖拽排序。', point3: '更多菜单可导入/导出合同段;点击卡片进入该合同段详情。' }, step5: { title: '合同段详情', description: '进入合同段后,左侧同样是流程线,包含规模信息和咨询服务两部分。', point1: '规模信息:按工程专业填写当前合同段的规模数据。', point2: '咨询服务:选择服务词典并生成服务费用明细。', point3: '合同段页面会独立缓存,不同合同段互不干扰。' }, step6: { title: '咨询服务与计算页', description: '咨询服务页面用于管理服务明细,并进入具体计费方法页面。', point1: '先点击“浏览”选择服务,再确认生成明细行。', point2: '明细表“编辑”可打开服务计算页,“清空”会重置该服务计算结果。', point3: '服务计算页包含投资规模法、用地规模法、工作量法、工时法四种方法。' }, step7: { title: '系数维护', description: '项目级系数用于调节预算取值,可在两个系数页分别维护。', point1: '咨询分类系数页:按咨询分类维护预算取值与说明。', point2: '工程专业系数页:按专业树维护预算取值与说明。', point3: '支持批量粘贴、撤销重做,便于一次性维护多行数据。' }, step8: { title: '数据管理与恢复', description: '顶部工具栏负责全量数据导入导出与初始化重置。', point1: '“导入/导出”是整项目级别的数据包操作。', point2: '“重置”会清空本地全部数据并恢复默认页面。', point3: '建议在重要调整前先导出备份。' } } }, toast: { export: '导出报表', success: '导出成功', failed: '导出失败' }, messages: { defaultProjectLabel: '默认项目', defaultProjectName: '造价项目', projectNamePrefix: '项目-{id}', contractFallbackName: '合同段-{index}', reportFileSuffix: '预算文件', reportGenerating: '正在生成报表文件...', reportExportDone: '报表导出完成', reportExportFailedRetry: '报表导出失败,请重试', importFailedTitle: '导入失败', importProjectIdMissing: '该数据包不包含项目标识(旧版本导出包),为避免串项目已禁止导入。', importProjectMismatch: '该数据包属于其他项目,不能覆盖当前项目。', importInvalidFile: '文件无效、已损坏或被修改。', importWriteError: '写入本地数据时发生错误。', openFile: '打开文件' } }, typeLine: { copy: '复制', copied: '已复制', copyFailed: '复制失败', brandAlt: '众为咨询', supportText: '本网站由众为工程咨询有限公司提供免费技术支持', aboutTitle: '关于我们', companyName: '众为工程咨询有限公司', openOfficialSiteAria: '跳转到官网首页', officialSiteTitle: '官网首页', aboutParagraph1: '众为工程咨询有限公司 2009 年成立,专注工程造价与工程成本管控全过程咨询,是广东省政府审计入库优选单位。公司服务覆盖多领域、全类型客户,累计服务投资额超万亿元,深度参与港珠澳大桥、澳门大学横琴校区等国家级重点工程,参编三十余项国家及省市行业标准。', aboutParagraph2: '公司立足大湾区,布局全球,设有澳门公司、斯里兰卡分公司,具备跨境与海外项目服务能力,以十五年专业沉淀、万亿级项目经验,为客户提供精准、可靠的工程咨询服务。' }, agGrid: { resetDefault: '恢复默认值' }, ht: { title: '合同段列表', projectTotalBudget: '项目总预算金额:{amount}', budgetLoading: '计算中...', selectedCount: '已选 {count} 个', exportSelected: '导出已选', deleteSelected: '删除已选', cancelSelect: '取消', addContract: '添加合同段', batchDelete: '批量删除', exportContracts: '导出合同段', importContracts: '导入合同段', searchPlaceholder: '搜索合同段名称或ID', clearFilter: '清空筛选', searchingHint: '搜索中({filtered} / {total}),已关闭拖拽排序', selectModeExportHint: '导出选择模式:勾选合同段后点击“导出已选”', selectModeDeleteHint: '删除选择模式:勾选合同段后点击“删除已选”', setupRequiredHint: '请先在“基础信息”里新建项目并选择工程行业后,再新增或导入合同段', listLayout: '列表布局', gridLayout: '网格布局', dragSort: '拖动排序', dragSortSearchOff: '拖动排序(搜索时关闭)', edit: '编辑', remove: '删除', idLabel: 'ID:{id}', contractBudget: '预算:{amount}', contractBudgetLine: '本合同预算金额:{amount}', createdAt: '创建时间:{time}', emptyTitle: '暂无合同卡片', emptyDesc: '赶紧来添加吧', notFound: '未找到匹配的合同段', backToTop: '回到顶部', editContract: '编辑合同段', createContract: '新增合同段', contractTabTitle: '合同段{name}', contractName: '合同段名称', contractNamePlaceholder: '请输入合同段名称', save: '保存', ok: '确定', toastSuccessTitle: '操作成功', createSuccess: '新建成功', editSuccess: '编辑成功', deleteSuccess: '删除成功', sortDone: '排序完成', exportSuccess: '导出成功({count} 个合同段)', importSuccess: '导入成功({count} 个合同段)', deleteBatchSuccess: '删除成功({count} 个合同段)', tipTitle: '提示', exportFailedTitle: '导出失败', importFailedTitle: '导入失败', batchDeleteFailedTitle: '批量删除失败', retry: '请重试。', selectAtLeastOne: '请先勾选至少一个合同段。', noContractsToDelete: '未找到可删除的合同段。', industryMissingForExport: '未读取到当前项目工程行业,请先在“基础信息”里新建项目。', importIndustryMismatch: '工程行业不一致(导入包:{importIndustry},当前项目:{currentIndustry})。', importCurrentIndustryMissing: '当前项目未设置工程行业,请先在“基础信息”里新建项目。', importPackageIndustryMissing: '导入包缺少工程行业信息,请使用最新版本重新导出后再导入。', importFileInvalid: '文件无效、已损坏或不是合同段导出文件。', deleteSingleTitle: '确认删除合同段', deleteSingleDesc: '即将删除“{name}”及其关联咨询服务和计价数据,是否继续?', deleteBatchTitle: '确认批量删除', deleteBatchDesc: '即将删除 {count} 个合同段及其关联咨询服务和计价数据,是否继续?' }, htCard: { title: '合同段:{name}', subtitle: '合同段ID:{id}', metaBudget: '合同段预算金额:{amount}', currencySuffix: '元', categories: { baseInfo: '基础信息', scaleInfo: '规模信息', services: '咨询服务', consultFactor: '咨询分类系数', majorFactor: '工程专业系数', additionalFee: '附加工作费', reserveFee: '预备费', summary: '汇总' } }, htBaseInfo: { title: '基础信息', defaultQuality: '造价咨询服务的综合评价应达到"较好"或综合评分90分', qualityLabel: '质量要求', qualityPlaceholder: '请输入质量要求', durationLabel: '工期要求', durationPlaceholder: '请输入工期要求' }, htFactors: { consultCategoryTitle: '咨询分类系数明细', majorTitle: '工程专业系数明细' }, htFee: { additionalTitle: '附加工作费', reserveTitle: '预备费' }, htInfo: { scaleDetailTitle: '合同规模明细' }, htFeeRate: { baseLabel: '基数(所有服务费预算合计)', reserveBaseLabel: '基数(咨询服务总计 + 附加工作费总计)', rateLabel: '费率(%)', ratePlaceholder: '请输入费率,建议1 ~ 5', budgetFeeLabel: '预算费用(自动计算)', remarkLabel: '说明', remarkPlaceholder: '请输入说明' }, htZxFw: { title: '咨询服务明细', warning: '※ 请注意检查并修改《规范》建议的限值或特殊值,并在确认金额栏修改', editTabTitle: '服务编辑-{name}', subtotal: '小计', edit: '编辑', resetDefault: '恢复默认', delete: '删除', processDraft: '编制', processReview: '审核', columns: { code: '编码', name: '名称', process: '工作环节', investScale: '投资规模法', landScale: '用地规模法', workload: '工作量法', hourly: '工时法', subtotal: '小计', finalFee: '确认金额 ✎', finalFeeTooltip: '该列支持手动修改,修改后会自动汇总到固定小计行', actions: '操作' }, dialog: { resetTitle: '确认恢复默认数据', resetDesc: '会使用合同卡片里面最新填写的规模信息以及系数,自动计算默认数据,覆盖“{name}”当前数据,是否继续?', confirmReset: '确认恢复', deleteTitle: '确认删除服务', deleteDesc: '将逻辑删除“{name}”,已填写的数据不会清空,重新勾选后会恢复,是否继续?' } }, htSummary: { title: '合同段汇总', total: '合计', remark: '说明', placeholder: '请先填咨询服务/附加工作费/预备费的数据', additionalPrefix: '附加工作费', reservePrefix: '预备费', explainByRate: '按费率{rate}%计得{fee}元', explainByHourly: '按工时法计得{fee}元', explainByQuantity: '按数量单价计得{fee}元', columns: { code: '编码', name: '名称', investScale: '投资规模法', landScale: '用地规模法', workload: '工作量法', hourly: '工时法', subtotal: '小计', finalFee: '确认金额' } }, htFeeGrid: { subtotal: '小计', currentRow: '当前行', unnamed: '未命名', edit: '编辑', clear: '清空', add: '新增', editTabTitle: '费用编辑-{name}', columns: { name: '名字', rateFee: '费率计取', hourlyFee: '工时法', quantityUnitPriceFee: '数量单价', subtotal: '小计', actions: '操作' }, dialog: { clearTitle: '确认清空', clearDesc: '将清空“{name}”及其编辑页面的可填和自动计算数据,是否继续?', confirmClear: '确认清空' } }, xmFactorGrid: { clickToInput: '点击输入', columns: { standardFactor: '标准系数', budgetValue: '预算取值', remark: '说明', groupName: '专业编码以及工程专业名称' } }, serviceSelector: { title: '选择服务', clear: '清空', empty: '暂无服务' }, zxFwView: { contractPrefix: '合同段:{name}', calcSuffix: '计算', contractId: '合同ID:{id}', workContentTitle: '工作内容', categories: { investmentScale: '投资规模法', landScale: '用地规模法', workload: '工作量法', hourly: '工时法', workContent: '工作内容' }, unavailable: { investmentScaleTitle: '该服务不适用投资规模法', investmentScaleMessage: '当前服务未启用规模法,投资规模法不可编辑。', landScaleTitle: '该服务不适用用地规模法', landScaleMessage: '当前服务仅支持投资规模法,用地规模法不可编辑。', workloadTitle: '该服务不适用工作量法', workloadMessage: '当前服务未启用工作量法,工作量法不可编辑。', hourlyTitle: '该服务不适用工时法', hourlyMessage: '当前服务未启用工时法,工时法不可编辑。' } }, htFeeDetail: { subtotal: '小计', currentRow: '当前行', clickToInput: '点击输入', addRow: '添加行', columns: { no: '序号', feeItem: '费用项', unit: '单位', quantity: '数量', unitPrice: '单价(元)', budgetFee: '预算费用(元)', remark: '说明', actions: '操作' }, dialog: { deleteTitle: '确认删除行', deleteDesc: '将删除“{name}”这条明细,是否继续?' } }, workContent: { title: '工作内容', addCustom: '添加自定义内容', clickToInput: '点击输入', clickToInputContent: '点击输入工作内容', currentRow: '当前行', unnamed: '未命名', ungrouped: '未分组', type: { basic: '基本工作', optional: '可选工作', daily: '日常顾问', special: '专项顾问', additional: '附加工作', custom: '自定义' }, columns: { no: '序号', content: '工作内容', type: '工作类型', remark: '备注', actions: '操作' }, dialog: { deleteTitle: '确认删除行', deleteDesc: '将删除“{name}”这条明细,是否继续?' } }, quickCalc: { projectName: '快速计算', catalogEyebrow: '分类清单', formEyebrow: '参数表单', industryLabel: '行业 {name}', selectIndustry: '请选择工程行业', saving: '保存中...', synced: '已同步行业', notSelectedIndustry: '未选择行业', notSelected: '未选择', consultCategory: '咨询类别', majorCategory: '工程专业', types: { consult: { label: '咨询类别(常用)', hint: '先选择咨询类别,再补规模和预算参数。' }, general: { label: '通用专业', hint: '跨行业共用的补偿与其他费用专业。' }, road: { label: '公路工程专业', hint: '首页行业为公路工程时默认展示。' }, railway: { label: '铁路工程专业', hint: '首页行业为铁路工程时默认展示。' }, waterway: { label: '水运工程专业', hint: '首页行业为水运工程时默认展示。' } }, fields: { industry: '工程行业', code: '编码', investScale: '投资规模(万元)', landScale: '用地规模(亩)', formula: '计算式', amount: '金额(元)', consultFactor: '咨询分类系数', majorFactor: '工程专业系数', workEnvCoefficient: '工作环节系数', workEnvCoefficientPlaceholder: '默认 1', budgetAmount: '预算金额(元)' }, sections: { basicInfo: '基础信息', scaleBase: '计算基数', benchmarkBudget: '基准预算', serviceBudget: '服务预算', }, empty: { selectIndustry: '请选择工程行业。选中后可先选择咨询类别,再显示对应专业分类。', selectConsult: '请先选择咨询类别。选中后才会显示匹配的通用专业和工程专业分类。', scaleUnavailable: '当前咨询类别不适用规模法,因此不显示专业分类。', consultCostOnly: '当前咨询类别按行业汇总计价,工程专业系数已按所选行业自动带入,不再显示内部互补专业行。' }, placeholder: { selectConsultFirst: '请先选择咨询类别', scaleUnavailable: '当前分类不适用规模法', selectMajorFirst: '请先选择工程专业', preferLandScale: '当前专业按用地规模计价', investUnavailable: '当前专业不适用投资规模', consultCostOnly: '当前分类仅支持投资规模', landUnavailable: '当前专业不适用用地规模', input: '请输入', selectScaleFirst: '请先选择输入对应规模' } }, methodUnavailable: { defaultTitle: '该服务不适用当前计价方法' }, xmCard: { categories: { info: '基础信息', scaleInfo: '规模信息', consultCategoryFactor: '咨询分类系数', majorFactor: '工程专业系数', contract: '合同段管理' } }, htFeeMethodTypeLine: { feeDetail: '费用明细', unnamed: '未命名', title: '合同段:{contractName} · {rowName}', contractId: '合同ID:{id}', quantityUnitPrice: '数量单价' }, pricingScale: { totalInvestmentByIndustry: '{industryName}总投资', totalInvestment: '总投资', clickToInput: '点击输入', projectLabel: '项目{index}', columns: { investAmount: '造价金额(万元)', landArea: '用地面积(亩)', benchmarkBudget: '基准预算(元)', basicWork: '基本工作', optionalWork: '可选工作', subtotal: '小计', budgetFee: '预算费用', consultCategoryFactor: '咨询分类系数', majorFactor: '专业系数', workStageFactor: '工作环节系数(编审系数)', workRatio: '工作占比(%)', total: '合计', remark: '说明', majorGroup: '专业编码以及工程专业名称' }, tooltip: { resetInvestAmount: '点击右侧↻恢复本列默认造价金额', resetLandArea: '点击右侧↻恢复本列默认用地面积', resetConsultCategoryFactor: '点击右侧↻恢复本列默认咨询分类系数', resetMajorFactor: '点击右侧↻恢复本列默认专业系数' } }, pricingPane: { projectCount: '项目数量', clearTitle: '确认清空当前明细', confirmClear: '确认清空', useDefault: '使用默认数据', overrideTitle: '确认覆盖当前明细', confirmOverride: '确认覆盖', investment: { title: '投资规模明细', clearDesc: '将清空当前投资规模明细,是否继续?', overrideDesc: '将使用合同默认数据覆盖当前投资规模明细,是否继续?' }, land: { title: '用地规模明细', clearDesc: '将清空当前用地规模明细,是否继续?', overrideDesc: '将使用合同默认数据覆盖当前用地规模明细,是否继续?' } }, workloadPricing: { title: '工作量明细', unavailableTitle: '该服务不适用工作量法', unavailableMessage: '当前服务没有关联工作量法任务,无需填写此部分内容。', clickToInput: '点击输入', none: '无', total: '总合计', columns: { code: '编码', name: '名称', budgetBase: '预算基数', budgetReferenceUnitPrice: '预算参考单价', budgetAdoptedUnitPrice: '预算采用单价', workload: '工作量', consultCategoryFactor: '咨询分类系数', serviceFee: '服务费用(元)', remark: '说明' } }, hourlyFeeGrid: { title: '工时法明细', clickToInput: '点击输入', total: '总合计', columns: { code: '编码', name: '人员名称', referenceUnitPrice: '预算参考单价', laborBudgetUnitPrice: '人工预算单价(元/工日)', compositeBudgetUnitPrice: '综合预算单价(元/工日)', adoptedBudgetUnitPrice: '预算采用单价(元/工日)', personnelCount: '人员数量(人)', workdayCount: '工日数量(工日)', serviceBudget: '服务预算(元)', remark: '说明' } }, xmScaleGrid: { syncToastTitle: '已同步咨询服务', syncToastDesc: '规模信息已同步到咨询服务({serviceCount} 项服务,{methodCount} 个计价页,{rowCount} 行)' }, xmInfo: { defaultProjectName: 'xxx造价咨询服务', defaultDesc: '在履行造价咨询服务时,宜根据咨询服务质量情况分级确定相应的处罚金额。其中考评得分在大于及等于85和小于90分时,处罚金额为预算费用的10%;其中考评得分在大于及等于80和小于85分时,处罚金额为预算费用的20%;其中考评得分在大于及等于75和小于80分时,处罚金额为预算费用的30%;其中考评得分在大于及等于70和小于75分时,处罚金额为预算费用的40%;其中考评得分小于70分时,处罚金额为预算费用的50%以上。', industryHint: '变更需要重置后重新选择', industryHintAria: '工程行业提示', createFromHomeFirst: '请从首页先新建项目后再进入此页面。', fields: { projectName: '项目名称', projectIndustry: '工程行业', overview: '项目概况', preparedBy: '编制人', reviewedBy: '复核人', preparedCompany: '编制单位', preparedDate: '编制日期', desc: '其他说明' }, placeholders: { overview: '请输入项目概况', preparedBy: '请输入编制人', reviewedBy: '请输入复核人', preparedCompany: '请输入编制单位' } } } as const