From 8f60e770d815c974c382ad6d5de99e3c574e2196 Mon Sep 17 00:00:00 2001 From: hwj Date: Wed, 14 Jan 2026 15:44:38 +0800 Subject: [PATCH] =?UTF-8?q?style=EF=BC=9A=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86-=E4=BB=BB=E5=8A=A1=E7=AE=A1=E7=90=86=E4=BC=A0?= =?UTF-8?q?=E5=8F=82=E8=B0=83=E6=95=B4/=E8=B5=B7=E6=AD=A2=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=E5=BF=85=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/taskManagement/index.ts | 2 +- .../mes/taskManagement/TaskManagementForm.vue | 22 ++++++++++--------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/api/mes/taskManagement/index.ts b/src/api/mes/taskManagement/index.ts index e1182d4f..ed2a14be 100644 --- a/src/api/mes/taskManagement/index.ts +++ b/src/api/mes/taskManagement/index.ts @@ -5,7 +5,7 @@ export interface TaskManagementVO { name?: string taskType?: number deviceList?: string - projectForm?: string + projectForm?: string | number startDate?: string endDate?: string cronExpression?: string diff --git a/src/views/mes/taskManagement/TaskManagementForm.vue b/src/views/mes/taskManagement/TaskManagementForm.vue index 4db62629..2611f0be 100644 --- a/src/views/mes/taskManagement/TaskManagementForm.vue +++ b/src/views/mes/taskManagement/TaskManagementForm.vue @@ -31,13 +31,12 @@ - + @@ -129,7 +128,7 @@ const toCommaSeparatedIds = (value: any): string | undefined => { const ensureOptionsLoaded = async () => { const [deviceRes, planRes, userRes] = await Promise.all([ DeviceLedgerApi.getDeviceLedgerPage({}), - PlanMaintenanceApi.getPlanMaintenancePage({}), + PlanMaintenanceApi.getPlanMaintenancePage({ pageNo: 1, pageSize: 100 }), getSimpleUserList() ]) deviceOptions.value = (deviceRes?.list ?? []) as DeviceOption[] @@ -142,7 +141,7 @@ const formData = ref({ name: undefined as string | undefined, taskType: undefined as number | undefined, deviceList: [] as string[], - projectForm: [] as string[], + projectForm: undefined as number | undefined, dateRange: [] as string[], cronExpression: undefined as string | undefined, operableUsers: [] as string[], @@ -155,6 +154,7 @@ const formRules = reactive({ enabled: [{ required: true, message: '是否启用不能为空', trigger: 'change' }], deviceList: [{ required: true, message: '设备列表不能为空', trigger: 'change' }], projectForm: [{ required: true, message: '项目表单不能为空', trigger: 'change' }], + dateRange: [{required: true, message: '起止日期不能为空', trigger: 'change' }] }) const resetForm = () => { @@ -163,7 +163,7 @@ const resetForm = () => { name: undefined, taskType: undefined, deviceList: [], - projectForm: [], + projectForm: undefined, dateRange: [], cronExpression: undefined, operableUsers: [], @@ -186,14 +186,16 @@ const open = async (type: string, row?: TaskManagementVO) => { formData.value.deviceList = parseIdsValue((row as any).deviceList) const projectFormIds = parseIdsValue((row as any).projectForm) if (projectFormIds.length) { - formData.value.projectForm = projectFormIds + const n = Number(projectFormIds[0]) + formData.value.projectForm = Number.isFinite(n) ? n : undefined } else { const projectFormNames = parseIdsValue((row as any).projectFormName) - const mappedIds = projectFormNames + const mapped = projectFormNames .map((name) => planOptions.value.find((p) => p.planName === name)?.id) .filter((id) => id !== undefined && id !== null) - .map((id) => String(id)) - formData.value.projectForm = mappedIds + .map((id) => Number(id)) + const firstId = mapped[0] + formData.value.projectForm = typeof firstId === 'number' && Number.isFinite(firstId) ? firstId : undefined } formData.value.dateRange = [row.startDate, row.endDate].filter(Boolean) as string[] formData.value.cronExpression = row.cronExpression @@ -222,7 +224,7 @@ const submitForm = async () => { name: formData.value.name, taskType: formData.value.taskType, deviceList: toCommaSeparatedIds((formData.value as any).deviceList), - projectForm: toCommaSeparatedIds((formData.value as any).projectForm), + projectForm: formData.value.projectForm, startDate: startDate || undefined, endDate: endDate || undefined, cronExpression: formData.value.cronExpression,