From 4058b747853decfa1f57cb88a9ab2029b9bc3033 Mon Sep 17 00:00:00 2001 From: Jay <csj123456> Date: 星期四, 20 二月 2025 10:11:44 +0800 Subject: [PATCH] 新增指标查询历史值功能 --- src/views/data/ind/item/CalIndDefineForm.vue | 58 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 42 insertions(+), 16 deletions(-) diff --git a/src/views/data/ind/item/CalIndDefineForm.vue b/src/views/data/ind/item/CalIndDefineForm.vue index 0d5fc81..28a1235 100644 --- a/src/views/data/ind/item/CalIndDefineForm.vue +++ b/src/views/data/ind/item/CalIndDefineForm.vue @@ -20,14 +20,14 @@ <el-row> <el-col :span="12"> <el-form-item label="指标分类" prop="itemCategory"> - <el-select v-model="formData.itemCategory" clearable placeholder="请选择指标分类"> - <el-option - v-for="item in dataCategoryList" - :key="item.id" - :label="item.label" - :value="item.id + ''" - /> - </el-select> + <el-tree-select + v-model="formData.itemCategory" + :data="dataCategoryList" + :default-expanded-keys="[0]" + :props="defaultProps" + check-strictly + node-key="id" + /> </el-form-item> </el-col> <el-col :span="12"> @@ -44,19 +44,35 @@ </el-col> </el-row> <el-row> - <el-col :span="8"> + <el-col :span="6"> <el-form-item label="指标精度" prop="precision"> <el-input v-model="formData.precision"/> </el-form-item> </el-col> - <el-col :span="8"> + <el-col :span="6"> <el-form-item label="转换系数" prop="coefficient"> <el-input v-model="formData.coefficient"/> </el-form-item> </el-col> - <el-col :span="8"> + <el-col :span="6"> <el-form-item label="数量单位" prop="unit"> <el-input v-model="formData.unit"/> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="固化标识" prop="solidifyFlag"> + <el-select v-model="formData.solidifyFlag" + clearable + filterable + allow-create + placeholder="请选择"> + <el-option + v-for="dict in getStrDictOptions(DICT_TYPE.SOLIDIFY_FLAG)" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> </el-form-item> </el-col> </el-row> @@ -139,6 +155,7 @@ import * as ItemApi from '@/api/data/ind/item/item' import { ElMessage } from 'element-plus' import * as CategoryApi from '@/api/data/ind/category/index' + import {handleTree} from "@/utils/tree"; defineOptions({name: 'IndDataSetForm'}) @@ -162,6 +179,7 @@ timeRange: '', timeGranularity: '', remark: '', + solidifyFlag:'', calItem: { id: '', expression: '', @@ -183,14 +201,22 @@ const operatorList = ref(['+', '-', '*', '/', '&', '|', '!', '>', '<']) const formRules = reactive({ itemName: [{required: true, message: '指标名称不能为空', trigger: 'blur'}], - itemCategory: [{required: true, message: '指标类型不能为空', trigger: 'blur'}], - precision: [{validator: validateAsNumber, trigger: 'blur' }], - coefficient: [{validator: validateAsNumber, trigger: 'blur' }], + itemCategory: [{required: true, message: '指标类型不能为空', trigger: 'blur'}] + // precision: [{validator: validateAsNumber, trigger: 'blur' }], + // coefficient: [{validator: validateAsNumber, trigger: 'blur' }], }) const formRef = ref() // 表单 Ref const dataSourceList = ref([] as DataSourceConfigApi.DataSourceConfigVO[]) const queryParams = reactive({}) - const dataCategoryList = ref([] as CategoryApi.IndItemCategoryVO[]) + + const dataCategoryList = ref<Tree[]>([]) + const getCategoryTree = async () => { + dataCategoryList.value = [] + const res = await CategoryApi.getCategoryListAllSimple() + let category: Tree = {id: 0, label: '主类目', children: []} + category.children = handleTree(res, 'id', 'pid') + dataCategoryList.value.push(category) + } /** 打开弹窗 */ const open = async (type: string, id?: number) => { dialogVisible.value = true @@ -199,7 +225,7 @@ resetForm() // 加载数据源列表 - dataCategoryList.value = await CategoryApi.getCategoryListAllSimple() + await getCategoryTree() itemList.value = await ItemApi.getItemList(queryParams) // 修改时,设置数据 if (id) { -- Gitblit v1.9.3