提交 49d69e55 作者: 温凯

fix:健康管理列表需做自适应展示页面,需调整样式

上级 5ae30047
......@@ -11,17 +11,8 @@
<div class="nset_control_box_area">
<div class="wrj">
<div class="w97 h110 item" v-if="healthData.BAT">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('智能电池','BAT')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('智能电池','BAT',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('智能电池', 'BAT')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('智能电池', 'BAT', true)" />
<div class="content">
<img src="./assets/images/cell.png" />
<span class="dib">智能电池</span>
......@@ -33,17 +24,8 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.RTK">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('RTK','RTK')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('RTK','RTK',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('RTK', 'RTK')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('RTK', 'RTK', true)" />
<div class="content">
<img src="./assets/images/rtk.png" />
<span class="dib">RTK</span>
......@@ -55,17 +37,8 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.GPS">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('GPS','GPS')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('GPS','GPS',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('GPS', 'GPS')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('GPS', 'GPS', true)" />
<div class="content">
<img src="./assets/images/gps.png" />
<span class="dib">GPS</span>
......@@ -77,17 +50,8 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.OBS">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('避障','OBS')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('避障','OBS',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('避障', 'OBS')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('避障', 'OBS', true)" />
<div class="content">
<img src="./assets/images/obstacles.png" />
......@@ -100,17 +64,8 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.VPN">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('公网','VPN')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('公网','VPN',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('公网', 'VPN')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('公网', 'VPN', true)" />
<div class="content">
<img src="./assets/images/public.png" />
<span class="dib">公网</span>
......@@ -122,17 +77,8 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.SPE">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('专网','SPE')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('专网','SPE',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('专网', 'SPE')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('专网', 'SPE', true)" />
<div class="content">
<img src="./assets/images/pr.png" />
<span class="dib">专网</span>
......@@ -144,69 +90,36 @@
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.CHUTE">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('降落伞','CHUTE')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('降落伞','CHUTE',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('降落伞', 'CHUTE')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('降落伞', 'CHUTE', true)" />
<div class="content">
<img src="./assets/images/san.png" />
<span class="dib">降落伞</span>
</div>
<div
class="notice"
v-if="
healthData.CHUTE && healthData.CHUTE.warningLevel != 'NORMAL'
"
>
<div class="notice" v-if="
healthData.CHUTE && healthData.CHUTE.warningLevel != 'NORMAL'
">
<div v-if="healthData.CHUTE.title.length <= 6">{{ healthData.CHUTE.title }}</div>
<marquee v-else direction="left">{{ healthData.CHUTE.title }}</marquee>
</div>
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.SPEAK">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('喊话器','SPEAK')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('喊话器','SPEAK',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('喊话器', 'SPEAK')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('喊话器', 'SPEAK', true)" />
<div class="content">
<img src="./assets/images/speak.png" />
<span class="dib">喊话器</span>
</div>
<div
class="notice"
v-if="healthData.SPEAK && healthData.SPEAK.warningLevel != 'NORMAL'"
>
<div class="notice" v-if="healthData.SPEAK && healthData.SPEAK.warningLevel != 'NORMAL'">
<div v-if="healthData.SPEAK.title.length <= 6">{{ healthData.SPEAK.title }}</div>
<marquee v-else direction="left">{{ healthData.SPEAK.title }}</marquee>
</div>
<div class="type" v-else>正常</div>
</div>
<div class="w97 h110 item cp" v-if="healthData.NX">
<img
src="./assets/images/info.png"
alt
@click="infoDetail('NX','NX')"
style="cursor: pointer;"
/>
<div
class="iconfont icon-chuli"
style="color: #ffe417;"
@click="infoDetail('NX','NX',true)"
/>
<img src="./assets/images/info.png" alt @click="infoDetail('NX', 'NX')" style="cursor: pointer;" />
<div class="iconfont icon-chuli" style="color: #ffe417;" @click="infoDetail('NX', 'NX', true)" />
<div class="content">
<img src="./assets/images/nx.png" />
<span class="dib">NX</span>
......@@ -230,7 +143,7 @@
</div>
<div class="nest_info">
<!-- <div class="btn" @click="getInfoList">异常记录</div> -->
<div class="bat" v-if="infoName == '智能电池' ">
<div class="bat" v-if="infoName == '智能电池'">
<div class="batteryList mt16" v-for="item in batteryList" :key="item.id">
<div class="head">
<div class="line"></div>
......@@ -269,47 +182,45 @@
<div class="rtk" v-else-if="infoName == 'RTK'">
<div class="item">
<div class="title">FIX状态:</div>
<div class="ingps">{{healthData.RTK&&healthData.RTK.title||'暂无'}}</div>
<div class="ingps">{{ healthData.RTK && healthData.RTK.title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">搜星数:</div>
<div class="inrtk">{{uavRealTimeData.rtk&&uavRealTimeData.rtk.satelliteCount}}</div>
<div class="inrtk">{{ uavRealTimeData.rtk && uavRealTimeData.rtk.satelliteCount }}</div>
</div>
<div class="item">
<div class="title">定位精度:</div>
<div class="inrtk">{{uavRealTimeData.rtk&&uavRealTimeData.rtk.levelDivisor}}</div>
<div class="inrtk">{{ uavRealTimeData.rtk && uavRealTimeData.rtk.levelDivisor }}</div>
</div>
</div>
<div class="gps" v-else-if="infoName == 'GPS'">
<div class="item">
<div class="title">FIX状态:</div>
<div class="ingps">{{healthData.GPS&&healthData.GPS.title||'暂无'}}</div>
<div class="ingps">{{ healthData.GPS && healthData.GPS.title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">搜星数:</div>
<div class="ingps">{{uavRealTimeData.gps&&uavRealTimeData.gps.satelliteCount||'暂无'}}</div>
<div class="ingps">{{ uavRealTimeData.gps && uavRealTimeData.gps.satelliteCount || '暂无' }}</div>
</div>
<div class="item">
<div class="title">定位精度:</div>
<div class="ingps">{{uavRealTimeData.gps&&uavRealTimeData.gps.levelDivisor||'暂无'}}</div>
<div class="ingps">{{ uavRealTimeData.gps && uavRealTimeData.gps.levelDivisor || '暂无' }}</div>
</div>
</div>
<div class="public" v-else-if="infoName == '专网'">
<div class="pu">
<div class="item">
<div class="title">专网信号质量:</div>
<div class="inpublic">{{healthData.SPE&&healthData.SPE.title||'暂无'}}</div>
<div class="inpublic">{{ healthData.SPE && healthData.SPE.title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.SPE&&warningLevel[healthData.SPE.warningLevel].color}"
>{{healthData.SPE&&warningLevel[healthData.SPE.warningLevel].title||'暂无'}}</div>
<div class="inpublic" :style="{ 'color': healthData.SPE && warningLevel[healthData.SPE.warningLevel].color }">
{{ healthData.SPE && warningLevel[healthData.SPE.warningLevel].title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">描述:</div>
<div class="inpublic">{{healthData.SPE&&healthData.SPE.description||'暂无'}}</div>
<div class="inpublic">{{ healthData.SPE && healthData.SPE.description || '暂无' }}</div>
</div>
</div>
</div>
......@@ -318,18 +229,16 @@
<div class="pr">
<div class="item">
<div class="title">公网信号质量:</div>
<div class="inpublic">{{healthData.VPN&&healthData.VPN.title||'暂无'}}</div>
<div class="inpublic">{{ healthData.VPN && healthData.VPN.title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.VPN&&warningLevel[healthData.VPN.warningLevel].color}"
>{{healthData.VPN&&warningLevel[healthData.VPN.warningLevel].title||'暂无'}}</div>
<div class="inpublic" :style="{ 'color': healthData.VPN && warningLevel[healthData.VPN.warningLevel].color }">
{{ healthData.VPN && warningLevel[healthData.VPN.warningLevel].title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">描述:</div>
<div class="inpublic">{{healthData.VPN&&healthData.VPN.description||'暂 无'}}</div>
<div class="inpublic">{{ healthData.VPN && healthData.VPN.description || '暂 无' }}</div>
</div>
</div>
</div>
......@@ -337,26 +246,22 @@
<div class="pu">
<div class="item">
<div class="title">避障状态:</div>
<div class="inpublic">{{healthData.OBS &&healthData.OBS.title||'暂 无'}}</div>
<div class="inpublic">{{ healthData.OBS && healthData.OBS.title || '暂 无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.OBS&&warningLevel[healthData.OBS.warningLevel].color}"
>{{healthData.OBS&&warningLevel[healthData.OBS.warningLevel].title||'暂无'}}</div>
<div class="inpublic" :style="{ 'color': healthData.OBS && warningLevel[healthData.OBS.warningLevel].color }">
{{ healthData.OBS && warningLevel[healthData.OBS.warningLevel].title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">是否触发:</div>
<div
class="inpublic"
>{{uavRealTimeData.obstacles&&uavRealTimeData.obstacles.enable? '触发避障':'未触发'}}</div>
<div class="inpublic">{{ uavRealTimeData.obstacles && uavRealTimeData.obstacles.enable ? '触发避障' : '未触发' }}</div>
</div>
</div>
<div class="pr">
<div class="item">
<div class="title">描述:</div>
<div class="inpr">{{healthData.OBS&&healthData.OBS.description||'暂 无'}}</div>
<div class="inpr">{{ healthData.OBS && healthData.OBS.description || '暂 无' }}</div>
</div>
</div>
</div>
......@@ -364,20 +269,19 @@
<div class="pu">
<div class="item">
<div class="title">状态:</div>
<div class="inpublic">{{healthData.CHUTE&&healthData.CHUTE.title||'暂 无'}}</div>
<div class="inpublic">{{ healthData.CHUTE && healthData.CHUTE.title || '暂 无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.CHUTE&&warningLevel[healthData.CHUTE.warningLevel].color}"
>{{healthData.CHUTE&&warningLevel[healthData.CHUTE.warningLevel].title||'暂无'}}</div>
<div class="inpublic"
:style="{ 'color': healthData.CHUTE && warningLevel[healthData.CHUTE.warningLevel].color }">
{{ healthData.CHUTE && warningLevel[healthData.CHUTE.warningLevel].title || '暂无' }}</div>
</div>
</div>
<div class="pr">
<div class="item">
<div class="title">描述:</div>
<div class="inpr">{{healthData.CHUTE&&healthData.CHUTE.description||'暂 无'}}</div>
<div class="inpr">{{ healthData.CHUTE && healthData.CHUTE.description || '暂 无' }}</div>
</div>
</div>
</div>
......@@ -385,38 +289,35 @@
<div class="pu">
<div class="item">
<div class="title">状态:</div>
<div class="inpublic">{{healthData.SPEAK&&healthData.SPEAK.title||'暂 无'}}</div>
<div class="inpublic">{{ healthData.SPEAK && healthData.SPEAK.title || '暂 无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.SPEAK&&warningLevel[healthData.SPEAK.warningLevel].color}"
>{{healthData.SPEAK&&warningLevel[healthData.SPEAK.warningLevel].title||'暂无'}}</div>
<div class="inpublic"
:style="{ 'color': healthData.SPEAK && warningLevel[healthData.SPEAK.warningLevel].color }">
{{ healthData.SPEAK && warningLevel[healthData.SPEAK.warningLevel].title || '暂无' }}</div>
</div>
</div>
<div class="pr">
<div class="item">
<div class="title">描述:</div>
<div class="inpr">{{healthData.SPEAK&&healthData.SPEAK.description||'暂 无'}}</div>
<div class="inpr">{{ healthData.SPEAK && healthData.SPEAK.description || '暂 无' }}</div>
</div>
</div>
</div>
<div class="rtk" v-else-if="infoName == 'NX'">
<div class="item">
<div class="title">NX状态:</div>
<div class="ingps">{{healthData.NX&&healthData.NX.title||'暂无'}}</div>
<div class="ingps">{{ healthData.NX && healthData.NX.title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">消息类型:</div>
<div
class="inpublic"
:style="{'color':healthData.NX&&warningLevel[healthData.NX.warningLevel].color}"
>{{healthData.NX&&warningLevel[healthData.NX.warningLevel].title||'暂无'}}</div>
<div class="inpublic" :style="{ 'color': healthData.NX && warningLevel[healthData.NX.warningLevel].color }">
{{ healthData.NX && warningLevel[healthData.NX.warningLevel].title || '暂无' }}</div>
</div>
<div class="item">
<div class="title">描述:</div>
<div class="inrtk">{{healthData.NX&&healthData.NX.description||'暂无'}}</div>
<div class="inrtk">{{ healthData.NX && healthData.NX.description || '暂无' }}</div>
</div>
</div>
<Logs v-else :type="type"></Logs>
......@@ -512,7 +413,7 @@ export default {
message: {},
};
},
beforeDestroy() {},
beforeDestroy() { },
methods: {
// flag 为true 代表展示异常信息
infoDetail(name, val, flag) {
......@@ -524,7 +425,7 @@ export default {
this.infoShow = false;
this.infoName = "";
},
async addMessage() {},
async addMessage() { },
},
mounted() {
console.log(this.healthData, "healthData");
......@@ -564,14 +465,12 @@ export default {
color: #14faff;
line-height: 26px;
text-shadow: 0px 1px 1px rgba(2, 32, 56, 0.2);
background: linear-gradient(
135deg,
#e3aa77 0%,
#f5cda9 38%,
#f9ecd3 58%,
#fcdbb1 79%,
#edb07a 100%
);
background: linear-gradient(135deg,
#e3aa77 0%,
#f5cda9 38%,
#f9ecd3 58%,
#fcdbb1 79%,
#edb07a 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
......@@ -591,10 +490,9 @@ export default {
height: 258px;
overflow: auto;
display: flex;
// justify-content: space-between;
flex-wrap: wrap;
padding: 16px;
gap: 16px;
justify-content: space-around;
margin-top: 10px;
.item {
position: relative;
......@@ -605,17 +503,21 @@ export default {
display: flex;
flex-direction: column;
align-items: center;
width: 97px;
flex: 0 0 calc(33.33% - 32px);
/* 32px是左右padding的总和 */
height: 110px;
&:hover {
background: url("./assets/images/checkbg.png") no-repeat;
background-size: 100% 100%;
}
> img {
>img {
position: absolute;
right: 3px;
top: 3px;
}
.content {
width: 100%;
height: 82px;
......@@ -624,8 +526,9 @@ export default {
justify-content: end;
align-items: center;
margin-bottom: 10px;
img {
}
img {}
.dib {
margin-top: 6px;
font-size: 12px;
......@@ -634,6 +537,7 @@ export default {
color: #ffffff;
}
}
.type {
width: calc(100% - 2px);
text-align: center;
......@@ -646,6 +550,7 @@ export default {
color: #36e81a;
border-radius: 0 0 4.5px 4.5px;
}
.notice {
width: calc(100% - 2px);
text-align: center;
......@@ -658,10 +563,12 @@ export default {
color: #fff;
border-radius: 0 0 4.5px 4.5px;
}
.iconfont {
margin-top: 8px;
}
}
.item:nth-of-type(4n) {
margin-right: 0;
}
......@@ -673,8 +580,10 @@ export default {
cursor: pointer;
}
}
.nest_info {
padding: 16px;
.btn {
width: 80px;
height: 28px;
......@@ -686,18 +595,22 @@ export default {
text-align: center;
line-height: 28px;
}
.bat {
.batteryList {
display: flex;
flex-direction: column;
.head {
display: flex;
.line {
width: 4px;
height: 16px;
background: #ffd800;
border-radius: 2px;
}
.name {
margin-left: 4px;
font-size: 16px;
......@@ -705,19 +618,23 @@ export default {
color: #fff;
}
}
.center {
display: flex;
flex-wrap: wrap;
justify-content: start;
.item {
display: flex;
flex-wrap: nowrap;
.title {
white-space: nowrap;
font-size: 14px;
font-weight: 500;
color: #fff;
}
.indo {
font-size: 16px;
font-weight: 500;
......@@ -727,21 +644,25 @@ export default {
}
}
}
.rtk,
.gps {
margin-top: 16px;
display: flex;
justify-content: space-between;
.item {
display: flex;
flex-wrap: nowrap;
align-items: baseline;
.title {
white-space: nowrap;
font-size: 14px;
font-weight: 500;
color: #fff;
}
.ingps,
.inrtk {
font-size: 16px;
......@@ -750,24 +671,29 @@ export default {
}
}
}
.public {
display: flex;
flex-direction: column;
.pu,
.pr {
margin-top: 16px;
display: flex;
justify-content: space-between;
.item {
display: flex;
flex-wrap: nowrap;
align-items: baseline;
.title {
white-space: nowrap;
font-size: 14px;
font-weight: 500;
color: #fff;
}
.inpublic,
.inpr {
font-size: 16px;
......@@ -778,6 +704,7 @@ export default {
}
}
}
.list {
position: fixed;
top: calc(50% + 90px);
......@@ -788,16 +715,15 @@ export default {
border-radius: 10px;
border: 1px solid rgba(26, 92, 246, 0.5);
backdrop-filter: blur(1px);
.nset_control_box_header {
display: flex;
justify-content: space-between;
height: 32px;
background: linear-gradient(
180deg,
#9198ff 0%,
rgba(45, 81, 153, 0.45) 40%,
#05091a 100%
);
background: linear-gradient(180deg,
#9198ff 0%,
rgba(45, 81, 153, 0.45) 40%,
#05091a 100%);
box-shadow: inset 0px 0px 10px 2px #3f9dff;
border-radius: 10px 10px 0px 0px;
border: 1px solid #427dff;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论