Guoxiaohuan 5 年之前
父节点
当前提交
0d5f38449a
共有 2 个文件被更改,包括 672 次插入661 次删除
  1. 251 232
      src/views/evaluate/evCard.vue
  2. 421 429
      src/views/evaluate/evTwoLevelMenu.vue

+ 251 - 232
src/views/evaluate/evCard.vue

@@ -1,255 +1,274 @@
 <template>
-  <div class="count-card-box">
-    <div class="count-card" v-for="(item,index) in cardList" :key="index">
-      <div class="card-div1">执行时间:{{item.recommend?formatterStr2(item.recommend.time):'--'}}</div>
-      <div class="card-div2 MicrYaHei">
-        <span>策略建议</span>
-        <span>冷机台数</span>
-        <span>{{item.recommend?item.recommend.chillerNumSetL:'--'}}大{{item.recommend?item.recommend.chillerNumSetS:'--'}}小</span>
-        <span>冷机出水温度</span>
-        <span>{{item.recommend?item.recommend.chillWaterOutTempSet:'--'}}°C</span>
-      </div>
-      <div class="card-div3 MicrYaHei">
-        <span>实际执行</span>
-        <span>冷机台数</span>
-        <span>{{item.real?item.real.chillerNumSetLOrg:'--'}}大{{item.real?item.real.chillerNumSetSOrg:'--'}}小</span>
-        <span>冷机出水温度</span>
-        <span>{{item.real?item.real.chillWaterOutTempSetOrg:'--'}}°C</span>
-      </div>
-      <div class="card-div4">备注:{{item.h||'--'}}</div>
-      <div class="card-div5">
-        <span class="card-div7" v-if="item.recommend.isExecuted">
-          <img src="../../assets/completed.png" alt />
-          已按策略执行
-        </span>
-        <span v-else v-for="(item1,index) in titles" :key='"l"+index'>
-          <span class="card-div6" v-if='item1.id==item.recommend.AppealId && item1.status==301'>
-            <img src="../../assets/error.png" alt />
-            未按策略执行
-          </span>
-          <span class="card-div8" v-if='item1.id==item.recommend.AppealId && item1.status==302'>
-            <img src="../../assets/processing.png" alt />
-            申诉中
-          </span>
-        </span>
-        <span class="MicrYaHei" @click="lookQuickData(item)">查看快照</span>
-      </div>
-    </div>
-    <div class="view-dialog">
-      <el-dialog
-        title="策略推出时状况"
-        :visible.sync="viewSnapshots"
-        :close-on-click-modal="false"
-        width="1260px"
-      >
-        <ev-snapshots-dialog :appealsDate='date' :time='time'></ev-snapshots-dialog>
-      </el-dialog>
+    <div class='count-card-box'>
+        <div class='count-card' v-for='(item,index) in cardList' :key='index'>
+            <div class='card-div1'>执行时间:{{item.recommend?formatterStr2(item.recommend.time):'--'}}</div>
+            <div class='card-div2 MicrYaHei'>
+                <span>策略建议</span>
+                <span>冷机台数</span>
+                <span>
+                    <b style='width:50px;display: inline-block;text-align: center;'>{{item.recommend?item.recommend.chillerNumSetL:'--'}}</b>
+                    大
+                    <b
+                        style='width:50px;display: inline-block;text-align: center;'
+                    >{{item.recommend?item.recommend.chillerNumSetS:'--'}}</b>小
+                </span>
+                <span>冷机出水温度</span>
+                <span>
+                    <b>{{item.recommend?item.recommend.chillWaterOutTempSet:'--'}}</b> °C
+                </span>
+            </div>
+            <div class='card-div3 MicrYaHei'>
+                <span>实际执行</span>
+                <span>冷机台数</span>
+                <span>
+                    <b
+                        style='width:50px;display: inline-block;text-align: center;'
+                        :class='item.recommend.chillerNumSetL==item.real.chillerNumSetLOrg?"":"red"'
+                    >{{item.real?item.real.chillerNumSetLOrg:'--'}}</b>大
+                    <b
+                        style='width:50px;display: inline-block;text-align: center;'
+                        :class='item.recommend.chillerNumSetL==item.real.chillerNumSetLOrg?"":"red"'
+                    >{{item.real?item.real.chillerNumSetSOrg:'--'}}</b> 小
+                </span>
+                <span>冷机出水温度</span>
+                <span>
+                    <b
+                        style='width:50px;display: inline-block;text-align: center;'
+                        :class='item.recommend.chillerNumSetL==item.real.chillerNumSetLOrg?"":"red"'
+                    >{{item.real?item.real.chillWaterOutTempSetOrg:'--'}}</b>°C
+                </span>
+            </div>
+
+            <div class='card-div4'>备注:{{item.h||'--'}}</div>
+            <div class='card-div5'>
+                <span class='card-div7' v-if='item.recommend.isExecuted'>
+                    <img src='../../assets/completed.png' alt />
+                    已按策略执行
+                </span>
+                <span v-else v-for='(item1,index) in titles' :key='"l"+index'>
+                    <span class='card-div6' v-if='item1.id==item.recommend.AppealId && item1.status==301'>
+                        <img src='../../assets/error.png' alt />
+                        未按策略执行
+                    </span>
+                    <span class='card-div8' v-if='item1.id==item.recommend.AppealId && item1.status==302'>
+                        <img src='../../assets/processing.png' alt />
+                        申诉中
+                    </span>
+                </span>
+                <span class='MicrYaHei' @click='lookQuickData(item)'>查看快照</span>
+            </div>
+        </div>
+        <div class='view-dialog'>
+            <el-dialog title='策略推出时状况' :visible.sync='viewSnapshots' :close-on-click-modal='false' width='1260px'>
+                <ev-snapshots-dialog :appealsDate='date' :time='time'></ev-snapshots-dialog>
+            </el-dialog>
+        </div>
     </div>
