From 331bbbc6604426763876ef55403b6f60cc22bf04 Mon Sep 17 00:00:00 2001
From: Jay <csj123456>
Date: 星期三, 19 二月 2025 14:08:19 +0800
Subject: [PATCH] 新增指标查询历史值功能

---
 src/views/data/ind/item/CalIndDefineForm.vue |   52 ++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 38 insertions(+), 14 deletions(-)

diff --git a/src/views/data/ind/item/CalIndDefineForm.vue b/src/views/data/ind/item/CalIndDefineForm.vue
index 119ef91..428dc85 100644
--- a/src/views/data/ind/item/CalIndDefineForm.vue
+++ b/src/views/data/ind/item/CalIndDefineForm.vue
@@ -20,15 +20,14 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="指标分类" prop="itemCategory">
-            <el-select v-model="formData.itemCategory" clearable filterable
-                       allow-create 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">
@@ -45,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>
@@ -140,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'})
 
@@ -191,7 +207,15 @@
   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
@@ -200,7 +224,7 @@
     resetForm()
 
     // 加载数据源列表
-    dataCategoryList.value = await CategoryApi.getCategoryListAllSimple()
+    await getCategoryTree()
     itemList.value = await ItemApi.getItemList(queryParams)
     // 修改时,设置数据
     if (id) {

--
Gitblit v1.9.3