Эх сурвалжийг харах

标的指标,因子系列回显;

cxmo 10 сар өмнө
parent
commit
ad0c0dc8dc

+ 9 - 0
src/views/chartRelevance_manage/components/chartCard.vue

@@ -272,6 +272,15 @@ export default {
       let Source;
       if(['/relevancechartEditor','/relevancechartEditorV2'].includes(this.$route.path)) {
         Source = entryType;
+        //多因子参数不一样,这里直接返回
+        if(this.$parent.chartInfo.Model===2){
+            this.$emit('handleEdit',{
+                ChartName:this.chartInfo.ChartName,
+                ClassifyId:this.chartInfo.ClassifyId,
+                type:'edit'
+            })
+            return
+        }
       }else if(this.$route.path==='/statisticFeatureChartEditor') {
         Source = sourceMap[entryType]
       }

+ 1 - 1
src/views/chartRelevance_manage/components/saveChartTobaseDia.vue

@@ -151,7 +151,7 @@ export default {
         Source = this.source;
         //多因子的参数和接口都不一样,这里直接返回
         if(this.$parent.chartInfo.Model===2){
-            this.$emit('handleSave',{ChartName: name,ClassifyId: classify,})
+            this.$emit('handleSave',{ChartName: name,ClassifyId: classify,type:this.saveScence})
             return
         }
         

+ 5 - 2
src/views/chartRelevance_manage/relevance/components/batchSelectFormula.vue

@@ -126,8 +126,11 @@ export default {
         } */
     },
     watch:{
-        factorData(newValue){
-            this.formulaForm = _.cloneDeep(newValue)
+        factorData:{
+            handler(newValue){
+                this.formulaForm = _.cloneDeep(newValue)
+            },
+            immediate:true
         },
     },
     data() {

+ 15 - 17
src/views/chartRelevance_manage/relevance/components/multipleIndForm.vue

@@ -5,9 +5,9 @@
             :label="$t('StatisticAnalysis.ChartRelevance.target_indicator')" 
             prop="IndTarget" class="select-target">
             <selectTarget 
-                :defaultId="chartInfoData.EdbInfoList?chartInfoData.EdbInfoList[1].EdbInfoId:''"
-                :defaultOpt="chartInfoData.EdbInfoList?[chartInfoData.EdbInfoList[1]]:[]" 
-                :defaultType="chartInfoData.EdbInfoList?chartInfoData.EdbInfoList[1].EdbInfoCategoryType:''"
+                :defaultId="chartInfoData.EdbInfoList?chartInfoData.EdbInfoList[0].EdbInfoId:''"
+                :defaultOpt="chartInfoData.EdbInfoList?[chartInfoData.EdbInfoList[0]]:[]" 
+                :defaultType="chartInfoData.EdbInfoList?chartInfoData.EdbInfoList[0].EdbInfoCategoryType:''"
                 @select="(target)=>handleSelectTarget('IndTarget',target)"
             />
         </el-form-item>
@@ -251,19 +251,6 @@ export default {
             return frequencySelectList()
         },
     },
-    watch:{
-        SeriesList(newval){
-            this.factorList = newval.map(i=>{
-                return {
-                    SeriesId:i.SeriesId,
-                    SeriesName:i.SeriesName,
-                    CalculateStep:this.formattingStep(i.CalculateStep,false),
-                    EdbMappings:i.EdbMappings,
-                    EdbInfoType:i.EdbInfoType,
-                }
-            })
-        }
-    },
     data(){
         return {
             factorList:[], //多因子系列列表
@@ -568,7 +555,18 @@ export default {
         deleteFactorIndicators(index){
             this.factorList.splice(index,1)
         }
-    }
+    },
+    mounted(){
+        this.factorList = this.SeriesList.map(i=>{
+            return {
+                SeriesId:i.SeriesId,
+                SeriesName:i.SeriesName,
+                CalculateStep:this.formattingStep(i.CalculateStep,false),
+                EdbMappings:i.EdbMappings||[],
+                EdbInfoType:i.EdbInfoType,
+            }
+        })
+    },
 };
 </script>
 

+ 23 - 11
src/views/chartRelevance_manage/relevance/relevanceChartEditorV2.vue

@@ -35,7 +35,7 @@
                         v-if="infoForm.Model===2"
                         ref="multipleIndForm"
                         :info-form="infoForm"
-                        :chart-info-data="{}"
+                        :chart-info-data="chartInfoData"
                         :SeriesList="SeriesList"
                         @selectTarget="handleSelectTarget"
                     ></multipleIndForm>
@@ -75,8 +75,8 @@
                             @saveEdb="(params)=>{handleSave(params);isSaveEdbToBase = true;}"
                         />
                         <!-- 图表数据来源 -->
-                        <div class="source">
-                            数据来源
+                        <div class="source" v-if="chartBatchData.SourcesFrom.text&&chartBatchData.SourcesFrom.isShow">
+                            {{ $t('Edb.Detail.source') }}:{{ chartBatchData.SourcesFrom.text }}
                         </div>
                     </div>
                     <!-- 滚动相关性1 -->
@@ -172,6 +172,7 @@
                         :isChartSetting="true"
                         :isChartAdd="isMultipleChartAdd"
                         height="300"
+                        @handleEdit="saveMultipleChart"
                         @saveChart="(params)=>{handleSave(params);isSaveChartToBase = true;}"
                         @saveEdb="(params)=>{handleSave(params);isSaveEdbToBase = true;}"
                         @chartSettingChange="handleChangeChartSetting"
@@ -451,6 +452,12 @@ export default {
             const res = await chartRelevanceApi.previewChartBatch({...this.infoForm});
             if(res.Ret !== 200) return
             this.chartBatchData = res.Data;
+            const SourcesFrom = this.chartBatchData.CorrelationData.ChartInfo.SourcesFrom
+            try{
+                this.chartBatchData.SourcesFrom = SourcesFrom?JSON.parse(SourcesFrom):baseSourcesFrom
+            }catch(e){
+                this.chartBatchData.SourcesFrom = baseSourcesFrom
+            }
         },
         //预览多因子矩阵 初始化 factorTableData
         previewMultipleTable(){
@@ -564,7 +571,7 @@ export default {
         //相关性矩阵-删除曲线
         deleteCurve(row){
             const index = this.multipleChartData.YDataList.findIndex(i=>i.EdbInfoId===row.EdbInfoId)
-            index&&this.multipleChartData.YDataList.splice(index,1)
+            index!==-1&&this.multipleChartData.YDataList.splice(index,1)
             row.isAdd = false
             if(!this.multipleChartData.YDataList.length){
                 this.showMultipleChart = false
@@ -579,7 +586,7 @@ export default {
              * 数据来源:新字段 SourcesFrom.text
              * 数据来源开关:新字段 SourcesFrom.isShow
              */
-            const SourcesFrom = _.cloneDeep(this.multipleChartData.SourcesFrom)
+            const SourcesFrom = this.infoForm.Model===1?_.cloneDeep(this.chartBatchData.SourcesFrom):_.cloneDeep(this.multipleChartData.SourcesFrom)
             this.settingData = {
                 SourcesFrom,
                 chartName:data.ChartName,
@@ -685,9 +692,9 @@ export default {
                 UniqueCode:this.$route.query.code
             }).then(res=>{
                 if(res.Ret!==200) return
-                const {ChartName,ChartInfoId,UniqueCode,ExtraConfig,SourcesFrom} = res.Data.ChartInfo
+                const {ChartName,ChartClassifyId,ChartInfoId,UniqueCode,ExtraConfig,SourcesFrom} = res.Data.ChartInfo
                 this.multipleChartData.ChartInfo = {
-                    ChartName,ChartInfoId,UniqueCode,Source:3
+                    ClassifyId:ChartClassifyId,ChartName,ChartInfoId,UniqueCode,Source:3
                 }
                 const {EdbInfoList,XEdbIdValue,YDataList,CorrelationChartInfo} = res.Data
                 const {LeadValue,LeadUnit} = CorrelationChartInfo
@@ -698,11 +705,12 @@ export default {
                 this.multipleChartData.EdbInfoList = EdbInfoList
                 this.multipleChartData.YDataList = YDataList
                 try{
-                    this.multipleChartData.SourcesFrom = JSON.parse(SourcesFrom)
+                    this.multipleChartData.SourcesFrom = SourcesFrom?JSON.parse(SourcesFrom):baseSourcesFrom
                 }catch(e){
                     this.multipleChartData.SourcesFrom = baseSourcesFrom
                 }
                 this.showMultipleChart = true
+                this.isMultipleChartAdd = true
 
             })
             //获取表单及矩阵详情
@@ -721,6 +729,9 @@ export default {
                         LeadValue,LeadUnit,CalculateValue,CalculateUnit
                     }
                 }
+                this.chartInfoData = {
+                    EdbInfoList:[BaseEdbInfo]
+                }
                 //因子列表
                 this.SeriesList = EdbSeries
                 //相关性矩阵
@@ -768,18 +779,19 @@ export default {
             }
             console.log('test',params)
             const {ChartInfoId} = this.multipleChartData.ChartInfo
+            const isEdit = ChartInfoId&&type!=='saveOther'
             //另存为/新增->add 更新->edit
-            const res = ChartInfoId
+            const res = isEdit
                 ?await chartRelevanceApi.editMultipleFactor({...params,ChartInfoId})
                 :await chartRelevanceApi.addMultipleFactor(params)
             //计算中...
             if(res.Ret!==200) return 
-            if(!ChartInfoId){
+            if(!isEdit){
                 this.isMultipleChartAdd = true
                 this.multipleChartData.ChartInfo.ChartInfoId = res.Data.ChartInfoId
                 this.multipleChartData.ChartInfo.UniqueCode = res.Data.UniqueCode
             }
-            this.$message.success(`${ChartInfoId?'更新':'保存'}成功`)
+            this.$message.success(`${isEdit?'更新':'保存'}成功`)
             //设置缩略图
             this.$refs[`chartCard`+2].setChartImage(2,ChartInfoId)
             this.isSaveChartToBase = false

+ 3 - 2
src/views/chartRelevance_manage/relevance/utils/config.js

@@ -45,6 +45,7 @@ export const baseChartInfo = {
         ChartName:'',//与单因子保持一致,用于保存/另存为回显
         ChartInfoId:'',//新增前为空
         UniqueCode:'',//新增前为空
+        ClassifyId:'',//新增前为空
     },
     EdbInfoList:[],//第一项为标的指标,其他项为添加的指标
     XEdbIdValue:[],//SourtedArray
@@ -62,7 +63,7 @@ export const baseChartInfo = {
     ],
     SourcesFrom:{
         isShow:true,//是否显示
-        text:'123',//内容
+        text:'',//内容
         color:'#333',
         fontSize:12,
     },//
@@ -98,7 +99,7 @@ const factorList = [
 
 //数据来源
 export const baseSourcesFrom = {
-    isShow:true,//是否显示
+    isShow:false,//是否显示
     text:'',//内容
     color:'#333',
     fontSize:12,