lizaixun пре 4 година
родитељ
комит
5089f34392
5 измењених фајлова са 832 додато и 30 уклоњено
  1. 1 0
      src/App.vue
  2. 1 1
      src/components/HelloWorld.vue
  3. 796 0
      src/components/gradeEvaluation/GradeEvaluation.vue
  4. 1 0
      src/http.js
  5. 33 29
      src/router/index.js

+ 1 - 0
src/App.vue

@@ -45,6 +45,7 @@
           <el-submenu index="8">
             <template slot="title">报表管理</template>
           </el-submenu>
+		  <el-menu-item index="/gradeEvaluation">等级评估</el-menu-item>
         </el-menu>
       </el-header>
       <el-main>

+ 1 - 1
src/components/HelloWorld.vue

@@ -16,7 +16,7 @@ export default {
 <!-- Add "scoped" attribute to limit CSS to this component only -->
 <style scoped lang="scss">
 h3 {
-  margin: 42px 0 0;
+  margin: 40px 0 0;
 }
 ul {
   list-style-type: none;

+ 796 - 0
src/components/gradeEvaluation/GradeEvaluation.vue

@@ -0,0 +1,796 @@
+<template>
+	<el-container style="height: 790px; border: 1px solid #eee">
+		<el-aside width="15%" style="background-color: white;border: 5px solid #EEEEEE;">
+			<el-menu :default-openeds="['1', '3']">
+				<el-submenu index="1">
+					<template slot="title"><i class="el-icon-message"></i>等级评估</template>
+					<el-menu-item index="1-1">风机等级评估</el-menu-item>
+				</el-submenu>
+			</el-menu>
+		</el-aside>
+
+		<el-container>
+			<el-header style="text-align: left; font-size: 12px;height: 150px;">
+				<el-tabs v-model="activeName" @tab-click="handleClick" type="border-card" style="width: 100%;margin: 0.5%;height: 130px;">
+					<el-tab-pane label="风机日信息等级评估管理" name="first" :key="'first'">
+						<div style="float: left;">查询条件</div>
+						<div style="margin-left: 5%;width: 20%;float: left;">
+							<span>风场</span>
+							<el-select v-model="value" placeholder="请选择" style="margin-left: 5%;" @change="currentSel">
+								<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+								</el-option>
+							</el-select>
+						</div>
+						<div class="block" style="width:20%;float: left;">
+							<span>日期</span>
+							<el-date-picker v-model="value1" type="date" placeholder="选择日期" style="margin-left: 5%;">
+							</el-date-picker>
+						</div>
+						<div style="width: 2%; float:left;margin-left: 10%;">
+							<el-button type="primary" @click="dialogTableVisibleOpen()">对比</el-button>
+						</div>
+						<el-dialog class="el-dialog_body" width="60%" title="日信息对比" :visible.sync="dialogTableVisible" append-to-body>
+							<div class="margin">
+								<div class="dialogLeftData">
+									<el-table
+									    :data="sortInOrderTop"
+									    height="97"
+									    border
+										:header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'0px' }"
+										:row-style="{height:'10px'}"
+									    style="width: 100%;font-size: 10px;">
+									    <el-table-column
+									      prop="lhpj"
+									      :label=fanNumber1
+									      width="276">
+									    </el-table-column>
+									    <el-table-column
+									      prop="zhpm"
+									      :label=fanNumber2
+									      width="276">
+									    </el-table-column>
+									  </el-table>
+									<div id="leiDaTu" class="echart"></div>
+								</div>
+
+								<div class="dialogRightData">
+									<el-table :data="sortInOrder" height="618"
+									:row-style="{ height: '10px' }"
+									border :header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'1px' }" 
+									 style="width: 100%;font-size: 10px;">
+										<el-table-column label="基础指标">
+											<el-table-column prop="lx" label="类型" width="85">
+											</el-table-column>
+											<el-table-column prop="index" label="指标" width="115">
+											</el-table-column>
+											<el-table-column prop="data1" :label=fan1 width="100">
+											</el-table-column>
+											<el-table-column prop="data2" :label=fan2 width="100">
+											</el-table-column>
+											<el-table-column prop="address" label="排名" width="75">
+												
+											</el-table-column>
+											<el-table-column prop="address" label="评分" width="75">
+											</el-table-column>
+										</el-table-column>
+									</el-table>
+								</div>
+							</div>
+						</el-dialog>
+					</el-tab-pane>
+					<el-tab-pane label="风机月信息等级评估管理" name="second" :key="'second'">
+						<div style="float: left;">查询条件</div>
+						<div style="margin-left: 5%;width: 20%;float: left;">
+							<span>风场</span>
+							<el-select v-model="value" placeholder="请选择" style="margin-left: 5%;" @change="currentSel">
+								<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+								</el-option>
+							</el-select>
+						</div>
+						<div class="block" style="width:20%;float: left;">
+							<span>日期</span>
+							<el-date-picker v-model="value1" type="date" placeholder="选择日期" style="margin-left: 5%;">
+							</el-date-picker>
+						</div>
+						<div style="width: 2%; float:left;margin-left: 10%;">
+							<el-button type="primary" @click="dialogTableVisibleOpenMonth()">对比</el-button>
+						</div>
+						<el-dialog class="el-dialog_body" width="60%" title="月信息对比" :visible.sync="dialogTableVisibleMonth"
+						 append-to-body>
+							<div class="margin">
+								<div class="dialogLeftData">
+									<el-table
+									    :data="sortInOrderTop"
+									    height="97"
+									    border
+										:row-style="{ height: '10px' }"
+										:header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'0px' }"
+									    style="width: 100%;font-size: 10px;">
+									    <el-table-column
+									      prop="lhpj"
+									      :label=fanNumber1
+									      width="276">
+									    </el-table-column>
+									    <el-table-column
+									      prop="zhpm"
+									      :label=fanNumber2
+									      width="276">
+									    </el-table-column>
+									  </el-table>
+									<div id="leiDaTu" class="echart"></div>
+								</div>
+								
+								<div class="dialogRightData">
+									<el-table :data="sortInOrder" :row-style="{ height: '10px' }" height="618" border :header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'1px' }"
+									 style="width: 100%;font-size: 10px;">
+										<el-table-column label="基础指标">
+											<el-table-column prop="lx" label="类型" width="85">
+											</el-table-column>
+											<el-table-column prop="index" label="指标" width="115">
+											</el-table-column>
+											<el-table-column prop="data1" :label=fan1 width="100">
+											</el-table-column>
+											<el-table-column prop="data2" :label=fan2 width="100">
+											</el-table-column>
+											<el-table-column prop="address" label="排名" width="75">
+											</el-table-column>
+											<el-table-column prop="address" label="评分" width="75">
+											</el-table-column>
+										</el-table-column>
+									</el-table>
+								</div>
+							</div>
+						</el-dialog>
+					</el-tab-pane>
+					<el-tab-pane label="风机年信息等级评估管理" name="cord" :key="'cord'">
+						<div style="float: left;">查询条件</div>
+						<div style="margin-left: 5%;width: 20%;float: left;">
+							<span>风场</span>
+							<el-select v-model="value" placeholder="请选择" style="margin-left: 5%;" @change="currentSel">
+								<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+								</el-option>
+							</el-select>
+						</div>
+						<div class="block" style="width:20%;float: left;">
+							<span>日期</span>
+							<el-date-picker v-model="value1" type="date" placeholder="选择日期" style="margin-left: 5%;">
+							</el-date-picker>
+						</div>
+						<div style="width: 2%; float:left;margin-left: 10%;">
+							<el-button type="primary" @click="dialogTableVisibleOpenYear()">对比</el-button>
+						</div>
+						<el-dialog class="el-dialog_body" width="60%" title="年信息对比" :visible.sync="dialogTableVisibleYear" append-to-body>
+							<div class="margin">
+								<div class="dialogLeftData">
+									<el-table
+									    :data="sortInOrderTop"
+									    height="97"
+									    border
+										:row-style="{ height: '10px' }"
+										:header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'0px' }"
+									    style="width: 100%;font-size: 10px;">
+									    <el-table-column
+									      prop="lhpj"
+									      :label=fanNumber1
+									      width="276">
+									    </el-table-column>
+									    <el-table-column
+									      prop="zhpm"
+									      :label=fanNumber2
+									      width="276">
+									    </el-table-column>
+									  </el-table>
+									<div id="leiDaTu" class="echart"></div>
+								</div>
+								
+								<div class="dialogRightData">
+									<el-table :data="sortInOrder" :row-style="{ height: '10px' }" height="618" border :header-cell-style="headStyle" :cell-style="{ textAlign: 'center',padding:'1px' }"
+									 style="width: 100%;font-size: 10px;">
+										<el-table-column label="基础指标">
+											<el-table-column prop="lx" label="类型" width="85">
+											</el-table-column>
+											<el-table-column prop="index" label="指标" width="115">
+											</el-table-column>
+											<el-table-column prop="data1" :label=fan1 width="100">
+											</el-table-column>
+											<el-table-column prop="data2" :label=fan2 width="100">
+											</el-table-column>
+											<el-table-column prop="address" label="排名" width="75">
+											</el-table-column>
+											<el-table-column prop="address" label="评分" width="75">
+											</el-table-column>
+										</el-table-column>
+									</el-table>
+								</div>
+							</div>
+						</el-dialog>
+					</el-tab-pane>
+				</el-tabs>
+			</el-header>
+
+			<el-main v-if="dailyInformation == true">
+				<el-table :data="gridData" height="600" @selection-change="handleSelectionChange" :header-cell-style="headStyle"
+				 :cell-style="{ textAlign: 'center' }" style="font-size: 10px;">
+					<el-table-column label="等级评定日信息查看">
+						<el-table-column type="selection" width="40">
+						</el-table-column>
+						<el-table-column prop="windturbineid" label="风机编号" width="85">
+						</el-table-column>
+						<el-table-column prop="level" label="等级" width="50">
+						</el-table-column>
+						<el-table-column prop="rank" label="综合排名" width="70">
+						</el-table-column>
+						<el-table-column prop="dayfdl" label="发电量" width="60">
+						</el-table-column>
+						<el-table-column prop="dayllfdl" label="理论发电量" width="85">
+						</el-table-column>
+						<el-table-column prop="dayfs" label="平均风速" width="70">
+						</el-table-column>
+						<el-table-column prop="daygl" label="平均功率" width="70">
+						</el-table-column>
+						<el-table-column prop="daygzssdl" label="故障损失" width="70">
+						</el-table-column>
+						<el-table-column prop="dayxdssdl" label="限电损失" width="70">
+						</el-table-column>
+						<el-table-column prop="daywhssdl" label="维护损失" width="70">
+						</el-table-column>
+						<el-table-column prop="dayxnssdl" label="性能损失" width="70">
+						</el-table-column>
+						<el-table-column prop="dayslssdl" label="日受累损失电量">
+						</el-table-column>
+						<el-table-column prop="daylyxs" label="利用小时数" width="85">
+						</el-table-column>
+						<el-table-column prop="daynhyd" label="拟合优度" width="70">
+						</el-table-column>
+						<el-table-column prop="daysbklyl" label="设备可利用率" width="95">
+						</el-table-column>
+						<el-table-column prop="daydxkyxs" label="等效可用系数" width="95">
+						</el-table-column>
+						<el-table-column prop="dayyxfss" label="有效风时数" width="85">
+						</el-table-column>
+						<el-table-column prop="dayxfqr" label="平均切入风速" width="95">
+						</el-table-column>
+						<el-table-column prop="dayjfpl" label="静风频率" width="70">
+						</el-table-column>
+						<el-table-column prop="dayglyzxxs" label="功率一致性系数" width="110">
+						</el-table-column>
+					</el-table-column>
+				</el-table>
+				<div style="text-align: center;">
+					<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage2"
+					 :page-size="pagesize" layout="prev, pager, next" :total="1000">
+					</el-pagination>
+				</div>
+			</el-main>
+			<el-main v-if="monthlyInformation == true">
+				<el-table :data="gridData" height="600" @selection-change="handleSelectionChange" :header-cell-style="headStyle"
+				 :cell-style="{ textAlign: 'center' }" style="font-size: 10px;">
+					<el-table-column label="等级评定日信息查看">
+						<el-table-column type="selection" width="40">
+						</el-table-column>
+						<el-table-column prop="windturbineid" label="风机编号" width="85">
+						</el-table-column>
+						<el-table-column prop="level" label="等级" width="50">
+						</el-table-column>
+						<el-table-column prop="rank" label="综合排名" width="70">
+						</el-table-column>
+						<el-table-column prop="monthfdl" label="发电量" width="60">
+						</el-table-column>
+						<el-table-column prop="monthllfdl" label="理论发电量" width="85">
+						</el-table-column>
+						<el-table-column prop="monthfs" label="平均风速" width="70">
+						</el-table-column>
+						<el-table-column prop="monthgl" label="平均功率" width="70">
+						</el-table-column>
+						<el-table-column prop="monthgzssdl" label="故障损失" width="70">
+						</el-table-column>
+						<el-table-column prop="monthxdssdl" label="限电损失" width="70">
+						</el-table-column>
+						<el-table-column prop="monthwhssdl" label="维护损失" width="70">
+						</el-table-column>
+						<el-table-column prop="monthxnssdl" label="性能损失" width="70">
+						</el-table-column>
+						<el-table-column prop="monthslssdl" label="日受累损失电量">
+						</el-table-column>
+						<el-table-column prop="monthlyxs" label="利用小时数" width="85">
+						</el-table-column>
+						<el-table-column prop="monthnhyd" label="拟合优度" width="70">
+						</el-table-column>
+						<el-table-column prop="monthsbklyl" label="设备可利用率" width="95">
+						</el-table-column>
+						<el-table-column prop="monthdxkyxs" label="等效可用系数" width="95">
+						</el-table-column>
+						<el-table-column prop="monthyxfss" label="有效风时数" width="85">
+						</el-table-column>
+						<el-table-column prop="monthxfqr" label="平均切入风速" width="95">
+						</el-table-column>
+						<el-table-column prop="monthjfpl" label="静风频率" width="70">
+						</el-table-column>
+						<el-table-column prop="monthglyzxxs" label="功率一致性系数" width="110">
+						</el-table-column>
+					</el-table-column>
+				</el-table>
+				<div style="text-align: center;">
+					<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage2"
+					 :page-size="pagesize" layout="prev, pager, next" :total="1000">
+					</el-pagination>
+				</div>
+			</el-main>
+			<el-main v-if="annualInformation == true">
+				<el-table :data="gridData" height="600" @selection-change="handleSelectionChange" :header-cell-style="headStyle"
+				 :cell-style="{ textAlign: 'center' }" style="font-size: 10px;">
+					<el-table-column label="等级评定日信息查看">
+						<el-table-column type="selection" width="40">
+						</el-table-column>
+						<el-table-column prop="windturbineid" label="风机编号" width="85">
+						</el-table-column>
+						<el-table-column prop="level" label="等级" width="50">
+						</el-table-column>
+						<el-table-column prop="rank" label="综合排名" width="70">
+						</el-table-column>
+						<el-table-column prop="yearfdl" label="发电量" width="60">
+						</el-table-column>
+						<el-table-column prop="yearllfdl" label="理论发电量" width="85">
+						</el-table-column>
+						<el-table-column prop="yearfs" label="平均风速" width="70">
+						</el-table-column>
+						<el-table-column prop="yeargl" label="平均功率" width="70">
+						</el-table-column>
+						<el-table-column prop="yeargzssdl" label="故障损失" width="70">
+						</el-table-column>
+						<el-table-column prop="yearxdssdl" label="限电损失" width="70">
+						</el-table-column>
+						<el-table-column prop="yearwhssdl" label="维护损失" width="70">
+						</el-table-column>
+						<el-table-column prop="yearxnssdl" label="性能损失" width="70">
+						</el-table-column>
+						<el-table-column prop="yearslssdl" label="日受累损失电量">
+						</el-table-column>
+						<el-table-column prop="yearlyxs" label="利用小时数" width="85">
+						</el-table-column>
+						<el-table-column prop="yearnhyd" label="拟合优度" width="70">
+						</el-table-column>
+						<el-table-column prop="yearsbklyl" label="设备可利用率" width="95">
+						</el-table-column>
+						<el-table-column prop="yeardxkyxs" label="等效可用系数" width="95">
+						</el-table-column>
+						<el-table-column prop="yearyxfss" label="有效风时数" width="85">
+						</el-table-column>
+						<el-table-column prop="yearxfqr" label="平均切入风速" width="95">
+						</el-table-column>
+						<el-table-column prop="yearjfpl" label="静风频率" width="70">
+						</el-table-column>
+						<el-table-column prop="yearglyzxxs" label="功率一致性系数" width="110">
+						</el-table-column>
+					</el-table-column>
+				</el-table>
+				<div style="text-align: center;">
+					<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage2"
+					 :page-size="pagesize" layout="prev, pager, next" :total="1000">
+					</el-pagination>
+				</div>
+			</el-main>
+		</el-container>
+	</el-container>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				options: [{
+					value: 'MHS_FDC',
+					label: '麻黄山'
+				}, {
+					value: 'NSS_FDC',
+					label: '牛首山'
+				}],
+				gridData: [],
+				value: 'MHS_FDC',
+				value1: '2021-01-01',
+				dialogTableVisible: false,
+				dialogTableVisibleMonth: false,
+				dialogTableVisibleYear: false,
+				multipleSelection: [],
+				currentPage2: 1,
+				pagesize: 10,
+				radarChartData1: [],
+				radarChartData2: [],
+				radarChartName: "",
+				radatChartWindturbineid1: '',
+				radatChartWindturbineid2: '',
+				fan1: '',
+				fan2: '',
+				fanNumber1 : '',
+				fanNumber2 : '',
+				dailyInformation: true,
+				monthlyInformation: false,
+				annualInformation: false,
+				activeName: 'first',
+				sortInOrder : [],
+				sortInOrderTop: []
+			}
+		},
+		created() {
+
+		},
+		mounted() {
+			this.gradeByDaygData();
+		},
+		methods: {
+			handleOpen(key, keyPath) {
+				console.log(key, keyPath);
+			},
+			handleClose(key, keyPath) {
+				console.log(key, keyPath);
+			},
+			headStyle() {
+				return "text-align:center"
+			},
+			currentSel(){
+				this.gradeByDaygData();
+			},
+			handleSelectionChange(val) {
+				this.sortInOrder = [];
+				this.sortInOrderTop = [];
+				this.multipleSelection = val;
+				this.fan1 = this.multipleSelection[0].windturbineid
+				this.fanNumber1='风机编号:'+ this.fan1;
+				this.fan2 = this.multipleSelection[1].windturbineid
+				this.fanNumber2='风机编号:'+ this.fan2;
+				this.sortInOrderTop.push({lhpj:'量化评级:' + this.multipleSelection[0].level,zhpm:'量化评级:' + this.multipleSelection[1].level });
+				this.sortInOrderTop.push({lhpj:'综合排名:' + this.multipleSelection[0].rank,zhpm: '综合排名:' + this.multipleSelection[1].rank});
+				if(this.dailyInformation == true){
+					this.sortInOrder.push({lx:'',index: '发电量',data1:this.multipleSelection[0].dayfdl,data2:this.multipleSelection[1].dayfdl});
+					this.sortInOrder.push({lx:'',index: '理论发电量',data1:this.multipleSelection[0].dayllfdl,data2:this.multipleSelection[1].dayllfdl});
+					this.sortInOrder.push({lx:'',index: '平均功率' ,data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+					this.sortInOrder.push({lx:'',index: '故障损失电量',data1:this.multipleSelection[0].daygzssdl,data2:this.multipleSelection[1].daygzssdl});
+					this.sortInOrder.push({lx:'',index: '限电损失电量',data1:this.multipleSelection[0].dayxdssdl,data2:this.multipleSelection[1].dayxdssdl});
+					this.sortInOrder.push({lx:'',index: '维护损失电量',data1:this.multipleSelection[0].daywhssdl,data2:this.multipleSelection[1].daywhssdl});
+					this.sortInOrder.push({lx:'',index: '故障时间',data1:this.multipleSelection[0].daygzsj,data2:this.multipleSelection[1].daygzsj});
+					this.sortInOrder.push({lx:'',index: '维护时间',data1:this.multipleSelection[0].daywhsj,data2:this.multipleSelection[1].daywhsj});
+					this.sortInOrder.push({lx:'',index: '运行时间',data1:this.multipleSelection[0].dayyxsj,data2:this.multipleSelection[1].dayyxsj});
+					this.sortInOrder.push({lx:'',index: '停机时间',data1:this.multipleSelection[0].daytjsj,data2:this.multipleSelection[1].daytjsj});
+					this.sortInOrder.push({lx:'性能',index: '平均切入风速',data1:this.multipleSelection[0].dayxfqr,data2:this.multipleSelection[1].dayxfqr});
+					this.sortInOrder.push({lx:'性能',index: '性能损失电量',data1:this.multipleSelection[0].dayxnssdl,data2:this.multipleSelection[1].dayxnssdl});
+					this.sortInOrder.push({lx:'性能',index: '拟合优度',data1:this.multipleSelection[0].daynhyd,data2:this.multipleSelection[1].daynhyd});
+					this.sortInOrder.push({lx:'性能',index: '功率一致性系数',data1:this.multipleSelection[0].dayglyzxxs,data2:this.multipleSelection[1].dayglyzxxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '利用小时',data1:this.multipleSelection[0].daylyxs,data2:this.multipleSelection[1].daylyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '设备可利用率',data1:this.multipleSelection[0].daysbklyl,data2:this.multipleSelection[1].daysbklyl});
+					this.sortInOrder.push({lx:'可靠性管理',index: '等效可利用系数',data1:this.multipleSelection[0].daydxkyxs,data2:this.multipleSelection[1].daydxkyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '有效风时速',data1:this.multipleSelection[0].dayyxfss,data2:this.multipleSelection[1].dayyxfss});
+					this.sortInOrder.push({lx:'资源',index: '平均风速',data1:this.multipleSelection[0].dayfs,data2:this.multipleSelection[1].dayfs});
+					this.sortInOrder.push({lx:'资源',index: '静风频率',data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+				}else if(this.monthlyInformation == true){
+					this.sortInOrder.push({lx:'',index: '发电量',data1:this.multipleSelection[0].dayfdl,data2:this.multipleSelection[1].dayfdl});
+					this.sortInOrder.push({lx:'',index: '理论发电量',data1:this.multipleSelection[0].dayllfdl,data2:this.multipleSelection[1].dayllfdl});
+					this.sortInOrder.push({lx:'',index: '平均功率' ,data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+					this.sortInOrder.push({lx:'',index: '故障损失电量',data1:this.multipleSelection[0].daygzssdl,data2:this.multipleSelection[1].daygzssdl});
+					this.sortInOrder.push({lx:'',index: '限电损失电量',data1:this.multipleSelection[0].dayxdssdl,data2:this.multipleSelection[1].dayxdssdl});
+					this.sortInOrder.push({lx:'',index: '维护损失电量',data1:this.multipleSelection[0].daywhssdl,data2:this.multipleSelection[1].daywhssdl});
+					this.sortInOrder.push({lx:'',index: '故障时间',data1:this.multipleSelection[0].daygzsj,data2:this.multipleSelection[1].daygzsj});
+					this.sortInOrder.push({lx:'',index: '维护时间',data1:this.multipleSelection[0].daywhsj,data2:this.multipleSelection[1].daywhsj});
+					this.sortInOrder.push({lx:'',index: '运行时间',data1:this.multipleSelection[0].dayyxsj,data2:this.multipleSelection[1].dayyxsj});
+					this.sortInOrder.push({lx:'',index: '停机时间',data1:this.multipleSelection[0].daytjsj,data2:this.multipleSelection[1].daytjsj});
+					this.sortInOrder.push({lx:'性能',index: '平均切入风速',data1:this.multipleSelection[0].dayxfqr,data2:this.multipleSelection[1].dayxfqr});
+					this.sortInOrder.push({lx:'性能',index: '性能损失电量',data1:this.multipleSelection[0].dayxnssdl,data2:this.multipleSelection[1].dayxnssdl});
+					this.sortInOrder.push({lx:'性能',index: '拟合优度',data1:this.multipleSelection[0].daynhyd,data2:this.multipleSelection[1].daynhyd});
+					this.sortInOrder.push({lx:'性能',index: '功率一致性系数',data1:this.multipleSelection[0].dayglyzxxs,data2:this.multipleSelection[1].dayglyzxxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '利用小时',data1:this.multipleSelection[0].daylyxs,data2:this.multipleSelection[1].daylyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '设备可利用率',data1:this.multipleSelection[0].daysbklyl,data2:this.multipleSelection[1].daysbklyl});
+					this.sortInOrder.push({lx:'可靠性管理',index: '等效可利用系数',data1:this.multipleSelection[0].daydxkyxs,data2:this.multipleSelection[1].daydxkyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '有效风时速',data1:this.multipleSelection[0].dayyxfss,data2:this.multipleSelection[1].dayyxfss});
+					this.sortInOrder.push({lx:'资源',index: '平均风速',data1:this.multipleSelection[0].dayfs,data2:this.multipleSelection[1].dayfs});
+					this.sortInOrder.push({lx:'资源',index: '静风频率',data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+				}else if(this.annualInformation == true){
+					this.sortInOrder.push({lx:'',index: '发电量',data1:this.multipleSelection[0].dayfdl,data2:this.multipleSelection[1].dayfdl});
+					this.sortInOrder.push({lx:'',index: '理论发电量',data1:this.multipleSelection[0].dayllfdl,data2:this.multipleSelection[1].dayllfdl});
+					this.sortInOrder.push({lx:'',index: '平均功率' ,data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+					this.sortInOrder.push({lx:'',index: '故障损失电量',data1:this.multipleSelection[0].daygzssdl,data2:this.multipleSelection[1].daygzssdl});
+					this.sortInOrder.push({lx:'',index: '限电损失电量',data1:this.multipleSelection[0].dayxdssdl,data2:this.multipleSelection[1].dayxdssdl});
+					this.sortInOrder.push({lx:'',index: '维护损失电量',data1:this.multipleSelection[0].daywhssdl,data2:this.multipleSelection[1].daywhssdl});
+					this.sortInOrder.push({lx:'',index: '故障时间',data1:this.multipleSelection[0].daygzsj,data2:this.multipleSelection[1].daygzsj});
+					this.sortInOrder.push({lx:'',index: '维护时间',data1:this.multipleSelection[0].daywhsj,data2:this.multipleSelection[1].daywhsj});
+					this.sortInOrder.push({lx:'',index: '运行时间',data1:this.multipleSelection[0].dayyxsj,data2:this.multipleSelection[1].dayyxsj});
+					this.sortInOrder.push({lx:'',index: '停机时间',data1:this.multipleSelection[0].daytjsj,data2:this.multipleSelection[1].daytjsj});
+					this.sortInOrder.push({lx:'性能',index: '平均切入风速',data1:this.multipleSelection[0].dayxfqr,data2:this.multipleSelection[1].dayxfqr});
+					this.sortInOrder.push({lx:'性能',index: '性能损失电量',data1:this.multipleSelection[0].dayxnssdl,data2:this.multipleSelection[1].dayxnssdl});
+					this.sortInOrder.push({lx:'性能',index: '拟合优度',data1:this.multipleSelection[0].daynhyd,data2:this.multipleSelection[1].daynhyd});
+					this.sortInOrder.push({lx:'性能',index: '功率一致性系数',data1:this.multipleSelection[0].dayglyzxxs,data2:this.multipleSelection[1].dayglyzxxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '利用小时',data1:this.multipleSelection[0].daylyxs,data2:this.multipleSelection[1].daylyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '设备可利用率',data1:this.multipleSelection[0].daysbklyl,data2:this.multipleSelection[1].daysbklyl});
+					this.sortInOrder.push({lx:'可靠性管理',index: '等效可利用系数',data1:this.multipleSelection[0].daydxkyxs,data2:this.multipleSelection[1].daydxkyxs});
+					this.sortInOrder.push({lx:'可靠性管理',index: '有效风时速',data1:this.multipleSelection[0].dayyxfss,data2:this.multipleSelection[1].dayyxfss});
+					this.sortInOrder.push({lx:'资源',index: '平均风速',data1:this.multipleSelection[0].dayfs,data2:this.multipleSelection[1].dayfs});
+					this.sortInOrder.push({lx:'资源',index: '静风频率',data1:this.multipleSelection[0].daygl,data2:this.multipleSelection[1].daygl});
+				}
+				this.radarChartData();
+			},
+			handleSizeChange(val) {
+				console.log(`每页 ${val} 条`);
+			},
+			handleCurrentChange(val) {
+				// console.log(`当前页: ${val}`);
+				this.gradeByDaygData();
+			},
+			dialogTableVisibleOpen() {
+				this.dialogTableVisible = true;
+				this.radatChartWindturbineid1 = this.multipleSelection[0].windturbineid;
+				this.radatChartWindturbineid2 = this.multipleSelection[1].windturbineid;
+				this.$nextTick(function() {
+					this.drawPie('leiDaTu')
+				})
+			},
+			dialogTableVisibleOpenMonth() {
+				this.dialogTableVisibleMonth = true;
+				this.radatChartWindturbineid1 = this.multipleSelection[0].windturbineid;
+				this.radatChartWindturbineid2 = this.multipleSelection[1].windturbineid;
+				this.$nextTick(function() {
+					this.drawPie('leiDaTu')
+				})
+			},
+			dialogTableVisibleOpenYear() {
+				this.dialogTableVisibleYear = true;
+				this.radatChartWindturbineid1 = this.multipleSelection[0].windturbineid;
+				this.radatChartWindturbineid2 = this.multipleSelection[1].windturbineid;
+				this.$nextTick(function() {
+					this.drawPie('leiDaTu')
+				})
+			},
+			handleClick(tab) {
+				// this.sortInOrder = [];
+				// this.sortInOrderTop = [];
+				if (tab.name === 'first') {
+					this.dailyInformation = true
+					this.monthlyInformation = false
+					this.annualInformation = false
+					this.gradeByDaygData();
+				} else if (tab.name === 'second') {
+					this.dailyInformation = false
+					this.monthlyInformation = true
+					this.annualInformation = false
+					this.gradeByDaygData();
+				} else if (tab.name === 'cord') {
+					this.dailyInformation = false
+					this.monthlyInformation = false
+					this.annualInformation = true
+					this.gradeByDaygData();
+				}
+			},
+			gradeByDaygData() {
+				let that = this;
+				var page = new URLSearchParams();
+				page.append('pageNum', this.currentPage2);
+				page.append('pageSize', this.pagesize);
+				page.append('wpId', this.value);
+				page.append('recorddate', this.value1);
+				this.$http.post("/benchmarking/gadaylistByPage", page).then((res) => {
+					that.gridData = res.data.data.list;
+				})
+
+			},
+			radarChartData() {
+				let that = this;
+				this.$http.get("/benchmarking/wtchart?gaid1=" + this.multipleSelection[0].id +
+					"&gaid2=" + this.multipleSelection[1].id).then((res) => {
+					console.log(res)
+					var arr1 = [];
+					var name = [];
+					res.data.data.gaid1.forEach(function(item) {
+						arr1.push({
+							data1: item.data1
+						})
+						name.push({
+							name: item.name
+						})
+					})
+					that.radarChartName = name
+					var target = {
+						max: 15
+					}
+					for (let v = 0; v < that.radarChartName.length; v++) {
+						const returnedTarget = Object.assign(that.radarChartName[v], target);
+					}
+					for (let i = 0; i < arr1.length; i++) {
+						that.radarChartData1.push(arr1[i].data1)
+					}
+					var arr2 = [];
+					res.data.data.gaid2.forEach(function(item) {
+						arr2.push({
+							data1: item.data1
+						})
+					})
+					for (let j = 0; j < arr2.length; j++) {
+						that.radarChartData2.push(arr2[j].data1)
+					}
+					
+				})
+			},
+			drawPie() {
+				var charts;
+				if (charts != null && charts != "" && charts != undefined){
+				    charts.dispose();
+				}
+				charts= this.$echarts.init(document.getElementById('leiDaTu'));
+				let option = {
+					tooltip: {},
+					legend: {
+						x: 'center', //可设定图例在左、右、居中
+						y: 'bottom',
+						data: [this.radatChartWindturbineid1, this.radatChartWindturbineid2]
+					},
+					radar: {
+						// shape: 'circle',
+						name: {
+							textStyle: {
+								color: '#fff',
+								backgroundColor: '#999',
+								borderRadius: 3,
+								padding: [3, 5]
+							}
+						},
+						indicator: this.radarChartName
+					},
+					series: [{
+						name: '预算 vs 开销(Budget vs spending)',
+						type: 'radar',
+						// areaStyle: {normal: {}},
+						data: [{
+								value: this.radarChartData1,
+								name: this.radatChartWindturbineid1
+							},
+							{
+								value: this.radarChartData2,
+								name: this.radatChartWindturbineid2
+							}
+						]
+					}]
+				}
+				charts.clear();
+				charts.setOption(option);
+				
+			},
+
+		}
+	}
+</script>
+
+<style>
+	.leftNavigation {
+		width: 15%;
+		height: 790px;
+	}
+
+	#leiDaTu {
+		margin-left: 4%;
+		height: 480px;
+		width: 500px;
+		float: left;
+	}
+
+	#leiDaTuMonth {
+		margin-left: 4%;
+		height: 480px;
+		width: 500px;
+		float: left;
+	}
+
+	#leiDaTuYear {
+		margin-left: 4%;
+		height: 480px;
+		width: 500px;
+		float: left;
+	}
+
+	.margin {
+		width: 100%;
+		height: 618px;
+		border: #000000 1px solid;
+	}
+
+	.dialogLeftData {
+		width: 50%;
+		height: 120px;
+		text-align: center;
+		float: left;
+	}
+
+	.fanNumber1 {
+		width: 50%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.fanNumber2 {
+		width: 49%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.quantitativerating1 {
+		width: 50%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.quantitativerating2 {
+		width: 49%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.comprehensiveRanking1 {
+		width: 50%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.comprehensiveRanking2 {
+		width: 49%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: left;
+		line-height: 40px;
+	}
+
+	.dialogRightData {
+		width: 50%;
+		height: 650px;
+		text-align: center;
+		float: right;
+	}
+
+	.basicIndex {
+		width: 100%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: right;
+		line-height: 40px;
+	}
+
+	.score {
+		width: 16%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: right;
+		line-height: 40px;
+	}
+
+	.ranking {
+		width: 16%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: right;
+		line-height: 40px;
+	}
+
+	.fan2 {
+		width: 17%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: right;
+		line-height: 40px;
+	}
+
+	.fan1 {
+		width: 17%;
+		height: 40px;
+		border: #000000 1px solid;
+		float: right;
+		line-height: 40px;
+	}
+
+
+
+	/* .el-dialog_body{height: 600vh;overflow: auto;} */
+</style>

+ 1 - 0
src/http.js

@@ -1,6 +1,7 @@
 import axios from 'axios'
 import Vue from 'vue'
 import router from './router'
+axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
 
 const http = axios.create({
   baseURL: process.env.VUE_APP_API_URL || '/api/',

+ 33 - 29
src/router/index.js

@@ -4,38 +4,42 @@ import Index from '../views/Index.vue'
 
 Vue.use(VueRouter)
 
-const routes = [
-  {
-    path: '/',
-    name: 'home',
-    redirect: '/index'
-  },
-  {
-    path: '/index',
-    name: 'index',
-    component: Index
-  },
-  {
-    path: '/about',
-    name: 'About',
-    component: () => import('../views/About.vue')
-  },
-  {
-    path: '/point',
-    name: 'point',
-    component: () => import('../views/point.vue')
-  },
-  {
-    path: '/FanStatusQueryExport',
-    name: 'FanStatusQueryExport',
-    component: () => import('../views/FanStatusQueryExport/FanStatusQueryExport.vue')
-  }
+const routes = [{
+		path: '/',
+		name: 'home',
+		redirect: '/index'
+	},
+	{
+		path: '/index',
+		name: 'index',
+		component: Index
+	},
+	{
+		path: '/about',
+		name: 'About',
+		component: () => import('../views/About.vue')
+	},
+	{
+		path: '/point',
+		name: 'point',
+		component: () => import('../views/point.vue')
+	},
+	{
+		path: '/FanStatusQueryExport',
+		name: 'FanStatusQueryExport',
+		component: () => import('../views/FanStatusQueryExport/FanStatusQueryExport.vue')
+	},
+	{
+		path: '/gradeEvaluation',
+		name: 'gradeEvaluation',
+		component: () => import('../components/gradeEvaluation/GradeEvaluation.vue')
+	}
 ]
 
 const router = new VueRouter({
-  mode: 'hash',
-  base: process.env.BASE_URL,
-  routes
+	mode: 'hash',
+	base: process.env.BASE_URL,
+	routes
 })
 
 export default router