| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769 |
- <!-- 教师首页 -->
- <template>
- <view class="teacherHome">
- <data-board v-if="pageType == 1" style="display: flex;flex-direction:column;flex:1;"></data-board>
- <view class="top-back-img" :style="{top:navHeight+'rpx'}">
- <!-- <img class="position-data-button" @click="goPage('dataBoard')" v-if="dataPageType" :src="imagesUrl('home/icon_sy_sjmb@1x.png')"> -->
- <img class="position-img" :src="rectangleLogo">
- </view>
- <view class="home-page" v-if="pageType == 2">
- <!-- <nav-bar :title="title" :background="background"></nav-bar> -->
- <view class="user-max-box">
- <view class="user-img-box">
- <img v-if="userData.avatar" class="user-img" :src="baseUrl+userData.avatar">
- <img v-else class="user-img" :src="imagesUrl('commonality/icon_01.png')">
- </view>
- <view class="user-name-box">
- <view>{{userData.userName}} {{userData.userType==1?'老师':(userData.userType==2?'学生':(userData.userType==3?'系统用户':''))}}</view>
- <view>{{userData.deptName}}</view>
- </view>
- <view class="user-button" @click="goMine()">设置</view>
- </view>
- <!-- <view class="button-one-box"> -->
- <!-- <view class="button-min" @click="goPage('securityCheck')">
- <img class="button-img" :src="imagesUrl('home/icon_sy_aqjc@1x.png')">
- <view class="button-name">安全检查</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('securityExamination')">
- <img class="button-img" :src="imagesUrl('home/icon_sy_aqks@1x.png')">
- <view class="button-name">安全考试</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('securityAdmittance')" style="margin:23rpx 0 0 20rpx;">
- <img class="button-img" :src="imagesUrl('home/icon_sy_aqzr@1x.png')">
- <view class="button-name">安全准入</view>
- </view>
- <view class="button-min" @click="goPage('hierarchicalControl')" style="margin:23rpx 65rpx 0;">
- <img class="button-img" :src="imagesUrl('home/icon_sy_fjgk@1x.png')">
- <view class="button-name">分级管控</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('securityResponsibility')">
- <img class="button-img" :src="imagesUrl('home/icon_sy_aqzrr@1x.png')">
- <view class="button-name">安全责任</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('deviceManagement')">
- <img class="button-img" :src="imagesUrl('home/icon_sy_sbgl@1x.png')">
- <view class="button-name">设备管理</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('emergencyDisposal')" style="margin:23rpx 20rpx 0 0;">
- <img class="button-img" :src="imagesUrl('home/icon_sy_yjcz@1x.png')">
- <view class="button-name">应急处置</view>
- </view> -->
- <!-- <view class="button-min" @click="goPage('cageSiteManagement')">
- <img class="button-img" :src="imagesUrl('home/icon_sy_lwgl@1x.png')">
- <view class="button-name">笼位管理</view>
- </view> -->
- <!-- </view> -->
- <top-warn></top-warn>
- <view class="home-button-box-1" style="background-color: #fff0dd;"
- @click="goPage('securityAdmittance')">
- <img class="home-button-img" :src="imagesUrl('home/icon_sy_aqzr@1x.png')"/>
- <view class="home-button-name" style="color: #ff8c00;">安全准入</view>
- <view class="home-button-text">实验室安全准入审核</view>
- <!-- <view class="home-button-mark" v-if="admittanceHint"></view> -->
- </view>
- <view class="home-button-box-1" style="background-color: #FFE4E1;"
- @click="goPage('emergencyDisposal')">
- <img class="home-button-img" :src="imagesUrl('home/icon_sy_yjcz@1x.png')"/>
- <view class="home-button-name" style="color: #ff6762;">应急处置</view>
- <view class="home-button-text">实验室安全风险处置</view>
- <!-- <view class="home-button-mark"></view> -->
- </view>
- <view class="home-button-box-2">
- <view class="home-button-box-min" @click="goPage('remoteDoorOpening')"
- style="background-color: #DFF0FF;margin-right:20rpx;">
- <img class="home-button-img" :src="imagesUrl('home/img_sy_yckm@1x.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">远程开门</view>
- <view class="home-button-min-text">打开门禁</view>
- </view>
- </view>
- <view class="home-button-box-min" @click="goPage('accessControlAuthorization')"
- style="background-color: #DFF0FF;">
- <img class="home-button-img" :src="imagesUrl('home/home_button_03.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">授权开门</view>
- <view class="home-button-min-text">门禁权限</view>
- </view>
- </view>
- </view>
- <view class="home-button-box-2">
- <view class="home-button-box-min" @click="goPage('riskEarlyWarning')"
- style="background-color: #DFF0FF;margin-right:20rpx;">
- <img class="home-button-img" :src="imagesUrl('home/home_button_02.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">预警记录</view>
- <view class="home-button-min-text">风险预警记录</view>
- </view>
- </view>
- <view class="home-button-box-min" @click="goPage('entryAndExitRecord')"
- style="background-color: #DFF0FF;">
- <img class="home-button-img" :src="imagesUrl('home/img_sy_lkjc@1x.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">进出记录</view>
- <view class="home-button-min-text">实验室出入</view>
- </view>
- </view>
- </view>
- <view class="home-button-box-2">
- <view class="home-button-box-min" @click="goPage('leaveCheckPupilTeacher')"
- style="background-color: #DFF0FF;margin-right:20rpx;">
- <img class="home-button-img" :src="imagesUrl('home/home_button_04.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">签退离开</view>
- <view class="home-button-min-text">检查拍照上传</view>
- </view>
- </view>
- <view class="home-button-box-min" @click="saoCode()"
- style="background-color: #DFF0FF;">
- <img class="home-button-img" :src="imagesUrl('home/icon_sy_ssp@1x.png')">
- <view class="home-button-min">
- <view class="home-button-min-name">扫一扫</view>
- <view class="home-button-min-text">扫描二维码</view>
- </view>
- </view>
- </view>
- <!-- <view class="button-two-box">
- <view class="button-big-box" @click="goPage('snapshot')"
- style="background-color: #DFF0FF;margin-right:20rpx;">
- <img :src="imagesUrl('home/icon_sy_ssp@1x.png')">
- <view class="button-min-box">
- <view>随手拍</view>
- <view>发现隐患</view>
- </view>
- </view>
- <view class="button-big-box" @click="goPage('remoteDoorOpening')" style="background-color: #D6EBDA;">
- <img :src="imagesUrl('home/img_sy_yckm@1x.png')">
- <view class="button-min-box">
- <view>远程开门</view>
- <view>立即开门</view>
- </view>
- </view>
- </view> -->
- <!-- <view class="button-three-box-1">
- <view class="button-big-box" @click="goPage('leaveCheckPupilTeacher')">
- <img :src="imagesUrl('home/img_lkjc@1x.png')">
- <view class="button-min-box">
- <view>离开检查</view>
- <view>拍照上传</view>
- </view>
- </view>
- </view>
- <view class="button-three-box">
- <view class="button-big-box" @click="goPage('remoteDoorOpening')">
- <img :src="imagesUrl('home/img_lwgl@1x.png')">
- <view class="button-min-box">
- <view>远程开门</view>
- <view>打开门禁</view>
- </view>
- </view>
- </view> -->
- <!-- <view class="button-three-box">
- <view class="button-big-box" @click="goPage()">
- <img :src="imagesUrl('home/img_bg_hxpgk@1x.png')">
- <view class="button-min-box">
- <view>化学品智能管控</view>
- <view>申购审批丨使用台账丨实验室库存</view>
- </view>
- </view>
- </view> -->
- <!-- <img class="scan_btn" @click.stop="saoCode" :src="imagesUrl('commonality/icon_xyxc_sm.png')"> -->
- <tab-bar></tab-bar>
- </view>
- </view>
- </template>
- <script>
- import {
- config
- } from '@/api/request/config.js'
- import {
- pageRestrictVerify
- } from '@/utils/index'
- import {
- chemicalAppletSelectStockInfo,
- laboratorySubPassOutIsotopeSubSign,
- systemUserProfile,
- laboratoryAppletCheckApplyPending
- } from '@/pages/api/index.js'
- import tabBar from '@/pages/component/tabBar.vue'
- import navBar from '@/pages/component/navbar.vue'
- import topWarn from '@/pages/component/topWarn.vue'
- import dataBoard from '@/pages/views/dataBoard/dataBoard.vue'
- import { scanCode } from '@/utils/scanTheCode'
- export default {
- name: "teacherHome",
- components: {
- tabBar,
- navBar,
- topWarn,
- dataBoard,
- },
- data() {
- return {
- baseUrl: config.base_url,
- pageType: 2,
- userData:{},
- navHeight: uni.getStorageSync('navHeight'),
- dataPageType: false,
- title: '实验室安全智慧化管控系统',
- background: '#0183FA',
- rectangleLogo: uni.getStorageSync('rectangleLogo'),
- identityData:uni.getStorageSync('identityData'),
- // 准入红点
- // admittanceHint:false,
- }
- },
- created() {
- // if (pageRestrictVerify('dataBoard')) {
- // this.dataPageType = true;
- // if (!uni.getStorageSync('dataBoardType')) {
- // this.pageType = 1;
- // uni.setStorageSync('dataBoardType', true);
- // }
- // }
- },
- mounted() {
- this.systemUserProfile();
- // this.laboratoryAppletCheckApplyPending();
- },
- methods: {
- //查询安全准入是否有-待审核
- async laboratoryAppletCheckApplyPending() {
- const {
- data
- } = await laboratoryAppletCheckApplyPending();
- if (data.code == 200) {
- this.$set(this,'admittanceHint',data.data);
- }
- },
- //获取个人信息
- async systemUserProfile() {
- const {
- data
- } = await systemUserProfile();
- if (data.code == 200) {
- this.$set(this, 'userData', data.data)
- uni.setStorageSync('userDeptId', data.data.deptId);
- uni.setStorageSync('userDeptName', data.data.deptName);
- }
- },
- goMine(){
- uni.navigateTo({
- url: "/pages/views/mine/mine",
- });
- },
- goPage(type) {
- if (!type) {
- uni.showToast({
- title: '暂未开放',
- icon: "none",
- mask: true,
- duration: 2000
- });
- return
- }
- if (!pageRestrictVerify(type)) {
- uni.showToast({
- title: '没有相关权限,请联系管理员',
- icon: "none",
- mask: true,
- duration: 2000
- });
- return
- }
- if (type == 'dataBoard') {
- //数据看板
- this.pageType = 1;
- } else if (type == 'securityCheck') {
- //安全检查
- uni.navigateTo({
- url: "/pages_safetyCheck/views/safetyCheck",
- });
- /* if(this.identityData){
- uni.navigateTo({
- url: "/pages_safetyCheck/views/safetyCheck",
- });
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: '您不是校/院级管理员或督导组成员,无法使用该功能.',
- duration: 2000
- });
- } */
- } else if (type == 'securityExamination') {
- //安全考试
- uni.navigateTo({
- url: "/pages_basics/views/deviceCageSitePage?pageType=3",
- });
- } else if (type == 'securityAdmittance') {
- //安全准入
- uni.navigateTo({
- url: "/pages_manage/views/accessQualification/accessQualification",
- });
- } else if (type == 'hierarchicalControl') {
- //分级管控
- uni.navigateTo({
- url: "/pages_basics/views/gradingControl/gradingControl",
- });
- } else if (type == 'securityResponsibility') {
- //安全责任
- uni.navigateTo({
- url: "/pages_basics/views/deviceCageSitePage?pageType=4",
- });
- } else if (type == 'deviceManagement') {
- //设备管理
- uni.navigateTo({
- url: "/pages_basics/views/deviceCageSitePage?pageType=1",
- });
- } else if (type == 'emergencyDisposal') {
- //应急处置
- // uni.navigateTo({
- // url: "/pages_manage/views/emergencyEvacuationBig",
- // });
- uni.navigateTo({
- url: "/pages_manage/views/emergencyEvacuationSubList",
- });
- } else if (type == 'cageSiteManagement') {
- //笼位管理
- uni.navigateTo({
- url: "/pages_basics/views/deviceCageSitePage?pageType=2",
- });
- } else if (type == 'snapshot') {
- //随手拍
- uni.navigateTo({
- url: "/pages_safetyCheck/views/snapshotManage/snapshotList",
- });
- /* uni.navigateTo({
- url: "/pages_safetyExamine/views/snapshotManage/snapshotAdd",
- }); */
- } else if (type == 'remoteDoorOpening') {
- //远程开门
- uni.navigateTo({
- url: "/pages_manage/views/accessControl/remoteOpen",
- });
- } else if (type == 'leaveCheckPupilTeacher') {
- //离开检查
- uni.navigateTo({
- url: "/pages_basics/views/photoInspection",
- });
- } else if (type == 'chemicalsManagement') {
- //化学品管控
- } else if (type == 'entryAndExitRecord') {
- //进出记录
- uni.navigateTo({
- url: "/pages_basics/views/record/index",
- });
- } else if (type == 'accessControlAuthorization') {
- //门禁授权
- uni.navigateTo({
- url: "/pages_manage/views/accessControl/empowerOpen",
- });
- }else if (type == 'riskEarlyWarning') {
- //风险预警
- uni.navigateTo({
- url: "/pages_basics/views/earlyWarningManage/earlyWarningList",
- });
- }
- },
- /* 扫一扫*/
- saoCode() {
- scanCode('home');
- },
- //扫码查询-化学品基本信息
- async chemicalAppletSelectStockInfo(code) {
- const {
- data
- } = await chemicalAppletSelectStockInfo({tagCode:code});
- if (data.code == 200) {
- if(data.data){
- data.data.code = code;
- //化学品信息
- uni.navigateTo({
- url: "/pages_basics/views/chemicalsInfo/chemicalsInfo?item=" + encodeURIComponent(JSON.stringify(data.data)),
- });
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: '未找到相关信息,请扫描正确的二维码',
- duration: 2000
- });
- }
- }
- },
- //查询是否是同位素实验并且有签退
- async laboratorySubPassOutIsotopeSubSign(subId,result) {
- const {
- data
- } = await laboratorySubPassOutIsotopeSubSign({subId:subId});
- if (data.code == 200) {
- if(data.data.isotope){
- let obj = {
- subId:subId,
- subName:data.data.subName,
- passOutId:data.data.passOutId,
- }
- uni.navigateTo({
- url: "/pages_basics/views/photoInspection?item=" + encodeURIComponent(JSON.stringify(obj)),
- });
- }else{
- uni.reLaunch({
- url: '/pages/views/saoCode/saoCode?q=' + encodeURIComponent(result)
- });
- }
- }
- },
- }
- }
- </script>
- <style lang="stylus" scoped>
- @import '@/api/request/imagesUrl.styl';
- .teacherHome {
- width:100%;
- height:100%;
- flex: 1;
- display: flex;
- flex-direction: column;
- overflow: hidden;
- position: relative;
- .data-board {
- flex: 1;
- display: flex;
- flex-direction: column;
- overflow: hidden;
- }
- .top-back-img {
- position: absolute;
- top: 0;
- left: 0;
- width: 750rpx;
- height: 539rpx;
- background: url($imagesUrl+'home/img_sy_bg@1x.png') no-repeat;
- background-size:100%;
- background-repeat: no-repeat;
- z-index:0;
- .position-img {
- z-index: 5;
- position: absolute;
- left: 16rpx;
- top: 16rpx;
- width: 400rpx;
- height: 88rpx;
- }
- .position-data-button {
- z-index: 5;
- position: fixed;
- right: 0;
- top: 180rpx;
- width: 130rpx;
- height: 109rpx;
- /* line-height: 50rpx;
- background-color: #0183fa;
- color: #fff;
- font-size: 28rpx;
- text-align: center;
- border-top-left-radius: 30rpx;
- border-bottom-left-radius: 30rpx; */
- }
- }
- .home-page {
- z-index:1;
- // flex: 1;
- // display: flex;
- // flex-direction: column;
- overflow-y: scroll;
- overflow-x: hidden;
- padding-bottom:120rpx;
- .top-page-title {
- text-align: center;
- font-size: 28rpx;
- background-color: #0183FA;
- color: #fff;
- }
- .user-max-box{
- z-index: 5;
- display: flex;
- background: #fff;
- width: 690rpx;
- height:150rpx;
- border-radius: 20rpx;
- overflow: hidden;
- margin: 370rpx 30rpx 0;
- .user-img-box{
- width:114rpx;
- height:114rpx;
- border-radius:50%;
- border:1rpx solid #0183fa;
- margin:18rpx 30rpx 18rpx 20rpx;
- .user-img{
- width:110rpx;
- height:110rpx;
- border-radius:50%;
- border:1rpx solid #fff;
- }
- }
- .user-name-box{
- flex:1;
- view:nth-child(1){
- margin-top:20rpx;
- line-height:50rpx;
- font-size:26rpx;
- font-weight:900;
- }
- view:nth-child(2){
- line-height:50rpx;
- font-size:26rpx;
- }
- }
- .user-button{
- font-size:28rpx;
- width:150rpx;
- height:50rpx;
- line-height:50rpx;
- background-color: #0183fa;
- color:#fff;
- border-radius:60rpx;
- text-align: center;
- margin:50rpx 40rpx 0 0;
- }
- }
- .home-button-box-1{
- position: relative;
- display: flex;
- width: 690rpx;
- height: 120rpx;
- display: flex;
- margin: 20rpx 30rpx 0;
- border-radius: 20rpx;
- position: relative;
- .home-button-img{
- display: block;
- margin: 20rpx 31rpx 0 36rpx;
- height: 80rpx;
- width: 80rpx;
- }
- .home-button-name{
- width:230rpx;
- line-height: 120rpx;
- height: 32rpx;
- font-size: 30rpx;
- }
- .home-button-text{
- line-height: 120rpx;
- height: 32rpx;
- font-size: 30rpx;
- color: #999;
- }
- .home-button-mark{
- position: absolute;
- top:54rpx;
- left:345rpx;
- width:14rpx;
- height:14rpx;
- border-radius:50%;
- background-color: #FF3030;
- }
- }
- .home-button-box-2{
- display: flex;
- width: 690rpx;
- height: 120rpx;
- display: flex;
- margin: 20rpx 30rpx 0;
- .home-button-box-min{
- width: 335rpx;
- display: flex;
- border-radius: 20rpx;
- .home-button-img{
- display: block;
- margin: 20rpx 31rpx 0 36rpx;
- height: 80rpx;
- width: 80rpx;
- }
- .home-button-min{
- .home-button-min-name{
- line-height: 32rpx;
- height: 32rpx;
- font-size: 32rpx;
- color: #333;
- margin: 20rpx 0 18rpx;
- }
- .home-button-min-text{
- line-height: 28rpx;
- height: 28rpx;
- font-size: 28rpx;
- color: #999;
- }
- }
- }
- }
- .button-one-box {
- position: relative;
- z-index: 5;
- background: #fff;
- width: 690rpx;
- height:150rpx;
- border-radius: 20rpx;
- padding: 13px 0 20px;
- overflow: hidden;
- margin: 400rpx 30rpx 0;
- .button-min {
- display: inline-block;
- overflow: hidden;
- width: 172rpx;
- height: 123rpx;
- margin-top: 23rpx;
- .button-img {
- display: block;
- width: 80rpx;
- height: 80rpx;
- margin: 0 auto;
- }
- .button-name {
- margin-top: 15rpx;
- height: 28rpx;
- line-height: 28rpx;
- font-size: 28rpx;
- text-align: center;
- color: #333;
- }
- }
- }
- .button-two-box {
- z-index: 5;
- width: 690rpx;
- height: 120rpx;
- display: flex;
- margin: 20rpx 30rpx 0;
- .button-big-box {
- width: 335rpx;
- display: flex;
- border-radius: 20rpx;
- img {
- display: block;
- margin: 20rpx 31rpx 0 36rpx;
- height: 80rpx;
- width: 80rpx;
- }
- .button-min-box {
- view:nth-child(1) {
- line-height: 32rpx;
- height: 32rpx;
- font-size: 32rpx;
- color: #333;
- margin: 20rpx 0 18rpx;
- }
- view:nth-child(2) {
- line-height: 28rpx;
- height: 28rpx;
- font-size: 28rpx;
- color: #999;
- }
- }
- }
- }
- .button-three-box-1 {
- z-index: 5;
- width: 690rpx;
- height: 130rpx;
- margin: 20rpx 30rpx 0;
- .button-big-box {
- border-radius: 20rpx;
- background-color: #CDE7FF;
- display: flex;
- img {
- display: block;
- width: 134rpx;
- height: 104rpx;
- margin: 23rpx 34rpx 0 30rpx;
- }
- .button-min-box {
- view:nth-child(1) {
- line-height: 30rpx;
- height: 30rpx;
- font-size: 30rpx;
- color: #0183FA;
- margin: 27rpx 0 15rpx;
- }
- view:nth-child(2) {
- line-height: 26rpx;
- height: 26rpx;
- font-size: 26rpx;
- color: #666666;
- }
- }
- }
- }
- .button-three-box {
- z-index: 5;
- width: 690rpx;
- height: 130rpx;
- margin: 20rpx 30rpx 0;
- .button-big-box {
- border-radius: 20rpx;
- background-color: #FFF0DD;
- display: flex;
- img {
- display: block;
- width: 134rpx;
- height: 104rpx;
- margin: 23rpx 34rpx 0 30rpx;
- }
- .button-min-box {
- view:nth-child(1) {
- line-height: 30rpx;
- height: 30rpx;
- font-size: 30rpx;
- color: #FF8C00;
- margin: 27rpx 0 15rpx;
- }
- view:nth-child(2) {
- line-height: 26rpx;
- height: 26rpx;
- font-size: 26rpx;
- color: #666666;
- }
- }
- }
- }
- .scan_btn {
- z-index: 10;
- position: fixed;
- bottom: 210rpx;
- right: 0rpx;
- width: 140rpx;
- height: 140rpx;
- }
- }
- }
- </style>
|