1 #47

Merged
xiaomeng merged 3 commits from pc-master into portal 2023-11-21 07:37:57 +00:00
7 changed files with 237 additions and 134 deletions

View File

@ -2248,6 +2248,30 @@
align-items: center;
}
.vrcode-textarea {
width: 100%;
margin-bottom: 15px;
}
.vrcode-textarea .title {
font-size: 16px;
font-family: Microsoft YaHei;
margin-bottom: 7px;
}
.vrcode-textarea textarea {
width: 680px;
height: 160px;
background: rgba(90, 210, 255, 0.25);
border: 2px solid rgba(86, 209, 255, 0.5);
padding: 15px;
color: #fff;
}
.vrcode-textarea textarea::placeholder {
color: #92B1D0;
}
.vrcode-table .vrcode-btn {
margin-bottom: 20px;
}
@ -2266,6 +2290,11 @@
text-align: center;
}
.vrcode-table .vrcode-table-view.table-view :empty::before {
content: '--';
color: #fff;
}
.vrcode-table .vrcode-table-view.table-view .el-table .warning-row {
background: rgba(0, 180, 255, 0.2);
}
@ -2706,7 +2735,7 @@
.vrcode-model .el-dialog__body .vrcode-content .vrcode-view {
width: 100%;
padding: 30px 0 15px 0;
padding: 20px 0 15px 0;
border-bottom: 1px solid rgba(0, 180, 255, 0.35);
display: flex;
align-items: center;

File diff suppressed because one or more lines are too long

View File

@ -2397,6 +2397,27 @@
align-items: center;
}
.vrcode-textarea{
width: 100%;
margin-bottom: 15px;
.title{
font-size: 16px;
font-family: Microsoft YaHei;
margin-bottom:7px;
}
textarea{
width: 680px;
height: 160px;
background: rgba(90,210,255,0.25);
border: 2px solid rgba(86,209,255,0.5);
padding: 15px;
color: #fff;
&::placeholder{
color: #92B1D0;
}
}
}
.vrcode-table{
.vrcode-btn{
margin-bottom: 20px;
@ -2413,7 +2434,10 @@
text-align: center;
}
:empty::before{
content:'--';
color:#fff;
}
.el-table .warning-row {
background: rgba(0, 180, 255, 0.2);
}
@ -2849,7 +2873,7 @@ color: #FFFFFF;
.vrcode-view {
width: 100%;
padding: 30px 0 15px 0;
padding: 20px 0 15px 0;
border-bottom: 1px solid rgba(0, 180, 255, .35);
display: flex;
align-items: center;

View File

@ -2,13 +2,13 @@
<div class="home">
<div class="kuang">
<div class="title">温室智慧云数据统计</div>
<div class="auto_play">
<!-- <div class="auto_play">
<span :class="autoPlay ? '' : 'act'" @click="autoPlay1"></span>
<span :class="autoPlay ? 'act' : ''" @click="autoPlay2"></span>
</div>
<div class="yuan">
</div> -->
<!-- <div class="yuan">
<img src="../../assets/img/big.png" alt="" />
</div>
</div> -->
<div class="calendar" v-if="time">
<img src="../../assets/img/calendar.png" alt="" />
<span>{{ getNowTime() }}</span>
@ -316,7 +316,7 @@ export default {
player: null,
//
autoPlay: false, //false true
//autoPlay: false, //false true
typeList: [
{
@ -943,29 +943,29 @@ export default {
this.dataInit(userInfo.userid);
this.get_sel_eqbyid(userInfo.userid);
this.autoPlay = JSON.parse(localStorage.getItem("autoPlay"));
console.log(this.autoPlay);
if (this.autoPlay == false) {
clearInterval(this.timer_) && this.timer_;
} else {
this.timer_ = setTimeout(() => {
this.$router.push({ path: "/largeScreen1" });
}, 20000);
}
// this.autoPlay = JSON.parse(localStorage.getItem("autoPlay"));
// console.log(this.autoPlay);
// if (this.autoPlay == false) {
// clearInterval(this.timer_) && this.timer_;
// } else {
// this.timer_ = setTimeout(() => {
// this.$router.push({ path: "/largeScreen1" });
// }, 20000);
// }
},
autoPlay1() {
this.autoPlay = false;
clearInterval(this.timer_) && this.timer_;
localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
},
autoPlay2() {
this.autoPlay = true;
localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
this.timer_ = setTimeout(() => {
this.$router.push({ path: "/largeScreen1" });
}, 20000);
},
// autoPlay1() {
// this.autoPlay = false;
// clearInterval(this.timer_) && this.timer_;
// localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
// },
// autoPlay2() {
// this.autoPlay = true;
// localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
// this.timer_ = setTimeout(() => {
// this.$router.push({ path: "/largeScreen1" });
// }, 20000);
// },
createVideoNew(accessToken, url, index) {
// console.log(accessToken, url, index, 111);
@ -1309,7 +1309,7 @@ export default {
width: 4rem;
height: calc(100% - 0.66rem);
box-sizing: border-box;
padding-top: 0.56rem;
// padding-top: 0.56rem;
position: absolute;
top: 0.56rem;
left: 0.66rem;

View File

@ -6,7 +6,10 @@
<div class="yuan" @click="toBack">
<img src="../../assets/img/small.png" alt="" />
</div>
<div class="auto_play">
<span :class="autoPlay ? '' : 'act'" @click="autoPlay1"></span>
<span :class="autoPlay ? 'act' : ''" @click="autoPlay2"></span>
</div>
<div class="calendar">
<img src="../../assets/img/calendar.png" alt="" />
<span>{{ getNowTime() }}</span>
@ -22,15 +25,15 @@
<div class="drag_box" ref="drag_box">
<img class="drag_img" src="../../assets/img/map.png" alt="" />
<div class="pole_item pole_item_4">
<div class="p_title">
<img src="../../assets/img/wenshi.png" alt="" />
<span>控制中心</span>
</div>
<img class="pole1" src="../../assets/img/pole1.png" alt="" />
</div>
<div class="p_title">
<img src="../../assets/img/wenshi.png" alt="" />
<span>控制中心</span>
</div>
<img class="pole1" src="../../assets/img/pole1.png" alt="" />
</div>
<div class="popBox" v-for="(item, index) in popContentList" :key="index">
<template>
<div class="pole_item" :style="getNamePosition(item.id)" @click="handlerPop(item.id)">
<div class="pole_item" :style="getNamePosition(item.id)" @click="handlerPop(item.id)">
<div class="p_title">
<img src="../../assets/img/wenshi.png" alt="" />
<span>{{ item.greenhouseName }}温室</span>
@ -51,7 +54,7 @@
</div>
<img class="pole1" src="../../assets/img/pole.png" alt="" />
</div> -->
<!-- <div class="pole_item pole_item5" @click="handlerPop(5)">
<div class="p_title">
<img src="../../assets/img/wenshi.png" alt="" />
@ -79,17 +82,9 @@
<template>
<!-- <div class="pop_content" :style="getTopOrLeft(item.greenhouseName)" :key="index"
v-if="popContentCurrent == index ? true : false"> -->
<div
class="pop_content"
:style="getTopOrLeft(item.id)"
v-show="popContentCurrent == item.id ? true : false"
>
<img
class="close_img"
src="../../assets/img/close.png"
alt=""
@click="cancelHandler"
/>
<div class="pop_content" :style="getTopOrLeft(item.id)"
v-show="popContentCurrent == item.id ? true : false">
<img class="close_img" src="../../assets/img/close.png" alt="" @click="cancelHandler" />
<div class="p_video">
<img :src="item.greenhouseImage" alt="" />
</div>
@ -116,20 +111,12 @@
</div>
<div class="line" style="margin-top: 0.2rem"></div>
<div class="icon_item scroll">
<div
class="icon_item_child"
v-for="(item1, index1) in item.childList"
:key="index1"
>
<div class="icon_item_child" v-for="(item1, index1) in item.childList" :key="index1">
<!-- <img :src="item.formula" alt=""> -->
<img
:src="
require('../../assets/image/real-time-' +
item1.formula +
'.png')
"
alt=""
/>
<img :src="require('../../assets/image/real-time-' +
item1.formula +
'.png')
" alt="" />
<div>
<span>{{ item1.environmentDataId }}</span>
<span>{{
@ -652,22 +639,40 @@ export default {
}
},
getNamePosition(id){
if(id == 1){
getNamePosition(id) {
if (id == 1) {
return "position: absolute;top: 41%;left: 13%;"
}else if(id == 2){
} else if (id == 2) {
return "position: absolute;top: 10%;left: 24%;"
}else if(id == 3){
} else if (id == 3) {
return "position: absolute;top: 22%;left: 40%;"
}else if(id == 4){
} else if (id == 4) {
return "position: absolute;top: 29%;left: 76%;"
}else if(id == 5){
} else if (id == 5) {
return "position: absolute;top: 61%;left: 62%;"
}else if(id == 6){
} else if (id == 6) {
return "position: absolute;top: 1%;left: 62%;"
}
},
autoPlay1() {
let that = this
this.autoPlay = false;
clearInterval(that.timer2) && this.timer2;
localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
},
autoPlay2() {
this.autoPlay = true;
localStorage.setItem("autoPlay", JSON.stringify(this.autoPlay));
this.timer2 = setInterval(() => {
this.popContentCurrent++;
if (this.popContentCurrent > 7) {
this.popContentCurrent = 0;
// this.$router.push({ path: "/largeScreen" });
}
}, 3000);
},
//
getTypeList(val) {
let typeList1 = [];
@ -705,10 +710,10 @@ export default {
} else {
this.timer2 = setInterval(() => {
this.popContentCurrent++;
console.log('this.popContentCurrent',this.popContentCurrent);
console.log('this.popContentCurrent', this.popContentCurrent);
if (this.popContentCurrent > 7) {
this.popContentCurrent = 0;
this.$router.push({ path: "/largeScreen" });
// this.$router.push({ path: "/largeScreen" });
}
}, 3000);
}
@ -850,17 +855,52 @@ export default {
opacity: 0.89;
text-shadow: 0.01 0.1rem 0.2rem rgba(0, 51, 103, 0.25);
background: linear-gradient(
to bottom,
#ffffff 45%,
#e9f8ff 90%,
#77baff 100%
);
background: linear-gradient(to bottom,
#ffffff 45%,
#e9f8ff 90%,
#77baff 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
text-align: center;
}
.auto_play {
height: 0.56rem;
position: absolute;
top: 0.53rem;
left: 1.4rem;
z-index: 99999999;
display: flex;
align-items: center;
>span {
width: 0.8rem;
height: 0.3rem;
background: rgba(14, 91, 165, 0.1);
border: 1px solid rgba(97, 152, 209, 0.65);
margin-right: 0.1rem;
font-size: 0.18rem;
font-family: MicrosoftYaHei;
font-weight: 400;
color: #70d0ee;
text-align: center;
line-height: 0.3rem;
cursor: pointer;
}
.act {
background: linear-gradient(-35deg,
#56a8d5 0%,
rgba(0, 55, 110, 0.75) 50%,
#56a8d5 100%);
border: 1px solid rgba(122, 225, 255, 0.75);
font-size: 0.18rem;
font-family: MicrosoftYaHei;
font-weight: 400;
color: #fff;
}
}
.yuan {
width: 0.56rem;
height: 0.56rem;
@ -874,7 +914,7 @@ export default {
align-items: center;
justify-content: center;
> img {
>img {
width: 0.2rem;
height: 0.2rem;
}
@ -890,26 +930,26 @@ export default {
align-items: center;
justify-content: space-between;
> img {
>img {
width: 0.28rem;
height: 0.3rem;
}
> span:nth-child(2) {
>span:nth-child(2) {
font-size: 0.24rem;
font-family: PingFang-SC-Bold;
font-weight: bold;
color: #7abaff;
}
> span:nth-child(4) {
>span:nth-child(4) {
font-size: 0.2rem;
font-family: PingFang-SC-Bold;
font-weight: bold;
color: #7abaff;
}
> span:nth-child(6) {
>span:nth-child(6) {
font-size: 0.3rem;
font-family: PingFang-SC-Bold;
font-weight: bold;
@ -935,25 +975,21 @@ export default {
top: 0;
left: 0;
z-index: 99;
-webkit-mask-image: linear-gradient(
90deg,
transparent 0%,
blue 7%,
blue 87%,
transparent 97%
);
-webkit-mask-image: linear-gradient(90deg,
transparent 0%,
blue 7%,
blue 87%,
transparent 97%);
.map1 {
width: 100%;
height: 100%;
// background: url('../assets/img/map.png') center no-repeat;
// background-size: 100% 100%;
-webkit-mask-image: linear-gradient(
transparent 4%,
blue 15%,
blue 86%,
transparent 100%
);
-webkit-mask-image: linear-gradient(transparent 4%,
blue 15%,
blue 86%,
transparent 100%);
overflow: hidden;
position: absolute;
@ -961,23 +997,19 @@ export default {
width: 100%;
height: 100%;
position: absolute;
-webkit-mask-image: linear-gradient(
90deg,
transparent 4%,
blue 18%,
blue 88%,
transparent 100%
);
-webkit-mask-image: linear-gradient(90deg,
transparent 4%,
blue 18%,
blue 88%,
transparent 100%);
.drag_img {
width: 100%;
height: 100%;
-webkit-mask-image: linear-gradient(
transparent 0%,
blue 13%,
blue 73%,
transparent 97%
);
-webkit-mask-image: linear-gradient(transparent 0%,
blue 13%,
blue 73%,
transparent 97%);
}
.pole_item_4 {
@ -1003,13 +1035,13 @@ export default {
top: 0;
left: 0;
> img {
>img {
width: 0.32rem;
height: 0.32rem;
margin-right: 0.15rem;
}
> span {
>span {
font-size: 0.18rem;
font-family: MicrosoftYaHei;
font-weight: 400;
@ -1085,7 +1117,7 @@ export default {
height: 2.8rem;
margin: 0.2rem auto 0;
> img {
>img {
width: 100%;
height: 100%;
}
@ -1129,13 +1161,13 @@ export default {
box-sizing: border-box;
padding: 0 0.1rem 0 0.1rem;
> img {
>img {
width: 0.18rem;
height: 0.18rem;
margin-right: 0.05rem;
}
> span {
>span {
font-size: 0.16rem;
font-family: MicrosoftYaHei;
font-weight: 400;
@ -1154,20 +1186,20 @@ export default {
justify-content: center;
align-items: center;
> img {
>img {
width: 0.22rem;
height: 0.18rem;
margin-right: 0.1rem;
}
> span:nth-child(2) {
>span:nth-child(2) {
font-size: 0.16rem;
font-family: MicrosoftYaHei;
font-weight: 400;
color: #ffffff;
}
> span:nth-child(3) {
>span:nth-child(3) {
font-size: 0.16rem;
font-family: MicrosoftYaHei;
font-weight: 400;
@ -1191,24 +1223,24 @@ export default {
display: flex;
margin-bottom: 0.1rem;
> img {
>img {
width: 0.6rem;
height: 0.53rem;
margin-right: 0.1rem;
}
> div {
>div {
display: flex;
flex-direction: column;
> span:nth-child(1) {
>span:nth-child(1) {
font-size: 0.14rem;
font-family: MicrosoftYaHei;
font-weight: bold;
color: #86d9ff;
}
> span:nth-child(2) {
>span:nth-child(2) {
font-size: 0.2rem;
font-family: AlibabaPuHuiTiB;
font-weight: bold;

View File

@ -167,6 +167,11 @@ export default {
var num = (data - 400) / 10
return num
},
countType4(data) {
var num = (data - 1000) / 10
return num
},
//
sendCountType1(data) {
var num = data + 400
@ -181,7 +186,11 @@ export default {
var num = (data * 10) + 400
return num
},
sendCountType4(data) {
var num = (data* 10)+1000
return num
},
//
handleCommand(command) {
this.typeList.forEach((el, index) => {
@ -212,6 +221,9 @@ export default {
} else if (el.countType == 3) {
this.inputData[20904 + (i * 5 + 2)] = this.countType3(this.inputData[20904 + (i * 5 + 2)])
this.inputData[20904 + (i * 5 + 4)] = this.countType3(this.inputData[20904 + (i * 5 + 4)])
} else if (el.countType == 4) {
this.inputData[20904 + (i * 5 + 2)] = this.countType4(this.inputData[20904 + (i * 5 + 2)])
this.inputData[20904 + (i * 5 + 4)] = this.countType4(this.inputData[20904 + (i * 5 + 4)])
}
}
@ -391,6 +403,8 @@ export default {
number1 = this.sendCountType2(number)
} else if (el.countType == 3) {
number1 = this.sendCountType3(number)
} else if (el.countType == 4) {
number1 = this.sendCountType4(number)
}
}
})

View File

@ -129,18 +129,9 @@
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="vrcode-radio">
<div class="radio-name">是否追溯</div>
<div class="radio-sel">
<img v-if="modelisTrue" class="sel" src="../../assets/image/radio.png" alt="">
<div v-else @click="modelisTrue=true" class="no-sel"></div>
<span></span>
</div>
<div class="radio-sel">
<img v-if="!modelisTrue" class="sel" src="../../assets/image/radio.png" alt="">
<div v-else @click="modelisTrue=false" class="no-sel"></div>
<span></span>
</div>
<div class="vrcode-textarea">
<div class="title">备注</div>
<textarea placeholder="输入您的备注信息" name="" id="" cols="30" rows="10"></textarea>
</div>
<div class="vrcode-selimage">
<div class="title">工作图片</div>
@ -160,6 +151,19 @@
@change="handleImageChange" />
</div>
</div>
<div class="vrcode-radio">
<div class="radio-name">是否追溯</div>
<div class="radio-sel">
<img v-if="modelisTrue" class="sel" src="../../assets/image/radio.png" alt="">
<div v-else @click="modelisTrue=true" class="no-sel"></div>
<span></span>
</div>
<div class="radio-sel">
<img v-if="!modelisTrue" class="sel" src="../../assets/image/radio.png" alt="">
<div v-else @click="modelisTrue=false" class="no-sel"></div>
<span></span>
</div>
</div>
</div>
</div>
<span slot="footer" class="dialog-footer">