| | |
| | | |
| | | import { |
| | | getTreeDataByKey, |
| | | getQueryString, |
| | | } from '../../assets/js/tools' |
| | | |
| | | export default { |
| | |
| | | ContentBox, |
| | | MyElTree, |
| | | }, |
| | | props: { |
| | | defaultExpandedKeys: { |
| | | type: Array, |
| | | default() { |
| | | return [] |
| | | }, |
| | | }, |
| | | currentNodeKey: { |
| | | type: [String, Number], |
| | | default: "" |
| | | } |
| | | }, |
| | | data() { |
| | | // 默认展开的节点 |
| | | let defaultExpandedKeys = [ |
| | | getQueryString("province"), |
| | | getQueryString("city"), |
| | | getQueryString("county"), |
| | | getQueryString("home") |
| | | ]; |
| | | // 默认激活的电池组 |
| | | let currentNodeKey = getQueryString("batt") ? getQueryString("batt") : ""; |
| | | return { |
| | | defaultExpandedKeys, |
| | | currentNodeKey, |
| | | data: [], |
| | | expanded: [], |
| | | currentKey: '', |
| | |
| | | <flex-layout direction="row" class="page-history"> |
| | | <home-list slot="header" |
| | | @toggleChange="toggleChange" |
| | | @leaf-click="leafClick" |
| | | :default-expanded-keys="defaultExpandedKeys" |
| | | :current-node-key="currentNodeKey"></home-list> |
| | | @leaf-click="leafClick"></home-list> |
| | | <content-box style="margin-left: 4px; margin-right: 4px;" :title="battFullName"> |
| | | <div slot="box-tools" class="box-tools"> |
| | | <el-tooltip class="item" effect="dark" content="实时数据" placement="bottom"> |
| | |
| | | searchHistory |
| | | } from "../../assets/js/history"; |
| | | |
| | | import { formatSeconds, getQueryString } from "../../assets/js/tools"; |
| | | import { |
| | | formatSeconds |
| | | } from "../../assets/js/tools"; |
| | | |
| | | // 端信息 |
| | | let allData = { |
| | |
| | | LineChart |
| | | }, |
| | | data() { |
| | | // 默认展开的节点 |
| | | let defaultExpandedKeys = [ |
| | | getQueryString("province"), |
| | | getQueryString("city"), |
| | | getQueryString("county"), |
| | | getQueryString("home") |
| | | ]; |
| | | // 默认激活的电池组 |
| | | let currentNodeKey = getQueryString("batt") ? getQueryString("batt") : ""; |
| | | |
| | | return { |
| | | data: [], |
| | | batt: {}, |
| | |
| | | }, |
| | | slider: 100, |
| | | testTimeLong: [], |
| | | defaultExpandedKeys: defaultExpandedKeys, |
| | | currentNodeKey: currentNodeKey |
| | | }; |
| | | }, |
| | | methods: { |
| | |
| | | // 向父级发送同步页面的指令 |
| | | syncPage() { |
| | | let batt = this.batt; |
| | | console.log(batt); |
| | | let search="?province="+batt.StationName1 |
| | | +"&city="+batt.StationName2+"&county="+batt.StationName5 |
| | | +"&home="+batt.StationName3+"&batt="+batt.BattGroupId; |
| | |
| | | <template> |
| | | <flex-layout direction="row" class="page-real-time"> |
| | | <home-list slot="header" @toggleChange="toggleChange" @leaf-click="leafClick"></home-list> |
| | | <home-list slot="header" |
| | | @toggleChange="toggleChange" |
| | | @leaf-click="leafClick"></home-list> |
| | | <content-box style="margin-left: 4px; margin-right: 4px;" :title="battFullName"> |
| | | <div slot="box-tools" class="box-tools"> |
| | | <el-tooltip class="item" effect="dark" content="历史数据" placement="bottom"> |
| | | <i class="iconfont el-icon-jinru" @click="syncPage"></i> |
| | | </el-tooltip> |
| | | </div> |
| | | <flex-layout> |
| | | <div class="content-header" slot="header" :model="inputs"> |
| | | <div class="table-layout"> |
| | |
| | | str = "00H00M"; |
| | | } |
| | | return str; |
| | | }, |
| | | // 向父级发送同步页面的指令 |
| | | syncPage() { |
| | | let batt = this.batt; |
| | | let search="?province="+batt.StationName1 |
| | | +"&city="+batt.StationName2+"&county="+batt.StationName5 |
| | | +"&home="+batt.StationName3+"&batt="+batt.BattGroupId; |
| | | window.parent.postMessage({ |
| | | cmd: "syncPage", |
| | | params: { |
| | | pageInfo: { |
| | | label: '历史数据', |
| | | name: 'history', |
| | | src: '#/history'+search, |
| | | closable: true, |
| | | } |
| | | }, |
| | | }, "*"); |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | box-sizing: border-box; |
| | | height: 100%; |
| | | } |
| | | .box-tools { |
| | | line-height: 32px; |
| | | } |
| | | .box-tools .iconfont { |
| | | font-size: 20px; |
| | | } |
| | | .box-tools .iconfont:hover { |
| | | cursor: pointer; |
| | | color: #cfcfcf; |
| | | } |
| | | .box-tools .iconfont:active { |
| | | color: #FF0000; |
| | | } |
| | | </style> |
| | | |
| | | |
| | |
| | | break; |
| | | } |
| | | }, |
| | | // 同步页面 |
| | | syncPage(params) { |
| | | let tabs = this.tabs; |
| | | let menu = params.pageInfo; |
| | | // 检测name是否已经存在tabs内 |
| | | let notIn = true; |
| | | tabs.forEach(item=>{ |
| | | let index = -1; |
| | | tabs.forEach((item, flag)=>{ |
| | | // 页面是否已经打开 |
| | | if(item.name == menu.name) { |
| | | notIn = false; |
| | | index = flag; |
| | | } |
| | | }); |
| | | // 不在, 添加menu到tabs中 |
| | | if(notIn) { |
| | | tabs.push(menu); |
| | | }else { // 页面已存在,并刷新页面 |
| | | tabs.splice(index, 1); |
| | | this.$nextTick(()=>{ |
| | | tabs.splice(index, 0, menu); |
| | | }); |
| | | } |
| | | |
| | | // 设置激活的导航 |