大空间消毒机
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

249 lines
5.8 KiB

<template>
<div class="operator_main_content">
<div class="left_contaienr">
<div class="info_cards">
<div class="card">
<DisinfectantLiquidInfo />
</div>
<div class="card">
<EnvironmentInfo />
</div>
<div class="card">
<EnvironmentInfo />
</div>
<div class="card">
<EnvironmentInfo />
</div>
</div>
<div class="warn_wrap">
<p class="warn_text">警报信息</p>
<div class="detail_btn">详情</div>
</div>
</div>
<div class="right_container">
<div class="setting_title">
<p>消毒设置</p>
<p>SET</p>
</div>
<div class="set_form">
<input type="number" v-model="roomSize" class="room_size" />
<div class="log" @click="showLogPicker">{{ logVal }}</div>
</div>
<div class="start" @click="startDisinfect">开始消毒</div>
<div class="progress">
<p class="title">消毒进度</p>
<div class="tube"></div>
<div class="num">000/100</div>
</div>
</div>
<!-- <WarnModal /> -->
<LogPicker
v-if="logVisible"
:changeLogVal="changeLogVal"
:logVal="logVal"
/>
</div>
</template>
<script setup>
import LogPicker from 'cpns/dialogs/LogPicker'
import WarnModal from 'cpns/dialogs/WarnModal'
import DisinfectantLiquidInfo from 'cpns/info/DisinfectantLiquidInfo'
import EnvironmentInfo from 'cpns/info/EnvironmentInfo'
import { ref } from 'vue'
const logVisible = ref(false)
const logVal = ref(1)
const roomSize = ref(0)
const changeLogVal = val => {
logVal.value = val
logVisible.value = false
}
const startDisinfect = () => {
console.log('开始消毒')
}
const showLogPicker = () => {
logVisible.value = true
}
</script>
<style lang="scss" scoped>
.operator_main_content {
margin-bottom: 30px;
height: 580px;
box-sizing: border-box;
display: flex;
align-items: center;
.left_contaienr {
margin-right: 30px;
width: 766px;
height: 580px;
box-sizing: border-box;
border-radius: 16px;
background: #ffffff;
padding: 20px;
.info_cards {
width: 726px;
height: 470px;
box-sizing: border-box;
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
column-gap: 20px;
row-gap: 20px;
margin-bottom: 20px;
.card {
width: 353px;
height: 225px;
border-radius: 17.5px;
background: #06518b;
}
}
.warn_wrap {
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 0 20px;
width: 726px;
height: 50px;
border-radius: 6px;
background: #f6f6f6;
.warn_text {
font-family: Source Han Sans CN;
font-size: 12px;
font-weight: 500;
letter-spacing: 0.1em;
color: #fa1c1c;
}
.detail_btn {
width: 105px;
height: 31px;
border-radius: 16px;
background: #06518b;
display: flex;
align-items: center;
justify-content: center;
font-family: Source Han Sans CN;
font-size: 12px;
font-weight: normal;
letter-spacing: 0.1em;
color: #ffffff;
}
}
}
.right_container {
height: 580px;
box-sizing: border-box;
border-radius: 16px;
background: #ffffff;
flex: 1;
padding: 42px;
padding-top: 32px;
.setting_title {
width: 340px;
height: 45px;
border-radius: 23px;
background: #06518b;
padding: 0 24px;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: space-between;
font-family: Source Han Sans CN;
font-size: 14px;
font-weight: normal;
letter-spacing: 0.1em;
color: #ffffff;
margin-bottom: 41px;
}
.set_form {
width: 340px;
height: 190px;
box-sizing: border-box;
margin-bottom: 41px;
overflow: hidden;
background: url(../assets/img/operator/form.png) no-repeat;
background-size: 100% 100%;
position: relative;
.room_size {
position: absolute;
top: 45px;
left: 23px;
width: 189px;
height: 20px;
text-align: center;
border: none;
outline: none;
}
.log {
position: absolute;
top: 145px;
left: 0px;
width: 240px;
height: 42px;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
font-family: Source Han Sans CN;
font-size: 14px;
font-weight: 500;
letter-spacing: 0.06em;
color: #0e0e0e;
}
}
.start {
margin-bottom: 30px;
width: 340px;
height: 45px;
border-radius: 23px;
background: #06518b;
display: flex;
align-items: center;
justify-content: center;
font-family: Source Han Sans CN;
font-size: 14px;
font-weight: normal;
letter-spacing: 0.1em;
color: #ffffff;
}
.progress {
width: 340px;
height: 114px;
border-radius: 16px;
opacity: 1;
background: #f6f6f6;
box-sizing: border-box;
padding: 27px 24px 18px 27px;
.title {
font-family: Source Han Sans CN;
font-size: 12px;
font-weight: 350;
letter-spacing: 0.06em;
color: #9e9e9e;
margin-bottom: 13px;
}
.tube {
width: 292px;
height: 14px;
border-radius: 7px;
background: #ffffff;
margin-bottom: 11px;
}
.num {
display: flex;
justify-content: flex-end;
font-family: Source Han Sans CN;
font-size: 10px;
font-weight: normal;
letter-spacing: 0.06em;
color: #9e9e9e;
}
}
}
}
</style>