瀏覽代碼

switch branch

Karsa 1 年之前
父節點
當前提交
432854fb02

+ 17 - 8
src/api/modules/chartRelevanceApi.js

@@ -701,7 +701,7 @@ export const crossVarietyInterface = {
    * @returns 
    */
   classifyAdd: params => {
-    return http.post('/cross_variety/chart_classify/add',params)
+    return http.post('/cross_variety/classify/add',params)
   },
 
   /**
@@ -710,7 +710,7 @@ export const crossVarietyInterface = {
    * @returns 
    */
   classifyEdit: params => {
-    return http.post('/cross_variety/chart_classify/edit',params)
+    return http.post('/cross_variety/classify/edit',params)
   },
 
   /**
@@ -719,7 +719,7 @@ export const crossVarietyInterface = {
    * @returns 
    */
   classifyDelCheck: params => {
-    return http.post('/cross_variety/chart_classify/delete/check',params)
+    return http.post('/cross_variety/classify/delete/check',params)
   },
 
   /**
@@ -728,7 +728,7 @@ export const crossVarietyInterface = {
    * @returns 
    */
   classifyDel: params => {
-    return http.post('/cross_variety/chart_classify/delete',params)
+    return http.post('/cross_variety/classify/delete',params)
   },
 
   /**
@@ -740,7 +740,7 @@ export const crossVarietyInterface = {
    * @returns 
    */
   classifyMove: params => {
-    return http.post('/cross_variety/chart_classify/move',params)
+    return http.post('/cross_variety/classify/move',params)
   },
 
    /**
@@ -838,13 +838,22 @@ export const crossVarietyInterface = {
       return http.post('/cross_variety/chart_info/preview',params)
     },
 
+    /**
+     * 刷新图表
+     * @param {*} params ChartInfoId
+     * @returns 
+     */
+    refreshChart: params => {
+      return http.get('/cross_variety/chart_info/refresh',params)
+    },
+
     /**
      * 图表另存为
      * @param {*} params ChartInfoId ChartName
      * @returns 
      */
-    chartSaveOther: params => {
-      return http.post('/cross_variety/chart_info/copy')
+    saveOtherChart: params => {
+      return http.post('/cross_variety/chart_info/copy',params)
     },
     
     /**
@@ -895,7 +904,7 @@ export const crossVarietyInterface = {
      * 标签列表
      * @param {*} params 
      */
-     getTagList: params => {
+    getTagList: params => {
       return http.get('/cross_variety/tag/list',params)
     },
 

+ 22 - 10
src/components/chart/chartDetailHandlesWrap.vue

@@ -162,20 +162,32 @@ export default {
             enNameSetting:checkPermissionBtn(productPricePermission.goodsPrice_incomeLine_enNameSetting),
             del:checkPermissionBtn(productPricePermission.goodsPrice_incomeLine_del),
         }
-        //相关性分析
-        if(path==='/chartrelevance'){
-            return chartrelevanceMap[btn]
+
+         const crossVarietyBtnMap = {
+            share:checkPermissionBtn(statisticPermission.crossVariety_share),
+            addMyChart:checkPermissionBtn(statisticPermission.crossVariety_addMyChart),
+            refresh:checkPermissionBtn(statisticPermission.crossVariety_refresh),
+            otherSave:checkPermissionBtn(statisticPermission.crossVariety_otherSave),
+            edit:checkPermissionBtn(statisticPermission.crossVariety_edit),
+            copyOffice:checkPermissionBtn(statisticPermission.crossVariety_copyOffice),
+            copyWechat:checkPermissionBtn(statisticPermission.crossVariety_copyWechat),
+            enNameSetting:checkPermissionBtn(statisticPermission.crossVariety_enNameSetting),
+            del:checkPermissionBtn(statisticPermission.crossVariety_del),
         }
+        //相关性分析
+        if(path==='/chartrelevance') return chartrelevanceMap[btn]
+
         //拟合方程曲线
-        if(path==='/fittingEquationList'){
-            return fittingEquationMap[btn]
-        }
+        else if(path==='/fittingEquationList') return fittingEquationMap[btn]
+        
         //统计特性
-        if(path==='/statisticFeatureList'){
-            return statisticFeatureMap[btn]
-        }
+        else if(path==='/statisticFeatureList') return statisticFeatureMap[btn]
+
+        //跨品种分析
+        else if(path==='/crossVarietyChartList') return crossVarietyBtnMap[btn]
+
         //商品价格曲线
-        if(path==='/commordityChartBase'){
+        else if(path==='/commordityChartBase'){
             const {Source,ChartType} = this.chartInfo
             if(Source===2&&ChartType===8){//是商品价格曲线
                 return priceLineMap[btn]

+ 7 - 3
src/components/chart/chartListWrap.vue

@@ -67,15 +67,19 @@ export default {
             return checkPermissionBtn(statisticPermission.corrAnalysis_addMyChart)
         }
         //拟合方程曲线
-        if(path==='/fittingEquationList'){
+        else if(path==='/fittingEquationList'){
             return checkPermissionBtn(statisticPermission.fittingEq_addMyChart)
         }
         //统计特性
-        if(path==='/statisticFeatureList'){
+        else if(path==='/statisticFeatureList'){
             return checkPermissionBtn(statisticPermission.statisticFeature_addMyChart)
         }
+        //跨品种分析
+        else if(path==='/crossVarietyChartList') {
+          return checkPermissionBtn(statisticPermission.crossVariety_addMyChart)
+        }
         //商品价格曲线
-        if(path==='/commordityChartBase'){
+        else if(path==='/commordityChartBase'){
             const {Source,ChartType} = item
             if(Source===2&&ChartType===8){//是商品价格曲线
                 return checkPermissionBtn(productPricePermission.goodsPrice_priceLine_addMyChart)

+ 42 - 17
src/views/chartRelevance_manage/crossVarietyAnalysis/chartEditor.vue

@@ -24,7 +24,11 @@
         <section class="section-item">
           <div class="top">
             <label>选择品种</label>
-            <el-button type="text" @click="setDialogOpen('variety')">品种管理</el-button>
+            <el-button
+              v-permission="permissionBtn.statisticPermission.crossVariety_variety_edit"
+              type="text" 
+              @click="setDialogOpen('variety')"
+            >品种管理</el-button>
           </div>
           <div class="list" v-if="varietyOptions.length">
             <el-tag 
@@ -44,7 +48,11 @@
         <section class="section-item">
           <div class="top">
             <label>标签配置</label>
-            <el-button type="text" @click="setDialogOpen('tag')">标签管理</el-button>
+            <el-button
+              v-permission="permissionBtn.statisticPermission.crossVariety_tag_edit"
+              type="text" 
+              @click="setDialogOpen('tag')"
+            >标签管理</el-button>
           </div>
           <div class="list" v-if="tagOptions.length">
             <el-tag 
@@ -232,15 +240,7 @@ export default {
       chart_code: this.$route.query.code || '',
       isSlideLeft: false,
       chartInfo: {
-        ChartName:'图表标题',
         Source: 10,
-        CalculateValue: '',
-        CalculateUnit: '天',
-        TagX: '',
-        TagY: '',
-        DateConfigList: [
-          { DateType: 1,Num: 0 },
-        ],
         SysUserRealName: '还真'
       },
 
@@ -264,7 +264,30 @@ export default {
 
     /* 获取图表详情 */
     async getChartDetail() {
-      
+      if(!this.$route.query.id) return 
+
+      let res = await crossVarietyInterface.chartDetail({
+				ChartInfoId: Number(this.$route.query.id)
+			})
+
+      if(res.Ret !== 200) return
+
+      const { ChartInfo,DataResp,EdbInfoList } = res.Data;
+      let configSet = JSON.parse(ChartInfo.ExtraConfig);
+      this.checkedVarietys = configSet.VarietyList;
+      this.$refs.chartFormRef.initData(configSet);
+
+      this.chartInfo = ChartInfo;
+      this.tableData = EdbInfoList;
+      this.crossVarietyChartData = DataResp;
+      this.chartLimit = {
+        min: DataResp.YMinValue,
+        max: DataResp.YMaxValue ,
+        x_min: DataResp.XMinValue,
+        x_max: DataResp.XMaxValue,
+      }
+
+      this.setCrossVarietyChart()
     },
 
     checkParmas(type='') {
@@ -300,15 +323,17 @@ export default {
       }
       let res = await crossVarietyInterface.chartPreview(params)
 
-      if(res.Ret !== 200) return 
+      if(res.Ret !== 200) return
+
+      const { DataResp } = res.Data;
       
       this.chartLimit = {
-        min: Number(res.Data.YMinValue),
-        max: Number(res.Data.YMaxValue),
-        x_min: Number(res.Data.XMinValue),
-        x_max: Number(res.Data.XMaxValue)
+        min: Number(DataResp.YMinValue),
+        max: Number(DataResp.YMaxValue),
+        x_min: Number(DataResp.XMinValue),
+        x_max: Number(DataResp.XMaxValue)
       }
-      this.crossVarietyChartData = res.Data;
+      this.crossVarietyChartData = DataResp;
       this.setCrossVarietyChart()
     },
     

+ 25 - 3
src/views/chartRelevance_manage/crossVarietyAnalysis/components/chartFormSection.vue

@@ -59,9 +59,9 @@
           />
         </el-select>
       </el-form-item>
-      <el-form-item label="图表名称" prop="chartName">
+      <el-form-item label="图表名称" prop="ChartName">
         <el-input
-          v-model="form.chartName"
+          v-model="form.ChartName"
           style="width: 240px"
           placeholder="请输入图表名称"
           @change="changeParams"
@@ -126,7 +126,17 @@ export default {
   },
   data() {
     return {
-      form: {...this.chartInfo},
+      form: {
+        ChartName:'图表标题',
+        Source: 10,
+        CalculateValue: '',
+        CalculateUnit: '天',
+        TagX: '',
+        TagY: '',
+        DateConfigList: [
+          { DateType: 1,Num: 0 },
+        ],
+      },
       unitOpt: [
         { label: "年", val: "年" },
         { label: "季", val: "季" },
@@ -148,6 +158,18 @@ export default {
       })
     },
 
+    initData(data) {
+      const { ChartName,CalculateValue,CalculateUnit,TagX,TagY,DateConfigList } = data;
+      this.form = {
+        ChartName,
+        CalculateValue,
+        CalculateUnit,
+        TagX,
+        TagY,
+        DateConfigList
+      }
+    },
+
     changeParams() {
       // this.$emit('')
     },

+ 58 - 24
src/views/chartRelevance_manage/crossVarietyAnalysis/list.vue

@@ -11,13 +11,13 @@
 		<div class="data-sheet-main" id="box">
       <div class="main-left left" id="left" v-show="!isSlideLeft">
 				<div class="datasheet_top">
-						<el-button v-permission="permissionBtn.statisticPermission.statisticFeature_addChart"
+						<el-button v-permission="permissionBtn.statisticPermission.crossVariety_addChart"
 							 type="primary" @click="goAddChart">添加图表</el-button>
 				</div>
 
 				<div class="search-cont">
 					<el-checkbox v-model="isShowMe"  
-						v-permission="permissionBtn.statisticPermission.statisticFeature_onlyMine"
+						v-permission="permissionBtn.statisticPermission.crossVariety_onlyMine"
 						@change="() => { getTreeData();getPublicList() }">只看我的</el-checkbox>
 					<el-select
 						v-model="search_txt"
@@ -70,7 +70,7 @@
 								placeholder="请输入值"
 								class="label-input"
 								v-model="new_label"
-								v-if="data.isEdit&&permissionBtn.isShowBtn('statisticPermission','statisticFeature_classifyOpt_edit')"
+								v-if="data.isEdit&&permissionBtn.isShowBtn('statisticPermission','crossVariety_classifyOpt_edit')"
 								@blur="changeValue(data)"
 							/>
 							<span
@@ -97,7 +97,7 @@
 									alt=""
 									style="width: 15px; height: 14px; margin-right: 8px"
 									@click.stop="editNode(node, data)"
-									v-if="!data.ChartInfoId&&permissionBtn.isShowBtn('statisticPermission','statisticFeature_classifyOpt_edit')"
+									v-if="!data.ChartInfoId&&permissionBtn.isShowBtn('statisticPermission','crossVariety_classifyOpt_edit')"
 								/>
 								<img
 									slot="reference"
@@ -105,7 +105,7 @@
 									alt=""
 									style="width: 14px; height: 14px"
 									@click.stop="removeNode(node, data)"
-									v-if="!data.ChartInfoId&&permissionBtn.isShowBtn('statisticPermission','statisticFeature_classifyOpt_delete')"
+									v-if="!data.ChartInfoId&&permissionBtn.isShowBtn('statisticPermission','crossVariety_classifyOpt_delete')"
 								/>
 							</span>
 						</span>
@@ -164,6 +164,37 @@
 								/>
               </el-col>
           </el-row>
+
+					 <el-table
+						:data="tableData"
+						ref="tableRef"
+						highlight-current-row
+						border
+						>
+							<el-table-column
+								v-for="item in tableColums"
+								:key="item.label"
+								:label="item.label"
+								:width="item.widthsty"
+								:min-width="item.minwidthsty"
+								align="center"
+							>
+								<template slot-scope="scope">
+									<span>{{ scope.row[item.key] }}</span>
+								</template>
+							</el-table-column>
+							<el-table-column label="操作" key="Copy" align="center" width="140">
+								<template slot-scope="scope">
+									<span class="editsty" @click="copyCode(scope.row)">
+									<i class="el-icon-document-copy" />&nbsp;复制数据</span
+								><br />
+								<span class="editsty" @click="viewTarget(scope.row)">查看数据</span>
+							</template>
+						</el-table-column>
+						<div slot="empty">
+							<tableNoData text="暂无指标" size="mini"/>
+						</div>
+					</el-table>
 				</div>
 				<!-- 列表 -->
 				<chartListWrap
@@ -200,7 +231,7 @@
     <SaveChartOther 
       :show.sync="isShowSaveOther" 
       fromType="chartsetting"
-			source="statistic_feature"
+			source="cross_variety"
       :data="chartInfo"
       @ensure="getTreeData"
     />
@@ -466,14 +497,19 @@ export default {
 			}).then(res => {
 				if(res.Ret !== 200) return
 
-				const { ChartInfo,DataResp } = res.Data;
+				const { ChartInfo,DataResp,EdbInfoList } = res.Data;
+
 				this.chartInfo = ChartInfo;
-				// if(ChartInfo.Source===9) {
-        //   this.statisticFrequencyData = DataResp;
-        //   this.setStatisticFrequency();
-				// }else {
-				// 	this.setDefaultChart([DataResp])
-				// }
+				this.tableData = EdbInfoList;
+				this.crossVarietyChartData = DataResp;
+				this.chartLimit = {
+					min: DataResp.YMinValue,
+					max: DataResp.YMaxValue ,
+					x_min: DataResp.XMinValue,
+					x_max: DataResp.XMaxValue,
+				}
+
+				this.setCrossVarietyChart()
 			})
 		},
 
@@ -500,17 +536,15 @@ export default {
         spinner: 'el-icon-loading',
         background: 'rgba(255, 255, 255, 0.8)',
       });
-      crossVarietyInterface
-        .refreshChart({
+      crossVarietyInterface.refreshChart({
           ChartInfoId: this.chartInfo.ChartInfoId,
-        })
-        .then((res) => {
-          this.refreshLoading.close();
-          if (res.Ret === 200) {
-            this.getDetailHandle();
-            this.$message.success(res.Msg);
-          }
-        });
+      }).then((res) => {
+				this.refreshLoading.close();
+				if (res.Ret === 200) {
+					this.getDetailHandle();
+					this.$message.success(res.Msg);
+				}
+			});
 		},
 
 		/* 编辑图表 */
@@ -557,7 +591,7 @@ export default {
     },500),
     
 		handleDblClick(data){
-			if(!this.permissionBtn.isShowBtn('statisticPermission','statisticFeature_classifyOpt_edit')) return 
+			if(!this.permissionBtn.isShowBtn('statisticPermission','crossVariety_classifyOpt_edit')) return 
 			this.editNodeLabel(data)
 		}
 	},

+ 1 - 1
src/views/chartRelevance_manage/css/index.scss

@@ -133,7 +133,7 @@ $normal-font: 14px;
           margin-bottom: 20px;
 
           .chart-show-cont {
-            padding: 0 160px 0 120px;
+            padding: 0 160px 0 100px;
             position: relative;
             min-height: 400px;
             .chart-title {

+ 7 - 4
src/views/chartRelevance_manage/mixins/classifyMixin.js

@@ -1,5 +1,5 @@
 import chartRelevanceApi from '@/api/modules/chartRelevanceApi.js';
-import { fittingEquationInterface,statisticFeatureInterface } from '@/api/modules/chartRelevanceApi';
+import { fittingEquationInterface,statisticFeatureInterface,crossVarietyInterface } from '@/api/modules/chartRelevanceApi';
 import { dataBaseInterface } from '@/api/api.js';
 
 export default {
@@ -161,7 +161,10 @@ export default {
                 ChartClassifyName: this.new_label
               })
       }else if(this.$route.path === '/crossVarietyChartList') {
-
+        res = await crossVarietyInterface.classifyEdit({
+          ChartClassifyId: data.ChartClassifyId,
+          ChartClassifyName: this.new_label
+        })
       }
 
       if(res.Ret !== 200) return
@@ -219,7 +222,7 @@ export default {
       }else if(this.$route.path === '/statisticFeatureList') {
         res=await statisticFeatureInterface.classifyMove(params)
       }else if(this.$route.path === '/crossVarietyChartList') {
-
+        res=await crossVarietyInterface.classifyMove(params)
       }
 
       if (res.Ret !== 200) return;
@@ -271,7 +274,7 @@ export default {
       }else if(this.$route.path === '/statisticFeatureList') {
         res=await statisticFeatureInterface.chartMove(params)
       }else if(this.$route.path === '/crossVarietyChartList') {
-        
+        res=await crossVarietyInterface.chartMove(params)
       }
       
       if (res.Ret !== 200) return;

+ 7 - 1
src/views/dataEntry_manage/components/SaveChartOther.vue

@@ -53,7 +53,7 @@
 import { dataBaseInterface } from '@/api/api.js';
 import futuresInterface from '@/api/modules/futuresBaseApi';
 import chartRelevanceApi from '@/api/modules/chartRelevanceApi.js';
-import { fittingEquationInterface,statisticFeatureInterface } from '@/api/modules/chartRelevanceApi';
+import { fittingEquationInterface,statisticFeatureInterface,crossVarietyInterface } from '@/api/modules/chartRelevanceApi';
 export default {
   props: {
     show: Boolean,
@@ -114,6 +114,8 @@ export default {
         res=await fittingEquationInterface.classifyList()
       }else if([7,8,9,'statistic_feature'].includes(this.source)) { //标准差 百分位 频率图
         res=await statisticFeatureInterface.classifyList()
+      }else if([10,'cross_variety'].includes(this.source)) { //跨品种分析
+        res = await crossVarietyInterface.classifyList();
       }else{
         res=await dataBaseInterface.chartClassify();
       }
@@ -128,6 +130,8 @@ export default {
         this.filterNodes(res.Data.AllNodes,1)
       }else if([7,8,9,'statistic_feature'].includes(this.source)) { //标准差 百分位 频率图
         this.filterNodes(res.Data.AllNodes,1)
+      }else if([10,'cross_variety'].includes(this.source)) { //
+        this.filterNodes(res.Data.AllNodes,1)
       }else{
         this.filterNodes(res.Data.AllNodes,3)
       }
@@ -163,6 +167,8 @@ export default {
         res=await fittingEquationInterface.saveOtherChart(params)
       }else if([7,8,9,'statistic_feature'].includes(this.source)) { //标准差 百分位 频率图
         res=await statisticFeatureInterface.saveOtherChart(params)
+      }else if([10,'cross_variety'].includes(this.source)) { //跨品种分析
+        res = await crossVarietyInterface.saveOtherChart(params);
       }else{
         res=await dataBaseInterface.saveChartOther(params)
       }

+ 30 - 24
src/views/dataEntry_manage/mixins/chartPublic.js

@@ -1517,7 +1517,7 @@ export const chartSetMixin = {
       this.rightIndex = -1;
       this.rightTwoIndex = -1;
       
-      const { DataList,XName,XNameEn,XUnitName,XUnitNameEn,YName,YNameEn,YUnitName,YUnitNameEn } = this.sectionScatterData;
+      const { DataList,XName,XNameEn,YName,YNameEn } = this.sectionScatterData;
       const { min,max,x_min,x_max }  = this.chartLimit;
 
       //y轴
@@ -1817,47 +1817,53 @@ export const chartSetMixin = {
           zIndex:1
         }
         item.CoordinatePointData.forEach(_ => {
-          series_item.data.push({
-            x: _.X,
-            y: _.Y,
-          })
+          series_item.data.push({x: _.X,y: _.Y,})
         })
         series.push(series_item);
       })
 
+      let edbInfoList = this.tableData;
       let tooltip = {
         formatter: function() {
-          console.log(this)
           let series_obj = DataList.find(_ => _.Name === this.series.name);
-          // let ponit_obj = series_obj.CoordinatePointData.find(_ => _.X ===this.x && _.Y===this.y);
+          let ponit_obj = series_obj.CoordinatePointData.find(_ => _.X ===this.x && _.Y===this.y);
+          
+          let xEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.XEdbInfoId);
+          let yEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.YEdbInfoId);
 
           let str=`<b>${ this.series.name }</b>`;
-          str += `<br><span style="color:${this.color}">\u25CF</span>${ponit_obj.XName}: ${this.x} ${ponit_obj.XDate}<br>`;
-          str += `<span style="color:${this.color}">\u25CF</span>${ponit_obj.YName}: ${this.y} ${ponit_obj.YDate}`;
+          str += `<br><span style="color:${this.color}">\u25CF</span>${xEdbInfo.EdbName}: ${this.x} ${ponit_obj.XDate}<br>`;
+          str += `<span style="color:${this.color}">\u25CF</span>${yEdbInfo.EdbName}: ${this.y} ${ponit_obj.YDate}`;
 
-          return ''
+          return str
         },
         formatterCh: function() {
-          // let series_obj = DataList.find(_ => _.Name === this.series.name);
-          // let ponit_obj = series_obj.EdbInfoList.find(_ => _.XValue ===this.x && _.YValue===this.y);
+          let series_obj = DataList.find(_ => _.Name === this.series.name);
+          let ponit_obj = series_obj.CoordinatePointData.find(_ => _.X ===this.x && _.Y===this.y);
+          
+          let xEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.XEdbInfoId);
+          let yEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.YEdbInfoId);
 
-          // let str=`<b>${ ponit_obj.Name }</b>`;
-          // str += `<br><span style="color:${this.color}">\u25CF</span>${ponit_obj.XName}: ${this.x} ${ponit_obj.XDate}<br>`;
-          // str += `<span style="color:${this.color}">\u25CF</span>${ponit_obj.YName}: ${this.y} ${ponit_obj.YDate}`;
+          let str=`<b>${ this.series.name }</b>`;
+          str += `<br><span style="color:${this.color}">\u25CF</span>${xEdbInfo.EdbName}: ${this.x} ${ponit_obj.XDate}<br>`;
+          str += `<span style="color:${this.color}">\u25CF</span>${yEdbInfo.EdbName}: ${this.y} ${ponit_obj.YDate}`;
 
           return str
           
         },
-        // formatterEn: function() {
-        //   let series_obj = DataList.find(_ => _.NameEn === this.series.name);
-        //   let ponit_obj = series_obj.EdbInfoList.find(_ => _.XValue ===this.x && _.YValue===this.y);
+        formatterEn: function() {
+          let series_obj = DataList.find(_ => _.NameEn === this.series.name);
+          let ponit_obj = series_obj.CoordinatePointData.find(_ => _.X ===this.x && _.Y===this.y);
+          
+          let xEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.XEdbInfoId);
+          let yEdbInfo = edbInfoList.find(_ => _.EdbInfoId===ponit_obj.YEdbInfoId);
 
-        //   let str=`<b>${ ponit_obj.NameEn }</b>`;
-        //   str += `<br><span style="color:${this.color}">\u25CF</span>${ponit_obj.XNameEn}: ${this.x} ${ponit_obj.XDate}<br>`;
-        //   str += `<span style="color:${this.color}">\u25CF</span>${ponit_obj.YNameEn}: ${this.y} ${ponit_obj.YDate}`;
+          let str=`<b>${ this.series.name }</b>`;
+          str += `<br><span style="color:${this.color}">\u25CF</span>${xEdbInfo.EdbNameEn}: ${this.x} ${ponit_obj.XDate}<br>`;
+          str += `<span style="color:${this.color}">\u25CF</span>${yEdbInfo.EdbNameEn}: ${this.y} ${ponit_obj.YDate}`;
 
-        //   return str
-        // }
+          return str
+        }
       }
 
       this.options = {
@@ -1867,7 +1873,7 @@ export const chartSetMixin = {
         series,
         yAxis: [yAxis],
         xAxis,
-        // tooltip
+        tooltip
       }
       this.currentLang=='en' && this.changeOptions()
 

+ 15 - 2
src/views/datasheet_manage/components/sheetClassifyDia.vue

@@ -40,7 +40,7 @@
 import * as sheetInterface from '@/api/modules/sheetApi.js';
 import futuresInterface from '@/api/modules/futuresBaseApi';
 import chartRelevanceApi from '@/api/modules/chartRelevanceApi.js';
-import { fittingEquationInterface,statisticFeatureInterface } from '@/api/modules/chartRelevanceApi';
+import { fittingEquationInterface,statisticFeatureInterface,crossVarietyInterface } from '@/api/modules/chartRelevanceApi';
 export default {
 	props: {
 		isOpenDialog: {
@@ -88,7 +88,8 @@ export default {
 				'/commordityChartBase': this.commodityClassifyApi,
 				'/chartrelevance':this.relevanceClassifyApi,
 				'/fittingEquationList': this.fittingEquationClassifyApi,
-				'/statisticFeatureList': this.statisticFeatureClassifyApi
+				'/statisticFeatureList': this.statisticFeatureClassifyApi,
+				'/crossVarietyChartList': this.crossVarietyClassifyApi
 			}
 			handleMap[this.$route.path] && handleMap[this.$route.path](classify_name,classify_id)
 		},
@@ -153,6 +154,18 @@ export default {
 			this.$emit('successCallback')
 		},
 
+		/* 跨品种分析 */
+		async crossVarietyClassifyApi(classify_name,classify_id){
+			const { Ret,Msg } = !classify_id
+				? await crossVarietyInterface.classifyAdd({ ChartClassifyName:classify_name })
+				: await crossVarietyInterface.classifyEdit({ ChartClassifyName:classify_name, ChartClassifyId:classify_id  })
+				
+			if( Ret !== 200) return
+			this.$message.success(Msg);
+			this.cancelHandle();
+			this.$emit('successCallback')
+		},
+
 		/* 取消 */
 		cancelHandle() {
       this.formData = {}