Browse Source

截面散点图系列1命名规则修改

cxmo 1 year ago
parent
commit
fcbf6aa57f

+ 50 - 5
src/views/dataEntry_manage/components/satterSeriesDia.vue

@@ -351,6 +351,12 @@ export default {
     },
     serieInfo: {
       type: Object
+    },
+    edbInfoData:{
+        type:Array
+    },
+    SeriesNameModify:{
+        type:Boolean
     }
   },
   components: { mDialog },
@@ -392,8 +398,10 @@ export default {
             date: '',
             value: '',
           })).filter(_ =>_.target_id)
-        }     
-
+        }
+        //遍历请求xEdbs yEdbs的指标详情,获取最新日期和值
+        this.getEdbData()
+        this.getEdbNewInfo()
       }
     }
   },
@@ -414,6 +422,7 @@ export default {
         xEdbs: [],
         yEdbs: []
       },
+      edbData:{},
 
       form: {
         x_title:'',
@@ -515,7 +524,7 @@ export default {
             name: item.EdbName,
           })
 
-          this.form.series_name = this.form.series_name || this.targetInfo.xEdbs[0].date;
+          this.form.series_name = !this.SeriesNameModify?this.targetInfo.xEdbs[0].date:this.form.series_name;
           this.form.x_unit = this.form.x_unit || item.Unit;
         }else {
           this.targetInfo.yEdbs.push({
@@ -534,6 +543,9 @@ export default {
     /* 删除指标 */
     removeTarget(type,index) {
       type === 'x' ? this.targetInfo.xEdbs.splice(index,1) : this.targetInfo.yEdbs.splice(index,1);
+      if(type === 'x'){
+        this.form.series_name = this.targetInfo.xEdbs.length?this.targetInfo.xEdbs[0].date:''
+      }
     },
 
     /* 保存 */
@@ -595,6 +607,10 @@ export default {
         edbs: arr
       }
       this.$emit('saveCallback',params)
+      //如果没修改过,且保存时值不相等,则此次保存视为修改
+      if(params.series_name!==xEdbs[0].date&&!this.SeriesNameModify){
+        this.$emit('modifySeriesName')
+      }
       this.cancelHandle()
     },
 
@@ -640,13 +656,13 @@ export default {
           target_id: item.EdbInfoId,
           target_name: item.EdbName,
           date: item.LatestDate,
-          value: '',
+          value: item.LatestValue,
           name: item.EdbName,
         } : {
           target_id: item.EdbInfoId,
           target_name: item.EdbName,
           date: item.LatestDate,
-          value: '',
+          value: item.LatestValue,
         }
       }else {
         this.replaceForm.item = { date: '' }
@@ -659,6 +675,9 @@ export default {
       const { index,type,item } = this.replaceForm;
 
       type==='x' ? this.targetInfo.xEdbs.splice(index,1,item) : this.targetInfo.yEdbs.splice(index,1,item);
+      if(type==='x'&&index===0&&!this.SeriesNameModify){
+        this.form.series_name = this.targetInfo.xEdbs[0].date;
+      }
       this.cancelReplace()
     },
 
@@ -678,6 +697,32 @@ export default {
       
       this.$emit("update:show", false);
     },
+    getEdbData(){
+        this.edbInfoData.forEach(e=>{
+            if(!this.edbData[e.EdbInfoId]){
+                this.edbData[e.EdbInfoId] = {
+                    date:e.LatestDate,
+                    value:e.LatestValue
+                }
+            }
+        })
+    },
+    //获取指标的最新日期和值
+    getEdbNewInfo(){
+        const {xEdbs,yEdbs} = this.targetInfo
+        xEdbs.forEach(x=>{
+            if(this.edbData[x.target_id]){
+                x.date = this.edbData[x.target_id].date
+                x.value = this.edbData[x.target_id].value
+            }
+        })
+        yEdbs.forEach(y=>{
+            if(this.edbData[y.target_id]){
+                y.date = this.edbData[y.target_id].date
+                y.value = this.edbData[y.target_id].value
+            }
+        })
+    }
   }
 }
 </script>

+ 8 - 1
src/views/dataEntry_manage/components/sectionalScatterOption.vue

@@ -54,7 +54,10 @@
     <satterSeriesDia
       :show.sync="isOpenSeriesDialog"
       :serieInfo="seriesArr[0]"
+      :edbInfoData="edbInfoData"
+      :SeriesNameModify="SeriesNameModify"
       @saveCallback="saveSeriesOpt"
+      @modifySeriesName="$emit('modifySeriesName')"
     />
 
     <!-- 添加其他系列 -->
@@ -166,7 +169,11 @@ export default {
   props: {
     initData: {
       default: null
-    }
+    },
+    edbInfoData:{
+        dafault:[]
+    },
+    SeriesNameModify:Boolean
   },
   data() {
     return {

+ 7 - 1
src/views/dataEntry_manage/editChart.vue

@@ -259,7 +259,10 @@
 						v-if="chartInfo.ChartType===10"
 						ref="SectionScatterOptRef"
 						:initData="chartInfo.ExtraConfig?JSON.parse(chartInfo.ExtraConfig):null"
+						:edbInfoData="tableData"
+						:SeriesNameModify="SeriesNameModify||false"
 						@getData="getSectionScatterData"
+						@modifySeriesName="SeriesNameModify = true"
 					/>
         </div>
 			</div>
@@ -558,6 +561,7 @@ export default {
 
 			initBarOptions: null,//编辑时回显的barOptions数据
 			needWatch: false,
+			SeriesNameModify:false,
     };
   },
   methods: {
@@ -570,7 +574,8 @@ export default {
         })
         .then((res) => {
           if (res.Ret !== 200) return;
-					const { ChartInfo,EdbInfoList,BarChartInfo } = res.Data;
+					const { ChartInfo,EdbInfoList,BarChartInfo,SeriesNameModify} = res.Data;
+					this.SeriesNameModify = SeriesNameModify
 
            this.chartInfo = {
 						...ChartInfo,
@@ -644,6 +649,7 @@ export default {
 						ChartType: this.chartInfo.ChartType,
 						ChartInfoId: this.chartInfo.ChartInfoId,
 						ChartEdbInfoList: db_arr,
+						SeriesNameModify:this.SeriesNameModify
 					}
 
 					//提交参数