jwyu hai 1 ano
pai
achega
a0a5af627a
Modificáronse 1 ficheiros con 88 adicións e 2 borrados
  1. 88 2
      src/views/futures_manage/chartEditor.vue

+ 88 - 2
src/views/futures_manage/chartEditor.vue

@@ -111,9 +111,42 @@
 							:placeholder="$t('ToolBox.CommodityPriceChart.please_select_classify')"
 							:placeholder="$t('ToolBox.CommodityPriceChart.please_select_classify')"
 						/>
 						/>
 					</el-form-item>
 					</el-form-item>
+					<el-form-item label="日期基准" prop="basisEdb">
+						<el-select placeholder="请选择日期基准" v-model="chartInfo.basisEdb" style="width: 90%">
+							<el-option 
+								v-for="item in tableData" 
+								:key="item.EdbInfoId"
+								:label="item.EdbName"
+								:value="item.EdbInfoId"
+							/>
+						</el-select>
+						<el-tooltip class="item" effect="dark" content="选择一个现货指标为日期基准,添加的日期规则以该指标日期进行计算" placement="top">
+							<i class="el-icon-info"></i>
+						</el-tooltip>
+					</el-form-item>
 				</el-form>
 				</el-form>
 
 
 				<div class="targetset-cont">
 				<div class="targetset-cont">
+					<!-- 选择的指标模块 -->
+					<div class="basis-edb-wrap" v-if="tableData.length>0">
+						<div class="label-btn">横坐标设置</div>
+						<div 
+							class="item-basis-edb" 
+							v-for="item,index in tableData" 
+							:key="item.EdbInfoId"
+						>
+							<span class="name">{{item.EdbName}}</span>
+							<div class="opt-box">
+								<img 
+									class="icon" 
+									:src="item.isHide?require('@/assets/img/icons/eyes-hide-active.png') : require('@/assets/img/icons/eyes-show-active.png')" 
+									alt=""
+									@click="handleChangeBasisEdbHide(item)"
+								>
+								<img class="icon" src="~@/assets/img/icons/delete-red.png" alt="" @click="handleBasisEdbDel(index,item)">
+							</div>
+						</div>
+					</div>
 					
 					
 					<!-- 价格曲线日期配置 -->
 					<!-- 价格曲线日期配置 -->
 					<bar-option
 					<bar-option
@@ -246,6 +279,9 @@ export default {
 				classify:[
 				classify:[
 					{ required: true, message: this.$t('ToolBox.CommodityPriceChart.tips_msg03')||'图表分类不能为空', trigger: 'blur' },
 					{ required: true, message: this.$t('ToolBox.CommodityPriceChart.tips_msg03')||'图表分类不能为空', trigger: 'blur' },
 				],
 				],
+				basisEdb:[
+					{ required: true, message: '日期基准不能为空', trigger: 'blur' },
+				]
 			}
 			}
 		}
 		}
 	},
 	},
@@ -262,6 +298,7 @@ export default {
 				futures_id: '',
 				futures_id: '',
 				classify: '',
 				classify: '',
 				Source: this.$route.query.scence==='profit' ? 5 : 2,
 				Source: this.$route.query.scence==='profit' ? 5 : 2,
+				basisEdb:'',//选择的基准指标
 			},
 			},
 
 
 			classifyOptions: [],//分类option
 			classifyOptions: [],//分类option
@@ -326,14 +363,35 @@ export default {
     /* 选择指标 获取指标详情并push到表格中*/
     /* 选择指标 获取指标详情并push到表格中*/
 		selectTarget(edb) {
 		selectTarget(edb) {
 			if(!edb){
 			if(!edb){
-				this.tableData = [];
+				// this.tableData = [];
 				return
 				return
 			} 
 			} 
 
 
-			this.tableData = [edb];
+			this.tableData.push({...edb,isHide:false});
+			if(!this.chartInfo.basisEdb){
+				this.chartInfo.basisEdb=this.tableData[0].EdbInfoId
+			}
 			this.commodityChartData.length && this.chartInfo.futures_id && this.$refs.BarOptRef.getBarData();
 			this.commodityChartData.length && this.chartInfo.futures_id && this.$refs.BarOptRef.getBarData();
 		},
 		},
 
 
+		// 选择的指标显示隐藏状态改变
+		handleChangeBasisEdbHide(item){
+			item.isHide=!item.isHide
+		},
+		// 删除选择的指标
+		async handleBasisEdbDel(index,item){
+			if(this.tableData.length===1){
+
+				await this.$confirm('现货指标全部删除后,图表会被清楚,确认操作吗?','提示',{
+					type:'warning'
+				})
+			}
+			if(this.chartInfo.basisEdb===item.EdbInfoId){
+				this.chartInfo.basisEdb=''
+			}
+			this.tableData.splice(index,1)
+		},
+
 		/* 选择期货 */
 		/* 选择期货 */
 		changeFuturesHandle(val) {
 		changeFuturesHandle(val) {
 			if(!val) return
 			if(!val) return
@@ -753,6 +811,34 @@ export default {
 					display: flex;
 					display: flex;
 					margin-bottom: 20px;
 					margin-bottom: 20px;
 				}
 				}
+
+				.basis-edb-wrap{
+					.label-btn{
+						cursor: pointer;
+						color: #409eff;
+						margin-bottom: 10px;
+					}
+					.item-basis-edb{
+						background-color: #F0F2F5;
+						border: 1px solid #DCDFE6;
+						padding: 10px 5px;
+						margin-bottom: 5px;
+						display: flex;
+						.name{
+							flex: 1;
+						}
+						.opt-box{
+							display: flex;
+							align-items: center;
+							gap: 0 5px;
+							.icon{
+								width: 16px;
+								height: 16px;
+								cursor: pointer;
+							}
+						}
+					}
+				}
 			}
 			}
 		}
 		}
 		.move-btn {
 		.move-btn {