diff --git a/src/views/model/train/index.vue b/src/views/model/train/index.vue index 0903593..dcec6d7 100644 --- a/src/views/model/train/index.vue +++ b/src/views/model/train/index.vue @@ -475,6 +475,10 @@ export default defineComponent({ }, 500) function handleDeleteTrainTime(index: number) { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可修改训练时间') + return + } if (!model.value?.trainTime) return // 赋值新数组,确保响应式 @@ -500,12 +504,20 @@ export default defineComponent({ updateModelInfoDebounced() } async function clearModel() { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可清除训练结果') + return + } model.value.para = null updateModelInfoDebounced() await getHistory() } async function trainModel() { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可训练模型') + return + } const modelInfo = model.value if (!modelInfo || !modelInfo.id) { console.error('模型信息不完整,无法训练') @@ -612,7 +624,6 @@ export default defineComponent({ dayjs(sorted[0].st), dayjs(sorted[sorted.length - 1].et), ] - historyTime.value = trainRange await getTestData(trainRange) } else { @@ -664,6 +675,10 @@ export default defineComponent({ } function openPointModal(index, record) { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可编辑测点参数') + return + } // 当前页 index const pageIndex = index // 全局 index @@ -672,14 +687,21 @@ export default defineComponent({ ) openEditPointModal.value = true pointEditRecord = record + const normalizeBool = (val: any) => { + if (val === true || val === '是' || val === 1 || val === '1') + return true + if (val === false || val === '否' || val === 0 || val === '0') + return false + return !!val + } editForm.value = { index: globalIndex, Upper: record?.Upper ?? '', Lower: record?.Lower ?? '', lowerBound: record?.lowerBound ?? '', upperBound: record?.upperBound ?? '', - dead: !!record?.dead, - limit: !!record?.limit, + dead: normalizeBool(record?.dead), + limit: normalizeBool(record?.limit), } } @@ -690,6 +712,10 @@ export default defineComponent({ const openEditModeModal = ref(false) function openEditMode() { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可修改模式') + return + } openEditModeModal.value = true mode.value = { alarmcondition: model.value?.alarmmodelset?.alarmcondition || '1=1', @@ -754,6 +780,10 @@ export default defineComponent({ } function openEditModel() { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可修改模型') + return + } editModelForm.value.sampling = model.value?.sampling || 0 editModelForm.value.rate = model.value?.rate || 0 editModelForm.value.selectedKeys = (model.value?.pointInfo || []).map(item => `${item.description}|${item.pointId}|${item.unit}|${item.Lower}|${item.Upper}`) @@ -765,6 +795,10 @@ export default defineComponent({ openEditModelModal.value = true } function handleEditModelOk() { + if (!canEditModel.value) { + createMessage.warning('非草稿版本不可修改模型') + return + } model.value.sampling = editModelForm.value.sampling model.value.rate = editModelForm.value.rate model.value.pointInfo = editModelForm.value.selectedKeys.map((key) => { @@ -797,6 +831,10 @@ export default defineComponent({ const isVTestVersion = computed( () => (model.value?.Cur_Version || model.value?.version) === 'v-test', ) + const canEditModel = computed(() => { + const version = selectedVersion.value || model.value?.Cur_Version || model.value?.version + return version === 'v-test' + }) const isBottomed = computed(() => model.value?.btmState === '已下装') const reportColumns = [ { title: '评估时间', dataIndex: 'assessTime' }, @@ -982,9 +1020,7 @@ export default defineComponent({ createMessage.error('创建草稿版本失败') } } - const showTrainActions = computed( - () => !isBottomed.value || isVTestVersion.value || selectedVersion.value === 'v-test', - ) + const showTrainActions = computed(() => canEditModel.value) function goAssessReport(reportId?: number | null | Event) { // 防止直接作为事件处理时收到 PointerEvent @@ -1055,6 +1091,7 @@ export default defineComponent({ createDraftVersion, goAssessReport, showTrainActions, + canEditModel, } }, }) @@ -1161,7 +1198,7 @@ export default defineComponent({ :bordered="false" style="margin-top: 16px; margin-bottom: -20px" > - + {{ model?.alarmmodelset?.alarmname || '全工况运行' }} @@ -1172,21 +1209,28 @@ export default defineComponent({