From 04c91558f2a7ad6d1e424cb9781352a37726a134 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期三, 14 五月 2025 18:26:59 +0800
Subject: [PATCH] 极值点

---
 src/views/data/point/DaPointForm.vue |   74 ++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 1 deletions(-)

diff --git a/src/views/data/point/DaPointForm.vue b/src/views/data/point/DaPointForm.vue
index 94c85e5..c66caeb 100644
--- a/src/views/data/point/DaPointForm.vue
+++ b/src/views/data/point/DaPointForm.vue
@@ -124,7 +124,7 @@
           </el-form-item>
         </el-col>
       </el-row>
-      <!--计量点-->
+      <!--测量点-->
       <el-row v-if="formData.pointType === 'MEASURE'">
         <el-col :span="24">
           <el-form-item prop="sourceOption" label="数据源">
@@ -136,6 +136,7 @@
           </el-form-item>
         </el-col>
       </el-row>
+      <!--测量点-->
       <el-row v-if="formData.pointType === 'MEASURE'">
         <el-col :span="12">
           <el-form-item label="测量值类型" prop="measurePoint.valueType">
@@ -331,6 +332,60 @@
         </el-col>
 
       </el-row>
+      <!--极值点-->
+      <el-row :gutter="20" v-if="formData.pointType === 'EXTREMAL'">
+        <el-col :span="24">
+          <el-form-item label="瞬时测点" prop="extremalPoint.momentPoint">
+            <el-select
+              v-model="formData.extremalPoint.momentPoint"
+              filterable
+              placeholder="请选择">
+              <el-option
+                v-for="(item, index) in pointList2"
+                :key="index"
+                :label="item.pointName"
+                :value="item.pointNo"/>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="统计长度" prop="extremalPoint.length">
+            <el-input-number v-model="formData.extremalPoint.length" style="width: 100%"
+                             :min="1" :max="1440 * 30"
+                             :controls="false"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="统计单位" prop="extremalPoint.extremalUnit">
+            <el-select
+              v-model="formData.extremalPoint.extremalUnit"
+              placeholder="请选择统计单位"
+            >
+              <el-option
+                v-for="dict in getDictOptions(DICT_TYPE.EXTREMALUNIT)"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="统计类型" prop="extremalPoint.extremalType">
+            <el-select
+              v-model="formData.extremalPoint.extremalType"
+              placeholder="请选择统计类型"
+            >
+              <el-option
+                v-for="dict in getDictOptions(DICT_TYPE.EXTREMALTYPE)"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+      </el-row>
     </el-form>
     <template #footer>
       <el-button :disabled="formLoading" type="primary" @click="submitForm">确 定</el-button>
@@ -406,6 +461,14 @@
     momentPoint: '',
     length: '',
     divisor: ''
+  },
+  extremalPoint: {
+    id: '',
+    pointId: '',
+    momentPoint: '',
+    length: '',
+    extremalUnit: '',
+    extremalType: ''
   }
 })
 const formRules = reactive({
@@ -418,6 +481,7 @@
   "cumulatePoint.momentPoint": [{required: true, message: '累计测点不能为空', trigger: 'blur'}],
   "cumulatePoint.length": [{required: true, message: '累计长度不能为空', trigger: 'blur'}],
   "cumulatePoint.divisor": [{required: true, message: '除数不能为空', trigger: 'blur'}],
+  "extremalPoint.momentPoint": [{required: true, message: '测点不能为空', trigger: 'blur'}],
 })
 const formRef = ref() // 表单 Ref
 
@@ -540,6 +604,14 @@
       length: 60,
       cumulateUnit: 'min',
       divisor: 60
+    },
+    extremalPoint: {
+      id: '',
+      pointId: '',
+      momentPoint: '',
+      length: '',
+      extremalUnit: 'min',
+      extremalType: 'max'
     }
   }
   formRef.value?.resetFields()

--
Gitblit v1.9.3