|
|
@@ -4724,7 +4724,9 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{/* 头部 */}
|
|
|
<div className="px-4 py-2.5 bg-white border-b border-gray-200 flex items-center justify-between sticky top-0 z-10 shadow-sm">
|
|
|
<h3 className="text-sm font-medium text-gray-900">
|
|
|
- {workflowNodeConfig.nodeName || selectedWorkflowNode.data?.label || '节点'} 设置
|
|
|
+ {t('isolationWork.nodeSettingsTitle', {
|
|
|
+ nodeName: workflowNodeConfig.nodeName || selectedWorkflowNode.data?.label || t('isolationWork.nodeDefaultName'),
|
|
|
+ })}
|
|
|
</h3>
|
|
|
<button
|
|
|
onClick={() => setSelectedWorkflowNode(null)}
|
|
|
@@ -4741,20 +4743,20 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
<div>
|
|
|
<h4 className="flex items-center gap-3 text-base font-semibold text-gray-900 mb-4">
|
|
|
<span className="w-1 h-5 bg-blue-500 rounded-full flex-shrink-0" style={{ minWidth: '4px', minHeight: '20px' }}></span>
|
|
|
- 节点信息
|
|
|
+ {t('isolationWork.nodeInfo')}
|
|
|
</h4>
|
|
|
<div className="space-y-5">
|
|
|
{/* 节点名称 */}
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 节点名称 <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.nodeName')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Input
|
|
|
value={workflowNodeConfig.nodeName || ''}
|
|
|
onChange={(e) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, nodeName: e.target.value })
|
|
|
}
|
|
|
- placeholder="请输入节点名称"
|
|
|
+ placeholder={t('isolationWork.nodeNamePlaceholder')}
|
|
|
className="rounded-lg border-gray-200"
|
|
|
disabled={isViewMode}
|
|
|
/>
|
|
|
@@ -4764,14 +4766,14 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{selectedWorkflowNode.data?.type !== 'createJob' && selectedWorkflowNode.data?.type !== 'isolation' && selectedWorkflowNode.data?.type !== 'releaseIsolation' && (
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 负责人 <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.responsible')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Select
|
|
|
value={workflowNodeConfig.responsible || undefined}
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, responsible: value || undefined })
|
|
|
}
|
|
|
- placeholder="请选择负责人"
|
|
|
+ placeholder={t('isolationWork.responsiblePlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode}
|
|
|
@@ -4781,7 +4783,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
))}
|
|
|
</Select>
|
|
|
<p className="text-xs text-gray-500 mt-1.5 leading-relaxed">
|
|
|
- 对该任务或步骤节点进行处理的人员,若不选则需要在创建作业时进行选择。
|
|
|
+ {t('isolationWork.responsibleHelp')}
|
|
|
</p>
|
|
|
</div>
|
|
|
)}
|
|
|
@@ -4812,12 +4814,12 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
<div>
|
|
|
<h4 className="flex items-center gap-3 text-base font-semibold text-gray-900 mb-4">
|
|
|
<span className="w-1 h-5 bg-blue-500 rounded-full flex-shrink-0" style={{ minWidth: '4px', minHeight: '20px' }}></span>
|
|
|
- 提交表单
|
|
|
+ {t('isolationWork.submitFormSection')}
|
|
|
</h4>
|
|
|
<div className="space-y-5">
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 业务表单
|
|
|
+ {t('isolationWork.businessForm')}
|
|
|
{/* 只有确认节点、审核节点、录入信息节点显示必填标记 */}
|
|
|
{['confirm', 'review', 'inputInfo'].includes(selectedWorkflowNode.data?.type || '') && (
|
|
|
<span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
@@ -4828,7 +4830,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, submitForm: value || undefined })
|
|
|
}
|
|
|
- placeholder="请选择提交表单"
|
|
|
+ placeholder={t('isolationWork.businessFormPlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5004,14 +5006,14 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{/* 隔离方式 */}
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 隔离方式 <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.isolationMethod')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Select
|
|
|
value={workflowNodeConfig.isolationType || undefined}
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, isolationType: value || '' })
|
|
|
}
|
|
|
- placeholder="请选择隔离方式"
|
|
|
+ placeholder={t('isolationWork.isolationMethodPlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5028,7 +5030,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{(selectedWorkflowNode.data?.type === 'isolation' || selectedWorkflowNode.data?.type === 'releaseIsolation') && (
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 隔离点选择(可多选) <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.isolationPointSelect')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Select
|
|
|
mode="multiple"
|
|
|
@@ -5036,7 +5038,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, isolationPoints: value })
|
|
|
}
|
|
|
- placeholder="请选择隔离点"
|
|
|
+ placeholder={t('isolationWork.isolationPointPlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!min-h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5053,14 +5055,14 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{(workflowNodeConfig.isolationType === '0' || workflowNodeConfig.isolationType === '2') && (
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 负责人 <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.responsible')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Select
|
|
|
value={workflowNodeConfig.responsible || undefined}
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, responsible: value || undefined })
|
|
|
}
|
|
|
- placeholder="请选择负责人"
|
|
|
+ placeholder={t('isolationWork.responsiblePlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5077,14 +5079,14 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
<>
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 上锁人 <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
+ {t('isolationWork.locker')} <span className="text-red-500" style={{ color: '#ef4444' }}>*</span>
|
|
|
</label>
|
|
|
<Select
|
|
|
value={workflowNodeConfig.lockPerson || undefined}
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, lockPerson: value || undefined })
|
|
|
}
|
|
|
- placeholder="请选择上锁人"
|
|
|
+ placeholder={t('isolationWork.lockerPlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5096,7 +5098,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
</div>
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 共锁人(可多选)
|
|
|
+ {t('isolationWork.coLocker')}
|
|
|
</label>
|
|
|
<Select
|
|
|
mode="multiple"
|
|
|
@@ -5104,7 +5106,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
onChange={(value) =>
|
|
|
setWorkflowNodeConfig({ ...workflowNodeConfig, coLockPersons: value })
|
|
|
}
|
|
|
- placeholder="请选择共锁人"
|
|
|
+ placeholder={t('isolationWork.coLockerPlaceholder')}
|
|
|
className="w-full [&_.ant-select-selector]:!rounded-lg [&_.ant-select-selector]:!min-h-10"
|
|
|
allowClear
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
@@ -5127,12 +5129,12 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
<div>
|
|
|
<h4 className="flex items-center gap-3 text-base font-semibold text-gray-900 mb-4">
|
|
|
<span className="w-1 h-5 bg-blue-500 rounded-full flex-shrink-0" style={{ minWidth: '4px', minHeight: '20px' }}></span>
|
|
|
- 通知消息
|
|
|
+ {t('isolationWork.notificationSection')}
|
|
|
</h4>
|
|
|
<div className="space-y-5">
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-3">
|
|
|
- 通知方式
|
|
|
+ {t('isolationWork.notificationMethod')}
|
|
|
</label>
|
|
|
<div className="bg-gray-50 p-3 rounded-lg">
|
|
|
<div className="mb-3">
|
|
|
@@ -5150,7 +5152,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
>
|
|
|
- 短信
|
|
|
+ {t('isolationWork.notifySMS')}
|
|
|
</Checkbox>
|
|
|
</div>
|
|
|
<div className="mb-3">
|
|
|
@@ -5168,7 +5170,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
>
|
|
|
- 站内信
|
|
|
+ {t('isolationWork.notifyInbox')}
|
|
|
</Checkbox>
|
|
|
</div>
|
|
|
<div className="mb-3">
|
|
|
@@ -5186,7 +5188,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
>
|
|
|
- 邮件
|
|
|
+ {t('isolationWork.notifyEmail')}
|
|
|
</Checkbox>
|
|
|
</div>
|
|
|
<div>
|
|
|
@@ -5204,23 +5206,23 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
disabled={isViewMode || selectedWorkflowNode.data?.type === 'releaseIsolation'}
|
|
|
>
|
|
|
- APP通知
|
|
|
+ {t('isolationWork.notifyApp')}
|
|
|
</Checkbox>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-3">
|
|
|
- 通知对象
|
|
|
+ {t('isolationWork.notificationTarget')}
|
|
|
</label>
|
|
|
<div className="mb-3 space-y-1 text-xs text-gray-500">
|
|
|
- <div>1. 系统将默认发送消息给任务负责人(或上锁人\共锁人)</div>
|
|
|
- <div>2. 请选择消息抄送对象:</div>
|
|
|
+ <div>{t('isolationWork.notificationTargetTip1')}</div>
|
|
|
+ <div>{t('isolationWork.notificationTargetTip2')}</div>
|
|
|
</div>
|
|
|
<div className="space-y-3 bg-gray-50 p-3 rounded-lg">
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 抄送给部门(部门下的所有人):
|
|
|
+ {t('isolationWork.ccDeptLabel')}
|
|
|
</label>
|
|
|
<TreeSelect
|
|
|
multiple
|
|
|
@@ -5231,7 +5233,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
copyDeptIds: Array.isArray(value) ? value.map(String) : value != null && value !== '' ? [String(value)] : [],
|
|
|
})
|
|
|
}
|
|
|
- placeholder="请选择部门(可多选)"
|
|
|
+ placeholder={t('isolationWork.ccDeptPlaceholder')}
|
|
|
treeData={workflowCcDeptTreeData}
|
|
|
className="w-full"
|
|
|
allowClear
|
|
|
@@ -5243,7 +5245,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
</div>
|
|
|
<div>
|
|
|
<label className="block text-sm font-medium text-gray-700 mb-2">
|
|
|
- 抄送给人员:
|
|
|
+ {t('isolationWork.ccUserLabel')}
|
|
|
</label>
|
|
|
<TreeSelect
|
|
|
multiple
|
|
|
@@ -5254,7 +5256,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
copyUserIds: Array.isArray(value) ? value.map(String) : value != null && value !== '' ? [String(value)] : [],
|
|
|
})
|
|
|
}
|
|
|
- placeholder="请选择人员(可多选)"
|
|
|
+ placeholder={t('isolationWork.ccUserPlaceholder')}
|
|
|
treeData={workflowCcUserTreeData}
|
|
|
className="w-full"
|
|
|
allowClear
|
|
|
@@ -5962,7 +5964,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
}}
|
|
|
>
|
|
|
- 保存当前节点
|
|
|
+ {t('isolationWork.saveCurrentNode')}
|
|
|
</Button>
|
|
|
</div>
|
|
|
)}
|
|
|
@@ -5970,7 +5972,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
) : (
|
|
|
<div className="p-4">
|
|
|
<div className="text-sm text-gray-600">
|
|
|
- 请选择左侧流程中的节点进行配置
|
|
|
+ {t('isolationWork.selectNodeToConfigure')}
|
|
|
</div>
|
|
|
</div>
|
|
|
)}
|
|
|
@@ -5985,20 +5987,20 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
className="max-w-2xl"
|
|
|
>
|
|
|
<div className="mb-4">
|
|
|
- <h3 className="text-base font-medium text-gray-900 mb-2">发布作业设置</h3>
|
|
|
- <p className="text-sm text-gray-500">请配置作业的执行时间并最终发布</p>
|
|
|
+ <h3 className="text-base font-medium text-gray-900 mb-2">{t('isolationWork.publishSettingsTitle')}</h3>
|
|
|
+ <p className="text-sm text-gray-500">{t('isolationWork.publishSettingsDesc')}</p>
|
|
|
</div>
|
|
|
|
|
|
<Form.Item
|
|
|
- label="发布方式"
|
|
|
+ label={t('isolationWork.publishMethod')}
|
|
|
name="startType"
|
|
|
required
|
|
|
- rules={[{ required: true, message: '请选择发布方式' }]}
|
|
|
+ rules={[{ required: true, message: t('isolationWork.publishMethodRequired') }]}
|
|
|
initialValue="0"
|
|
|
>
|
|
|
<Radio.Group disabled={isViewMode}>
|
|
|
- <Radio value="0">立即发布</Radio>
|
|
|
- <Radio value="1">定时发布</Radio>
|
|
|
+ <Radio value="0">{t('isolationWork.publishNow')}</Radio>
|
|
|
+ <Radio value="1">{t('isolationWork.publishScheduled')}</Radio>
|
|
|
</Radio.Group>
|
|
|
</Form.Item>
|
|
|
|
|
|
@@ -6011,16 +6013,16 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{({ getFieldValue }) =>
|
|
|
getFieldValue('startType') === '1' ? (
|
|
|
<Form.Item
|
|
|
- label="发布时间"
|
|
|
+ label={t('isolationWork.publishTime')}
|
|
|
name="planTime"
|
|
|
required
|
|
|
- rules={[{ required: true, message: '请选择发布时间' }]}
|
|
|
+ rules={[{ required: true, message: t('isolationWork.publishTimeRequired') }]}
|
|
|
>
|
|
|
<DatePicker
|
|
|
showTime
|
|
|
format="YYYY-MM-DD HH:mm:ss"
|
|
|
className="w-full"
|
|
|
- placeholder="请选择发布时间"
|
|
|
+ placeholder={t('isolationWork.publishTimePlaceholder')}
|
|
|
disabled={isViewMode}
|
|
|
/>
|
|
|
</Form.Item>
|
|
|
@@ -6055,7 +6057,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
// 关闭弹框时刷新列表
|
|
|
getWorkJobList();
|
|
|
}}>
|
|
|
- {isViewMode ? '关闭' : '取消'}
|
|
|
+ {isViewMode ? t('common.close') : t('common.cancel')}
|
|
|
</Button>
|
|
|
{!isViewMode ? (
|
|
|
<Button
|
|
|
@@ -6187,14 +6189,14 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
}}
|
|
|
>
|
|
|
- 下一步
|
|
|
+ {t('common.next')}
|
|
|
</Button>
|
|
|
) : (
|
|
|
<Button
|
|
|
type="primary"
|
|
|
onClick={() => setWorkJobStep(1)}
|
|
|
>
|
|
|
- 下一步
|
|
|
+ {t('common.next')}
|
|
|
</Button>
|
|
|
)}
|
|
|
</>
|
|
|
@@ -6203,7 +6205,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
<div className="flex flex-col items-center w-full gap-2">
|
|
|
<div className="flex items-center gap-2">
|
|
|
<Button onClick={() => setWorkJobStep(0)}>
|
|
|
- 上一步
|
|
|
+ {t('common.previous')}
|
|
|
</Button>
|
|
|
{!isViewMode && (
|
|
|
<>
|
|
|
@@ -6255,12 +6257,12 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
}}
|
|
|
>
|
|
|
- 下一步
|
|
|
+ {t('common.next')}
|
|
|
</Button>
|
|
|
{!hasUnsavedNodes && (
|
|
|
<img
|
|
|
src={new URL('../assets/finger.png', import.meta.url).href}
|
|
|
- alt="指向下一步"
|
|
|
+ alt={t('common.next')}
|
|
|
className="pointer-hint-icon"
|
|
|
style={{
|
|
|
width: '32px',
|
|
|
@@ -6361,20 +6363,20 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
type="primary"
|
|
|
onClick={() => setWorkJobStep(2)}
|
|
|
>
|
|
|
- 下一步
|
|
|
+ {t('common.next')}
|
|
|
</Button>
|
|
|
)}
|
|
|
</div>
|
|
|
<div className="flex items-center text-red-600" style={{ fontSize: '12px' }}>
|
|
|
<span className="mr-1">⚠️</span>
|
|
|
- <span>提示:流程中的每一个节点都需要单独配置并保存,方可点击 "下一步"。</span>
|
|
|
+ <span>{t('isolationWork.nextStepHint')}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
)}
|
|
|
{workJobStep === 2 && (
|
|
|
<>
|
|
|
<Button onClick={() => setWorkJobStep(1)}>
|
|
|
- 上一步
|
|
|
+ {t('common.previous')}
|
|
|
</Button>
|
|
|
{!isViewMode ? (
|
|
|
<Button
|
|
|
@@ -6456,7 +6458,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
}
|
|
|
}}
|
|
|
>
|
|
|
- 确认发布
|
|
|
+ {t('isolationWork.confirmPublish')}
|
|
|
</Button>
|
|
|
) : (
|
|
|
<Button onClick={() => {
|
|
|
@@ -6477,7 +6479,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
setOriginalBasicFormData(null);
|
|
|
getWorkJobList();
|
|
|
}}>
|
|
|
- 关闭
|
|
|
+ {t('common.close')}
|
|
|
</Button>
|
|
|
)}
|
|
|
</>
|
|
|
@@ -6932,17 +6934,17 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
className="max-w-2xl"
|
|
|
>
|
|
|
<div className="mb-4">
|
|
|
- <h3 className="text-base font-medium text-gray-900 mb-2">发布作业设置</h3>
|
|
|
- <p className="text-sm text-gray-500">请配置作业的执行时间并最终发布</p>
|
|
|
+ <h3 className="text-base font-medium text-gray-900 mb-2">{t('isolationWork.publishSettingsTitle')}</h3>
|
|
|
+ <p className="text-sm text-gray-500">{t('isolationWork.publishSettingsDesc')}</p>
|
|
|
</div>
|
|
|
|
|
|
<Form.Item
|
|
|
- label="发布方式"
|
|
|
+ label={t('isolationWork.publishMethod')}
|
|
|
name="startType"
|
|
|
>
|
|
|
<Radio.Group disabled>
|
|
|
- <Radio value="0">立即发布</Radio>
|
|
|
- <Radio value="1">定时发布</Radio>
|
|
|
+ <Radio value="0">{t('isolationWork.publishNow')}</Radio>
|
|
|
+ <Radio value="1">{t('isolationWork.publishScheduled')}</Radio>
|
|
|
</Radio.Group>
|
|
|
</Form.Item>
|
|
|
|
|
|
@@ -6955,7 +6957,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
{({ getFieldValue }) =>
|
|
|
getFieldValue('startType') === '1' ? (
|
|
|
<Form.Item
|
|
|
- label="发布时间"
|
|
|
+ label={t('isolationWork.publishTime')}
|
|
|
name="planTime"
|
|
|
>
|
|
|
<DatePicker
|
|
|
@@ -6963,7 +6965,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
showTime
|
|
|
format="YYYY-MM-DD HH:mm:ss"
|
|
|
className="w-full"
|
|
|
- placeholder="请选择发布时间"
|
|
|
+ placeholder={t('isolationWork.publishTimePlaceholder')}
|
|
|
/>
|
|
|
</Form.Item>
|
|
|
) : null
|
|
|
@@ -6983,7 +6985,7 @@ export default function IsolationWork({ subMenu }: IsolationWorkProps) {
|
|
|
viewWorkJobPublishForm.resetFields();
|
|
|
setViewWorkflowJson(null);
|
|
|
}}>
|
|
|
- 关闭
|
|
|
+ {t('common.close')}
|
|
|
</Button>
|
|
|
</div>
|
|
|
</div>
|