-  </div>
 </template>
 <script>
-import EvSnapshotsDialog from "./evSnapshotsDialog";
-import {
-  queryWorkflow
-} from "@/api/appeal/appeal.js";
+import EvSnapshotsDialog from './evSnapshotsDialog'
+import { queryWorkflow } from '@/api/appeal/appeal.js'
 export default {
-  data() {
-    return {
-      viewSnapshots: false,
-      ids:[],
-      titles:[],
-      time:""
-    };
-  },
-  props: ["cardList",'date'],
-  components: {
-    EvSnapshotsDialog
-  },
-  methods: {
-    lookQuickData(item){
-      console.log(item)
-      this.time = item.recommend.time
-      this.viewSnapshots = true
-    },
-    formatterStr2(str) {
-      if (str) {
-        return str.substring(0, 2) + ":" + str.substring(2, 4);
-      }
-    },
-    queryFlow(){
-      let postParams = {
-        crireria:{
-          id:this.ids
+    data() {
+        return {
+            viewSnapshots: false,
+            ids: [],
+            titles: [],
+            time: ''
         }
-      }
-      queryWorkflow({postParams}).then(res=>{
-        this.titles = res.content
-      })
     },
-    getAppealId(){
-      this.cardList.forEach(el=>{
-        console.log(el)
-        if(el.recommend.isExecuted){
-          this.ids.push(el.recommend.getAppealId)
+    props: ['cardList', 'date'],
+    components: {
+        EvSnapshotsDialog
+    },
+    methods: {
+        lookQuickData(item) {
+            console.log(item)
+            this.time = item.recommend.time
+            this.viewSnapshots = true
+        },
+        formatterStr2(str) {
+            if (str) {
+                return str.substring(0, 2) + ':' + str.substring(2, 4)
+            }
+        },
+        queryFlow() {
+            let postParams = {
+                crireria: {
+                    id: this.ids
+                }
+            }
+            queryWorkflow({ postParams }).then(res => {
+                this.titles = res.content
+            })
+        },
+        getAppealId() {
+            this.cardList.forEach(el => {
+                console.log(el)
+                if (el.recommend.isExecuted) {
+                    this.ids.push(el.recommend.getAppealId)
+                }
+            })
+            this.queryFlow()
         }
-      })
-      this.queryFlow()
     },
-  },
-  mounted(){
-    this.getAppealId()
-  }
-};
+    mounted() {
+        this.getAppealId()
+    }
+}
 </script>
 <style lang="scss" scoped>
 // 执行率
 .count-card-box {
-  display: flex;
-  flex-wrap: wrap;
-  .count-card {
-    min-width: 436px;
-    margin-right: 6px;
-    margin-top: 16px;
-    padding: 16px 20px;
-    background: rgba(255, 255, 255, 1);
-    box-shadow: 0px 4px 12px -2px rgba(31, 36, 41, 0.1);
-    border-radius: 4px;
-    border: 1px solid rgba(228, 230, 231, 1);
-    .card-div1,
-    .card-div2,
-    .card-div3,
-    .card-div4,
-    .card-div5 {
-      display: flex;
-      justify-content: space-between;
-      align-items: center;
-    }
-    .card-div1 {
-      height: 22px;
-      font-size: 16px;
-      font-family: PingFangSC-Regular, PingFang SC;
-      font-weight: 400;
-      color: rgba(31, 36, 41, 1);
-      line-height: 22px;
-      margin-bottom: 14px;
-    }
-    .card-div2,
-    .card-div3 {
-      height: 40px;
-      background: rgba(245, 246, 247, 1);
-      border-radius: 1px;
-      padding-left: 16px;
-      padding-right: 34px;
-      span:nth-of-type(1) {
-        height: 19px;
-        font-size: 14px;
-        color: rgba(31, 36, 41, 1);
-        line-height: 19px;
-        margin-right: 36px;
-      }
-      span:nth-of-type(2) {
-        height: 18px;
-        font-size: 12px;
-        color: rgba(141, 147, 153, 1);
-        line-height: 22px;
-        margin-right: 8px;
-      }
-      span:nth-of-type(3) {
-        height: 19px;
-        font-size: 14px;
-        color: rgba(31, 36, 41, 1);
-        line-height: 19px;
-        margin-right: 36px;
-      }
-      span:nth-of-type(4) {
-        height: 18px;
-        font-size: 12px;
-        color: rgba(141, 147, 153, 1);
-        line-height: 22px;
-        margin-right: 8px;
-      }
-      span:nth-of-type(5) {
-        height: 21px;
-        font-size: 16px;
-        color: rgba(31, 36, 41, 1);
-        line-height: 21px;
-      }
-    }
-    .card-div2 {
-      margin-bottom: 4px;
-    }
-    .card-div3 {
-      margin-bottom: 16px;
-    }
-    .card-div4 {
-      height: 20px;
-      font-size: 14px;
-      font-family: PingFangSC-Regular, PingFang SC;
-      font-weight: 400;
-      color: rgba(100, 108, 115, 1);
-      line-height: 20px;
-      margin-bottom: 26px;
-    }
-
-    .card-div5 {
-      span:nth-of-type(1) {
-        img {
-          width: 14px;
-          height: 14px;
-          margin-right: 4px;
-          vertical-align: middle;
-        }
-        padding: 0 12px;
-        display: flex;
-        align-items: center;
-        height: 22px;
-        border-radius: 12px;
-        font-size: 14px;
-        font-family: MicrosoftYaHeiSemibold;
-      }
-      span:last-child {
-        cursor: pointer;
-        height: 22px;
-        font-size: 14px;
-        color: rgba(31, 35, 41, 1);
-        line-height: 22px;
+    display: flex;
+    flex-wrap: wrap;
+    .count-card {
+        min-width: 436px;
+        margin-right: 6px;
+        margin-top: 16px;
+        padding: 16px 20px;
         background: rgba(255, 255, 255, 1);
+        box-shadow: 0px 4px 12px -2px rgba(31, 36, 41, 0.1);
         border-radius: 4px;
-        border: 1px solid rgba(195, 199, 203, 1);
-        padding: 0 12px;
-      }
-    }
-    .card-div6 {
-      color: rgba(245, 78, 69, 1);
-      background: rgba(253, 227, 226, 1);
-    }
-    .card-div7 {
-      color: rgba(52, 199, 36, 1);
-      background: rgba(217, 245, 214, 1);
-    }
-    .card-div8 {
-      border-radius:12px;
-      color: rgba(0, 145, 255, 1);
-      background: rgba(225, 242, 255, 1);
+        border: 1px solid rgba(228, 230, 231, 1);
+        .card-div1,
+        .card-div2,
+        .card-div3,
+        .card-div4,
+        .card-div5 {
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+        }
+        .card-div1 {
+            height: 22px;
+            font-size: 16px;
+            font-family: PingFangSC-Regular, PingFang SC;
+            font-weight: 400;
+            color: rgba(31, 36, 41, 1);
+            line-height: 22px;
+            margin-bottom: 14px;
+        }
+        .card-div2,
+        .card-div3 {
+            height: 40px;
+            background: rgba(245, 246, 247, 1);
+            border-radius: 1px;
+            padding-left: 16px;
+            padding-right: 34px;
+            span:nth-of-type(1) {
+                height: 19px;
+                font-size: 14px;
+                color: rgba(31, 36, 41, 1);
+                line-height: 19px;
+                margin-right: 36px;
+            }
+            span:nth-of-type(2) {
+                height: 18px;
+                font-size: 12px;
+                color: rgba(141, 147, 153, 1);
+                line-height: 22px;
+                margin-right: 8px;
+            }
+            span:nth-of-type(3) {
+                height: 19px;
+                font-size: 14px;
+                color: rgba(31, 36, 41, 1);
+                line-height: 19px;
+                margin-right: 36px;
+            }
+            span:nth-of-type(4) {
+                height: 18px;
+                font-size: 12px;
+                color: rgba(141, 147, 153, 1);
+                line-height: 22px;
+                margin-right: 8px;
+            }
+            span:nth-of-type(5) {
+                height: 21px;
+                font-size: 16px;
+                color: rgba(31, 36, 41, 1);
+                line-height: 21px;
+            }
+        }
+        .card-div2 {
+            margin-bottom: 4px;
+        }
+        .card-div3 {
+            margin-bottom: 16px;
+        }
+        .card-div4 {
+            height: 20px;
+            font-size: 14px;
+            font-family: PingFangSC-Regular, PingFang SC;
+            font-weight: 400;
+            color: rgba(100, 108, 115, 1);
+            line-height: 20px;
+            margin-bottom: 26px;
+        }
+
+        .card-div5 {
+            span:nth-of-type(1) {
+                img {
+                    width: 14px;
+                    height: 14px;
+                    margin-right: 4px;
+                    vertical-align: middle;
+                }
+                padding: 0 12px;
+                display: flex;
+                align-items: center;
+                height: 22px;
+                border-radius: 12px;
+                font-size: 14px;
+                font-family: MicrosoftYaHeiSemibold;
+            }
+            span:last-child {
+                cursor: pointer;
+                height: 22px;
+                font-size: 14px;
+                color: rgba(31, 35, 41, 1);
+                line-height: 22px;
+                background: rgba(255, 255, 255, 1);
+                border-radius: 4px;
+                border: 1px solid rgba(195, 199, 203, 1);
+                padding: 0 12px;
+            }
+        }
+        .card-div6 {
+            color: rgba(245, 78, 69, 1);
+            background: rgba(253, 227, 226, 1);
+        }
+        .card-div7 {
+            color: rgba(52, 199, 36, 1);
+            background: rgba(217, 245, 214, 1);
+        }
+        .card-div8 {
+            border-radius: 12px;
+            color: rgba(0, 145, 255, 1);
+            background: rgba(225, 242, 255, 1);
+        }
+        .red {
+            color: rgba(245, 78, 69, 1);
+        }
     }
-  }
 }
 </style>
 <style lang="scss">
 .view-dialog {
-  .el-dialog__header {
-    padding: 16px 28px 0 32px;
-    .el-dialog__title {
-      height: 24px;
-      font-size: 16px;
-      font-family: PingFangSC-Medium, PingFang SC;
-      font-weight: 500;
-      color: rgba(31, 36, 41, 1);
-      line-height: 24px;
+    .el-dialog__header {
+        padding: 16px 28px 0 32px;
+        .el-dialog__title {
+            height: 24px;
+            font-size: 16px;
+            font-family: PingFangSC-Medium, PingFang SC;
+            font-weight: 500;
+            color: rgba(31, 36, 41, 1);
+            line-height: 24px;
+        }
+    }
+    .el-dialog__body {
+        padding-top: 0;
     }
-  }
-  .el-dialog__body {
-    padding-top: 0;
-  }
 }
 </style>

+ 421 - 429
src/views/evaluate/evTwoLevelMenu.vue

@@ -1,463 +1,455 @@
 <template>
-  <div class="evTwoContainer">
-    <div class="evTwoContainer-out">
-      <Head :headText="headText"></Head>
-      <div class="count-top">
-        <div class="count-top-left MicrYaHei">
-          <span>首页</span>
-          <span>></span>
-          <span>单日运行评价</span>
-        </div>
-        <ul class="MicrYaHei">
-          <div style="min-width:300px;min-height:30px;" @click="jumpIndex"></div>
-          <div>
-            <li :class="{current: num == 1}" @click="changeNum(1)">室内温度</li>
-            <li :class="{current: num==2}" @click="changeNum(2)">节能率</li>
-            <li :class="{current: num==3}" @click="changeNum(3)">执行率</li>
-          </div>
-          <div class="count-top-right">
-            <date-temp v-if="date" @pickerVal="pickerVal" :date="date"></date-temp>
-          </div>
-        </ul>
-        <div class="count-bottom">
-          <div v-if="num == 1">
-            <ev-rate-title :tab="1" :rate="tindoorFillRate"></ev-rate-title>
-            <div class="count-bottom-switch">
-              <span class="switchSpan" >只显示不满足的点位</span>
-              <el-switch v-model="value2" @change="changeNum('1')"></el-switch>
-            </div>
-            <div class="count-bottom-content">
-              <ev-two-table v-if="dataList.length>0" :switch="value2" :dataList="dataList"></ev-two-table>
-            </div>
-            <div class="count-bottom-foot">
-              <ev-stacked-line v-if="stackArr.length>0" :stackArr="stackArr"></ev-stacked-line>
-            </div>
-          </div>
-          <div v-show="num == 2">
-            <ev-rate-title :tab="2" :rate="energySavingRate" :accuracy='accuracy'></ev-rate-title>
-            <div class="count-historical-data">
-              <ev-history
-                v-if="Object.keys(current).length>0||Object.keys(similarDay).length>0||Object.keys(maxArr).length>0"
-                :current="current"
-                :similarDay="similarDay"
-                :maxArr="maxArr"
-              ></ev-history>
-              <div class="count-foot">
-                <div class="count-foot-title">
-                  <span class="Micbold">相似日概况</span>
-                  <span class="MicrYaHei">相似度高</span>
+    <div class='evTwoContainer'>
+        <div class='evTwoContainer-out'>
+            <Head :headText='headText'></Head>
+            <div class='count-top'>
+                <div class='count-top-left MicrYaHei'>
+                    <span>首页</span>
+                    <span>></span>
+                    <span>单日运行评价</span>
                 </div>
-                <div class="count-foot-table">
-                  <ev-energy-table v-if="samples.length>=0" :samples="samples"></ev-energy-table>
+                <ul class='MicrYaHei'>
+                    <div style='min-width:300px;min-height:30px;' @click='jumpIndex'></div>
+                    <div>
+                        <li :class='{current: num == 1}' @click='changeNum(1)'>室内温度</li>
+                        <li :class='{current: num==2}' @click='changeNum(2)'>节能率</li>
+                        <li :class='{current: num==3}' @click='changeNum(3)'>执行率</li>
+                    </div>
+                    <div class='count-top-right'>
+                        <date-temp v-if='date' @pickerVal='pickerVal' :date='date'></date-temp>
+                    </div>
+                </ul>
+                <div class='count-bottom'>
+                    <div v-if='num == 1'>
+                        <ev-rate-title :tab='1' :rate='tindoorFillRate'></ev-rate-title>
+                        <div class='count-bottom-switch'>
+                            <span class='switchSpan'>只显示不满足的点位</span>
+                            <el-switch v-model='value2' @change='changeNum("1")'></el-switch>
+                        </div>
+                        <div class='count-bottom-content'>
+                            <ev-two-table v-if='dataList.length>0' :switch='value2' :dataList='dataList'></ev-two-table>
+                        </div>
+                        <div class='count-bottom-foot'>
+                            <ev-stacked-line v-if='stackArr.length>0' :stackArr='stackArr'></ev-stacked-line>
+                        </div>
+                    </div>
+                    <div v-show='num == 2'>
+                        <ev-rate-title :tab='2' :rate='energySavingRate' :accuracy='accuracy'></ev-rate-title>
+                        <div class='count-historical-data'>
+                            <ev-history
+                                v-if='Object.keys(current).length>0||Object.keys(similarDay).length>0||Object.keys(maxArr).length>0'
+                                :current='current'
+                                :similarDay='similarDay'
+                                :maxArr='maxArr'
+                            ></ev-history>
+                            <div class='count-foot'>
+                                <div class='count-foot-title'>
+                                    <span class='Micbold'>相似日概况</span>
+                                    <span class='MicrYaHei'>相似度高</span>
+                                </div>
+                                <div class='count-foot-table'>
+                                    <ev-energy-table v-if='samples.length>=0' :samples='samples'></ev-energy-table>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                    <div v-show='num == 3'>
+                        <ev-rate-title :tab='3'></ev-rate-title>
+                        <ev-card v-if='cardList.length>0' :cardList='cardList' :date='date'></ev-card>
+                    </div>
                 </div>
-              </div>
             </div>
-          </div>
-          <div v-show="num == 3">
-            <ev-rate-title :tab="3"></ev-rate-title>
-            <ev-card v-if="cardList.length>0" :cardList="cardList" :date='date'></ev-card>
-          </div>
         </div>
-      </div>
     </div>
-  </div>
 </template>
 <script>
-import Head from "../main/index";
-import EvTwoTable from "./evTwoTable";
-import EvStackedLine from "./evStackedLine";
-import EvEnergyTable from "./evEnergyTable";
-import EvCard from "./evCard"; //执行率
-import EvRateTitle from "./evRateTitle";
-import EvHistory from "./evHistory";
-import DateTemp from "./dateTemp";
-import {
-  runDataQury,
-  energyDayQuery,
-  querychiller,
-  querySpace,
-  queryHisdataQueryPeriodData,
-  queryTdbDay
-} from "@/api/evaluate/evaluate.js";
-import { queryChillerExecuteInfo } from "@/api/appeal/appeal.js";
-import bus from "@/utils/bus.js";
+import Head from '../main/index'
+import EvTwoTable from './evTwoTable'
+import EvStackedLine from './evStackedLine'
+import EvEnergyTable from './evEnergyTable'
+import EvCard from './evCard' //执行率
+import EvRateTitle from './evRateTitle'
+import EvHistory from './evHistory'
+import DateTemp from './dateTemp'
+import { runDataQury, energyDayQuery, querychiller, querySpace, queryHisdataQueryPeriodData, queryTdbDay } from '@/api/evaluate/evaluate.js'
+import { queryChillerExecuteInfo } from '@/api/appeal/appeal.js'
+import bus from '@/utils/bus.js'
 
 export default {
-  data() {
-    return {
-      headText: "运行评价",
-      num: 1, //tab @
-      date: "", // 传过来的日期@
-      type: "", //传过来的日期 @
-      value2: true,
-      current: {}, //本日概况 @
-      similarDay: {}, //相似日概况 @
-      samples: [], //相似日列表 @
-      maxArr: [], // @
-      dataList: [], //室内温度满足率@
-      tindoorFillRate: "", //室内温度满足率@
-      energySavingRate: "", //节能率
-      cardList: [], //执行率@
-      dateVal: "", //@
-      stackArr: [],
-      accuracy:''
-    };
-  },
-  components: {
-    Head,
-    EvTwoTable,
-    EvStackedLine,
-    EvEnergyTable,
-    EvCard,
-    EvRateTitle,
-    EvHistory,
-    DateTemp
-  },
-  mounted() {
-    this.init();
-  },
-  methods: {
-    // changeSwitch(){
-    //   let getParams = {
-    //     isSatisfy:this.value2    
-    //   }
-    //   queryTdbDay({getParams}).then(res=>{
-
-    //   })
-    // },
-    init() {
-      this.type = this.$route.query.type;
-      this.date = this.$route.query.name;
-      if (this.type) {
-        this.num = this.type;
-      }
-      if (this.date) {
-        this.date = this.formatterStr3(
-          new Date().getFullYear() + this.formatterStr2(this.date)
-        );
-      }
-      if (this.num && this.date) {
-        this.changeNumMethod(this.date);
-      }
-    },
-    // @
-    formatterStr2(str) {
-      if (str) {
-        return str.substring(0, 2) + "" + str.substring(3, 5);
-      }
-    },
-    // 室内温度table @
-    queryTdbDayMethod(date) {
-      this.dataList = [];
-      let obj = {
-        // 'Fl44130300016569b876ba5311e990f9592e6484ca96': {
-        //   id: 'Fl44130300016569b876ba5311e990f9592e6484ca96',
-        //   name: '1F',
-        //   children: []
-        // }
-      };
-      // isSatisfy:this.value2
-      let getParams={
-        isSatisfy:this.value2
-      }
-      queryTdbDay(date, {getParams}).then(res => {
-        this.tindoorFillRate = res.tindoorFillRate;
-        console.log("室内温度满足率", res);
-        let content = res.content;
-        this.stackArr = content;
-        content.forEach(({ spaceDayRpt }) => {
-          if (obj.hasOwnProperty(spaceDayRpt.floorId)) {
-            obj[spaceDayRpt.floorId].children.push(spaceDayRpt);
-          } else {
-            obj[spaceDayRpt.floorId] = {
-              id: spaceDayRpt.floorId,
-              name: spaceDayRpt.floorLocalName,
-              children: []
-            };
-          }
-        });
-
-        this.dataList = Object.values(obj).map(i => {
-          // 增加 isExpand 属性
-          i.isExpand = i.children.some(c => c.isSatisfy == false);
-          return i;
-        });
-        console.log(this.dataList);
-      });
-    },
-    // @
-    formatterStr3(str) {
-      if (str) {
-        return str.substring(0, 4) + str.substring(4, 6) + str.substring(6, 8);
-      }
-    },
-    // 执行率@
-    queryimplement(date) {
-      let params = {
-        postParams: {
-          criteria: {
-            date: date
-          }
+    data() {
+        return {
+            headText: '运行评价',
+            num: 1, //tab @
+            date: '', // 传过来的日期@
+            type: '', //传过来的日期 @
+            value2: true,
+            current: {}, //本日概况 @
+            similarDay: {}, //相似日概况 @
+            samples: [], //相似日列表 @
+            maxArr: [], // @
+            dataList: [], //室内温度满足率@
+            tindoorFillRate: '', //室内温度满足率@
+            energySavingRate: '', //节能率
+            cardList: [], //执行率@
+            dateVal: '', //@
+            stackArr: [],
+            accuracy: ''
         }
-      };
-      queryChillerExecuteInfo(params).then(res => {
-        this.cardList = res.data ? res.data : [];
-        console.log("执行率", res);
-      });
-    },
-    // 根据tab @
-    changeNumMethod(date) {
-      if (this.num == 1) {
-        this.queryTdbDayMethod(date);
-      } else if (this.num == 2) {
-        this.queryEnergyDayQuery(date);
-        this.querychillerMethod(date);
-      } else if (this.num == 3) {
-        this.queryimplement(date);
-      }
-    },
-    querychillerMethod(date) {
-      let params = {
-        postParams: {
-          criteria: {
-            projectId: this.$store.state.projectId,
-            date: date
-          }
-        }
-      };
-      querychiller(params).then(res => {
-        // 节能率
-        this.energySavingRate=res.content[0].energySavingRate?res.content[0].energySavingRate:'--'
-        // 准确率
-        this.accuracy=res.content[0].accuracy?res.content[0].accuracy:'--'
-        console.log(res);
-      });
-    },
-    // 点击tab @
-    changeNum(index) {
-      this.num = index;
-      this.changeNumMethod(this.dateVal);
-    },
-    // @
-    formatterStr(str) {
-      if (str) {
-        return str.substring(0, 4) + str.substring(5, 7) + str.substring(8, 10);
-      }
     },
-    // @
-    pickerVal(val) {
-      if (val) {
-        this.dateVal = this.formatterStr(val);
-        this.changeNumMethod(this.dateVal);
-        // console.log(this.dateVal);
-      }
+    components: {
+        Head,
+        EvTwoTable,
+        EvStackedLine,
+        EvEnergyTable,
+        EvCard,
+        EvRateTitle,
+        EvHistory,
+        DateTemp
     },
-    // @
-    jumpIndex() {
-      this.$router.push("/evaluate");
+    mounted() {
+        this.init()
     },
-    // 节能率@
-    queryEnergyDayQuery(date) {
-      energyDayQuery(date, {}).then(res => {
-        if (res.result == "success") {
-          // 本日概况
-          this.current = res.current ? res.current : {};
-          // 相似日概况
-          this.similarDay = res.similarDay ? res.similarDay : {};
-          // 相似日列表
-          this.samples = res.samples ? res.samples : [];
-          if (this.samples.length > 0) {
-            var outsiteTemp = [],
-              indoorTemp = [],
-              energy = [];
-            for (var i in this.samples) {
-              outsiteTemp.push(this.samples[i].outsiteTemp);
-              indoorTemp.push(this.samples[i].indoorTemp);
-              energy.push(this.samples[i].energy);
+    methods: {
+        // changeSwitch(){
+        //   let getParams = {
+        //     isSatisfy:this.value2
+        //   }
+        //   queryTdbDay({getParams}).then(res=>{
+
+        //   })
+        // },
+        init() {
+            this.type = this.$route.query.type
+            this.date = this.$route.query.name
+            if (this.type) {
+                this.num = this.type
+            }
+            if (this.date) {
+                this.date = this.formatterStr3(new Date().getFullYear() + this.formatterStr2(this.date))
+            }
+            if (this.num && this.date) {
+                this.changeNumMethod(this.date)
+            }
+        },
+        // @
+        formatterStr2(str) {
+            if (str) {
+                return str.substring(0, 2) + '' + str.substring(3, 5)
+            }
+        },
+        // 室内温度table @
+        queryTdbDayMethod(date) {
+            this.dataList = []
+            let obj = {
+                // 'Fl44130300016569b876ba5311e990f9592e6484ca96': {
+                //   id: 'Fl44130300016569b876ba5311e990f9592e6484ca96',
+                //   name: '1F',
+                //   children: []
+                // }
+            }
+            // isSatisfy:this.value2
+            let getParams = {
+                isSatisfy: this.value2
+            }
+            queryTdbDay(date, { getParams }).then(res => {
+                this.tindoorFillRate = res.tindoorFillRate
+                console.log('室内温度满足率', res)
+                let content = res.content
+                this.stackArr = content
+                content.forEach(({ spaceDayRpt }) => {
+                    if (obj.hasOwnProperty(spaceDayRpt.floorId)) {
+                        obj[spaceDayRpt.floorId].children.push(spaceDayRpt)
+                    } else {
+                        obj[spaceDayRpt.floorId] = {
+                            id: spaceDayRpt.floorId,
+                            name: spaceDayRpt.floorLocalName,
+                            children: []
+                        }
+                    }
+                })
+
+                this.dataList = Object.values(obj).map(i => {
+                    // 增加 isExpand 属性
+                    i.isExpand = i.children.some(c => c.isSatisfy == false)
+                    return i
+                })
+                console.log(this.dataList)
+            })
+        },
+        // @
+        formatterStr3(str) {
+            if (str) {
+                return str.substring(0, 4) + str.substring(4, 6) + str.substring(6, 8)
+            }
+        },
+        // 执行率@
+        queryimplement(date) {
+            let params = {
+                postParams: {
+                    criteria: {
+                        date: date,
+                        projectId: this.$store.state.projectId
+                    }
+                }
+            }
+            queryChillerExecuteInfo(params).then(res => {
+                this.cardList = res.data ? res.data : []
+                console.log('执行率', res)
+            })
+        },
+        // 根据tab @
+        changeNumMethod(date) {
+            if (this.num == 1) {
+                this.queryTdbDayMethod(date)
+            } else if (this.num == 2) {
+                this.queryEnergyDayQuery(date)
+                this.querychillerMethod(date)
+            } else if (this.num == 3) {
+                this.queryimplement(date)
+            }
+        },
+        querychillerMethod(date) {
+            let params = {
+                postParams: {
+                    criteria: {
+                        projectId: this.$store.state.projectId,
+                        date: date
+                    }
+                }
+            }
+            querychiller(params).then(res => {
+                // 节能率
+                this.energySavingRate = res.content[0].energySavingRate ? res.content[0].energySavingRate : '--'
+                // 准确率
+                this.accuracy = res.content[0].accuracy ? res.content[0].accuracy : '--'
+                console.log(res)
+            })
+        },
+        // 点击tab @
+        changeNum(index) {
+            this.num = index
+            this.changeNumMethod(this.dateVal)
+        },
+        // @
+        formatterStr(str) {
+            if (str) {
+                return str.substring(0, 4) + str.substring(5, 7) + str.substring(8, 10)
+            }
+        },
+        // @
+        pickerVal(val) {
+            if (val) {
+                this.dateVal = this.formatterStr(val)
+                this.changeNumMethod(this.dateVal)
+                // console.log(this.dateVal);
+            }
+        },
+        // @
+        jumpIndex() {
+            this.$router.push('/evaluate')
+        },
+        // 节能率@
+        queryEnergyDayQuery(date) {
+            energyDayQuery(date, {}).then(res => {
+                if (res.result == 'success') {
+                    // 本日概况
+                    this.current = res.current ? res.current : {}
+                    // 相似日概况
+                    this.similarDay = res.similarDay ? res.similarDay : {}
+                    // 相似日列表
+                    this.samples = res.samples ? res.samples : []
+                    if (this.samples.length > 0) {
+                        var outsiteTemp = [],
+                            indoorTemp = [],
+                            energy = []
+                        for (var i in this.samples) {
+                            outsiteTemp.push(this.samples[i].outsiteTemp)
+                            indoorTemp.push(this.samples[i].indoorTemp)
+                            energy.push(this.samples[i].energy)
+                        }
+                        let maxOutsiteTemp = this.maxMethod(this.sortMethod(outsiteTemp)),
+                            maxIndoorTemp = this.maxMethod(this.sortMethod(indoorTemp)),
+                            maxEnergy = this.maxMethod(this.sortMethod(energy))
+                        this.maxArr.push(maxOutsiteTemp, maxIndoorTemp, maxEnergy)
+                    }
+                } else {
+                    this.$message.error('申诉失败: ' + res.message)
+                }
+            })
+        },
+        // @
+        sortMethod(arr) {
+            if (arr instanceof Array) {
+                return arr.sort(function(num1, num2) {
+                    return num1 - num2
+                })
+            } else {
+                return 1
+            }
+        },
+        // @
+        maxMethod(arr) {
+            if (arr instanceof Array) {
+                return eval(arr[arr.length - 1])
             }
-            let maxOutsiteTemp = this.maxMethod(this.sortMethod(outsiteTemp)),
-              maxIndoorTemp = this.maxMethod(this.sortMethod(indoorTemp)),
-              maxEnergy = this.maxMethod(this.sortMethod(energy));
-            this.maxArr.push(maxOutsiteTemp, maxIndoorTemp, maxEnergy);
-          }
-        } else {
-          this.$message.error("申诉失败: " + res.message);
         }
-      });
-    },
-    // @
-    sortMethod(arr) {
-      if (arr instanceof Array) {
-        return arr.sort(function(num1, num2) {
-          return num1 - num2;
-        });
-      } else {
-        return 1;
-      }
-    },
-    // @
-    maxMethod(arr) {
-      if (arr instanceof Array) {
-        return eval(arr[arr.length - 1]);
-      }
     }
-  }
-};
+}
 </script>
 <style lang="scss" scoped>
 .evTwoContainer {
-  background: #fff;
-  min-width: 1000px;
-  .count-top {
-    width: 100%;
-    height: 100%;
-    .count-top-left {
-      width: 200px;
-      display: flex;
-      align-items: center;
-      z-index: 1;
-      position: fixed;
-      left: 190px;
-      top: 68px;
-      span {
-        display: inline-block;
-      }
-      span:nth-of-type(1) {
-        height: 22px;
-        font-size: 14px;
-        color: #8d9399;
-        line-height: 22px;
-        cursor: pointer;
-      }
-      span:nth-of-type(2) {
-        color: #c3c6cb;
-        margin: 0 4px;
-        margin-top: -3px;
-      }
-      span:nth-of-type(3) {
-        height: 22px;
-        font-size: 14px;
-        color: #1f2429;
-        line-height: 22px;
-      }
-    }
-    ul {
-      display: flex;
-      padding: 0 16px;
-      // width: 100%;
-      justify-content: space-between;
-      white-space: nowrap;
-      align-items: center;
-      margin: 0;
-      text-align: center;
-      position: fixed;
-      left: 0;
-      right: 0;
-      top: 50px;
-      z-index: 1;
-      min-width: 810px;
-      .count-top-right {
-        width: 148px;
-      }
-    }
-
-    ul li {
-      cursor: pointer;
-      height: 21px;
-      float: left;
-      font-size: 16px;
-      color: rgba(31, 35, 41, 1);
-      line-height: 21px;
-      padding: 14px 16px;
-      margin-right: 22px;
-    }
-    .count-bottom {
-      padding: 0 16px;
-      height: auto;
-      background: #fff;
-      margin-top: 16px;
-      .count-bottom-switch {
-        display: flex;
-        justify-content: flex-end;
-        align-items: center;
-        margin-top: -14px;
-        .switchSpan {
-          height: 22px;
-          font-size: 14px;
-          font-family: PingFangSC-Regular, PingFang SC;
-          font-weight: 400;
-          color: rgba(31, 36, 41, 1);
-          line-height: 20px;
-          margin-right: 16px;
-        }
-      }
-      .count-historical-data {
-        .count-foot {
-          .count-foot-title {
+    background: #fff;
+    min-width: 1000px;
+    .count-top {
+        width: 100%;
+        height: 100%;
+        .count-top-left {
+            width: 200px;
             display: flex;
             align-items: center;
-            margin-bottom: 16px;
+            z-index: 1;
+            position: fixed;
+            left: 190px;
+            top: 68px;
+            span {
+                display: inline-block;
+            }
             span:nth-of-type(1) {
-              height: 24px;
-              font-size: 16px;
-              color: rgba(31, 36, 41, 1);
-              line-height: 21px;
-              margin-right: 16px;
+                height: 22px;
+                font-size: 14px;
+                color: #8d9399;
+                line-height: 22px;
+                cursor: pointer;
             }
             span:nth-of-type(2) {
-              width: 72px;
-              height: 22px;
-              background: rgba(225, 242, 255, 1);
-              border-radius: 2px;
-              font-size: 14px;
-              color: rgba(0, 101, 179, 1);
-              line-height: 22px;
-              text-align: center;
+                color: #c3c6cb;
+                margin: 0 4px;
+                margin-top: -3px;
+            }
+            span:nth-of-type(3) {
+                height: 22px;
+                font-size: 14px;
+                color: #1f2429;
+                line-height: 22px;
             }
-          }
         }
-      }
-      .count-bottom-content {
-        margin-top: 12px;
-      }
-      .count-bottom-foot {
-        margin-top: 46px;
-        height: 480px;
-        background: rgba(255, 255, 255, 1);
-        border: 1px solid rgba(228, 230, 231, 1);
-      }
-    }
-    .current {
-      font-size: 16px;
-      font-family: MicrosoftYaHei;
-      color: #0091ff;
-      line-height: 21px;
-      border-bottom: 2px solid#0091FF;
+        ul {
+            display: flex;
+            padding: 0 16px;
+            // width: 100%;
+            justify-content: space-between;
+            white-space: nowrap;
+            align-items: center;
+            margin: 0;
+            text-align: center;
+            position: fixed;
+            left: 0;
+            right: 0;
+            top: 50px;
+            z-index: 1;
+            min-width: 810px;
+            .count-top-right {
+                width: 148px;
+            }
+        }
+
+        ul li {
+            cursor: pointer;
+            height: 21px;
+            float: left;
+            font-size: 16px;
+            color: rgba(31, 35, 41, 1);
+            line-height: 21px;
+            padding: 14px 16px;
+            margin-right: 22px;
+        }
+        .count-bottom {
+            padding: 0 16px;
+            height: auto;
+            background: #fff;
+            margin-top: 16px;
+            .count-bottom-switch {
+                display: flex;
+                justify-content: flex-end;
+                align-items: center;
+                margin-top: -14px;
+                .switchSpan {
+                    height: 22px;
+                    font-size: 14px;
+                    font-family: PingFangSC-Regular, PingFang SC;
+                    font-weight: 400;
+                    color: rgba(31, 36, 41, 1);
+                    line-height: 20px;
+                    margin-right: 16px;
+                }
+            }
+            .count-historical-data {
+                .count-foot {
+                    .count-foot-title {
+                        display: flex;
+                        align-items: center;
+                        margin-bottom: 16px;
+                        span:nth-of-type(1) {
+                            height: 24px;
+                            font-size: 16px;
+                            color: rgba(31, 36, 41, 1);
+                            line-height: 21px;
+                            margin-right: 16px;
+                        }
+                        span:nth-of-type(2) {
+                            width: 72px;
+                            height: 22px;
+                            background: rgba(225, 242, 255, 1);
+                            border-radius: 2px;
+                            font-size: 14px;
+                            color: rgba(0, 101, 179, 1);
+                            line-height: 22px;
+                            text-align: center;
+                        }
+                    }
+                }
+            }
+            .count-bottom-content {
+                margin-top: 12px;
+            }
+            .count-bottom-foot {
+                margin-top: 46px;
+                height: 480px;
+                background: rgba(255, 255, 255, 1);
+                border: 1px solid rgba(228, 230, 231, 1);
+            }
+        }
+        .current {
+            font-size: 16px;
+            font-family: MicrosoftYaHei;
+            color: #0091ff;
+            line-height: 21px;
+            border-bottom: 2px solid#0091FF;
+        }
     }
-  }
 }
 </style>
 <style lang="scss">
 .count-bottom-switch {
-  .el-switch__core {
-    width: 40px !important;
-    height: 22px;
-    border-radius: 12px;
-  }
-  .el-switch.is-checked .el-switch__core::after {
-    left: 100%;
-    margin-left: -19px;
-  }
-  .el-switch__core:after {
-    content: "";
-    position: absolute;
-    border-radius: 100%;
-    -webkit-transition: all 0.3s;
-    transition: all 0.3s;
-    width: 18px;
-    height: 18px;
-    background-color: #fff;
-    top: 1px;
-  }
+    .el-switch__core {
+        width: 40px !important;
+        height: 22px;
+        border-radius: 12px;
+    }
+    .el-switch.is-checked .el-switch__core::after {
+        left: 100%;
+        margin-left: -19px;
+    }
+    .el-switch__core:after {
+        content: '';
+        position: absolute;
+        border-radius: 100%;
+        -webkit-transition: all 0.3s;
+        transition: all 0.3s;
+        width: 18px;
+        height: 18px;
+        background-color: #fff;
+        top: 1px;
+    }
 }
 </style>