From b09aee354bf99c0cd2c869404dd04d091bfaa6b1 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期四, 05 六月 2025 15:45:07 +0800
Subject: [PATCH] 快照配置 预测项改成全部预测项,包含计算预测项

---
 src/api/model/sche/model/index.ts                       |   29 +++++++++++++++++++++++++++--
 src/views/model/sche/snapshotConf/det/configDetForm.vue |    4 ++--
 2 files changed, 29 insertions(+), 4 deletions(-)

diff --git a/src/api/model/sche/model/index.ts b/src/api/model/sche/model/index.ts
index 92d9b8a..7a2609b 100644
--- a/src/api/model/sche/model/index.ts
+++ b/src/api/model/sche/model/index.ts
@@ -94,8 +94,32 @@
   predictItemList.value = await PredictItemApi.getMmPredictItemList({
     status: CommonEnabled.ENABLE
   })
+  predictItemList.value = predictItemList.value.filter(e => e.outPuts && e.outPuts.length > 0);
+
+  const allPredictItemList = []
+  const predictAllItemList = predictItemList.value;
+  if (predictAllItemList && predictAllItemList.length > 0) {
+    // 过滤掉本身
+    predictAllItemList.filter(e => e.id !== id).forEach(item => {
+      allPredictItemList.push(
+        {
+          value: item.id,
+          label:  item.itemname,
+          predictlength: item.predictlength,
+          moduleid: item.moduleid,
+          children: item.outPuts?.map(e => {
+            return {
+              value: e.id,
+              label: e.resultName
+            }
+          })
+        }
+      )
+    })
+  }
+
   const normalItemList = []
-  const predictNormalItemList = predictItemList.value.filter(e => e.itemtypename === 'NormalItem' && e.outPuts && e.outPuts.length > 0);
+  const predictNormalItemList = predictItemList.value.filter(e => e.itemtypename === 'NormalItem');
   if (predictNormalItemList && predictNormalItemList.length > 0) {
     // 过滤掉本身
     predictNormalItemList.filter(e => e.id !== id).forEach(item => {
@@ -132,7 +156,7 @@
     })
   }
 
-  const predictMergeItemList = predictItemList.value.filter(e => e.itemtypename === 'MergeItem' && e.outPuts && e.outPuts.length > 0);
+  const predictMergeItemList = predictItemList.value.filter(e => e.itemtypename === 'MergeItem');
   const mergeItemList = []
   if (predictMergeItemList && predictMergeItemList.length > 0) {
     // 过滤掉本身
@@ -165,6 +189,7 @@
     'DATAPOINT':pointList,
     'NormalItem': normalItemList,
     'MergeItem': mergeItemList,
+    'allPredictItemList': allPredictItemList,
     'PLAN': planList,
     'IND': indList,
     'IND_ASCII': indList,
diff --git a/src/views/model/sche/snapshotConf/det/configDetForm.vue b/src/views/model/sche/snapshotConf/det/configDetForm.vue
index 481ecd2..b5223aa 100644
--- a/src/views/model/sche/snapshotConf/det/configDetForm.vue
+++ b/src/views/model/sche/snapshotConf/det/configDetForm.vue
@@ -24,7 +24,7 @@
           <el-form-item label="数据编号" prop="dataNo">
             <el-select-v2 v-if="formData.dataType === 'PREDICT_ITEM_N' || formData.dataType === 'PREDICT_ITEM_L' || formData.dataType === 'PREDICT_ITEM_C'"
               v-model="formData.dataNo"
-              :options="modelparamListMap['NormalItem'] || []"
+              :options="modelparamListMap['allPredictItemList'] || []"
               placeholder="请选择"
               :props="{value:'value',label:'label',options:'children'}"
               clearable
@@ -220,7 +220,7 @@
   const changeDataNo = (value) => {
     let dataName = undefined;
     if (formData.value.dataType === 'PREDICT_ITEM_N' || formData.value.dataType === 'PREDICT_ITEM_L' || formData.value.dataType === 'PREDICT_ITEM_C') {
-      for (let item of modelparamListMap.value['NormalItem']) {
+      for (let item of modelparamListMap.value['allPredictItemList']) {
         dataName = item.children?.find(e => e.value === value)?.label;
         if (dataName != undefined) {
           break

--
Gitblit v1.9.3