From a484d883e1265f683dbf742b30799ca1324f5bd0 Mon Sep 17 00:00:00 2001 From: liriming <1343021927@qq.com> Date: 星期二, 04 三月 2025 10:05:50 +0800 Subject: [PATCH] 模拟调整 --- src/views/model/sche/adjust/index.vue | 2 src/utils/dict.ts | 3 + src/views/model/sche/adjust/AdjustConfigForm.vue | 65 +++++++++++++------------------- 3 files changed, 30 insertions(+), 40 deletions(-) diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 053411e..34cacf7 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -192,5 +192,6 @@ DATA_QUALITY = 'data_quality', ARC_TYPE = 'arc_type', ARC_CALCULATE_TYPE = 'arc_calculate_type', - SOLIDIFY_FLAG = 'ind_solidify_flag' + SOLIDIFY_FLAG = 'ind_solidify_flag', + MODEL_STATUS = 'model_status' } diff --git a/src/views/model/sche/adjust/AdjustConfigForm.vue b/src/views/model/sche/adjust/AdjustConfigForm.vue index 981383b..5b9d897 100644 --- a/src/views/model/sche/adjust/AdjustConfigForm.vue +++ b/src/views/model/sche/adjust/AdjustConfigForm.vue @@ -28,7 +28,7 @@ clearable style="width: 100%"> <el-option - v-for="dict in getIntDictOptions(DICT_TYPE.COMMON_STATUS)" + v-for="dict in getIntDictOptions(DICT_TYPE.MODEL_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" @@ -58,44 +58,25 @@ <el-table-column prop="sort" label="执行顺序" align="center" width="90px"/> <el-table-column label="预测项类型" align="center" width="220px"> <template #default="scope"> - <el-select v-model="scope.row.itemTypeId" placeholder="请选择" @change="changeitemTypeId(scope.row)"> + <el-select v-model="scope.row.itemTypeId" placeholder="请选择" clearable @change="changeitemTypeId(scope.row)"> <el-option - v-for="dict in getStrDictOptions(DICT_TYPE.MODEL_PARAM_TYPE)" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> + v-for="item in itemTypeList" + :key="item.id" + :label="item.itemtypename" + :value="item.id"/> </el-select> </template> </el-table-column> <el-table-column label="预测项名" align="center" width="300px"> <template #default="scope"> - <el-select v-if="scope.row.itemTypeId === 'NormalItem'" - v-model="scope.row.predictItemId" - placeholder="请选择" - filterable - style="width: 100%"> - <el-option-group - v-for="group in modelparamListMap['NormalItem']" - :key="group.value" - :label="group.label" - > - <el-option - v-for="item in group.children" - :key="item.value" - :label="item.label" - :value="item.value" - /> - </el-option-group> - </el-select> - <el-select v-else - v-model="scope.row.predictItemId" - filterable - placeholder="请选择"> + <el-select + v-model="scope.row.predictItemId" + placeholder="请选择" + clearable> <el-option - v-for="(item, index) in modelparamListMap[scope.row.itemTypeId]" - :key="index" - :label="item.name" + v-for="item in predictItemList" + :key="item.id" + :label="item.itemname" :value="item.id"/> </el-select> </template> @@ -141,8 +122,9 @@ <script lang="ts" setup> import * as AdjustConfigApi from '@/api/model/sche/adjust' import * as MmItemType from "@/api/model/pre/type"; +import * as MmPredictItem from "@/api/model/pre/item"; import * as ScheduleModelApi from "@/api/model/sche/model"; -import {DICT_TYPE, getIntDictOptions, getStrDictOptions} from "@/utils/dict"; +import {DICT_TYPE, getIntDictOptions} from "@/utils/dict"; defineOptions({name: 'AdjustConfigForm'}) @@ -153,7 +135,7 @@ const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 const formType = ref('') // 表单的类型:create - 新增;update - 修改 const itemTypeList = ref([]) -const itemTypeMap = ref({}) +const predictItemList = ref([]) const scheduleModelList = ref([] as ScheduleModelApi.ScheduleModelVO[]) const modelparamListMap = ref({}) const dataForm = ref({ @@ -166,6 +148,9 @@ const formRules = reactive({ scheduleModelId: [{required: true, message: '调度模型不能为空', trigger: 'blur'}], status: [{required: true, message: '状态不能为空', trigger: 'blur'}], +}) +const queryParams = reactive({ + itemtypeid: undefined, }) const formRef = ref() // 表单 Ref @@ -188,12 +173,10 @@ scheduleModelList.value = await ScheduleModelApi.getScheduleModelList() // 加载参数列表 modelparamListMap.value = await ScheduleModelApi.getModelParamList() - // 获取预测项类型列表 itemTypeList.value = await MmItemType.getItemTypeList() - itemTypeList.value.forEach(function (value) { - itemTypeMap[value.id] = value.itemtypename - }) + + predictItemList.value = await MmPredictItem.getMmPredictItemList(queryParams) } defineExpose({open}) // 提供 open 方法,用于打开弹窗 @@ -226,6 +209,12 @@ function changeitemTypeId(row) { row.predictItemId = '' + getInfo(row.itemTypeId) +} + +const getInfo = async (itemTypeId) => { + queryParams.itemtypeid = itemTypeId + predictItemList.value = await MmPredictItem.getMmPredictItemList(queryParams) } function addAdjustConfigDet() { diff --git a/src/views/model/sche/adjust/index.vue b/src/views/model/sche/adjust/index.vue index fb6ceb8..b39b597 100644 --- a/src/views/model/sche/adjust/index.vue +++ b/src/views/model/sche/adjust/index.vue @@ -56,7 +56,7 @@ <el-table-column label="模型名称" header-align="center" align="left" prop="modelName" min-width="100"/> <el-table-column label="状态" align="center" prop="status"> <template #default="scope"> - <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" /> + <dict-tag :type="DICT_TYPE.MODEL_STATUS" :value="scope.row.status" /> </template> </el-table-column> <el-table-column label="备注" header-align="center" align="left" prop="remark" min-width="160" /> -- Gitblit v1.9.3