Commit ffc8e0e8 authored by xiexingan's avatar xiexingan

Merge

parents 46ed3c31 c80d713d
......@@ -153,3 +153,41 @@ $el-bg-color-4: #F2F6FC;
.theme-d2 .d2-theme-container .d2-theme-container-aside .d2-layout-header-aside-menu-side>.el-menu> .el-menu-item:first-child{
background: transparent ;
}
.en-tabs {
.el-tabs__header {
margin: 0;
}
.el-tabs__active-bar{
bottom:-1px ;
}
.el-tabs__nav-wrap::after {
height: 0;
}
.el-tabs__nav-wrap {
background: #f2f4f5;
.el-tabs__nav {
border-bottom: 1px solid #e5e9ec;
}
}
.el-tabs__header {
border: 1px solid #e5e9ec;
}
.el-tabs__item:nth-child(2) {
padding: 0 30px !important;
}
.el-tabs__item:last-child {
padding: 0 30px !important;
}
.el-tabs__item.is-active {
background: #fff;
}
}
<template>
<div class="d2-layout-header-aside-group" :style="styleLayoutMainGroup" :class="{ grayMode: grayActive }">
<div
class="d2-layout-header-aside-group"
:style="styleLayoutMainGroup"
:class="{ grayMode: grayActive }"
>
<!-- 半透明遮罩 -->
<div class="d2-layout-header-aside-mask"></div>
<!-- 主体内容 -->
<div class="d2-layout-header-aside-content" flex="dir:top">
<!-- 顶栏 -->
<div class="d2-theme-header" flex-box="0" flex>
<div class="logo-group" :style="{width: asideWidth}" flex-box="0">
<img src="./imgs/train.png">
<img src="./imgs/logo2x.png">
<div class="logo-group" flex-box="0" style="margin-left:30px">
<img src="./imgs/train.png" style="width:50px;height:50px" />
<img src="./imgs/energy_text.png" />
</div>
<div style='width:100%;'>
<div style="width: 100%">
<div flex-box="1"></div>
<!-- 顶栏右侧 -->
<div class="d2-header-right">
<div class="time-container">
<div
class="time-container"
style="padding-right: 26px; text-align: unset"
>
<div class="current-time">{{ time | formatDate }}</div>
<div class="current-date">{{ time | formatDate2 }}</div>
</div>
<div class="weather-container">
<div class="user-img">室内</div>
<div class="weather-info">
<!-- <span :class="station.length < 6 ? 'lineFeed' : ''">{{station }}</span> -->
<span>温度 20℃</span>
<span>湿度 60%</span>
<div class="subway-container" style="margin-right:43px">
<div class="subway-info" style="transform: rotate(180deg)">
<!-- <span :class="station.length < 6 ? 'lineFeed' : ''">{{
station
}}</span> -->
</div>
</div>
<div class="weather-container">
<div class="user-img">室外</div>
<div class="weather-info">
<!-- <span :class="station.length < 6 ? 'lineFeed' : ''">{{station }}</span> -->
<span>温度 20℃</span>
<span>湿度 60%</span>
<div style="display: flex; position: absolute">
<div
style="
background: #fff;
position: relative;
top: -1px;
left: -17px;
text-align: center;
font-size: 12px;
width: 35px;
height: 35px;
border-radius: 50%;
line-height: 35px;
"
>
室内
</div>
<div
style="
font-size: 12px;
color: #fff;
position: relative;
left: -8px;
"
>
<div>温度:20℃</div>
<div>湿度:60%</div>
</div>
</div>
</div>
<!-- <d2-header-theme /> -->
<!-- <el-badge class="msg-img" :value="countNum == 0 ? '' : countNum > 99 ? '99+' : countNum" type="danger">
<div title="报警中心" style="cursor: pointer" @click="toAlarms">
<img src="./imgs/msg.png" />
</div>
</el-badge> -->
<d2-header-user />
<div title="退出" class="msg-img" style="cursor: pointer;" @click="logOff">
<img src="./imgs/out.png" />
<div class="subway-container" >
<div class="subway-info" style="transform: rotate(180deg)">
<!-- <span :class="station.length < 6 ? 'lineFeed' : ''">{{
station
}}</span> -->
</div>
<div style="display: flex; position: absolute">
<div
style="
background: #fff;
position: relative;
top: -1px;
left: -17px;
text-align: center;
font-size: 12px;
width: 35px;
height: 35px;
border-radius: 50%;
line-height: 35px;
"
>
室外
</div>
<div
style="
font-size: 12px;
color: #fff;
position: relative;
left: -8px;
"
>
<div>晴:20℃</div>
<div>湿度:60%</div>
</div>
</div>
</div>
</div>
</div>
......@@ -50,10 +103,15 @@
<!-- 下面 主体 -->
<div class="d2-theme-container" flex-box="1" flex>
<!-- 主体 侧边栏 -->
<div flex-box="0" ref="aside" class="d2-theme-container-aside" :style="{
width:asideWidth,
opacity: this.searchActive ? 0.5 : 1
}">
<div
flex-box="0"
ref="aside"
class="d2-theme-container-aside"
:style="{
width: asideWidth,
opacity: this.searchActive ? 0.5 : 1,
}"
>
<d2-menu-side />
</div>
<!-- 主体 -->
......@@ -72,7 +130,7 @@
</transition>
</div>
</div>
<div style="z-index:9999!important;user-select:none;" class="mfooter">
<div style="z-index: 9999 !important; user-select: none" class="mfooter">
Copyright (C) 2009-2010. XXXXX信息工程有限公司 蜀ICP备1202XXXX号-1
电话:86-028-689XXXX 传真:86-028-6893XXXX
</div>
......@@ -92,7 +150,6 @@ export default {
'd2-menu-header': () => import('./components/menu-header'),
'd2-header-theme': () => import('./components/header-theme'),
'd2-header-user': () => import('./components/header-user')
},
data() {
return {
......@@ -222,8 +279,8 @@ export default {
}
.time-container {
width: 93px;
text-align: center;
// border:1px solid red;
text-align: right;
// border:1px solid red;
padding: 2px;
.current-time {
font-size: 18px;
......@@ -241,24 +298,17 @@ export default {
margin-right: 10px;
img {
width: 37px;
height: 37px;
height: 36px;
vertical-align: middle;
}
}
.weather-container {
.subway-container {
display: flex;
align-items: center;
margin-right: 10px;
.user-img {
width: 37px;
height: 36px;
line-height: 37px;
text-align: center;
font-size: 14px;
color: #A0A8B4;
border: 1px solid #A0A8B4;
border-radius: 50%;
img {
width: 37px;
height: 36px;
......@@ -266,17 +316,18 @@ export default {
}
}
.weather-info {
width: 90px;
.subway-info {
width: 84px;
height: 36px;
border:1px solid;
border-color: #A0A8B4 #A0A8B4 #A0A8B4 transparent;
border-top-right-radius: 5px;
border-bottom-right-radius: 5px;
transform: translateX(-19px);
background: url(./imgs/subwayBg.png);
background-size: 100% 100%;
transform: translateX(12px);
text-align: right;
span {
display: inline-block;
text-indent: 25px;
height: 36px;
padding-top: 2px;
padding-right: 16px;
font-size: 12px;
font-family: Microsoft YaHei;
font-weight: 400;
......@@ -316,17 +367,12 @@ export default {
.d2-layout-header-aside-group
.d2-layout-header-aside-content
.d2-theme-header
.logo-group {
height: 36px;
width: 300px;
display: flex;
.logo-group
img {
padding-left: 20px;
height: 36px;
&:last-child {
padding-left: 10px;
}
}
height: 40px;
padding: 0 20px 0 10px;
width: 300px;
vertical-align: middle;
}
.mfooter {
......
......@@ -2,27 +2,53 @@
<div class="energy-page">
<cardList cardListTitle="能耗数据分析">
<div slot="right" >
<span
<!-- <span
:class="activeIndex === index ? 'active-hight-linght' : ''"
class="date-text"
@click="activehandle(item, index)"
v-for="(item, index) in dateList"
:key="item.value"
>{{ item.label }}</span
>
<el-date-picker
> -->
<!-- <el-date-picker
size="mini"
type="daterange"
range-separator="~"
start-placeholder="开始日期"
end-placeholder="结束日期"
> -->
<!-- </el-date-picker> -->
<!-- <i style=" padding-left:20px;padding-right: 20px;color:#21acfc" class="el-icon-s-unfold"></i> -->
<!-- <i class="el-icon-printer" style="color:#21acfc"></i> -->
<el-button size="mini" type="primary" @click="toPowerPage">图形/列表</el-button>
</div>
<div slot="content" >
<div >
<!-- <enTabs :tabList="energyTabList"></enTabs> -->
<el-tabs class="en-tabs" v-model="activetap" >
<el-row style="padding-top:15px">
<el-col :span="10">
<span>时间范围:</span>
<el-date-picker
size="mini"
type="daterange"
range-separator="~"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
<i style=" padding-left:20px;padding-right: 20px;color:#21acfc" class="el-icon-s-unfold"></i>
<i class="el-icon-printer" style="color:#21acfc"></i>
</div>
<div slot="content" style="padding: 24px 28px 20px 23px">
<div style="margin-bottom: 20px">
<enTabs :tabList="energyTabList"></enTabs>
</el-col>
<el-col :span="4">
<el-button type="primary" size="mini" icon="el-icon-search">查询</el-button>
</el-col>
</el-row>
<el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in energyTabList"
:key="index"
></el-tab-pane>
</el-tabs>
</div>
<el-row>
<el-col :span="24">
......@@ -35,21 +61,22 @@
</template>
<script>
import cardList from "../../home/compontents/cardList";
import enTabs from '../../eq/hall/components/enTabs'
import cardList from "../../components/cardList";
import enTabs from "../../components/enTabs";
// import enTable from '../../eq/hall/components/enTable'
import energyChart from '../../home/compontents/energyTotalCharts'
import energyChart from "../../components/energyTotalCharts";
export default {
name: "energypage",
components: {
cardList,
enTabs,
energyChart
energyChart,
},
data() {
return {
activeIndex: 1,
dateList: [
activeIndex: 1,
activetap: "01",
dateList: [
// {
// value: "01",
// label: "时段",
......@@ -71,8 +98,8 @@ export default {
label: "全年",
},
],
energyTabList:[
{
energyTabList: [
{
value: "01",
label: "全部",
},
......@@ -88,33 +115,37 @@ export default {
value: "04",
label: " 多联新风",
},
]
],
};
},
methods: {
methods: {
activehandle(item, index) {
this.activeIndex = index;
},
toPowerPage(){
this.$router.push({
path:'/kb/power'
})
},
},
};
</script>
<style lang="scss">
.energy-page{
padding:10px 10px 40px 10px;
.el-input__inner {
// height: 30px;
.energy-page {
height: 100%;
padding: 0px 0px 40px 0px;
.date-text {
padding-right: 20px;
font-size: 14px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #1d1d1d;
cursor: pointer;
}
.date-text {
padding-right: 20px;
font-size: 14px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #1d1d1d;
cursor: pointer;
}
.active-hight-linght {
color: #21acfc;
}
.active-hight-linght {
color: #21acfc;
}
}
</style>
......@@ -6,8 +6,10 @@
<slot name="right" />
</div>
</div>
<div class="card-list-content">
<slot name="content" />
</div>
</div>
</template>
......@@ -30,6 +32,7 @@ export default {
width: 100%;
height: 100%;
background: #fff;
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
&-line {
display: flex;
justify-content: space-between;
......@@ -60,5 +63,9 @@ export default {
// height: 16px;
// background: #1890ff;
// }
.card-list-content{
padding:20px;
height: calc( 155 - 40px );
}
}
</style>
......@@ -26,13 +26,14 @@
</el-table-column>
</template>
<el-table-column align="center" label="操作" width="100" v-if="isShowOp">
<template slot-scope="scope">
<el-button type="text" size="small">编辑</el-button>
<el-table-column align="center" label="操作" width="150" >
<template slot-scope="scope" >
<slot name='operation' :scope='scope'></slot>
</template>
</el-table-column>
</el-table>
<div
v-if="isShowPage"
style="
display: flex;
justify-content: flex-end;
......@@ -40,10 +41,11 @@
line-height: 3;
"
>
<div style=" ;" class="record-color marg_r_18">共34860条记录</div>
<div class="record-color marg_r_18">共34860条记录</div>
<div class="record-color marg_r_8">共20页</div>
<div class="record-color">每页显示</div>
<el-pagination layout="sizes, prev, pager, next" background :total="1000">
<!-- background -->
<el-pagination layout="sizes, prev, pager, next" :total="1000">
</el-pagination>
</div>
</div>
......@@ -52,10 +54,35 @@
<script >
export default {
name: "enTable",
props: ["tableData", "tableColums",'isShowOp'],
props: {
// ["", "tableColums",'isShowOp'.toString
tableData:{
type:Array,
},
tableColums:{
type:Array,
},
isShowOp:{
type:Boolean,
defaul:false,
},
isShowPage:{
defaul:true,
},
isEdit:{
defaul:true,
}
},
data() {
return {};
},
methods:{
handleClick(){
this.$emit('handleBtnClick')
}
}
};
</script>
<style lang="scss">
......@@ -72,5 +99,9 @@ export default {
.el-pagination.is-background .btn-next, .el-pagination.is-background .btn-prev, .el-pagination.is-background .el-pager li{
margin: 0 !important;
}
/deep/.el-pagination.is-background .el-pager li:not(.disabled).active {
color: #32a5ea !important;
background-color: red !important;
}
}
</style>
<template>
<template >
<div class="en-tabs">
<ul class="ul-wrap">
<li
......@@ -11,24 +11,35 @@
{{ item.label }}
</p>
</li>
</ul>
</div>
</template>
<script lang="ts">
<script >
import { Tabs } from 'element-ui';
export default {
name: "elTabs",
props:['tabList'],
props: ["tabList"],
data() {
return {
isActiveIndex:0,
isActiveIndex: 0,
activeName: 'second',
};
},
methods: {
methods: {
tabHandle(item, index) {
this.isActiveIndex = index;
this.$emit('tabHandle')
// this.$emit("tabHandle");
},
},
};
......@@ -36,40 +47,37 @@ export default {
<style scoped lang="scss">
.en-tabs{
.show-bar-border {
border-bottom: 2px solid #0097ff;
}
.ul-wrap {
list-style: none;
margin: 0;
padding: 0;
display: flex;
color: #666;
background: rgba(229, 233, 236, 0.5);
border: 1px solid #e5e9ec;
font-size: 14px;
li {
position: relative;
padding: 0 71px;
cursor: pointer;
p {
margin: 0;
padding: 0;
padding-bottom: 14px;
padding-top: 15px;
box-sizing: border-box;
}
}
.isActive {
background: #fff;
color: #0097ff;
.en-tabs {
.show-bar-border {
border-bottom: 2px solid #0097ff;
}
}
// .ul-wrap {
// list-style: none;
// margin: 0;
// padding: 0;
// display: flex;
// color: #666;
// background: rgba(229, 233, 236, 0.5);
// border: 1px solid #e5e9ec;
// font-size: 14px;
// li {
// position: relative;
// padding: 0 71px;
// cursor: pointer;
// p {
// margin: 0;
// padding: 0;
// padding-bottom: 14px;
// padding-top: 15px;
// box-sizing: border-box;
// }
// }
// .isActive {
// background: #fff;
// color: #0097ff;
// }
// }
}
......
......@@ -13,6 +13,7 @@ export default {
};
},
mounted() {
this.initPie();
},
......
<template>
<el-dialog title="编辑" :visible.sync="hallModalVisible" :append-to-body="true">
<el-form >
<el-form-item label="设定频率:" :label-width="formLabelWidth">
<el-input size="mini" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="启动控制:" :label-width="formLabelWidth">
<el-switch ></el-switch>
</el-form-item>
</el-form>
<div slot="footer" >
<el-button @click="cancelhandle">取 消</el-button>
<el-button type="primary" @click="cancelhandle">确 定</el-button>
</div>
</el-dialog>
</template>
<script lang="ts">
export default {
name: "hallModal",
props: ["hallModalVisible"],
data() {
return {
formLabelWidth:'120px',
};
},
methods:{
cancelhandle(){
this.$emit('cancelhandle')
}
}
};
</script>
<template>
<div class="hall full-height">
<cardList cardListTitle="候车大厅控制">
<div slot="content" style="padding: 24px 28px 20px 23px">
<div slot="content" >
<div>
<el-row>
<el-form :inline="true" :model="formData" label-width="100">
<el-col :md="14" :lg="13">
<el-row>
<el-col :span="12">
<el-form-item label="定时功能启止时间:">
<el-date-picker
size="mini"
style="width: 200px"
type="date"
placeholder=""
......@@ -15,6 +17,7 @@
</el-date-picker>
<span style="padding: 0 10px"></span>
<el-date-picker
size="mini"
style="width: 200px"
type="date"
placeholder=""
......@@ -22,14 +25,13 @@
</el-date-picker>
</el-form-item>
</el-col>
<el-col :md="12" :lg="4">
<el-col :span="4">
<el-form-item label="定时设定按钮:">
<el-switch active-color="#0097FF" inactive-color="#ff4949">
</el-switch>
</el-form-item>
</el-col>
<el-col :md="12" :lg="5">
<el-col :span="5">
<el-form-item label="温度设定:">
<el-input
style="width: 124px"
......@@ -40,7 +42,10 @@
<!-- <el-button type="primary" >查询</el-button> -->
</el-form-item>
</el-col>
<el-col :md="12" :lg="4">
</el-row>
<el-row>
<el-col :md="12" :lg="4">
<el-form-item label="节能模式:">
<el-switch
active-color="#13ce66"
......@@ -51,41 +56,60 @@
<el-col :md="12" :lg="10">
<el-form-item label="">
<el-button type="" size="small">编辑</el-button>
<el-button type="" size="small">自然通风</el-button>
<el-button type="" size="small">机械通风</el-button>
<el-button type="" size="small">供暖</el-button>
<el-button type="primary" size="mini">编辑</el-button>
<el-button type="primary" size="mini">自然通风</el-button>
<el-button type="primary" size="mini">机械通风</el-button>
<el-button type="primary" size="mini">供暖</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-row>
</div>
<!-- tabs -->
<div style="margin-bottom: 20px">
<en-tabs :tabList="tabList"></en-tabs>
<!-- <en-tabs :tabList="tabList"></en-tabs> -->
<div>
<el-tabs class="en-tabs" v-model="activeTab" >
<el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in tabList"
:key="index"
></el-tab-pane>
</el-tabs>
</div>
</div>
<!-- table -->
<enTable :tableData="tableData" :tableColums="tableColums" isShowOp="true"></enTable>
<enTable v-on:handleBtnClick="handleBtnClick" :tableData="tableData" :tableColums="tableColums" :isShowOp="true" isShowPage="true">
<template v-slot:operation='scope'>
<el-button type="text" @click="hallModalVisible=true">编辑</el-button>
</template>
</enTable>
</div>
</cardList>
<hall-modal v-on:cancelhandle="cancelhandle" :hallModalVisible="hallModalVisible"></hall-modal>
hallModalVisible
</div>
</template>
<script>
import cardList from "../../home/compontents/cardList";
import enTable from "./components/enTable";
import enTabs from './components/enTabs'
import cardList from "../../components/cardList";
import enTable from "../../components/enTable";
import enTabs from '../../components/enTabs'
import hallModal from './components/hallModal'
const tableColums = [
{
align: "center",
prop: "A",
label: "设备名称",
width: 132,
width: 112,
},
{
align: "center",
prop: "B",
label: "设备描述",
width: 112,
// width: 112,
},
{
align: "center",
......@@ -224,12 +248,13 @@ export default {
cardList,
enTable,
enTabs,
hallModal,
},
data() {
return {
tableColums,
tableData,
activeTab:'01',
formData: {},
tabList: [
{
......@@ -249,21 +274,32 @@ export default {
label: " 水泵",
},
],
hallModalVisible:false,
};
},
methods: {
cancelhandle(){
this.$nextTick(()=>{
this.hallModalVisible = false
})
},
handleBtnClick(){
this.hallModalVisible = true
}
},
};
</script>
<style lang="scss" >
.hall {
height: 100%;
padding:10px 10px 40px 10px;
padding:0px 0 40px 0px;
.el-input__inner {
height: 30px;
}
.el-form-item{
margin-bottom: 10px;
}
.el-form-item__label {
padding: 0;
}
......
export const tableColumsOne = [
{
align: "center",
prop: "A",
label: "设备名称",
width: 132,
},
{
align: "center",
prop: "B",
label: "设备位置",
// width: 112,
},
{
align: "center",
prop: "C",
label: "控制方式",
width: 132,
},
{
align: "center",
prop: "D",
label: "能耗统计",
width: 182,
},
{
align: "center",
prop: "E",
label: "设备编号",
width: 132,
},
];
export const tableDataOne = [
{
A: "多联空调A1",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A2",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A3",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A4",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A5",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: " 多联空调A4",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: " 多联空调A4",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: " 多联空调A4",
B: "右侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: " 多联空调A4",
B: "右侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A10",
B: "右侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: "多联空调A",
B: "左侧办公房屋",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
];
export const tableDataTwo = [
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: " 多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLW-A1'
},
{
A: " 多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: " 多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: " 多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
{
A: "多联新风",
B: "屋面",
C: "开/关/设定温度",
D: "今日用电量/本月用电量",
E:'DLX-1'
},
];
export const tableDataThree = [
{
A: "机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 机房空调",
B: "通信机械室",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 机房空调",
B: "右侧办公房屋",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "信息机房",
B: "右侧办公房屋",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "信息机房",
B: "左侧办公房屋",
C: "显示状态",
D: "今日用电量/本月用电量",
E:'JK-1'
},
];
export const tableDataFour = [
{
A: "排风机",
B: "售票厅",
C: "开/关",
D: "今日用电量/本月用电量",
E:'PF-B5'
},
{
A: "排风机",
B: "消防泵房",
C: "开/关",
D: "今日用电量/本月用电量",
E:'PF-B4'
},
{
A: "排风机",
B: "车站备品间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'厕所排风机1#'
},
{
A: "排风机",
B: "候车厅公共卫生间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'厕所排风机2#'
},
{
A: "排风机",
B: "出站通道公共卫生间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'厕所排风机3#'
},
{
A: " 换气扇",
B: "吸氧间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 换气扇",
B: "吸氧间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 换气扇",
B: "吸氧间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: " 换气扇",
B: "吸氧间",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "换气扇",
B: "站长室",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
{
A: "换气扇",
B: "VIP候车室",
C: "开/关",
D: "今日用电量/本月用电量",
E:'JK-1'
},
];
\ No newline at end of file
<template>
<div class="office-area-control" style=" padding:10px 10px 40px 10px;">
<div class="office-area-control" style="padding:0 0 40px 0">
<cardList cardListTitle="办公区域控制">
<div slot="content" style="padding: 24px 28px 20px 23px">
<enTabs :tabList="officeTabList"></enTabs>
<div slot="content" >
<!-- <enTabs :tabList="officeTabList"></enTabs> -->
<el-tabs class="en-tabs" v-model="activeTab" >
<el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in officeTabList"
:key="index"
></el-tab-pane>
</el-tabs>
<div style="margin-top: 20px"></div>
<en-table :tableData="tableData" :tableColums="tableColums" isShowOp="true"> </en-table>
<en-table :tableData="tableData" :tableColums="tableColums" :isShowOp="true" isShowPage="true">
<template v-slot:operation='scope'>
<el-button type="text">编辑</el-button>
</template>
</en-table>
</div>
</cardList>
</div>
</template>
<script >
const tableColums = [
{
align: "center",
prop: "A",
label: "设备名称",
width: 132,
},
{
align: "center",
prop: "B",
label: "设备描述",
width: 112,
},
{
align: "center",
prop: "C",
label: "运行状态",
width: 132,
},
{
align: "center",
prop: "D",
label: "当前频率",
width: 132,
},
{
align: "center",
prop: "E",
label: "故障报警",
width: 132,
},
{
align: "center",
prop: "F",
label: "说明",
width: 132,
},
{
align: "center",
prop: "G",
label: "设备编号",
width: 132,
},
];
const tableData = [
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
{
A: "A",
B: "YA01254N51",
C: "正常",
D: "110Hz",
E: "",
F: "说明",
G: "QY0001",
},
];
import cardList from "../../home/compontents/cardList";
import enTabs from "../hall/components/enTabs";
import enTable from "../hall/components/enTable";
// const tableColums = [
// {
// align: "center",
// prop: "A",
// label: "设备名称",
// width: 132,
// },
// {
// align: "center",
// prop: "B",
// label: "设备位置",
// // width: 112,
// },
// {
// align: "center",
// prop: "C",
// label: "控制方式",
// width: 132,
// },
// {
// align: "center",
// prop: "D",
// label: "能耗统计",
// width: 132,
// },
// // {
// // align: "center",
// // prop: "E",
// // label: "故障报警",
// // width: 132,
// // },
// // {
// // align: "center",
// // prop: "F",
// // label: "说明",
// // width: 132,
// // },
// {
// align: "center",
// prop: "G",
// label: "设备编号",
// width: 132,
// },
// ];
// const tableData = [
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// {
// A: "A",
// B: "YA01254N51",
// C: "正常",
// D: "110Hz",
// E: "",
// F: "说明",
// G: "QY0001",
// },
// ];
import cardList from "../../components/cardList";
import enTabs from "../../components/enTabs";
import enTable from "../../components/enTable";
import { tableDataOne,tableColumsOne ,tableDataTwo,tableDataThree,tableDataFour} from './config'
export default {
name: "officeAreaControl",
components: {
......@@ -165,10 +179,12 @@ export default {
enTabs,
enTable,
},
data() {
return {
tableData,
tableColums,
activeTab:'01',
tableData:tableDataOne,
tableColums:tableColumsOne,
officeTabList: [
{
value: "01",
......@@ -189,5 +205,27 @@ export default {
],
};
},
watch:{
activeTab(val){
switch (val){
case '01':
this.tableColums = tableColumsOne
this.tableData = tableDataOne
break;
case '02':
this.tableColums = tableColumsOne
this.tableData = tableDataTwo
break;
case '03':
this.tableColums = tableColumsOne
this.tableData = tableDataThree
break;
case '04':
this.tableColums = tableColumsOne
this.tableData = tableDataFour
break;
}
}
}
};
</script>
......@@ -22,7 +22,7 @@
</div>
</div>
<div class="home-page-content" >
<el-row :gutter="14" >
<el-row :gutter="12" >
<el-col :span="16" >
<card-list :cardListTitle="cardListLeftTitle">
<div slot="right">
......@@ -107,7 +107,7 @@
</div>
</card-list>
</el-col>
<el-col :span="8">
<el-col :span="8" style="padding-left:0">
<card-list :cardListTitle="cardListRightTitle" >
<div slot="content">
<my-pies></my-pies>
......@@ -120,9 +120,9 @@
</template>
<script>
import cardList from "./compontents/cardList";
import energyTotalCharts from "./compontents/energyTotalCharts";
import myPies from "./compontents/myPies";
import cardList from "../components/cardList";
import energyTotalCharts from "../components/energyTotalCharts";
import myPies from "../components/myPies";
// import CardList from './compontents/cardList.vue';
export default {
name: "home",
......@@ -194,29 +194,30 @@ export default {
},
};
</script>
<style lang="scss" scoped>
@import "~@/assets/style/public.scss";
.home-page {
height: 100%;
width: 100%;
padding:10px 10px 40px 10px;
padding:0px 0px 40px 0px;
// overflow: auto;
&-top {
margin: 20px;
margin-bottom: 24px;
.f-group {
width: 100%;
display: flex;
.f-item {
box-sizing: border-box;
width: calc(20% - 19px);
width: calc(20% - 18px);
height: 216px;
margin-right: 24px;
padding-top: 40px;
background-color: #fff;
text-align: center;
box-shadow: 4px 0px 4px 0px rgba(0, 0, 0, 0.05);
// box-shadow: 4px 0px 4px 0px rgba(0, 0, 0, 0.05);
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
img {
width: 50px;
height: 50px;
......@@ -246,6 +247,7 @@ export default {
}
.home-page-content {
margin: 20px;
.date-text {
padding-right: 20px;
font-size: 14px;
......@@ -259,6 +261,7 @@ export default {
}
.content-wrap {
// margin: 20px;
.energy-save-mode-wrap {
// width: ;
box-sizing: border-box;
......
<template>
<el-dialog
title="历史数据"
:visible.sync="historyDataModalVisible"
:append-to-body="true"
>
<el-form :inline="true">
<el-form-item label="设备名称:" :label-width="formLabelWidth">
<el-input size="mini" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="设备编号:" :label-width="formLabelWidth">
<el-input size="mini" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="数据起止阶段:" :label-width="formLabelWidth">
<el-date-picker style="width:157px" size="mini" type="date" placeholder="">
</el-date-picker>
<span style="padding:0 10px"></span>
<el-date-picker style="width:157px" size="mini" type="date" placeholder="">
</el-date-picker>
</el-form-item>
<el-form-item >
<el-button size='mini' type="primary" icon="el-icon-search" >查询</el-button>
<el-button size='mini' type="primary" icon="el-icon-download">导出</el-button>
</el-form-item>
</el-form>
<enTable :tableData="historyData" :tableColums="tableColums"></enTable>
<div slot="footer">
<el-button @click="cancelhandle">取 消</el-button>
<el-button type="primary" @click="cancelhandle">确 定</el-button>
</div>
</el-dialog>
</template>
<script >
import enTable from '../../../components/enTable'
const historyData = [
]
const tableColums = [
{
label:'功率',
prop:'qq',
width:200,
align:'center'
},
{
label:'设备状态',
prop:'ww',
width:200,
align:'center'
},
{
label:'采集时间',
prop:'ee',
// width:200,
align:'center'
}
]
export default {
name: "historyDataModal",
props: ["historyDataModalVisible"],
components:{
enTable
},
data() {
return {
formLabelWidth: "110px",
historyData,
tableColums,
};
},
methods: {
cancelhandle() {
this.$emit("cancelhandle");
},
},
};
</script>
<template>
<el-dialog
title="统计图表"
:visible.sync="statisticModalVisible"
:append-to-body="true"
>
<el-form :inline="true">
<el-form-item label="设备名称:" label-width="formLabelWidth">
<el-input size="mini" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="设备编号:" label-width="formLabelWidth">
<el-input size="mini" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="数据起止阶段:" label-width="formLabelWidth">
<el-date-picker
style="width: 157px"
size="mini"
type="date"
placeholder=""
>
</el-date-picker>
<span style="padding: 0 10px"></span>
<el-date-picker
style="width: 157px"
size="mini"
type="date"
placeholder=""
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button size="mini" type="primary" icon="el-icon-search"
>查询</el-button
>
</el-form-item>
</el-form>
<div id="categoryId" style="height: 200px"></div>
<div slot="footer">
<el-button @click="cancelhandlePic">取 消</el-button>
<el-button type="primary" @click.stop="cancelhandlePic">确 定</el-button>
</div>
</el-dialog>
</template>
<script lang="ts">
export default {
name: "statisticPicTableModal",
props: ["statisticModalVisible"],
data() {
return {
formLabelWidth: "120px",
category: null,
};
},
// watch: {
// statisticModalVisible(value) {
// if (value) {
// }
// },
// },
mounted() {
setTimeout(() => {
this.initCategory();
}, 3000);
},
methods: {
cancelhandlePic() {
this.$emit("cancelhandlePic");
},
initCategory() {
let gId = document.getElementById("categoryId");
this.category = this.$echarts.init(gId);
const option = {
xAxis: {
type: "category",
data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
},
yAxis: {
type: "value",
},
series: [
{
data: [150, 230, 224, 218, 135, 147, 260],
type: "line",
},
],
};
this.category.setOption(option);
},
},
};
</script>
......@@ -2,26 +2,37 @@
<div class="use-electro-data">
<cardList cardListTitle="用电数据">
<div slot="right">
<i class="el-icon-menu"></i>
<!-- <i class="el-icon-menu"></i> -->
<el-button size="mini" @click="toEnergyPage" type="primary">综合图形</el-button>
</div>
<div slot="content" style="padding: 24px 28px 20px 23px">
<enTabs :tabList="electroTabList" ></enTabs>
<div style="margin-top:15px">
<el-form :inline="true" :model="formInline" style="text-align:center">
<div slot="content">
<!-- <enTabs ></enTabs> -->
<div>
<el-tabs class="en-tabs" v-model="activeTab" >
<el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in electroTabList"
:key="index"
></el-tab-pane>
</el-tabs>
</div>
<div>
<el-form :inline="true">
<el-row>
<el-col :span="7">
<el-form-item label="设备名称:">
<el-input size="mini" placeholder=""></el-input>
<el-input size="mini" placeholder=""></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="设备编号:">
<el-input size="mini" placeholder=""></el-input>
<el-input size="mini" placeholder=""></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="运行状态:">
<el-select size="mini" placeholder="">
<el-select size="mini" placeholder="">
<el-option label="正常" value="shanghai"></el-option>
<el-option label="不正常" value="beijing"></el-option>
</el-select>
......@@ -29,23 +40,44 @@
</el-col>
<el-col :span="3">
<el-form-item>
<el-button icon="el-icon-search" size="mini" type="primary" @click="onSubmit">查询</el-button>
<el-button icon="el-icon-search" size="mini" type="primary"
>查询</el-button
>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<enTable :tableColums="tableColums" :tableData="tableData" isShowOp="true"></enTable>
<enTable
:tableColums="tableColums"
:tableData="tableData"
:isShowOp="true"
isShowPage="true"
>
<template v-slot:operation='scope'>
<el-button type="text" @click="openHistoryHandle">历史数据</el-button>
<el-button type="text" @click="openPicTHandle">统计图表</el-button>
</template>
</enTable>
</div>
</cardList>
<history-data-modal
:historyDataModalVisible="historyDataModalVisible"
v-on:cancelhandle="cancelhandle"
></history-data-modal>
<statistic-pic-table-modal
:statisticModalVisible="statisticModalVisible"
v-on:cancelhandlePic="cancelhandlePic"
></statistic-pic-table-modal>
</div>
</template>
<script >
import cardList from "../../home/compontents/cardList";
import enTabs from "../../eq/hall/components/enTabs";
import enTable from "../../eq/hall/components/enTable";
import cardList from "../../components/cardList";
import enTabs from "../../components/enTabs";
import enTable from "../../components/enTable";
import historyDataModal from "./components/historyDataModal";
import statisticPicTableModal from "./components/statisticPicTableModal";
const tableColums = [
{
align: "center",
......@@ -82,9 +114,6 @@ const tableColums = [
prop: "E",
label: "设备状态",
},
];
const tableData = [
{
......@@ -193,9 +222,14 @@ export default {
cardList,
enTabs,
enTable,
historyDataModal,
statisticPicTableModal,
},
data() {
return {
activeTab: "01",
historyDataModalVisible: false,
statisticModalVisible: false,
tableColums,
tableData,
electroTabList: [
......@@ -218,15 +252,43 @@ export default {
],
};
},
methods: {
cancelhandle() {
this.$nextTick(() => {
this.historyDataModalVisible = false;
});
},
cancelhandlePic() {
this.$nextTick(() => {
this.statisticModalVisible = false;
});
},
openHistoryHandle(){
this.historyDataModalVisible = true;
},
openPicTHandle(){
this.$nextTick(()=>{
this.statisticModalVisible = true;
})
},
toEnergyPage(){
this.$router.push({
path:'/analysis/energy'
})
},
},
};
</script>
<style lang="scss">
.use-electro-data{
padding:10px 10px 40px 10px;
.el-form-item{
margin-bottom: 15px;
.use-electro-data {
padding: 0px 0 40px 0px;
.el-form-item {
margin-bottom: 15px;
margin-top: 15px;
}
}
}
</style>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment