Files
screen-lnsh/src/pages/Setup.vue

198 lines
4.8 KiB
Vue
Raw Normal View History

2023-02-28 14:02:39 +08:00
<template>
<div>
<vue-particles
color="#fff"
:particleOpacity="0.7"
:particlesNumber="60"
shapeType="circle"
:particleSize="4"
linesColor="#fff"
:linesWidth="1"
:lineLinked="true"
:lineOpacity="0.4"
:linesDistance="150"
:moveSpeed="2"
:hoverEffect="true"
hoverMode="grab"
:clickEffect="true"
clickMode="push"
class="lizi"
>
</vue-particles>
<div class="login_wrap">
<div class="login_cnt clearfix drift">
<div class="login_card fl">
<div class="card_wrap">
<div class="inputOuter">
<label>域名地址</label>
<input type="text" class="inputStyle" v-model="baseUrl">
</div>
<div class="inputOuter">
<label>刷新时间</label>
<input type="number" class="inputStyle" v-model="setTime">
</div>
<div class="inputOuter">
<label>设备看板</label>
<select name="equipment" v-model="equipId">
<option :value="e.id" v-for="e in equipment" :key="e.id">{{e.name}}</option>
</select>
</div>
</div>
<div class="submit"><input type="submit" value="配 置" class="btn" @click="_config"></div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'Login',
data () {
return {
loginname: '',
password: '',
2023-04-25 13:38:52 +08:00
equipment: [{id: 1, name: '生产统计'}, {id: 2, name: '仓储监控'}, {id: 3, name: '设备监控'}],
2023-02-28 14:02:39 +08:00
equipId: Number(this.$store.getters.equipId),
drift: 0,
baseUrl: this.$store.getters.baseUrl,
setTime: this.$store.getters.setTime / 1000,
fullscreen: false,
heightLimit: false
}
},
mounted () {
document.getElementsByTagName('body')[0].className = 'login_bg'
},
beforeDestroy () {
document.body.removeAttribute('class', 'login_bg')
},
methods: {
_config () {
let obj = {
baseUrl: this.baseUrl,
setTime: this.setTime * 1000,
equipId: this.equipId
}
this.$store.dispatch('setConfig', obj)
if (this.equipId === 0) {
this.$router.push('/homepage')
} else if (this.equipId === 1) {
2023-03-01 14:55:56 +08:00
this.$router.push('/prodcount')
2023-02-28 14:02:39 +08:00
} else if (this.equipId === 2) {
2023-03-01 14:55:56 +08:00
this.$router.push('/storagemonitor')
2023-02-28 14:02:39 +08:00
} else if (this.equipId === 3) {
2023-03-01 14:55:56 +08:00
this.$router.push('/devicemonitor')
2023-02-28 14:02:39 +08:00
}
let element = document.documentElement
if (this.fullscreen) {
if (document.exitFullscreen) {
document.exitFullscreen()
} else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen()
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen()
} else if (document.msExitFullscreen) {
document.msExitFullscreen()
}
} else {
if (element.requestFullscreen) {
element.requestFullscreen()
} else if (element.webkitRequestFullScreen) {
element.webkitRequestFullScreen()
} else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen()
} else if (element.msRequestFullscreen) {
// IE11
element.msRequestFullscreen()
}
}
this.fullscreen = !this.fullscreen
}
}
}
</script>
<style lang="stylus" scoped>
.login_wrap
position fixed
left 50%
top 50%
width 410px
transform translate3d(-50%, -50%, 0)
background-color rgba(255, 255, 255, 0.8)
border-radius 5px
overflow hidden
.height-limit
height 300px
.login_tab
position relative
height 50px
font-size 0
background-color rgba(255, 255, 255, 0.9)
border-radius 5px 5px 0 0
.login_tab_item
float left
width 50%
font-size 16px
line-height 50px
color #333333
text-align center
cursor pointer
.login_tab_line
position absolute
width 50%
height 2px
background-color #2778f3
left 0
bottom 0
.login_cnt
position relative
width 200%
overflow hidden
.login_card
width 50%
padding .3rem
.card_wrap
overflow hidden
.inputOuter
position relative
height 38px
width 100%
margin-bottom 12px
overflow hidden
.inputStyle, select
width 260px
font-size 0.16rem
float right
background none
line-height 38px
height 38px
color #999999
text-indent 10px
border none
box-sizing border-box
background-color #ffffff
select
appearance auto
outline none
.submit
width 100%
background-color #2778f3
border-radius 3px
margin-top 5px
.btn
background none
height 40px
line-height 39px
width 100%
outline none
font-weight normal
label
position absolute
font-size .16rem
line-height 38px
color #333333
padding-left 5px
</style>