2021-12-23 10:00:27 +08:00
|
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<!-- 头部导航 start -->
|
|
|
|
|
<div class="header-box">
|
|
|
|
|
<!-- logo -->
|
|
|
|
|
<div class="logo-box">
|
|
|
|
|
<div class="logo">
|
|
|
|
|
<img src="../assets/home/logo.png">
|
|
|
|
|
<div>都江堰市机关幼儿园</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 文本导航 -->
|
|
|
|
|
<div class="title-box">
|
|
|
|
|
<div class="title-item" :class="activeIndex==index?activeTitle:''" v-for="(item,index) in titleArr"
|
|
|
|
|
:key="index" @click="chooseTitle(index)">{{item}}</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 天气 -->
|
|
|
|
|
<div class="weather-box">
|
|
|
|
|
<img src="../assets/weather/1.png" style="margin-right: 10px;">
|
|
|
|
|
<div>
|
|
|
|
|
<div style="color: #FF9393;">{{date}}</div>
|
|
|
|
|
<div class="weather-three">
|
|
|
|
|
<div>{{temperature}}</div>
|
|
|
|
|
<div>{{time}}</div>
|
|
|
|
|
<div>{{week}}</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 功能图标 -->
|
|
|
|
|
<div><img src="../assets/home/icon-set.png"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 头部导航 end -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 首页 -->
|
|
|
|
|
<homepage v-if="activeIndex==0"></homepage>
|
|
|
|
|
<!-- 幼儿园介绍 -->
|
|
|
|
|
<kindIntroduction v-if="activeIndex==1"></kindIntroduction>
|
|
|
|
|
<!-- 宝宝活动 -->
|
|
|
|
|
<babyActivity v-if="activeIndex==2"></babyActivity>
|
|
|
|
|
<!-- 出勤详情 -->
|
|
|
|
|
<attendanceDetail v-if="activeIndex==3"></attendanceDetail>
|
|
|
|
|
<!-- 宝宝相册 -->
|
|
|
|
|
<babyAlbum v-if="activeIndex==4"></babyAlbum>
|
|
|
|
|
<!-- 疫情管理 -->
|
|
|
|
|
<yiqingmanagement v-if="activeIndex==5"></yiqingmanagement>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 底部 -->
|
|
|
|
|
<div class="footer">
|
|
|
|
|
<img src="../assets/home/foot-icon.png">
|
|
|
|
|
<img v-if="activeIndex==1" src="../assets/kindergartenIntroduce/chahua-01.png" >
|
|
|
|
|
<img v-if="activeIndex==2" src="../assets/home/baby-foot.png">
|
|
|
|
|
<img v-if="activeIndex==3" src="../assets/attendancedetail/-s-插画.png">
|
|
|
|
|
<img v-if="activeIndex==4 || activeIndex==5" src="../assets/babyalbum/-s-插画.png">
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 网络弹框 -->
|
|
|
|
|
<div v-if="isNetwork" class="popu-box">
|
|
|
|
|
<div class="item-row">班排设备ID:*******</div>
|
|
|
|
|
<div class="item-row">网络链接状态:网络监测({{onLine?'已连接':'已断开'}})<img v-if="onLine"
|
|
|
|
|
src="../assets/home/icon-link.png" style="width: 20px;"></div>
|
|
|
|
|
<div class="item-row">
|
|
|
|
|
<span style="flex-shrink: 0;">班牌显示模式:</span>
|
|
|
|
|
<div class="mode-box">
|
|
|
|
|
<div v-for="(item,index) in modeArr" :key="index" @click="chooseMode(index)">
|
|
|
|
|
<div class="radio-box">
|
|
|
|
|
<span v-if="item.isActive"></span>
|
|
|
|
|
</div>
|
|
|
|
|
{{item.title}}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="item-row">
|
|
|
|
|
控制操作:
|
|
|
|
|
<div class="refresh-btn">刷新</div>
|
|
|
|
|
<div class="back-btn">返回首页</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<script>
|
|
|
|
|
// 首页
|
|
|
|
|
import homepage from '@/components/homepage.vue';
|
|
|
|
|
// 幼儿园介绍
|
|
|
|
|
import kindIntroduction from '@/components/kindIntroduction.vue';
|
|
|
|
|
// 宝宝活动
|
|
|
|
|
import babyActivity from '@/components/babyActivity.vue';
|
|
|
|
|
// 出勤详情
|
|
|
|
|
import attendanceDetail from '@/components/attendanceDetail.vue';
|
|
|
|
|
// 宝宝相册
|
|
|
|
|
import babyAlbum from '@/components/babyAlbum.vue';
|
|
|
|
|
// 疫情管理
|
|
|
|
|
import yiqingmanagement from '@/components/yiqingmanagement.vue';
|
|
|
|
|
export default {
|
|
|
|
|
components:{
|
|
|
|
|
homepage,
|
|
|
|
|
kindIntroduction,
|
|
|
|
|
babyActivity,
|
|
|
|
|
attendanceDetail,
|
|
|
|
|
babyAlbum,
|
|
|
|
|
yiqingmanagement
|
|
|
|
|
},
|
2021-12-23 14:40:42 +08:00
|
|
|
|
name: 'v-header',
|
2021-12-23 10:00:27 +08:00
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
titleArr: ['首页', '幼儿园介绍', '宝宝活动', '出勤详情', '宝宝相册', '疫情管理'],
|
|
|
|
|
activeIndex: 0,
|
|
|
|
|
modeArr: [{
|
|
|
|
|
isActive: true,
|
|
|
|
|
title: '欢迎模式'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
isActive: false,
|
|
|
|
|
title: '班牌模式'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
isActive: false,
|
|
|
|
|
title: '大数据模式'
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
onLine: navigator.onLine,
|
|
|
|
|
list: [],
|
|
|
|
|
city: '',
|
|
|
|
|
date: '', //2021-12-19
|
|
|
|
|
week: '', //星期几
|
|
|
|
|
temperature: '', //天气温度
|
|
|
|
|
time: '', //当前时间
|
|
|
|
|
timer: null,
|
|
|
|
|
activeTitle: 'activeTitle',
|
|
|
|
|
isNetwork:false
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
// 选择班牌显示模式
|
|
|
|
|
chooseMode(e) {
|
|
|
|
|
this.modeArr.forEach(item => {
|
|
|
|
|
item.isActive = false
|
|
|
|
|
})
|
|
|
|
|
this.modeArr[e].isActive = true;
|
|
|
|
|
},
|
|
|
|
|
// 导航切换
|
|
|
|
|
chooseTitle(e) {
|
|
|
|
|
this.activeIndex = e;
|
|
|
|
|
e == 0 ? this.activeTitle = 'activeTitle' : this.activeTitle = 'activeTitle2';
|
|
|
|
|
},
|
|
|
|
|
// 网络状态
|
|
|
|
|
updateOnlineStatus(e) {
|
|
|
|
|
const {
|
|
|
|
|
type
|
|
|
|
|
} = e;
|
|
|
|
|
this.onLine = type === 'online';
|
|
|
|
|
if (this.onLine) {
|
|
|
|
|
this.weatherEv();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 天气
|
|
|
|
|
weatherEv() {
|
|
|
|
|
// 获取时间
|
|
|
|
|
this.dateEv();
|
|
|
|
|
this.timer = setInterval(() => {
|
|
|
|
|
this.dateEv();
|
|
|
|
|
}, 1000)
|
|
|
|
|
var that = this;
|
|
|
|
|
this.$axios.get('http://wthrcdn.etouch.cn/weather_mini?city=' + '成都').then((res) => {
|
|
|
|
|
let weatherList = res.data.data.forecast;
|
|
|
|
|
// 星期几
|
|
|
|
|
this.week = weatherList[0].date.slice(weatherList[0].date.indexOf('日') + 1);
|
|
|
|
|
// 当天气温
|
|
|
|
|
this.temperature = `${weatherList[0].low.slice(2,-1)} -${weatherList[0].high.slice(2)}`
|
|
|
|
|
}).catch((err) => {
|
|
|
|
|
console.log(err);
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 当前时间
|
|
|
|
|
dateEv() {
|
|
|
|
|
let date = new Date();
|
|
|
|
|
// 年
|
|
|
|
|
let year = date.getFullYear();
|
|
|
|
|
// 月
|
|
|
|
|
let month = date.getMonth() + 1;
|
|
|
|
|
// 日
|
|
|
|
|
let day = date.getDate();
|
|
|
|
|
this.date = `${year}-${month}-${day}`;
|
|
|
|
|
// 时
|
|
|
|
|
let hour = date.getHours();
|
|
|
|
|
// 分
|
|
|
|
|
let minute = date.getMinutes();
|
|
|
|
|
// 当前时间
|
|
|
|
|
this.time = `${hour < 10 ? '0'+hour : hour}:${minute < 10 ? '0'+minute : minute}`;
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.weatherEv();
|
|
|
|
|
window.addEventListener('online', this.updateOnlineStatus); //网络由异常到正常时触发
|
|
|
|
|
window.addEventListener('offline', this.updateOnlineStatus); //网络由正常到异常时触发
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|