消息列表优化

This commit is contained in:
仲么了
2023-11-03 16:33:16 +08:00
parent f01f764fcf
commit bb95331392
32 changed files with 402 additions and 949 deletions

View File

@@ -35,6 +35,7 @@ export default {
firstCallBack: null, firstCallBack: null,
loadedCallback: null, loadedCallback: null,
reload() { reload() {
if(this.status == 'loading') return
this.data = [] this.data = []
this.status = 'loading' this.status = 'loading'
this.empty = false this.empty = false

View File

@@ -45,10 +45,10 @@ export default {
str = '/static/device_bad.png' str = '/static/device_bad.png'
break break
case 2: case 2:
str = '/static/device.png' str = '/static/device_success.png'
break break
default: default:
str = '/static/device.png' str = '/static/device_success.png'
break break
} }
return str return str

View File

@@ -2,8 +2,8 @@
"name" : "灿能物联", "name" : "灿能物联",
"appid" : "__UNI__88BC25B", "appid" : "__UNI__88BC25B",
"description" : "", "description" : "",
"versionName" : "1.4.1", "versionName" : "1.4.2",
"versionCode" : 141, "versionCode" : 142,
"transformPx" : false, "transformPx" : false,
/* 5+App */ /* 5+App */
"app-plus" : { "app-plus" : {

View File

@@ -192,7 +192,7 @@
} }
}, },
{ {
"path": "pages/message/transient", "path": "pages/message/message",
"style": { "style": {
"app-plus": { "app-plus": {
"bounce": "none", "bounce": "none",
@@ -215,98 +215,11 @@
} }
}, },
{ {
"path": "pages/message/transientDetail", "path": "pages/message/messageDetail",
"style": { "style": {
"navigationBarTitleText": "暂态事件详情" "navigationBarTitleText": "暂态事件详情"
} }
}, },
{
"path": "pages/message/report",
"style": {
"app-plus": {
"bounce": "none",
//关闭窗口回弹效果
"titleNView": {
"titleText": "设备告警",
// 窗口的标题
"titleAlign": "center",
"padding-right": "20rpx",
"buttons": [
{
"text": "一键已读",
"fontSize": "28rpx",
"select": false,
"width": "auto"
}
]
}
}
}
},
{
"path": "pages/message/reportList",
"style": {
"navigationBarTitleText": "异常设备列表"
}
},
{
"path": "pages/message/reportDetail",
"style": {
"navigationBarTitleText": "设备告警详情"
}
},
{
"path": "pages/message/steady",
"style": {
"app-plus": {
"bounce": "none",
//关闭窗口回弹效果
"titleNView": {
"titleText": "稳态越限",
// 窗口的标题
"titleAlign": "center",
"padding-right": "20rpx",
"buttons": [
{
"text": "一键已读",
"fontSize": "28rpx",
"select": false,
"width": "auto"
}
]
}
}
}
},
{
"path": "pages/message/run",
"style": {
"app-plus": {
"bounce": "none",
//关闭窗口回弹效果
"titleNView": {
"titleText": "运行事件",
// 窗口的标题
"titleAlign": "center",
"padding-right": "20rpx",
"buttons": [
{
"text": "一键已读",
"fontSize": "28rpx",
"select": false,
"width": "auto"
}
]
}
}
}
},
{
"path": "pages/message/runDetail",
"style": {
"navigationBarTitleText": "运行事件详情"
}
},
{ {
"path": "pages/device/transfer", "path": "pages/device/transfer",
"style": { "style": {
@@ -451,18 +364,6 @@
"navigationBarTitleText": "网关详情" "navigationBarTitleText": "网关详情"
} }
}, },
{
"path": "pages/message/steadyList",
"style": {
"navigationBarTitleText": "越限监测点列表"
}
},
{
"path": "pages/message/steadyDetail",
"style": {
"navigationBarTitleText": "稳态事件详情"
}
},
{ {
"path": "pages/project/transfer", "path": "pages/project/transfer",
"style": { "style": {

View File

@@ -18,6 +18,7 @@
></uni-data-select> ></uni-data-select>
</div> </div>
<view class="charts-box"> <view class="charts-box">
<view class="data-time">{{ time }}</view>
<qiun-data-charts type="bar" :ontouch="true" :opts="opts" :chartData="chartData" /> <qiun-data-charts type="bar" :ontouch="true" :opts="opts" :chartData="chartData" />
</view> </view>
</view> </view>
@@ -30,6 +31,10 @@ export default {
type: Array, type: Array,
default: () => [], default: () => [],
}, },
dataTime: {
type: String,
default: '',
},
}, },
data() { data() {
return { return {
@@ -44,6 +49,7 @@ export default {
}, },
], ],
parity: 2, parity: 2,
time: '',
dataOptions: [], dataOptions: [],
dataRadio: 0, dataRadio: 0,
renderData: { renderData: {
@@ -72,9 +78,10 @@ export default {
'#9A60B4', '#9A60B4',
'#ea7ccc', '#ea7ccc',
], ],
padding: [20, 10, 0, 0], padding: [0, 10, 0, 0],
legend: { legend: {
position: 'top', position: 'top',
float: 'left',
}, },
xAxis: { xAxis: {
disableGrid: true, disableGrid: true,
@@ -105,10 +112,10 @@ export default {
}, },
watch: { watch: {
basicData: { basicData: {
handler: function (newVal, oldVal) { handler(newVal, oldVal) {
console.log(this.basicData) console.log(this.basicData)
let basicData = JSON.parse(JSON.stringify(this.basicData)) let basicData = JSON.parse(JSON.stringify(this.basicData))
this.dataRadio = 0 // this.dataRadio = 0
this.renderData = { this.renderData = {
电网侧: { 电网侧: {
Apf_HarmI: {}, Apf_HarmI: {},
@@ -176,6 +183,8 @@ export default {
this.dataOptions = dataOptions this.dataOptions = dataOptions
console.log(dataOptions) console.log(dataOptions)
this.initEcharts() this.initEcharts()
console.log(this.dataTime)
this.time = this.$util.parseTime(this.dataTime - 8 * 60 * 60)
}, },
deep: true, deep: true,
immediate: true, immediate: true,
@@ -227,6 +236,12 @@ export default {
.charts-box { .charts-box {
margin-top: 20rpx; margin-top: 20rpx;
height: 100vh; height: 100vh;
.data-time {
position: absolute;
right: 20rpx;
margin-top: 18rpx;
font-size: 24rpx;
}
} }
.header-form { .header-form {
display: flex; display: flex;

View File

@@ -21,21 +21,26 @@
<view class="grid-card-content-1"> <view class="grid-card-content-1">
<view class="item">{{ item.label }}</view> <view class="item">{{ item.label }}</view>
<view class="item" v-for="(child, childIndex) in item.value" :key="childIndex"> <view class="item" v-for="(child, childIndex) in item.value" :key="childIndex">
{{ child }} <text>{{ child.label }}</text>
<text style="font-weight: 700">{{ child.value }}</text>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="module"> <view class="module" v-if="IOData.length">
<view class="grid-card"> <view class="grid-card">
<view class="grid-card-content-2"> <view class="grid-card-content-6">
<template v-for="(item, index) in IOData"> <template v-for="(item, index) in IOData">
<view class="item">{{ item.clDid }}</view> <view class="item">{{ item.clDid }}</view>
<view class="item"> <view class="item" style="font-weight: 700">
<view style="width: 30rpx"> {{ item.value || '-' }}</view> {{ item.value || '-' }}
<view v-if="item.value"> °C</view> <view v-if="item.value"> °C</view>
</view> </view>
</template> </template>
<template v-for="(item, index) in 3 - (IOData.length % 3)">
<view class="item"></view>
<view class="item"> </view>
</template>
</view> </view>
</view> </view>
</view> </view>
@@ -61,7 +66,7 @@
<basic :basicData="basicData"></basic> <basic :basicData="basicData"></basic>
</view> </view>
<view v-else-if="navMenuActive == 1"> <view v-else-if="navMenuActive == 1">
<xieBo :basicData="basicData"></xieBo> <xieBo :dataTime="dataTime" :basicData="basicData"></xieBo>
</view> </view>
<view v-else-if="navMenuActive == 2"> <view v-else-if="navMenuActive == 2">
<power :basicData="basicData"></power> <power :basicData="basicData"></power>
@@ -98,13 +103,24 @@
@confirm="dialogInputConfirm" @confirm="dialogInputConfirm"
></uni-popup-dialog> ></uni-popup-dialog>
</uni-popup> --> </uni-popup> -->
<!-- 输入框示例 --> <!-- 输入框示例 -->
<uni-popup ref="inputDialog" type="dialog"> <uni-popup ref="inputDialog" type="dialog">
<uni-popup-dialog ref="inputClose" type="info" mode="input" :title="dialogType" <uni-popup-dialog
value="对话框预置提示内容!" ref="inputClose"
placeholder="请输入内容" @confirm="dialogInputConfirm"> type="info"
<uni-easyinput type="textarea" :maxlength="250" autoHeight v-model="remarkContent" mode="input"
placeholder="请输入备注"></uni-easyinput> :title="dialogType"
value="对话框预置提示内容!"
placeholder="请输入内容"
@confirm="dialogInputConfirm"
>
<uni-easyinput
type="textarea"
:maxlength="250"
autoHeight
v-model="remarkContent"
placeholder="请输入备注"
></uni-easyinput>
</uni-popup-dialog> </uni-popup-dialog>
</uni-popup> </uni-popup>
</view> </view>
@@ -132,6 +148,7 @@ export default {
}, },
data() { data() {
return { return {
dataTime: '',
remarkContent: '', remarkContent: '',
dialogType: '', dialogType: '',
domLoading: true, domLoading: true,
@@ -425,12 +442,22 @@ export default {
element.showKey.forEach((key) => { element.showKey.forEach((key) => {
data.forEach((item) => { data.forEach((item) => {
if (item.statisticalName === key && item.phase === 'avg') { if (item.statisticalName === key && item.phase === 'avg') {
if(key === 'Apf_RmsI_TolOut(A)'){ if (key === 'Apf_RmsI_TolOut(A)') {
arr.push( '总输出电流:' + item.statisticalData + 'A') arr.push({
}else{ label: '总输出电流:',
arr.push( '电流畸变率:' + item.statisticalData + '%') value: item.statisticalData + 'A',
})
} else {
arr.push({
label: '电流畸变率:',
value: item.statisticalData + '%',
})
// arr.push('电流畸变率:' + item.statisticalData + '%')
} }
} }
if (item.time) {
this.dataTime = item.time.seconds
}
}) })
}) })
element.value = arr element.value = arr
@@ -582,10 +609,9 @@ export default {
position: absolute; position: absolute;
bottom: 0; bottom: 0;
right: 10rpx; right: 10rpx;
width: 200rpx;
opacity: 0.8; opacity: 0.8;
.grid-card-content-2, .grid-card-content-2,
.grid-card-content-6,
.grid-card-content-1 { .grid-card-content-1 {
font-size: 16rpx; font-size: 16rpx;

View File

@@ -24,8 +24,8 @@
@click="select.selectProject = true"> @click="select.selectProject = true">
{{ {{
select.projectName select.projectName
? select.projectName.length > 4 ? select.projectName.length > 6
? select.projectName.substring(0, 4) + '...' ? select.projectName.substring(0, 6) + '...'
: select.projectName : select.projectName
: '全部项目' : '全部项目'
}} }}

View File

@@ -1,5 +1,5 @@
<template> <template>
<view class="device"> <view class="index-device">
<view class="nav" :style="{ top: navTabHeight + 'px' }"> <view class="nav" :style="{ top: navTabHeight + 'px' }">
<!-- <view class="nav-menu" :class="{ 'nav-menu-active': select.engineeringName }" @click="openDrawer" <!-- <view class="nav-menu" :class="{ 'nav-menu-active': select.engineeringName }" @click="openDrawer"
>{{ select.engineeringName || '工程' }} >{{ select.engineeringName || '工程' }}
@@ -15,8 +15,8 @@
<view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }" @click="selectProject = true"> <view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }" @click="selectProject = true">
{{ {{
select.projectName select.projectName
? select.projectName.length > 4 ? select.projectName.length > 12
? select.projectName.substring(0, 4) + '...' ? select.projectName.substring(0, 12) + '...'
: select.projectName : select.projectName
: '全部项目' : '全部项目'
}} }}
@@ -337,4 +337,10 @@ export default {
}, },
} }
</script> </script>
<style lang="scss"></style> <style lang="scss">
.index-device{
.nav-menu {
}
}
</style>

View File

@@ -15,19 +15,19 @@
<view class="header-item-value">{{ devCount.offLineDevCount || 0 }}</view> <view class="header-item-value">{{ devCount.offLineDevCount || 0 }}</view>
<view class="header-item-label">离线设备</view> <view class="header-item-label">离线设备</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ devCount.alarmCount || 0 }}</view> <view class="header-item-value">{{ devCount.alarmCount || 0 }}</view>
<view class="header-item-label">告警数量</view> <view class="header-item-label">告警数量</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ <view class="header-item-value">{{
devCount.eventCount + devCount.runCount + devCount.harmonicCount || 0 devCount.eventCount + devCount.runCount + devCount.harmonicCount || 0
}}</view> }}</view>
<view class="header-item-label">事件数量</view> <view class="header-item-label">事件数量</view>
</view> </view>
<view class="header-item" @click="projectNum"> <view class="header-item" @click="eningerNum">
<view class="header-item-value">{{ devCount.projectCount || 0 }}</view> <view class="header-item-value">{{ devCount.eningerCount || 0 }}</view>
<view class="header-item-label">项目个数</view> <view class="header-item-label">工程个数</view>
</view> </view>
</view> </view>
<view class="mt20"></view> <view class="mt20"></view>
@@ -48,17 +48,17 @@
<view class="header-item-value">{{ devCount.currentOffLineDevCount || 0 }}</view> <view class="header-item-value">{{ devCount.currentOffLineDevCount || 0 }}</view>
<view class="header-item-label">离线设备</view> <view class="header-item-label">离线设备</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ devCount.currentAlarmCount || 0 }}</view> <view class="header-item-value">{{ devCount.currentAlarmCount || 0 }}</view>
<view class="header-item-label">告警数量</view> <view class="header-item-label">告警数量</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ <view class="header-item-value">{{
devCount.currentEventCount + devCount.currentRunCount + devCount.currentHarmonicCount || 0 devCount.currentEventCount + devCount.currentRunCount + devCount.currentHarmonicCount || 0
}}</view> }}</view>
<view class="header-item-label">事件数量</view> <view class="header-item-label">事件数量</view>
</view> </view>
<view class="header-item" @click="projectNum"> <view class="header-item" @click="projectNum(true)">
<view class="header-item-value">{{ devCount.currentProjectCount || 0 }}</view> <view class="header-item-value">{{ devCount.currentProjectCount || 0 }}</view>
<view class="header-item-label">项目个数</view> <view class="header-item-label">项目个数</view>
</view> </view>
@@ -79,15 +79,33 @@ export default {
}, },
}, },
methods: { methods: {
jumpMessage(){
uni.switchTab({
url: '/pages/index/message',
})
},
eningerNum(){
uni.navigateTo({
url: '/pages/engineering/list',
})
},
projectWarning() { projectWarning() {
uni.navigateTo({ uni.navigateTo({
url: '/pages/zhuanzhi/warning', url: '/pages/zhuanzhi/warning',
}) })
}, },
projectNum() { projectNum() {
uni.navigateTo({ console.log(now)
url: '/pages/project/list', if (now) {
}) let engineering = uni.getStorageSync('engineering')
uni.navigateTo({
url: '/pages/project/list?engineeringName=' + engineering.name + '&engineeringId=' + engineering.id,
})
} else {
uni.navigateTo({
url: '/pages/project/list',
})
}
}, },
jump(type) { jump(type) {
uni.navigateTo({ uni.navigateTo({

View File

@@ -3,7 +3,7 @@
<template v-if="devCount.engineeringListLength > 1"> <template v-if="devCount.engineeringListLength > 1">
<view class="canneng-index-title mb20">所有工程设备统计</view> <view class="canneng-index-title mb20">所有工程设备统计</view>
<view class="header"> <view class="header">
<view class="header-item" @click="jump('allEngineering')"> <view class="header-item" @click="jump('allEngineering')">
<view class="header-item-value">{{ devCount.onLineDevCount + devCount.offLineDevCount || 0 }}</view> <view class="header-item-value">{{ devCount.onLineDevCount + devCount.offLineDevCount || 0 }}</view>
<view class="header-item-label">设备总数</view> <view class="header-item-label">设备总数</view>
</view> </view>
@@ -15,29 +15,28 @@
<view class="header-item-value">{{ devCount.offLineDevCount || 0 }}</view> <view class="header-item-value">{{ devCount.offLineDevCount || 0 }}</view>
<view class="header-item-label">离线设备</view> <view class="header-item-label">离线设备</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ devCount.alarmCount || 0 }}</view> <view class="header-item-value">{{ devCount.alarmCount || 0 }}</view>
<view class="header-item-label">告警数量</view> <view class="header-item-label">告警数量</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ <view class="header-item-value">{{
devCount.eventCount + devCount.runCount + devCount.harmonicCount || 0 devCount.eventCount + devCount.runCount + devCount.harmonicCount || 0
}}</view> }}</view>
<view class="header-item-label">事件数量</view> <view class="header-item-label">事件数量</view>
</view> </view>
<view class="header-item" @click="projectNum(false)"> <view class="header-item" @click="eningerNum">
<view class="header-item-value">{{ devCount.projectCount || 0 }}</view> <view class="header-item-value">{{ devCount.eningerCount || 0 }}</view>
<view class="header-item-label">项目个数</view> <view class="header-item-label">工程个数</view>
</view> </view>
</view> </view>
<view class="mt20"></view> <view class="mt20"></view>
</template> </template>
<view class="canneng-index-title mb20">当前工程设备统计</view> <view class="canneng-index-title mb20">当前工程设备统计</view>
<view class="header"> <view class="header">
<view class="header-item" @click="jump('nowEngineering')"> <view class="header-item" @click="jump('nowEngineering')">
<view class="header-item-value">{{ <view class="header-item-value"
devCount.currentOnLineDevCount + devCount.currentOffLineDevCount || 0 >{{ devCount.currentOnLineDevCount + devCount.currentOffLineDevCount || 0 }}
}}
</view> </view>
<view class="header-item-label">设备总数</view> <view class="header-item-label">设备总数</view>
</view> </view>
@@ -49,11 +48,11 @@
<view class="header-item-value">{{ devCount.currentOffLineDevCount || 0 }}</view> <view class="header-item-value">{{ devCount.currentOffLineDevCount || 0 }}</view>
<view class="header-item-label">离线设备</view> <view class="header-item-label">离线设备</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ devCount.currentAlarmCount || 0 }}</view> <view class="header-item-value">{{ devCount.currentAlarmCount || 0 }}</view>
<view class="header-item-label">告警数量</view> <view class="header-item-label">告警数量</view>
</view> </view>
<view class="header-item"> <view class="header-item" @click="jumpMessage">
<view class="header-item-value">{{ <view class="header-item-value">{{
devCount.currentEventCount + devCount.currentRunCount + devCount.currentHarmonicCount || 0 devCount.currentEventCount + devCount.currentRunCount + devCount.currentHarmonicCount || 0
}}</view> }}</view>
@@ -85,6 +84,16 @@ export default {
url: '/pages/zhuanzhi/warning', url: '/pages/zhuanzhi/warning',
}) })
}, },
eningerNum() {
uni.navigateTo({
url: '/pages/engineering/list',
})
},
jumpMessage(){
uni.switchTab({
url: '/pages/index/message',
})
},
projectNum(now) { projectNum(now) {
console.log(now) console.log(now)
if (now) { if (now) {
@@ -100,13 +109,11 @@ export default {
}, },
jump(type) { jump(type) {
uni.navigateTo({ uni.navigateTo({
url: url: '/pages/device/list?type=' + type,
'/pages/device/list?type=' + type
}) })
}, },
}, },
created() { created() {},
},
} }
</script> </script>
<style lang="scss"> <style lang="scss">

View File

@@ -74,9 +74,6 @@ export default {
timer: null, timer: null,
} }
}, },
onPullDownRefresh() {
console.log('onPullDownRefresh')
},
computed: { computed: {
emptyEngineeringName() { emptyEngineeringName() {
if (this.userInfo.authorities === 'tourist') { if (this.userInfo.authorities === 'tourist') {

View File

@@ -52,23 +52,27 @@ export default {
}, },
jump(type) { jump(type) {
switch (type) { switch (type) {
case 'login': case 'run':
uni.navigateTo({ uni.navigateTo({
url: `/pages/user/login`, url: `/pages/message/message?type=${2}`,
}) })
break break
case 'gateway': case 'transient':
uni.navigateTo({ uni.navigateTo({
url: `/pages/gateway/list`, url: `/pages/message/message?type=${0}`,
}) })
break break
case 'upgrade': case 'steady':
this.$refs.inputDialog.open() uni.navigateTo({
url: `/pages/message/message?type=${1}`,
})
break
case 'report':
uni.navigateTo({
url: `/pages/message/message?type=${3}`,
})
break break
default: default:
uni.navigateTo({
url: `/pages/message/${type}`,
})
break break
} }
}, },
@@ -79,11 +83,11 @@ export default {
this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {} this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {}
this.timer = setInterval(() => { this.timer = setInterval(() => {
this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {} this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {}
}, 3000) // 定时请求 }, 1000) // 定时请求
}, },
onHide() { onHide() {
clearInterval(this.timer) clearInterval(this.timer)
} },
} }
</script> </script>

View File

@@ -142,9 +142,6 @@ export default {
}, },
onLoad(options) { onLoad(options) {
this.init() this.init()
setInterval(() => {
this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {}
}, 3000) // 定时请求
}, },
methods: { methods: {
init() {}, init() {},
@@ -251,7 +248,7 @@ export default {
this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {} this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {}
this.timer = setInterval(() => { this.timer = setInterval(() => {
this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {} this.messageCount = uni.getStorageSync(this.$cacheKey.messageCount) || {}
}, 3000) // 定时请求 }, 1000) // 定时请求
}, },
onHide() { onHide() {
clearInterval(this.timer) clearInterval(this.timer)

223
pages/message/message.vue Normal file
View File

@@ -0,0 +1,223 @@
<template>
<Cn-page :loading="loading">
<view class="content" slot="body">
<view class="content-item" v-for="(item, index) in store.data" :key="index" @click="jump(item)">
<view class="content-item-header">
<uni-badge
class="uni-badge-left-margin"
:is-dot="true"
:text="item.status == '1' ? 0 : 1"
absolute="rightTop"
size="small"
>
<view class="content-item-header-icon">
<image mode="aspectFill" :src="staticIcon" style="height: 60rpx; width: 60rpx"></image>
</view>
</uni-badge>
<view class="content-item-header-right">
<view class="content-item-header-right-title">{{ item.equipmentName }}</view>
<!-- <view class="content-item-header-right-des">{{ item.engineeringName }} {{ item.projectName }}</view> -->
<view class="content-item-header-right-des">工程名称{{ item.engineeringName }}</view>
<view class="content-item-header-right-des">项目名称{{ item.projectName }}</view>
<!-- <view class="content-item-header-right-des">{{ item.subTitle }}</view> -->
</view>
<view class="ml10" v-if="type === '0' || item.status != '1'">🔍</view>
</view>
<view class="content-item-footer">{{ item.subTitle }}</view>
</view>
<!-- <uni-card
:title="item.equipmentName"
:extra="item.status == '1' ? '' : '未读'"
:sub-title="item.subTitle"
thumbnail="https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/unicloudlogo.png"
@click="jump(item)"
v-for="(item, index) in store.data"
:key="index"
>
<view class="term-list-bottom">
<view class="term-list-bottom-item" v-for="(item2, textIndex) in item.dataSet" :key="textIndex">
{{ item2.showName + ':' + (item2.value == 3.1415926 ? '-' : item2.value) + (item2.unit || '') }}
</view>
</view>
</uni-card> -->
<Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
<uni-load-more v-if="store.data && store.data.length > 0" :status="store.status"></uni-load-more>
</view>
</Cn-page>
</template>
<script>
import list from '@/common/js/list'
import { updateStatus } from '@/common/api/message'
export default {
mixins: [list],
data() {
return {
loading: true,
type: '',
staticIcon: '',
}
},
onLoad(o) {
this.type = o.type
switch (o.type) {
case '0':
uni.setNavigationBarTitle({ title: '暂态事件' })
this.staticIcon = '/static/zantai2.png'
break
case '1':
uni.setNavigationBarTitle({ title: '稳态事件' })
this.staticIcon = '/static/steady2.png'
break
case '2':
uni.setNavigationBarTitle({ title: '运行事件' })
this.staticIcon = '/static/run2.png'
break
case '3':
uni.setNavigationBarTitle({ title: '设备告警' })
this.staticIcon = '/static/device_bad2.png'
break
}
},
onShow() {
this.loading = true
this.init()
},
onNavigationBarButtonTap(e) {
uni.showModal({
title: '提示',
content: '确定要全部标记为已读吗?',
success: (res) => {
if (res.confirm) {
updateStatus({
type: this.type,
eventIds: [],
}).then(() => {
this.loading = true
this.store.reload()
})
}
},
})
},
methods: {
async init() {
let dictData = await this.$util.getDictData('app_event')
console.log(dictData)
this.store = this.DataSource('/cs-harmonic-boot/eventUser/queryEventpage')
this.store.params.type = this.type
this.store.loadedCallback = () => {
this.store.data.forEach((item) => {
if (this.type !== '0') {
item.subTitle = `${item.startTime}发生${item.showName}`
} else {
item.subTitle =
`${item.startTime}发生${item.showName}` +
item.dataSet
.map((item2) => {
return (
item2.showName +
'' +
(item2.value == 3.1415926 ? '-' : item2.value) +
(item2.unit || '')
)
})
.join('')
}
})
this.loading = false
}
this.store.reload()
},
jump(item) {
if (this.type === '0') {
let str = JSON.stringify(item).replace(/%/g, '百分比')
uni.navigateTo({ url: '/pages/message/messageDetail?detail=' + encodeURIComponent(str) })
} else {
if (item.status != '1') {
item.status = '1'
updateStatus({
eventIds: [item.id],
})
}
}
},
},
}
</script>
<style lang="scss">
.content {
.content-item {
margin: 20rpx;
padding: 20rpx 20rpx;
box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 6rpx 2rpx;
border-radius: 8rpx;
border: 1px solid #ebeef5;
background: #fff;
.content-item-header {
display: flex;
padding: 20rpx 0;
border-bottom: 1px solid #ebeef5;
.content-item-header-icon {
display: flex;
align-items: center;
justify-content: center;
width: 100rpx;
height: 100rpx;
border-radius: 8rpx;
background: $uni-theme-color;
}
.content-item-header-right {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
height: 100rpx;
margin-left: 20rpx;
.content-item-header-right-title {
font-size: 28rpx;
font-weight: bold;
color: #111;
}
.content-item-header-right-des {
font-size: 24rpx;
color: #999;
}
}
}
.content-item-footer {
margin-top: 20rpx;
font-size: 24rpx;
color: #999;
}
}
// padding-top: 20rpx;
}
.term-list-bottom {
.term-list-bottom-item {
font-size: 28rpx;
margin-bottom: 10rpx;
display: flex;
justify-content: space-between;
// view:first-of-type{
// color: #111;
// }
}
.term-list-bottom-item:last-of-type {
margin-bottom: 0;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-card__header-extra-text {
color: #dd524d !important;
font-size: 20rpx;
}
</style>

View File

@@ -1,105 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="content" slot="body">
<uni-list :border="false">
<uni-list-item
isDot
show-badge
badgeType="error"
:badge-text="item.status == 1 ? '' : '未读'"
:title="'告警代码:'+item.code"
:note="item.startTime"
@click="jump(item)"
clickable
v-for="(item, index) in store.data"
/>
</uni-list>
<Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
<uni-load-more v-if="store.data && store.data.length > 0" :status="store.status"></uni-load-more>
</view>
</Cn-page>
</template>
<script>
import list from '@/common/js/list'
import { updateStatus } from '@/common/api/message'
export default {
mixins: [list],
data() {
return {
loading: true,
}
},
onShow() {
this.init()
},
onNavigationBarButtonTap(e) {
uni.showModal({
title: '提示',
content: '确定要全部标记为已读吗?',
success: (res) => {
if (res.confirm) {
updateStatus({
type: 3,
eventIds:[]
}).then(() => {
this.store.reload()
})
}
},
})
},
methods: {
async init() {
let dictData = await this.$util.getDictData('app_event')
console.log(dictData)
this.store = this.DataSource('/cs-harmonic-boot/eventUser/queryEventpage')
this.store.params.type = 3
this.store.firstCallBack = (res) => {
// this.store.data.forEach((item) => {
// item.title = dictData.find((item2) => item2.code === item.tag)?.name
// })
// console.log(this.store.data)
this.loading = false
}
this.store.reload()
},
jump(item) {
let str = JSON.stringify(item).replace(/%/g, '百分比')
uni.navigateTo({ url: '/pages/message/reportDetail?detail=' + encodeURIComponent(str) })
},
},
}
</script>
<style lang="scss">
.content {
// padding-top: 20rpx;
}
.term-list-bottom {
.term-list-bottom-item {
font-size: 28rpx;
margin-bottom: 10rpx;
display: flex;
justify-content: space-between;
// view:first-of-type{
// color: #111;
// }
}
.term-list-bottom-item:last-of-type {
margin-bottom: 0;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-card__header-extra-text {
color: #dd524d !important;
font-size: 20rpx;
}
</style>

View File

@@ -1,61 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="detail" slot="body">
<view class="detail-content" style="font-size: 32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>{{ detail.startTime }}</view>
</view>
<view class="detail-content">
<view class="detail-content-title mb20">基础信息</view>
<view class="mb5"> 设备名称{{ detail.equipmentName }}</view>
<view class="mb5"> 项目名称{{ detail.projectName }} </view>
<view class="mb5"> 工程名称{{ detail.engineeringName }} </view>
<view class="mb5"> 告警代码{{ detail.code }}</view>
<view class="mb5" v-for="(item, textIndex) in detail.dataSet" :key="textIndex">
{{ item.showName + ':' + (item.value == 3.1415926 ? '-' : item.value) + (item.unit || '') }}
</view>
</view>
</view>
</Cn-page>
</template>
<script>
import { updateStatus } from '@/common/api/message'
export default {
data() {
return {
loading: true,
detail: {},
}
},
onLoad(options) {
console.log(options.detail)
this.detail = JSON.parse(decodeURIComponent(options.detail).replace(/百分比/g, '%'))
this.loading = false
if (this.detail.status != 1) {
updateStatus({
eventIds: [this.detail.id],
})
}
},
methods: {},
}
</script>
<style lang="scss">
.detail {
padding: 20rpx 0;
.detail-content {
padding: 20rpx;
background: #fff;
margin-bottom: 20rpx;
font-size: 26rpx;
.detail-content-title {
font-size: 32rpx;
color: #111;
font-weight: 700;
}
}
}
</style>

View File

@@ -1,113 +0,0 @@
<template>
<view class="content">
<uni-card title="灿能园区NPQS_682发生设备状态异常一次" sub-title="2023-02-27 15:13:29" @click="jump">
<view class="term-list-bottom">
<view class="term-list-bottom-item">
<view>设备告警</view>
<view>0</view>
</view>
<view class="term-list-bottom-item">
<view>通讯设备</view>
<view>1</view>
</view>
<view class="term-list-bottom-item">
<view>设备流量</view>
<view>0</view>
</view>
</view>
</uni-card>
<uni-card title="灿能园区NPQS_681发生设备状态异常一次" sub-title="2023-02-27 13:13:29" @click="jump">
<view class="term-list-bottom">
<view class="term-list-bottom-item">
<view>设备告警</view>
<view>0</view>
</view>
<view class="term-list-bottom-item">
<view>通讯设备</view>
<view>1</view>
</view>
<view class="term-list-bottom-item">
<view>设备流量</view>
<view>0</view>
</view>
</view>
</uni-card>
<uni-card title="灿能园区NPQS_682发生设备状态异常一次" sub-title="2023-02-27 11:13:29" @click="jump">
<view class="term-list-bottom">
<view class="term-list-bottom-item">
<view>设备告警</view>
<view>0</view>
</view>
<view class="term-list-bottom-item">
<view>通讯设备</view>
<view>1</view>
</view>
<view class="term-list-bottom-item">
<view>设备流量</view>
<view>0</view>
</view>
</view>
</uni-card>
<uni-card title="灿能园区NPQS_682发生设备状态异常一次" sub-title="2023-02-27 09:13:29" @click="jump">
<view class="term-list-bottom">
<view class="term-list-bottom-item">
<view>设备告警</view>
<view>0</view>
</view>
<view class="term-list-bottom-item">
<view>通讯设备</view>
<view>1</view>
</view>
<view class="term-list-bottom-item">
<view>设备流量</view>
<view>0</view>
</view>
</view>
</uni-card>
<uni-load-more status="nomore"></uni-load-more>
</view>
</template>
<script>
export default {
data () {
return {
title: '灿能'
}
},
onLoad () {
},
methods: {
jump () {
console.log(123);
uni.navigateTo({ url: '/pages/message/termDetail' })
}
}
}
</script>
<style lang="scss">
.content {
// padding-top: 20rpx;
}
.term-list-bottom {
.term-list-bottom-item{
font-size: 28rpx;
margin-bottom: 20rpx;
display: flex;
justify-content: space-between;
// view:first-of-type{
// color: #111;
// }
}
.term-list-bottom-item:last-of-type{
margin-bottom: 0;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
</style>

View File

@@ -1,82 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="content" slot="body">
<uni-list :border="false">
<uni-list-item
isDot
show-badge
badgeType="error"
:badge-text="item.status == 1 ? '' : '未读'"
:title="item.showName"
:note="item.startTime"
@click="jump(item)"
clickable
v-for="(item, index) in store.data"
/>
</uni-list>
<Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
<uni-load-more v-if="store.data && store.data.length > 0" :status="store.status"></uni-load-more>
</view>
</Cn-page>
</template>
<script>
import list from '@/common/js/list'
import { updateStatus } from '@/common/api/message'
export default {
mixins: [list],
data() {
return {
loading: true,
}
},
onShow() {
this.init()
},
onNavigationBarButtonTap(e) {
uni.showModal({
title: '提示',
content: '确定要全部标记为已读吗?',
success: (res) => {
if (res.confirm) {
updateStatus({
type: 2,
eventIds:[]
}).then(() => {
this.store.reload()
})
}
},
})
},
methods: {
async init() {
let dictData = await this.$util.getDictData('app_event')
console.log(dictData)
this.store = this.DataSource('/cs-harmonic-boot/eventUser/queryEventpage')
this.store.params.type = 2
this.store.firstCallBack = (res) => {
this.loading = false
}
this.store.reload()
},
jump(item) {
let str = JSON.stringify(item).replace(/%/g, '百分比')
uni.navigateTo({ url: '/pages/message/runDetail?detail=' + encodeURIComponent(str) })
},
},
}
</script>
<style lang="scss">
.content {
padding-top: 20rpx;
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-badge {
background-color: unset !important;
color: #dd524d !important;
font-size: 28rpx !important;
}
</style>

View File

@@ -1,61 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="detail" slot="body">
<view class="detail-content" style="font-size: 32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>{{ detail.startTime }}</view>
</view>
<view class="detail-content">
<view class="detail-content-title mb20">基础信息</view>
<view class="mb5"> 设备名称{{ detail.equipmentName }}</view>
<view class="mb5"> 项目名称{{ detail.projectName }} </view>
<view class="mb5"> 工程名称{{ detail.engineeringName }} </view>
<view class="mb5"> 事件名称{{ detail.showName }}</view>
<view class="mb5" v-for="(item, textIndex) in detail.dataSet" :key="textIndex">
{{ item.showName + ':' + (item.value == 3.1415926 ? '-' : item.value) + (item.unit || '') }}
</view>
</view>
</view>
</Cn-page>
</template>
<script>
import { updateStatus } from '@/common/api/message'
export default {
data() {
return {
loading: true,
detail: {},
}
},
onLoad(options) {
console.log(options.detail)
this.detail = JSON.parse(decodeURIComponent(options.detail).replace(/百分比/g, '%'))
this.loading = false
if (this.detail.status != 1) {
updateStatus({
eventIds: [this.detail.id],
})
}
},
methods: {},
}
</script>
<style lang="scss">
.detail {
padding: 20rpx 0;
.detail-content {
padding: 20rpx;
background: #fff;
margin-bottom: 20rpx;
font-size: 26rpx;
.detail-content-title {
font-size: 32rpx;
color: #111;
font-weight: 700;
}
}
}
</style>

View File

@@ -1,105 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="content" slot="body">
<uni-list :border="false">
<uni-list-item
isDot
show-badge
badgeType="error"
:badge-text="item.status == 1 ? '' : '未读'"
:title="item.showName"
:note="item.startTime"
@click="jump(item)"
clickable
v-for="(item, index) in store.data"
/>
</uni-list>
<Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
<uni-load-more v-if="store.data && store.data.length > 0" :status="store.status"></uni-load-more>
</view>
</Cn-page>
</template>
<script>
import list from '@/common/js/list'
import { updateStatus } from '@/common/api/message'
export default {
mixins: [list],
data() {
return {
loading: true,
}
},
onShow() {
this.init()
},
onNavigationBarButtonTap(e) {
uni.showModal({
title: '提示',
content: '确定要全部标记为已读吗?',
success: (res) => {
if (res.confirm) {
updateStatus({
type: 1,
eventIds:[]
}).then(() => {
this.store.reload()
})
}
},
})
},
methods: {
async init() {
let dictData = await this.$util.getDictData('app_event')
console.log(dictData)
this.store = this.DataSource('/cs-harmonic-boot/eventUser/queryEventpage')
this.store.params.type = 1
this.store.firstCallBack = (res) => {
// this.store.data.forEach((item) => {
// item.title = dictData.find((item2) => item2.code === item.tag)?.name
// })
// console.log(this.store.data)
this.loading = false
}
this.store.reload()
},
jump(item) {
let str = JSON.stringify(item).replace(/%/g, '百分比')
uni.navigateTo({ url: '/pages/message/steadyDetail?detail=' + encodeURIComponent(str) })
},
},
}
</script>
<style lang="scss">
.content {
// padding-top: 20rpx;
}
.term-list-bottom {
.term-list-bottom-item {
font-size: 28rpx;
margin-bottom: 10rpx;
display: flex;
justify-content: space-between;
// view:first-of-type{
// color: #111;
// }
}
.term-list-bottom-item:last-of-type {
margin-bottom: 0;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-card__header-extra-text {
color: #dd524d !important;
font-size: 20rpx;
}
</style>

View File

@@ -1,61 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="detail" slot="body">
<view class="detail-content" style="font-size: 32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>{{ detail.startTime }}</view>
</view>
<view class="detail-content">
<view class="detail-content-title mb20">基础信息</view>
<view class="mb5"> 设备名称{{ detail.equipmentName }}</view>
<view class="mb5"> 项目名称{{ detail.projectName }} </view>
<view class="mb5"> 工程名称{{ detail.engineeringName }} </view>
<view class="mb5"> 事件名称{{ detail.showName }}</view>
<view class="mb5" v-for="(item, textIndex) in detail.dataSet" :key="textIndex">
{{ item.showName + ':' + (item.value == 3.1415926 ? '-' : item.value) + (item.unit || '') }}
</view>
</view>
</view>
</Cn-page>
</template>
<script>
import { updateStatus } from '@/common/api/message'
export default {
data() {
return {
loading: true,
detail: {},
}
},
onLoad(options) {
console.log(options.detail)
this.detail = JSON.parse(decodeURIComponent(options.detail).replace(/百分比/g, '%'))
this.loading = false
if (this.detail.status != 1) {
updateStatus({
eventIds: [this.detail.id],
})
}
},
methods: {},
}
</script>
<style lang="scss">
.detail {
padding: 20rpx 0;
.detail-content {
padding: 20rpx;
background: #fff;
margin-bottom: 20rpx;
font-size: 26rpx;
.detail-content-title {
font-size: 32rpx;
color: #111;
font-weight: 700;
}
}
}
</style>

View File

@@ -1,54 +0,0 @@
<template>
<view class="content">
<view class="detail-content " style="font-size:32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>2023-02-14</view>
</view>
<uni-list :border="false">
<uni-list-item title="灿能园区CN_NPQS682发生稳态越线" note="电压谐波畸变率越限45分钟,5次电压谐波含有率越限5分钟" clickable @click="jump" />
<uni-list-item title="灿能园区CN_NPQS682发生稳态越线" note="电压谐波畸变率越限27分钟,5次电压谐波含有率越限3分钟" clickable @click="jump" />
<uni-list-item title="灿能园区CN_NPQS682发生稳态越线" note="电压谐波畸变率越限45分钟,5次电压谐波含有率越限5分钟" clickable @click="jump" />
<uni-list-item title="灿能园区CN_NPQS682发生稳态越线" note="电压谐波畸变率越限45分钟,5次电压谐波含有率越限5分钟" clickable @click="jump" />
<uni-list-item title="灿能园区CN_NPQS682发生稳态越线" note="电压谐波畸变率越限45分钟,5次电压谐波含有率越限5分钟" clickable @click="jump" />
</uni-list>
<uni-load-more status="nomore"></uni-load-more>
</view>
</template>
<script>
export default {
data () {
return {
title: '灿能'
}
},
onLoad () {
},
methods: {
jump () {
uni.navigateTo({ url: '/pages/message/steadyDetail' })
}
}
}
</script>
<style lang="scss">
.content {
.detail-content{
padding: 20rpx 30rpx;
background: #fff;
margin-bottom: 20rpx;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-badge {
background-color: unset !important;
color: #dd524d !important;
font-size: 28rpx !important;
}
</style>

View File

@@ -1,106 +0,0 @@
<template>
<Cn-page :loading="loading">
<view class="content" slot="body">
<uni-card
:title="item.showName"
:extra="item.status == '1' ? '' : '未读'"
:sub-title="item.startTime"
@click="jump(item)"
v-for="(item, index) in store.data"
:key="index"
>
<view class="term-list-bottom">
<view class="term-list-bottom-item" v-for="(item2, textIndex) in item.dataSet" :key="textIndex">
{{ item2.showName + ':' + (item2.value == 3.1415926 ? '-' : item2.value) + (item2.unit || '') }}
</view>
</view>
</uni-card>
<Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
<uni-load-more v-if="store.data && store.data.length > 0" :status="store.status"></uni-load-more>
</view>
</Cn-page>
</template>
<script>
import list from '@/common/js/list'
import { updateStatus } from '@/common/api/message'
export default {
mixins: [list],
data() {
return {
loading: true,
}
},
onShow() {
this.init()
},
onNavigationBarButtonTap(e) {
uni.showModal({
title: '提示',
content: '确定要全部标记为已读吗?',
success: (res) => {
if (res.confirm) {
updateStatus({
type: 0,
eventIds:[]
}).then(() => {
this.store.reload()
})
}
},
})
},
methods: {
async init() {
let dictData = await this.$util.getDictData('app_event')
console.log(dictData)
this.store = this.DataSource('/cs-harmonic-boot/eventUser/queryEventpage')
this.store.params.type = 0
this.store.firstCallBack = (res) => {
// this.store.data.forEach((item) => {
// item.title = dictData.find((item2) => item2.code === item.tag)?.name
// })
// console.log(this.store.data)
this.loading = false
}
this.store.reload()
},
jump(item) {
let str = JSON.stringify(item).replace(/%/g, '百分比')
uni.navigateTo({ url: '/pages/message/transientDetail?detail=' + encodeURIComponent(str) })
},
},
}
</script>
<style lang="scss">
.content {
// padding-top: 20rpx;
}
.term-list-bottom {
.term-list-bottom-item {
font-size: 28rpx;
margin-bottom: 10rpx;
display: flex;
justify-content: space-between;
// view:first-of-type{
// color: #111;
// }
}
.term-list-bottom-item:last-of-type {
margin-bottom: 0;
}
}
/deep/ .uni-list-item {
background-color: $uni-theme-white !important;
}
/deep/ .uni-card__header-extra-text {
color: #dd524d !important;
font-size: 20rpx;
}
</style>

View File

@@ -80,7 +80,7 @@ export default {
break break
case 'book': case 'book':
uni.openDocument({ uni.openDocument({
filePath: "/static/user_manual.docx", filePath: '/static/user_manual.docx',
success: function (res) { success: function (res) {
console.log('打开文档成功') console.log('打开文档成功')
}, },
@@ -92,6 +92,10 @@ export default {
content: '是否确认退出登录?', content: '是否确认退出登录?',
success: (res) => { success: (res) => {
if (res.confirm) { if (res.confirm) {
uni.removeStorageSync(this.$cacheKey.messageCount)
// #ifdef APP-PLUS
plus.runtime.setBadgeNumber(0)
// #endif
uni.reLaunch({ uni.reLaunch({
url: `/pages/user/login`, url: `/pages/user/login`,
}) })

View File

@@ -21,7 +21,7 @@
</view> </view>
<view class="content device" :style="{ minHeight: 'calc(100vh - ' + navHeight + 'px)' }"> <view class="content device" :style="{ minHeight: 'calc(100vh - ' + navHeight + 'px)' }">
<view v-show="navMenuActive == 0"> <view v-show="navMenuActive == 0">
<uni-card <!-- <uni-card
:title="item.equipmentName" :title="item.equipmentName"
:sub-title="'创建时间' + item.createTime" :sub-title="'创建时间' + item.createTime"
:extra="item.mac" :extra="item.mac"
@@ -31,31 +31,33 @@
padding="0" padding="0"
:thumbnail="deviceIcon(item.runStatus)" :thumbnail="deviceIcon(item.runStatus)"
> >
</uni-card> </uni-card> -->
<Cn-device-card v-for="(item, index) in store.data" :device="item" :key="index">
</Cn-device-card>
<Cn-empty v-if="store.empty"></Cn-empty> <Cn-empty v-if="store.empty"></Cn-empty>
<uni-load-more <uni-load-more
v-if="store.data && store.data.length > 0" v-if="store.data && store.data.length > 0"
:status="store.status" :status="store.status"
></uni-load-more> ></uni-load-more>
</view> </view>
<!-- <view style="padding: 0 20rpx" v-show="navMenuActive == 1">--> <!-- <view style="padding: 0 20rpx" v-show="navMenuActive == 1">-->
<!-- <uni-list>--> <!-- <uni-list>-->
<!-- <uni-list-item--> <!-- <uni-list-item-->
<!-- title="张三"--> <!-- title="张三"-->
<!-- note="2023-02-10 14:55"--> <!-- note="2023-02-10 14:55"-->
<!-- thumb="/static/head.png"--> <!-- thumb="/static/head.png"-->
<!-- thumb-size="lg"--> <!-- thumb-size="lg"-->
<!-- >--> <!-- >-->
<!-- </uni-list-item>--> <!-- </uni-list-item>-->
<!-- <uni-list-item--> <!-- <uni-list-item-->
<!-- title="李四"--> <!-- title="李四"-->
<!-- note="2023-02-10 14:55"--> <!-- note="2023-02-10 14:55"-->
<!-- thumb="/static/head.png"--> <!-- thumb="/static/head.png"-->
<!-- thumb-size="lg"--> <!-- thumb-size="lg"-->
<!-- >--> <!-- >-->
<!-- </uni-list-item>--> <!-- </uni-list-item>-->
<!-- </uni-list>--> <!-- </uni-list>-->
<!-- </view>--> <!-- </view>-->
<view style="padding: 0 20rpx" v-show="navMenuActive == 1"> <view style="padding: 0 20rpx" v-show="navMenuActive == 1">
<!-- <image <!-- <image
class="gplot gplot-box" class="gplot gplot-box"
@@ -249,7 +251,7 @@ export default {
return { return {
name: item.name, name: item.name,
extname: 'img', extname: 'img',
url: this.$config.static + item.filePath, url: this.$config.static + item.filePath,
...item, ...item,
} }
}) })
@@ -297,7 +299,7 @@ export default {
}, 1000) }, 1000)
console.log(option.project) console.log(option.project)
this.project = JSON.parse(decodeURIComponent(option.project)) this.project = JSON.parse(decodeURIComponent(option.project))
this.project.topologyDiagramPaths.forEach(item=>{ this.project.topologyDiagramPaths.forEach((item) => {
item.filePath = this.$config.static + item.filePath item.filePath = this.$config.static + item.filePath
}) })
this.init() this.init()

BIN
static/deivce_success.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
static/device_bad2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
static/run2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
static/steady2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

BIN
static/zantai2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB