feat(sj_1.0.0): 告警通知通知场景编辑选中,类型必一致

This commit is contained in:
wodeyangzipingpingwuqi 2024-05-11 15:59:09 +08:00
parent 06be428218
commit cc20d97c2f
4 changed files with 21 additions and 9 deletions

View File

@ -87,13 +87,13 @@ export const jobNotifyScene: Record<Api.NotifyConfig.JobNotifyScene, App.I18n.I1
1: 'page.notifyConfig.jobNotifyScene.jobTaskError',
2: 'page.notifyConfig.jobNotifyScene.jobClientError'
};
export const jobNotifySceneOptions = transformRecordToOption(jobNotifyScene);
export const jobNotifySceneOptions = transformRecordToNumberOption(jobNotifyScene);
export const workflowNotifyScene: Record<Api.NotifyConfig.WorkflowNotifyScene, App.I18n.I18nKey> = {
2: 'page.notifyConfig.workflowNotifyScene.workflowClientError',
100: 'page.notifyConfig.workflowNotifyScene.workTaskError'
};
export const workflowNotifySceneOptions = transformRecordToOption(workflowNotifyScene);
export const workflowNotifySceneOptions = transformRecordToNumberOption(workflowNotifyScene);
export const groupConfigStatusRecord: Record<Api.GroupConfig.GroupStatusType, App.I18n.I18nKey> = {
0: 'page.manage.common.status.disable',

View File

@ -543,7 +543,7 @@ declare namespace Api {
/** 组名称 */
groupName: string;
/** 业务ID */
businessId: string;
businessId: string | null;
/** 通知人id */
recipientIds: number[];
/** 任务类型 1、重试任务 2、回调任务、3、JOB任务 4、WORKFLOW任务 */

View File

@ -104,7 +104,7 @@ const { columns, columnChecks, data, getData, loading, mobilePagination, searchP
key: 'notifyScene',
title: $t('page.notifyConfig.notifyScene'),
align: 'left',
width: 120,
width: 160,
render: row => {
if (row.notifyScene === null) {
return null;

View File

@ -128,6 +128,7 @@ function handleUpdateModelWhenEdit() {
if (props.operateType === 'edit' && props.rowData) {
Object.assign(model, props.rowData);
systemTaskTypeChange(model.systemTaskType);
}
}
@ -207,16 +208,27 @@ async function systemTaskTypeChange(value: number) {
notifySceneOptions.value = translateOptions(retryNotifySceneOptions);
} else if (value === 3) {
const res = await fetchGetJobList({ groupName: model.groupName });
jobs.value = res.data as Api.Job.Job[];
jobs.value = res.data?.map(i => {
i.id = String(i.id);
return i;
}) as Api.Job.Job[];
notifySceneOptions.value = translateOptions(jobNotifySceneOptions);
} else if (value === 4) {
const res = await fetchGetWorkflowNameList({ groupName: model.groupName });
workflows.value = res.data as Api.Workflow.Workflow[];
workflows.value = res.data?.map(i => {
i.id = String(i.id);
return i;
}) as Api.Workflow.Workflow[];
notifySceneOptions.value = translateOptions(workflowNotifySceneOptions);
}
model.businessId = '';
model.notifyScene = null;
if (value !== props.rowData?.systemTaskType) {
model.businessId = null;
model.notifyScene = null;
} else {
model.businessId = props.rowData?.businessId;
model.notifyScene = props.rowData?.notifyScene;
}
}
function groupNameUpdate(groupName: string) {
@ -294,7 +306,7 @@ watch(visible, () => {
<NSelect
v-model:value="model.notifyScene"
:placeholder="$t('page.notifyConfig.form.notifyScene')"
:options="notifySceneOptions"
:options="translateOptions(notifySceneOptions)"
clearable
/>
</NFormItem>