Commit 5ca129c3 authored by caojm's avatar caojm

样式微调

parent 36d0ac57
...@@ -146,3 +146,41 @@ $el-bg-color-4: #F2F6FC; ...@@ -146,3 +146,41 @@ $el-bg-color-4: #F2F6FC;
color: #4ECB74; color: #4ECB74;
} }
.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> <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-mask"></div>
<!-- 主体内容 --> <!-- 主体内容 -->
<div class="d2-layout-header-aside-content" flex="dir:top"> <div class="d2-layout-header-aside-content" flex="dir:top">
<!-- 顶栏 --> <!-- 顶栏 -->
<div class="d2-theme-header" flex-box="0" flex> <div class="d2-theme-header" flex-box="0" flex>
<div class="logo-group" :style="{width: asideWidth}" flex-box="0"> <div class="logo-group" :style="{ width: asideWidth }" flex-box="0" style="width:unset;margin-left:30px">
<img src="./imgs/logo2x.png"> <img src="./imgs/train.png" style="width:50px;height:50px" />
<img src="./imgs/energy_text.png" />
</div> </div>
<div style='width:100%;'> <div style="width: 100%">
<div flex-box="1"></div> <div flex-box="1"></div>
<!-- 顶栏右侧 --> <!-- 顶栏右侧 -->
<div class="d2-header-right"> <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-time">{{ time | formatDate }}</div>
<div class="current-date">{{ time | formatDate2 }}</div> <div class="current-date">{{ time | formatDate2 }}</div>
</div> </div>
<div class="subway-container"> <div class="subway-container" style="margin-right:43px">
<div class="subway-info"> <div class="subway-info" style="transform: rotate(180deg)">
<span :class="station.length < 6 ? 'lineFeed' : ''">{{station }}</span> <!-- <span :class="station.length < 6 ? 'lineFeed' : ''">{{
station
}}</span> -->
</div> </div>
<div class="user-img"><img src="./imgs/subway.png" /></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 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>
<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> </div>
</el-badge>
<d2-header-user />
<div title="退出" class="msg-img" style="cursor: pointer;" @click="logOff">
<img src="./imgs/out.png" />
</div> </div>
</div> </div>
</div> </div>
...@@ -39,10 +103,15 @@ ...@@ -39,10 +103,15 @@
<!-- 下面 主体 --> <!-- 下面 主体 -->
<div class="d2-theme-container" flex-box="1" flex> <div class="d2-theme-container" flex-box="1" flex>
<!-- 主体 侧边栏 --> <!-- 主体 侧边栏 -->
<div flex-box="0" ref="aside" class="d2-theme-container-aside" :style="{ <div
width:asideWidth, flex-box="0"
opacity: this.searchActive ? 0.5 : 1 ref="aside"
}"> class="d2-theme-container-aside"
:style="{
width: asideWidth,
opacity: this.searchActive ? 0.5 : 1,
}"
>
<d2-menu-side /> <d2-menu-side />
</div> </div>
<!-- 主体 --> <!-- 主体 -->
...@@ -51,7 +120,7 @@ ...@@ -51,7 +120,7 @@
<transition name="fade-scale"> <transition name="fade-scale">
<div class="d2-theme-container-main-layer" flex="dir:top"> <div class="d2-theme-container-main-layer" flex="dir:top">
<!-- 页面 --> <!-- 页面 -->
<div class="d2-theme-container-main-body" flex-box="1" > <div class="d2-theme-container-main-body" flex-box="1">
<!-- <bim></bim> --> <!-- <bim></bim> -->
<keep-alive :include="keepAlive"> <keep-alive :include="keepAlive">
<router-view /> <router-view />
...@@ -61,7 +130,7 @@ ...@@ -61,7 +130,7 @@
</transition> </transition>
</div> </div>
</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 Copyright (C) 2009-2010. XXXXX信息工程有限公司 蜀ICP备1202XXXX号-1
电话:86-028-689XXXX 传真:86-028-6893XXXX 电话:86-028-689XXXX 传真:86-028-6893XXXX
</div> </div>
...@@ -70,74 +139,74 @@ ...@@ -70,74 +139,74 @@
</template> </template>
<script> <script>
import { mapState, mapGetters, mapActions } from 'vuex' import { mapState, mapGetters, mapActions } from "vuex";
import mixinSearch from './mixins/search' import mixinSearch from "./mixins/search";
export default { export default {
name: 'd2-layout-header-aside', name: "d2-layout-header-aside",
mixins: [mixinSearch], mixins: [mixinSearch],
components: { components: {
'd2-menu-side': () => import('./components/menu-side'), "d2-menu-side": () => import("./components/menu-side"),
'd2-menu-header': () => import('./components/menu-header'), "d2-menu-header": () => import("./components/menu-header"),
'd2-header-theme': () => import('./components/header-theme'), "d2-header-theme": () => import("./components/header-theme"),
'd2-header-user': () => import('./components/header-user') "d2-header-user": () => import("./components/header-user"),
}, },
data() { data() {
return { return {
drawer: false, drawer: false,
// [侧边栏宽度] 正常状态 // [侧边栏宽度] 正常状态
asideWidth: '256px', asideWidth: "256px",
// [侧边栏宽度] 折叠状态 // [侧边栏宽度] 折叠状态
asideWidthCollapse: '65px', asideWidthCollapse: "65px",
time: new Date(), time: new Date(),
timer: null, timer: null,
logTimeout: null, logTimeout: null,
countNum: 0, countNum: 0,
station: '' station: "",
} };
}, },
mounted() { mounted() {
this.getStation() this.getStation();
this.getDate() this.getDate();
this.countNum = this.size this.countNum = this.size;
}, },
filters: { filters: {
formatDate: function (value) { formatDate: function (value) {
let date = new Date(value) let date = new Date(value);
let h = date.getHours() let h = date.getHours();
h = h < 10 ? '0' + h : h h = h < 10 ? "0" + h : h;
let m = date.getMinutes() let m = date.getMinutes();
m = m < 10 ? '0' + m : m m = m < 10 ? "0" + m : m;
let s = date.getSeconds() let s = date.getSeconds();
s = s < 10 ? '0' + s : s s = s < 10 ? "0" + s : s;
return ` ${h}:${m}:${s}` return ` ${h}:${m}:${s}`;
}, },
formatDate2: function (value) { formatDate2: function (value) {
let date = new Date(value) let date = new Date(value);
let y = date.getFullYear() let y = date.getFullYear();
let MM = date.getMonth() + 1 let MM = date.getMonth() + 1;
MM = MM < 10 ? '0' + MM : MM MM = MM < 10 ? "0" + MM : MM;
let d = date.getDate() let d = date.getDate();
d = d < 10 ? '0' + d : d d = d < 10 ? "0" + d : d;
let week = date.getDay() let week = date.getDay();
let weeks = ['日', '一', '二', '三', '四', '五', '六'] let weeks = ["日", "一", "二", "三", "四", "五", "六"];
let getWeek = '星期' + weeks[week] let getWeek = "星期" + weeks[week];
// return `${y}/${MM}/${d} ${getWeek} ` // return `${y}/${MM}/${d} ${getWeek} `
return `${MM}/${d} ${getWeek} ` return `${MM}/${d} ${getWeek} `;
} },
}, },
computed: { computed: {
...mapState('d2admin', { ...mapState("d2admin", {
keepAlive: (state) => state.page.keepAlive, keepAlive: (state) => state.page.keepAlive,
grayActive: (state) => state.gray.active, grayActive: (state) => state.gray.active,
transitionActive: (state) => state.transition.active, transitionActive: (state) => state.transition.active,
asideCollapse: (state) => state.menu.asideCollapse asideCollapse: (state) => state.menu.asideCollapse,
}), }),
...mapState('d2admin/menu', ['header']), ...mapState("d2admin/menu", ["header"]),
...mapState('d2admin/toast', ['size']), ...mapState("d2admin/toast", ["size"]),
...mapGetters('d2admin', { ...mapGetters("d2admin", {
themeActiveSetting: 'theme/activeSetting' themeActiveSetting: "theme/activeSetting",
}), }),
/** /**
* @description 最外层容器的背景图片样式 * @description 最外层容器的背景图片样式
...@@ -149,58 +218,58 @@ export default { ...@@ -149,58 +218,58 @@ export default {
// backgroundImage: `url('${this.$baseUrl}${this.themeActiveSetting.backgroundImage}')` // backgroundImage: `url('${this.$baseUrl}${this.themeActiveSetting.backgroundImage}')`
// } // }
// : {}) // : {})
} };
} },
}, },
watch: { watch: {
size(val) { size(val) {
this.countNum = val this.countNum = val;
} },
}, },
methods: { methods: {
...mapActions('d2admin/menu', ['asideCollapseToggle']), ...mapActions("d2admin/menu", ["asideCollapseToggle"]),
/** /**
* 接收点击切换侧边栏的按钮 * 接收点击切换侧边栏的按钮
*/ */
handleToggleAside() { handleToggleAside() {
console.log(111111) console.log(111111);
this.asideCollapseToggle() this.asideCollapseToggle();
}, },
...mapActions('d2admin/account', ['logout']), ...mapActions("d2admin/account", ["logout"]),
/** /**
* @description 登出 * @description 登出
*/ */
logOff() { logOff() {
this.logout({ this.logout({
vm: this, vm: this,
confirm: true confirm: true,
}) });
}, },
getDate() { getDate() {
let _this = this let _this = this;
this.timer = setInterval(() => { this.timer = setInterval(() => {
_this.time = new Date() _this.time = new Date();
}, 1000) }, 1000);
}, },
// out() { // out() {
// this.$router.push('/') // this.$router.push('/')
// }, // },
toAlarms() { toAlarms() {
this.header.forEach((res) => { this.header.forEach((res) => {
if (res.path === '/alarms') { if (res.path === "/alarms") {
this.$router.push({ path: res.list[0].path }) this.$router.push({ path: res.list[0].path });
} }
}) });
}, },
//读取站点名称 //读取站点名称
getStation() { getStation() {
this.station = JSON.parse(localStorage.getItem('sysSystem')).name this.station = JSON.parse(localStorage.getItem("sysSystem")).name;
if (!this.station || this.station == 'undefined') { if (!this.station || this.station == "undefined") {
setTimeout(this.getStation, 3000) setTimeout(this.getStation, 3000);
}
}
} }
} },
},
};
</script> </script>
<style lang="scss"> <style lang="scss">
......
...@@ -2,27 +2,53 @@ ...@@ -2,27 +2,53 @@
<div class="energy-page"> <div class="energy-page">
<cardList cardListTitle="能耗数据分析"> <cardList cardListTitle="能耗数据分析">
<div slot="right" > <div slot="right" >
<span <!-- <span
:class="activeIndex === index ? 'active-hight-linght' : ''" :class="activeIndex === index ? 'active-hight-linght' : ''"
class="date-text" class="date-text"
@click="activehandle(item, index)" @click="activehandle(item, index)"
v-for="(item, index) in dateList" v-for="(item, index) in dateList"
:key="item.value" :key="item.value"
>{{ item.label }}</span >{{ item.label }}</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> -->
<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 <el-date-picker
size="mini"
type="daterange" type="daterange"
range-separator="~" range-separator="~"
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
> >
</el-date-picker> </el-date-picker>
<i style=" padding-left:20px;padding-right: 20px;color:#21acfc" class="el-icon-s-unfold"></i> </el-col>
<i class="el-icon-printer" style="color:#21acfc"></i> <el-col :span="4">
</div> <el-button type="primary" size="mini" icon="el-icon-search">查询</el-button>
<div slot="content" style="padding: 24px 28px 20px 23px"> </el-col>
<div style="margin-bottom: 20px"> </el-row>
<enTabs :tabList="energyTabList"></enTabs> <el-tab-pane
:label="item.label"
:name="item.value"
v-for="(item, index) in energyTabList"
:key="index"
></el-tab-pane>
</el-tabs>
</div> </div>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
...@@ -35,20 +61,21 @@ ...@@ -35,20 +61,21 @@
</template> </template>
<script> <script>
import cardList from "../../home/compontents/cardList"; import cardList from "../../components/cardList";
import enTabs from '../../eq/hall/components/enTabs' import enTabs from "../../components/enTabs";
// import enTable from '../../eq/hall/components/enTable' // import enTable from '../../eq/hall/components/enTable'
import energyChart from '../../home/compontents/energyTotalCharts' import energyChart from "../../components/energyTotalCharts";
export default { export default {
name: "energypage", name: "energypage",
components: { components: {
cardList, cardList,
enTabs, enTabs,
energyChart energyChart,
}, },
data() { data() {
return { return {
activeIndex: 1, activeIndex: 1,
activetap: "01",
dateList: [ dateList: [
// { // {
// value: "01", // value: "01",
...@@ -71,7 +98,7 @@ export default { ...@@ -71,7 +98,7 @@ export default {
label: "全年", label: "全年",
}, },
], ],
energyTabList:[ energyTabList: [
{ {
value: "01", value: "01",
label: "全部", label: "全部",
...@@ -88,23 +115,27 @@ export default { ...@@ -88,23 +115,27 @@ export default {
value: "04", value: "04",
label: " 多联新风", label: " 多联新风",
}, },
] ],
}; };
}, },
methods: { methods: {
activehandle(item, index) { activehandle(item, index) {
this.activeIndex = index; this.activeIndex = index;
}, },
toPowerPage(){
this.$router.push({
path:'/kb/power'
})
},
}, },
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.energy-page{ .energy-page {
padding:10px 10px 40px 10px; height: 100%;
.el-input__inner { padding: 0px 0px 40px 0px;
// height: 30px;
}
.date-text { .date-text {
padding-right: 20px; padding-right: 20px;
font-size: 14px; font-size: 14px;
...@@ -116,5 +147,5 @@ export default { ...@@ -116,5 +147,5 @@ export default {
.active-hight-linght { .active-hight-linght {
color: #21acfc; color: #21acfc;
} }
} }
</style> </style>
...@@ -6,9 +6,11 @@ ...@@ -6,9 +6,11 @@
<slot name="right" /> <slot name="right" />
</div> </div>
</div> </div>
<div class="card-list-content">
<slot name="content" /> <slot name="content" />
</div> </div>
</div>
</template> </template>
<script> <script>
...@@ -30,6 +32,7 @@ export default { ...@@ -30,6 +32,7 @@ export default {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: #fff; background: #fff;
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
&-line { &-line {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
...@@ -60,5 +63,9 @@ export default { ...@@ -60,5 +63,9 @@ export default {
// height: 16px; // height: 16px;
// background: #1890ff; // background: #1890ff;
// } // }
.card-list-content{
padding:20px;
height: calc( 155 - 40px );
}
} }
</style> </style>
...@@ -26,13 +26,14 @@ ...@@ -26,13 +26,14 @@
</el-table-column> </el-table-column>
</template> </template>
<el-table-column align="center" label="操作" width="100" v-if="isShowOp"> <el-table-column align="center" label="操作" width="150" >
<template slot-scope="scope"> <template slot-scope="scope" >
<el-button type="text" size="small">编辑</el-button> <slot name='operation' :scope='scope'></slot>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div <div
v-if="isShowPage"
style=" style="
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
...@@ -40,10 +41,11 @@ ...@@ -40,10 +41,11 @@
line-height: 3; 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 marg_r_8">共20页</div>
<div class="record-color">每页显示</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> </el-pagination>
</div> </div>
</div> </div>
...@@ -52,10 +54,35 @@ ...@@ -52,10 +54,35 @@
<script > <script >
export default { export default {
name: "enTable", 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() { data() {
return {}; return {};
}, },
methods:{
handleClick(){
this.$emit('handleBtnClick')
}
}
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
...@@ -72,5 +99,9 @@ export default { ...@@ -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{ .el-pagination.is-background .btn-next, .el-pagination.is-background .btn-prev, .el-pagination.is-background .el-pager li{
margin: 0 !important; margin: 0 !important;
} }
/deep/.el-pagination.is-background .el-pager li:not(.disabled).active {
color: #32a5ea !important;
background-color: red !important;
}
} }
</style> </style>
<template> <template >
<div class="en-tabs"> <div class="en-tabs">
<ul class="ul-wrap"> <ul class="ul-wrap">
<li <li
...@@ -11,24 +11,35 @@ ...@@ -11,24 +11,35 @@
{{ item.label }} {{ item.label }}
</p> </p>
</li> </li>
</ul> </ul>
</div> </div>
</template> </template>
<script lang="ts"> <script >
import { Tabs } from 'element-ui';
export default { export default {
name: "elTabs", name: "elTabs",
props:['tabList'], props: ["tabList"],
data() { data() {
return { return {
isActiveIndex:0, isActiveIndex: 0,
activeName: 'second',
}; };
}, },
methods: { methods: {
tabHandle(item, index) { tabHandle(item, index) {
this.isActiveIndex = index; this.isActiveIndex = index;
this.$emit('tabHandle') // this.$emit("tabHandle");
}, },
}, },
}; };
...@@ -36,40 +47,37 @@ export default { ...@@ -36,40 +47,37 @@ export default {
<style scoped lang="scss"> <style scoped lang="scss">
.en-tabs {
.en-tabs{
.show-bar-border { .show-bar-border {
border-bottom: 2px solid #0097ff; 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;
}
}
// .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 { ...@@ -13,6 +13,7 @@ export default {
}; };
}, },
mounted() { mounted() {
this.initPie(); 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> <template>
<div class="hall full-height"> <div class="hall full-height">
<cardList cardListTitle="候车大厅控制"> <cardList cardListTitle="候车大厅控制">
<div slot="content" style="padding: 24px 28px 20px 23px"> <div slot="content" >
<div> <div>
<el-row>
<el-form :inline="true" :model="formData" label-width="100"> <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-form-item label="定时功能启止时间:">
<el-date-picker <el-date-picker
size="mini"
style="width: 200px" style="width: 200px"
type="date" type="date"
placeholder="" placeholder=""
...@@ -15,6 +17,7 @@ ...@@ -15,6 +17,7 @@
</el-date-picker> </el-date-picker>
<span style="padding: 0 10px"></span> <span style="padding: 0 10px"></span>
<el-date-picker <el-date-picker
size="mini"
style="width: 200px" style="width: 200px"
type="date" type="date"
placeholder="" placeholder=""
...@@ -22,14 +25,13 @@ ...@@ -22,14 +25,13 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :md="12" :lg="4"> <el-col :span="4">
<el-form-item label="定时设定按钮:"> <el-form-item label="定时设定按钮:">
<el-switch active-color="#0097FF" inactive-color="#ff4949"> <el-switch active-color="#0097FF" inactive-color="#ff4949">
</el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5">
<el-col :md="12" :lg="5">
<el-form-item label="温度设定:"> <el-form-item label="温度设定:">
<el-input <el-input
style="width: 124px" style="width: 124px"
...@@ -40,6 +42,9 @@ ...@@ -40,6 +42,9 @@
<!-- <el-button type="primary" >查询</el-button> --> <!-- <el-button type="primary" >查询</el-button> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :md="12" :lg="4"> <el-col :md="12" :lg="4">
<el-form-item label="节能模式:"> <el-form-item label="节能模式:">
<el-switch <el-switch
...@@ -51,29 +56,48 @@ ...@@ -51,29 +56,48 @@
<el-col :md="12" :lg="10"> <el-col :md="12" :lg="10">
<el-form-item label=""> <el-form-item label="">
<el-button type="" size="small">编辑</el-button> <el-button type="primary" size="mini">编辑</el-button>
<el-button type="" size="small">自然通风</el-button> <el-button type="primary" size="mini">自然通风</el-button>
<el-button type="" size="small">机械通风</el-button> <el-button type="primary" size="mini">机械通风</el-button>
<el-button type="" size="small">供暖</el-button> <el-button type="primary" size="mini">供暖</el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form>
</el-row> </el-row>
</el-form>
</div> </div>
<!-- tabs --> <!-- tabs -->
<div style="margin-bottom: 20px"> <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> </div>
<!-- table --> <!-- 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> </div>
</cardList> </cardList>
<hall-modal v-on:cancelhandle="cancelhandle" :hallModalVisible="hallModalVisible"></hall-modal>
hallModalVisible
</div> </div>
</template> </template>
<script> <script>
import cardList from "../../home/compontents/cardList"; import cardList from "../../components/cardList";
import enTable from "./components/enTable"; import enTable from "../../components/enTable";
import enTabs from './components/enTabs' import enTabs from '../../components/enTabs'
import hallModal from './components/hallModal'
const tableColums = [ const tableColums = [
{ {
align: "center", align: "center",
...@@ -85,7 +109,7 @@ const tableColums = [ ...@@ -85,7 +109,7 @@ const tableColums = [
align: "center", align: "center",
prop: "B", prop: "B",
label: "设备描述", label: "设备描述",
width: 112, // width: 112,
}, },
{ {
align: "center", align: "center",
...@@ -224,12 +248,13 @@ export default { ...@@ -224,12 +248,13 @@ export default {
cardList, cardList,
enTable, enTable,
enTabs, enTabs,
hallModal,
}, },
data() { data() {
return { return {
tableColums, tableColums,
tableData, tableData,
activeTab:'01',
formData: {}, formData: {},
tabList: [ tabList: [
{ {
...@@ -249,21 +274,32 @@ export default { ...@@ -249,21 +274,32 @@ export default {
label: " 水泵", label: " 水泵",
}, },
], ],
hallModalVisible:false,
}; };
}, },
methods: { methods: {
cancelhandle(){
this.$nextTick(()=>{
this.hallModalVisible = false
})
}, },
handleBtnClick(){
this.hallModalVisible = true
}
},
}; };
</script> </script>
<style lang="scss" > <style lang="scss" >
.hall { .hall {
height: 100%; height: 100%;
padding:10px 10px 40px 10px; padding:10px 0 40px 0px;
.el-input__inner { .el-input__inner {
height: 30px; height: 30px;
} }
.el-form-item{
margin-bottom: 10px;
}
.el-form-item__label { .el-form-item__label {
padding: 0; padding: 0;
} }
......
<template> <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="办公区域控制"> <cardList cardListTitle="办公区域控制">
<div slot="content" style="padding: 24px 28px 20px 23px"> <div slot="content" >
<enTabs :tabList="officeTabList"></enTabs> <!-- <enTabs :tabList="officeTabList"></enTabs> -->
<el-tabs class="en-tabs" v-model="activeName" >
<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> <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> </div>
</cardList> </cardList>
</div> </div>
...@@ -21,7 +33,7 @@ const tableColums = [ ...@@ -21,7 +33,7 @@ const tableColums = [
align: "center", align: "center",
prop: "B", prop: "B",
label: "设备描述", label: "设备描述",
width: 112, // width: 112,
}, },
{ {
align: "center", align: "center",
...@@ -155,9 +167,9 @@ const tableData = [ ...@@ -155,9 +167,9 @@ const tableData = [
G: "QY0001", G: "QY0001",
}, },
]; ];
import cardList from "../../home/compontents/cardList"; import cardList from "../../components/cardList";
import enTabs from "../hall/components/enTabs"; import enTabs from "../../components/enTabs";
import enTable from "../hall/components/enTable"; import enTable from "../../components/enTable";
export default { export default {
name: "officeAreaControl", name: "officeAreaControl",
components: { components: {
...@@ -167,6 +179,7 @@ export default { ...@@ -167,6 +179,7 @@ export default {
}, },
data() { data() {
return { return {
activeName:'01',
tableData, tableData,
tableColums, tableColums,
officeTabList: [ officeTabList: [
...@@ -186,6 +199,7 @@ export default { ...@@ -186,6 +199,7 @@ export default {
value: "04", value: "04",
label: "排风机", label: "排风机",
}, },
], ],
}; };
}, },
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
</div> </div>
</div> </div>
<div class="home-page-content" > <div class="home-page-content" >
<el-row :gutter="14" > <el-row :gutter="12" >
<el-col :span="16" > <el-col :span="16" >
<card-list :cardListTitle="cardListLeftTitle"> <card-list :cardListTitle="cardListLeftTitle">
<div slot="right"> <div slot="right">
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
</div> </div>
</card-list> </card-list>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" style="padding-left:0">
<card-list :cardListTitle="cardListRightTitle" > <card-list :cardListTitle="cardListRightTitle" >
<div slot="content"> <div slot="content">
<my-pies></my-pies> <my-pies></my-pies>
...@@ -120,9 +120,9 @@ ...@@ -120,9 +120,9 @@
</template> </template>
<script> <script>
import cardList from "./compontents/cardList"; import cardList from "../components/cardList";
import energyTotalCharts from "./compontents/energyTotalCharts"; import energyTotalCharts from "../components/energyTotalCharts";
import myPies from "./compontents/myPies"; import myPies from "../components/myPies";
// import CardList from './compontents/cardList.vue'; // import CardList from './compontents/cardList.vue';
export default { export default {
name: "home", name: "home",
...@@ -194,29 +194,30 @@ export default { ...@@ -194,29 +194,30 @@ export default {
}, },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "~@/assets/style/public.scss"; @import "~@/assets/style/public.scss";
.home-page { .home-page {
height: 100%; height: 100%;
width: 100%; width: 100%;
padding:10px 10px 40px 10px; padding:0px 0px 40px 0px;
// overflow: auto; // overflow: auto;
&-top { &-top {
margin: 20px;
margin-bottom: 24px; margin-bottom: 24px;
.f-group { .f-group {
width: 100%; width: 100%;
display: flex; display: flex;
.f-item { .f-item {
box-sizing: border-box; box-sizing: border-box;
width: calc(20% - 19px); width: calc(20% - 18px);
height: 216px; height: 216px;
margin-right: 24px; margin-right: 24px;
padding-top: 40px; padding-top: 40px;
background-color: #fff; background-color: #fff;
text-align: center; 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 { img {
width: 50px; width: 50px;
height: 50px; height: 50px;
...@@ -246,6 +247,7 @@ export default { ...@@ -246,6 +247,7 @@ export default {
} }
.home-page-content { .home-page-content {
margin: 20px;
.date-text { .date-text {
padding-right: 20px; padding-right: 20px;
font-size: 14px; font-size: 14px;
...@@ -259,6 +261,7 @@ export default { ...@@ -259,6 +261,7 @@ export default {
} }
.content-wrap { .content-wrap {
// margin: 20px;
.energy-save-mode-wrap { .energy-save-mode-wrap {
// width: ; // width: ;
box-sizing: border-box; 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,12 +2,23 @@ ...@@ -2,12 +2,23 @@
<div class="use-electro-data"> <div class="use-electro-data">
<cardList cardListTitle="用电数据"> <cardList cardListTitle="用电数据">
<div slot="right"> <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>
<div slot="content" style="padding: 24px 28px 20px 23px"> <div slot="content">
<enTabs :tabList="electroTabList" ></enTabs> <!-- <enTabs ></enTabs> -->
<div style="margin-top:15px"> <div>
<el-form :inline="true" :model="formInline" style="text-align:center"> <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-row>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="设备名称:"> <el-form-item label="设备名称:">
...@@ -29,23 +40,44 @@ ...@@ -29,23 +40,44 @@
</el-col> </el-col>
<el-col :span="3"> <el-col :span="3">
<el-form-item> <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-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
</div> </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> </div>
</cardList> </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> </div>
</template> </template>
<script > <script >
import cardList from "../../components/cardList";
import cardList from "../../home/compontents/cardList"; import enTabs from "../../components/enTabs";
import enTabs from "../../eq/hall/components/enTabs"; import enTable from "../../components/enTable";
import enTable from "../../eq/hall/components/enTable"; import historyDataModal from "./components/historyDataModal";
import statisticPicTableModal from "./components/statisticPicTableModal";
const tableColums = [ const tableColums = [
{ {
align: "center", align: "center",
...@@ -82,9 +114,6 @@ const tableColums = [ ...@@ -82,9 +114,6 @@ const tableColums = [
prop: "E", prop: "E",
label: "设备状态", label: "设备状态",
}, },
]; ];
const tableData = [ const tableData = [
{ {
...@@ -193,9 +222,14 @@ export default { ...@@ -193,9 +222,14 @@ export default {
cardList, cardList,
enTabs, enTabs,
enTable, enTable,
historyDataModal,
statisticPicTableModal,
}, },
data() { data() {
return { return {
activeTab: "01",
historyDataModalVisible: false,
statisticModalVisible: false,
tableColums, tableColums,
tableData, tableData,
electroTabList: [ electroTabList: [
...@@ -218,15 +252,43 @@ export default { ...@@ -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> </script>
<style lang="scss"> <style lang="scss">
.use-electro-data{ .use-electro-data {
padding:10px 10px 40px 10px; padding: 10px 0 40px 0px;
.el-form-item{ .el-form-item {
margin-bottom: 15px; margin-bottom: 15px;
margin-top: 15px; margin-top: 15px;
} }
} }
</style> </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