修改文字

This commit is contained in:
linxd
2025-07-16 15:58:52 +08:00
parent a4dbc378f3
commit 612082dedb
11 changed files with 80 additions and 67 deletions

View File

@ -693,6 +693,7 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
dataIndex: 'index',
align: 'center',
key: 'index',
width: 50,
render: (_: any, record: TableRowItem, index: number) => {
return <>{index + 1}</>;
},
@ -702,6 +703,7 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
dataIndex: 'indicatorType',
align: 'center',
key: 'indicatorType',
width: 120,
ellipsis: true, // 自动加省略号
render: (text: string, record: TableRowItem) => {
return renderWithRowSpan(text, record, (cellContent) => {
@ -789,7 +791,7 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
align: 'center',
dataIndex: 'descIndicator',
key: 'descIndicator',
width: 100,
width: 150,
render: (text: string, record: TableRowItem) => {
return renderWithRowSpan(text, record, (cellContent) => {
if (isDetail) {

View File

@ -52,9 +52,9 @@ export default {
'supplierAnnualTaskManage.detail.message.loadFailed': 'Failed to get task details',
// Evaluator Modal
'supplierAnnualTaskManage.evaluatorModal.title': 'Evaluators for {supplierName}',
'supplierAnnualTaskManage.evaluatorModal.title': 'Reviewers for {supplierName}',
'supplierAnnualTaskManage.evaluatorModal.button.close': 'Close',
'supplierAnnualTaskManage.evaluatorModal.empty': 'No evaluator data available',
'supplierAnnualTaskManage.evaluatorModal.empty': 'No reviewer data available',
// Basic Info Component
'supplierAnnualTaskManage.basicInfo.title': 'Basic Information',
@ -74,9 +74,9 @@ export default {
'supplierAnnualTaskManage.supplierInfo.dept': 'Department',
'supplierAnnualTaskManage.supplierInfo.category': 'Category',
'supplierAnnualTaskManage.supplierInfo.action': 'Actions',
'supplierAnnualTaskManage.supplierInfo.viewEvaluators': 'View Evaluators',
'supplierAnnualTaskManage.supplierInfo.viewEvaluators': 'View Reviewers',
'supplierAnnualTaskManage.supplierInfo.empty': 'No supplier data available',
'supplierAnnualTaskManage.supplierInfo.noEvaluators': 'No evaluators found for this supplier',
'supplierAnnualTaskManage.supplierInfo.noEvaluators': 'No reviewers found for this supplier',
// Batch Evaluator Modal
'supplierAnnualTaskManage.batchEvaluatorModal.title': 'Batch Select Reviewers',
@ -102,7 +102,7 @@ export default {
'supplierAnnualTaskManage.supplierTable.button.delete': 'Delete',
'supplierAnnualTaskManage.supplierTable.confirm.delete.title': 'Are you sure you want to delete this supplier?',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content': 'Supplier: {supplierName}',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content.withEvaluators': 'Supplier: {supplierName}, will also delete {count} associated reviewers',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content.withReviewers': 'Supplier: {supplierName}, will also delete {count} associated reviewers',
'supplierAnnualTaskManage.supplierTable.confirm.delete.okText': 'Confirm',
'supplierAnnualTaskManage.supplierTable.confirm.delete.cancelText': 'Cancel',
@ -138,6 +138,6 @@ export default {
'supplierAnnualTaskManage.evaluatorSelectStep.batchSelect': 'Batch Select Reviewers',
'supplierAnnualTaskManage.evaluatorSelectStep.noSupplier': 'Please select suppliers in the previous step',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noSupplier': 'Please add at least one supplier',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noEvaluator': 'There are suppliers without assigned reviewers',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noReviewer': 'There are suppliers without assigned reviewers',
'supplierAnnualTaskManage.evaluatorSelectStep.defaultDept': 'Purchasing Department',
};

View File

@ -49,7 +49,7 @@ export default {
'supplierAnnualResult.review.category': '品类',
'supplierAnnualResult.review.department': '审查单位',
'supplierAnnualResult.review.reviewDept': '审查部门',
'supplierAnnualResult.review.reviewer': '评价人员',
'supplierAnnualResult.review.reviewer': '年审人员',
'supplierAnnualResult.review.reviewTime': '审查时间',
'supplierAnnualResult.review.reviewResult': '审查结果',
'supplierAnnualResult.review.pleaseInputSupplierName': '请输入供应商名称',

View File

@ -1,12 +1,12 @@
// 供应商年审 任务管理模块
export default {
'supplierAnnualTaskManage.title': '供应商年审任务管理',
'supplierAnnualTaskManage.filter.theme': '评价主题',
'supplierAnnualTaskManage.filter.theme.placeholder': '请输入评价主题',
'supplierAnnualTaskManage.filter.time': '评价时间',
'supplierAnnualTaskManage.filter.theme': '年审主题',
'supplierAnnualTaskManage.filter.theme.placeholder': '请输入年审主题',
'supplierAnnualTaskManage.filter.time': '年审时间',
'supplierAnnualTaskManage.filter.time.start': '开始日期',
'supplierAnnualTaskManage.filter.time.end': '结束日期',
'supplierAnnualTaskManage.filter.status': '评价状态',
'supplierAnnualTaskManage.filter.status': '年审状态',
'supplierAnnualTaskManage.filter.status.placeholder': '请选择状态',
'supplierAnnualTaskManage.button.search': '搜索',
'supplierAnnualTaskManage.button.reset': '重置',
@ -14,11 +14,11 @@ export default {
'supplierAnnualTaskManage.button.view': '查看',
'supplierAnnualTaskManage.button.edit': '编辑',
'supplierAnnualTaskManage.table.index': '序号',
'supplierAnnualTaskManage.table.theme': '评价主题',
'supplierAnnualTaskManage.table.theme': '年审主题',
'supplierAnnualTaskManage.table.dept': '发起单位',
'supplierAnnualTaskManage.table.startTime': '评价开始时间',
'supplierAnnualTaskManage.table.endTime': '评价结束时间',
'supplierAnnualTaskManage.table.status': '评价状态',
'supplierAnnualTaskManage.table.startTime': '年审开始时间',
'supplierAnnualTaskManage.table.endTime': '年审结束时间',
'supplierAnnualTaskManage.table.status': '年审状态',
'supplierAnnualTaskManage.table.action': '操作',
'supplierAnnualTaskManage.message.editWarning': '只有待执行状态的任务才能编辑!',
'supplierAnnualTaskManage.message.listFailed': '获取列表失败',
@ -31,7 +31,7 @@ export default {
'supplierAnnualTaskManage.step.basicInfo.title': '基本信息',
'supplierAnnualTaskManage.step.basicInfo.description': '请填写基本信息',
'supplierAnnualTaskManage.step.selectSupplier.title': '选择供应商',
'supplierAnnualTaskManage.step.selectSupplier.description': '请选择参加评价的供应商',
'supplierAnnualTaskManage.step.selectSupplier.description': '请选择参加年审的供应商',
'supplierAnnualTaskManage.step.selectEvaluator.title': '选择年审人员',
'supplierAnnualTaskManage.step.selectEvaluator.description': '请选择供应商年审人员',
'supplierAnnualTaskManage.button.prev': '上一步',
@ -43,7 +43,7 @@ export default {
'supplierAnnualTaskManage.modal.confirm.content': '是否确认提交',
// 详情页面
'supplierAnnualTaskManage.detail.title': '评价任务详情',
'supplierAnnualTaskManage.detail.title': '年审任务详情',
'supplierAnnualTaskManage.detail.loading': '数据加载中...',
'supplierAnnualTaskManage.detail.tab.basicInfo': '基本信息',
'supplierAnnualTaskManage.detail.tab.supplierInfo': '供应商信息',
@ -51,19 +51,19 @@ export default {
'supplierAnnualTaskManage.detail.message.noId': '未提供任务ID',
'supplierAnnualTaskManage.detail.message.loadFailed': '获取任务详情失败',
// 评价人员模态框
'supplierAnnualTaskManage.evaluatorModal.title': '{supplierName}的评价人员',
// 年审人员模态框
'supplierAnnualTaskManage.evaluatorModal.title': '{supplierName}的年审人员',
'supplierAnnualTaskManage.evaluatorModal.button.close': '关闭',
'supplierAnnualTaskManage.evaluatorModal.empty': '暂无评价人员数据',
'supplierAnnualTaskManage.evaluatorModal.empty': '暂无年审人员数据',
// 基本信息组件
'supplierAnnualTaskManage.basicInfo.title': '基本信息',
'supplierAnnualTaskManage.basicInfo.theme': '评价主题',
'supplierAnnualTaskManage.basicInfo.status': '评价状态',
'supplierAnnualTaskManage.basicInfo.year': '评价年份',
'supplierAnnualTaskManage.basicInfo.theme': '年审主题',
'supplierAnnualTaskManage.basicInfo.status': '年审状态',
'supplierAnnualTaskManage.basicInfo.year': '年审年份',
'supplierAnnualTaskManage.basicInfo.startTime': '开始时间',
'supplierAnnualTaskManage.basicInfo.endTime': '结束时间',
'supplierAnnualTaskManage.basicInfo.template': '评价模板',
'supplierAnnualTaskManage.basicInfo.template': '年审模板',
'supplierAnnualTaskManage.basicInfo.categoryLimitation': '品类限制',
'supplierAnnualTaskManage.basicInfo.category': '品类',
'supplierAnnualTaskManage.basicInfo.unknownStatus': '未知状态',
@ -74,18 +74,18 @@ export default {
'supplierAnnualTaskManage.supplierInfo.dept': '部门',
'supplierAnnualTaskManage.supplierInfo.category': '品类',
'supplierAnnualTaskManage.supplierInfo.action': '操作',
'supplierAnnualTaskManage.supplierInfo.viewEvaluators': '查看评价人员',
'supplierAnnualTaskManage.supplierInfo.viewEvaluators': '查看年审人员',
'supplierAnnualTaskManage.supplierInfo.empty': '暂无供应商数据',
'supplierAnnualTaskManage.supplierInfo.noEvaluators': '未找到该供应商的年审人员信息',
// 批量评价人员模态框
// 批量年审人员模态框
'supplierAnnualTaskManage.batchEvaluatorModal.title': '批量选择年审人员',
// 供应商评价人员模态框
// 供应商年审人员模态框
'supplierAnnualTaskManage.supplierEvaluatorModal.title.select': '选择年审人员 - {supplierName}',
'supplierAnnualTaskManage.supplierEvaluatorModal.title.view': '查看年审人员 - {supplierName}',
'supplierAnnualTaskManage.supplierEvaluatorModal.button.close': '关闭',
'supplierAnnualTaskManage.supplierEvaluatorModal.warning.selectAtLeastOne': '请至少选择一名评价人员',
'supplierAnnualTaskManage.supplierEvaluatorModal.warning.selectAtLeastOne': '请至少选择一名年审人员',
'supplierAnnualTaskManage.supplierEvaluatorModal.noSupplier': '无供应商数据',
'supplierAnnualTaskManage.supplierEvaluatorModal.noEvaluators': '当前供应商暂无年审人员,请点击"编辑人员"按钮添加',
'supplierAnnualTaskManage.supplierEvaluatorModal.unknown.dept': '未知部门',
@ -102,24 +102,24 @@ export default {
'supplierAnnualTaskManage.supplierTable.button.delete': '删除',
'supplierAnnualTaskManage.supplierTable.confirm.delete.title': '确定要删除此供应商吗?',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content': '供应商: {supplierName}',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content.withEvaluators': '供应商: {supplierName},将同时删除 {count} 名关联的评价人员',
'supplierAnnualTaskManage.supplierTable.confirm.delete.content.withReviewers': '供应商: {supplierName},将同时删除 {count} 名关联的年审人员',
'supplierAnnualTaskManage.supplierTable.confirm.delete.okText': '确定',
'supplierAnnualTaskManage.supplierTable.confirm.delete.cancelText': '取消',
// 基本信息步骤组件
'supplierAnnualTaskManage.basicInfoStep.title': '基本信息',
'supplierAnnualTaskManage.basicInfoStep.theme': '评价主题',
'supplierAnnualTaskManage.basicInfoStep.theme': '年审主题',
'supplierAnnualTaskManage.basicInfoStep.theme.placeholder': '请输入',
'supplierAnnualTaskManage.basicInfoStep.theme.required': '请输入评价主题',
'supplierAnnualTaskManage.basicInfoStep.year': '评价年度',
'supplierAnnualTaskManage.basicInfoStep.theme.required': '请输入年审主题',
'supplierAnnualTaskManage.basicInfoStep.year': '年审年份',
'supplierAnnualTaskManage.basicInfoStep.year.placeholder': '请选择年度',
'supplierAnnualTaskManage.basicInfoStep.year.required': '请选择评价年度',
'supplierAnnualTaskManage.basicInfoStep.startTime': '评价开始时间',
'supplierAnnualTaskManage.basicInfoStep.year.required': '请选择年审年份',
'supplierAnnualTaskManage.basicInfoStep.startTime': '年审开始时间',
'supplierAnnualTaskManage.basicInfoStep.startTime.placeholder': '年/月/日',
'supplierAnnualTaskManage.basicInfoStep.startTime.required': '请选择评价开始时间',
'supplierAnnualTaskManage.basicInfoStep.endTime': '评价结束时间',
'supplierAnnualTaskManage.basicInfoStep.startTime.required': '请选择年审开始时间',
'supplierAnnualTaskManage.basicInfoStep.endTime': '年审结束时间',
'supplierAnnualTaskManage.basicInfoStep.endTime.placeholder': '年/月/日',
'supplierAnnualTaskManage.basicInfoStep.endTime.required': '请选择评价结束时间',
'supplierAnnualTaskManage.basicInfoStep.endTime.required': '请选择年审结束时间',
'supplierAnnualTaskManage.basicInfoStep.categoryLimitation': '品类限制类型',
'supplierAnnualTaskManage.basicInfoStep.categoryLimitation.required': '请选择品类限制类型',
'supplierAnnualTaskManage.basicInfoStep.categoryLimitation.universal': '通用不限品类',
@ -128,16 +128,16 @@ export default {
'supplierAnnualTaskManage.basicInfoStep.category.required': '请选择品类',
'supplierAnnualTaskManage.basicInfoStep.template': '选择模板',
'supplierAnnualTaskManage.basicInfoStep.template.placeholder': '请选择',
'supplierAnnualTaskManage.basicInfoStep.template.required': '请选择适用评价模板',
'supplierAnnualTaskManage.basicInfoStep.template.required': '请选择适用年审模板',
// 供应商选择步骤组件
'supplierAnnualTaskManage.supplierSelectStep.title': '供应商选择',
// 评价人员选择步骤组件
'supplierAnnualTaskManage.evaluatorSelectStep.title': '选择评价人员',
'supplierAnnualTaskManage.evaluatorSelectStep.batchSelect': '批量选择评价人员',
// 年审人员选择步骤组件
'supplierAnnualTaskManage.evaluatorSelectStep.title': '选择年审人员',
'supplierAnnualTaskManage.evaluatorSelectStep.batchSelect': '批量选择年审人员',
'supplierAnnualTaskManage.evaluatorSelectStep.noSupplier': '请先在上一步选择供应商',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noSupplier': '请至少添加一个供应商',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noEvaluator': '存在未分配评价人员的供应商',
'supplierAnnualTaskManage.evaluatorSelectStep.validation.noEvaluator': '存在未分配年审人员的供应商',
'supplierAnnualTaskManage.evaluatorSelectStep.defaultDept': '采购部',
};

View File

@ -206,7 +206,7 @@ const SupplierAnnualResultQuery2: React.FC = () => {
key: 'reviewDept',
},
{
title: intl.formatMessage({ id: 'supplierAnnualResult.review.reviewer' }),
title: "年审人员",
dataIndex: 'userName',
key: 'userName',
},

View File

@ -106,22 +106,22 @@ const BasicInfoStepComponent = (props: BasicInfoStepProps) => {
<Row gutter={24}>
<Col span={12}>
<Form.Item
label={intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.theme' })}
label="年审主题"
name="annualreviewTheme"
rules={[{ required: true, message: intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.theme.required' }) }]}
rules={[{ required: true, message: "请输入年审主题" }]}
>
<Input placeholder={intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.theme.placeholder' })} maxLength={50} />
</Form.Item>
</Col>
<Col span={12}>
<Form.Item
label={intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.year' })}
label="年审年份"
name="annualreviewYear"
getValueProps={(value) => ({
value: value ? moment(value) : undefined,
})}
normalize={(value) => value && value.format('YYYY')}
rules={[{ required: true, message: intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.year.required' }) }]}
rules={[{ required: true, message: "请选择年审年份" }]}
>
<DatePicker
style={{ width: '100%' }}
@ -135,9 +135,9 @@ const BasicInfoStepComponent = (props: BasicInfoStepProps) => {
<Row gutter={24}>
<Col span={12}>
<Form.Item
label={intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.startTime' })}
label="年审开始时间"
name="startTime"
rules={[{ required: true, message: intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.startTime.required' }) }]}
rules={[{ required: true, message: "请选择年审开始时间" }]}
getValueProps={(value) => ({
value: value ? moment(value) : undefined,
})}
@ -152,9 +152,9 @@ const BasicInfoStepComponent = (props: BasicInfoStepProps) => {
</Col>
<Col span={12}>
<Form.Item
label={intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.endTime' })}
label="年审结束时间"
name="endTime"
rules={[{ required: true, message: intl.formatMessage({ id: 'supplierAnnualTaskManage.basicInfoStep.endTime.required' }) }]}
rules={[{ required: true, message: "请选择年审结束时间" }]}
getValueProps={(value) => ({
value: value ? moment(value) : undefined,
})}

View File

@ -166,7 +166,7 @@ const SupplierAnnualTaskManage: React.FC = () => {
index + 1 + (pagination.current - 1) * pagination.pageSize,
},
{
title: <FormattedMessage id="supplierAnnualTaskManage.table.theme" />,
title: "年审主题",
dataIndex: 'annualreviewTheme',
key: 'annualreviewTheme',
ellipsis: {
@ -185,19 +185,19 @@ const SupplierAnnualTaskManage: React.FC = () => {
width: 150,
},
{
title: <FormattedMessage id="supplierAnnualTaskManage.table.startTime" />,
title: "年审开始时间",
dataIndex: 'startTime',
key: 'startTime',
width: 140,
},
{
title: <FormattedMessage id="supplierAnnualTaskManage.table.endTime" />,
title: "年审结束时间",
dataIndex: 'endTime',
key: 'endTime',
width: 140,
},
{
title: <FormattedMessage id="supplierAnnualTaskManage.table.status" />,
title: "年审状态",
dataIndex: 'statusName',
key: 'statusName',
width: 100
@ -233,21 +233,18 @@ const SupplierAnnualTaskManage: React.FC = () => {
layout="inline"
className="filter-form"
>
<Form.Item name="annualreviewTheme" label={intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.theme' })}>
<Input placeholder={intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.theme.placeholder' })} allowClear />
<Form.Item name="annualreviewTheme" label="年审主题">
<Input placeholder="请输入年审主题" allowClear />
</Form.Item>
<Form.Item name="timeRange" label={intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.time' })}>
<Form.Item name="timeRange" label="年审时间">
<RangePicker
placeholder={[
intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.time.start' }),
intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.time.end' })
]}
placeholder={["开始日期", "结束日期"]}
format="YYYY-MM-DD"
style={{ width: 230 }}
/>
</Form.Item>
<Form.Item name="status" label={intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.status' })}>
<Select placeholder={intl.formatMessage({ id: 'supplierAnnualTaskManage.filter.status.placeholder' })} allowClear style={{ width: 150 }}>
<Form.Item name="status" label="年审状态">
<Select placeholder="请选择年审状态" allowClear style={{ width: 150 }}>
{evaluateStatus.map((item) => (
<Option key={item.code} value={item.code}>
{item.dicName}

View File

@ -113,7 +113,7 @@ const SupplierTaskManageAdd: React.FC<PageProps> = ({ supplierAnnualTaskManage,
},
{
title: intl.formatMessage({ id: 'supplierAnnualTaskManage.step.selectSupplier.title' }),
description: intl.formatMessage({ id: 'supplierAnnualTaskManage.step.selectSupplier.description' }),
description: "请选择参加年审的供应商",
content: <SupplierSelectStep ref={supplierFormRef} />,
},
{

View File

@ -86,7 +86,7 @@ const SupplierTaskManageDetail: React.FC = () => {
<Card bordered={false}>
<div className="page-header">
<Title level={4}>
<FormattedMessage id="supplierAnnualTaskManage.detail.title" />
</Title>
<Button type="link" icon={<ArrowLeftOutlined />} onClick={handleBack}>
<FormattedMessage id="supplierAnnualTaskManage.button.back" />

View File

@ -554,6 +554,13 @@ const SupplierAnnualTemplateManageAdd: React.FC<PageProps> = ({ breadcrumb, disp
})}
loading={templateList.length === 0}
onSelect={handleTemplateSelect}
allowClear={true}
onClear={() => {
setIndicatorList([]);
form.setFieldsValue({
copyTemplateId: '',
});
}}
>
{templateList.map((template) =>
template.id ? (

View File

@ -520,6 +520,13 @@ const SupplierTemplateManageAdd: React.FC<PageProps> = ({ breadcrumb, dispatch }
})}
loading={templateList.length === 0}
showSearch={true}
allowClear={true}
onClear={() => {
setTemplateData([]);
form.setFieldsValue({
copyTemplateId: '',
});
}}
filterOption={(input, option) => {
return (option?.children ?? '').toLowerCase().includes(input.toLowerCase());
}}