页面切图

This commit is contained in:
仲么了
2023-02-28 14:03:38 +08:00
parent 66c615eb80
commit 841cf9ae2d
20 changed files with 776 additions and 261 deletions

View File

@@ -123,7 +123,7 @@ page {
} }
.grid-card-content-2 { .grid-card-content-2 {
grid-template-columns: 1fr 3fr; grid-template-columns: 1fr 2fr;
} }
.grid-card-content-3 { .grid-card-content-3 {

View File

@@ -312,6 +312,24 @@
"style": { "style": {
"navigationBarTitleText": "网关详情" "navigationBarTitleText": "网关详情"
} }
},
{
"path": "pages/message/reportList",
"style": {
"navigationBarTitleText": "越限监测点列表"
}
},
{
"path": "pages/message/reportDetail",
"style": {
"navigationBarTitleText": "越限监测点详情"
}
},
{
"path": "pages/project/transfer",
"style": {
"navigationBarTitleText": "项目移交"
}
} }
], ],
"tabBar": { "tabBar": {

View File

@@ -1,6 +1,6 @@
<template> <template>
<view class='basic'> <view class='basic'>
<view class="grid-card"> <!-- <view class="grid-card">
<view class="grid-card-title">模块</view> <view class="grid-card-title">模块</view>
<view class="grid-card-content-4"> <view class="grid-card-content-4">
<view class="item item-title">名称</view> <view class="item item-title">名称</view>
@@ -25,7 +25,7 @@
<view class="item">110</view> <view class="item">110</view>
</view> </view>
</view> </view> -->
<view class="grid-card"> <view class="grid-card">
<view class="grid-card-title">电网电流</view> <view class="grid-card-title">电网电流</view>
<view class="grid-card-content-4"> <view class="grid-card-content-4">

View File

@@ -10,35 +10,21 @@
<view class="module"> <view class="module">
<view class="grid-card"> <view class="grid-card">
<view class="grid-card-content-2"> <view class="grid-card-content-2">
<view class="item">模块一</view> <view class="item">模块一(300A)</view>
<view class="item"> <view class="item">
实际输出电流300A, THDI4.6% THDU4.6%
总谐波电流200A,
总谐波电压110v
</view> </view>
<view class="item">模块二</view> <view class="item">模块二(300A)</view>
<view class="item"> <view class="item">
<view> THDI4.6% THDU4.6%
实际输出电流300A,
总谐波电流200A,
总谐波电压110v
</view>
</view> </view>
<view class="item">模块三</view> <view class="item">模块三(300A)</view>
<view class="item"> <view class="item">
<view> THDI4.6% THDU4.6%
实际输出电流300A,
总谐波电流200A,
总谐波电压110v
</view>
</view> </view>
<view class="item">模块四</view> <view class="item">模块四(300A)</view>
<view class="item"> <view class="item">
<view> THDI4.6% THDU4.6%
实际输出电流300A,
总谐波电流200A,
总谐波电压110v
</view>
</view> </view>
</view> </view>
</view> </view>
@@ -155,9 +141,9 @@ export default {
uni.navigateTo({ url: '/pages/device/user' }) uni.navigateTo({ url: '/pages/device/user' })
} else if (e.item.text === '报表') { } else if (e.item.text === '报表') {
this.$util.toast('效果是直接打开报表') this.$util.toast('效果是直接打开报表')
}else if (e.item.text === '版本') { } else if (e.item.text === '版本') {
this.$util.toast('功能暂未开放') this.$util.toast('功能暂未开放')
}else if (e.item.text === '模版') { } else if (e.item.text === '模版') {
this.$util.toast('效果是功能暂未开放直接打开报表') this.$util.toast('效果是功能暂未开放直接打开报表')
} }
this.$refs.fab.close() this.$refs.fab.close()

View File

@@ -8,7 +8,7 @@
<view class="title">基本信息</view> <view class="title">基本信息</view>
<view class="des"> <view class="des">
<text>名称监测网关</text> <text>名称监测网关</text>
<text class="ml20">项目监测</text> <text class="ml20">项目XXX项目1</text>
</view> </view>
<view class="des"> <view class="des">
<text>设备型号PQS-882</text> <text>设备型号PQS-882</text>
@@ -17,10 +17,9 @@
<view class="title mb20 m340">设备列表 <view class="title mb20 m340">设备列表
<view class="footer-btn" @click="newDevice">注册设备</view> <view class="footer-btn" @click="newDevice">注册设备</view>
</view> </view>
<uni-card :title="item.name" :sub-title="item.project" :extra="item.type" <uni-card :title="'设备' + item" :sub-title="'XXX项目1'" extra="用能" v-for="item in 2" :key="item"
v-for="(item, index) in deviceList" :key="index" style="margin-top:4rpx" @click="goDevice(item)" @click="goDevice" padding="0" thumbnail="/static/device.png">
thumbnail="/static/device.png" padding="0"> </uni-card>
</uni-card>
<uni-load-more status="nomore"></uni-load-more> <uni-load-more status="nomore"></uni-load-more>
<view style="height:20rpx"></view> <view style="height:20rpx"></view>
</view> </view>

View File

@@ -23,9 +23,14 @@
</Cn-grid> </Cn-grid>
</view> </view>
<view class="nav"> <view class="nav">
<view class="nav-menu" :class="{ 'nav-menu-active': navMenuActive == index }" <picker @change="projectNameChange" :value="select.projectNameIndex" :range="projectList" range-key="text">
v-for="(item, index) in navMenuList" :key="index" @click="navMenuClick(index)">{{ item.text }} <view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }">{{
</view> select.projectName || '项目' }} </view>
</picker>
<picker @change="projectTypeChange" :value="select.projectTypeIndex" :range="projectType" range-key="text">
<view class="nav-menu" :class="{ 'nav-menu-active': select.projectType }">{{
select.projectType || '类型' }} </view>
</picker>
</view> </view>
<view class="content device" :style="{ minHeight: minHeight }"> <view class="content device" :style="{ minHeight: minHeight }">
<uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0" <uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0"
@@ -41,66 +46,128 @@ export default {
data () { data () {
return { return {
loading: false, loading: false,
navMenuList: [{ select: {
text: '全部' projectName: '',
}, { projectNameIndex: 0,
text: '监测' projectType: '',
}, { projectTypeIndex: 0
text: '治理' },
}], projectType: [
navMenuActive: 0, {
text: '全部类型',
value: 0
},
{
text: '监测',
value: 1
},
{
text: '用能',
value: 2
},
{
text: '环境',
value: 3
},
{
text: '安防',
value: 4
},
{
text: '其他',
value: 5
}
],
projectList: [
{
text: '全部项目',
value: 1
},
{
text: 'XXX项目1',
value: 1
},
{
text: 'XXX项目2',
value: 1
},
{
text: 'XXX项目3',
value: 1
},
],
navHeight: 0, navHeight: 0,
minHeight: '', minHeight: '',
deviceList: [ deviceList: [
{ {
name: '设备1', name: '设备APF-1',
des: '设备描述1', des: '设备描述1',
type: 'APF', type: '监测',
project: '监测', project: 'XXX项目1',
}, },
{ {
name: '设备2', name: '设备APF-2',
des: '设备描述1',
type: '监测',
project: 'XXX项目1',
},
{
name: '设备APF-3',
des: '设备描述2', des: '设备描述2',
type: 'DVR', type: '用能',
project: '治理' project: 'XXX项目2'
}, },
{ {
name: '设备3', name: '设备DVR-1',
des: '设备描述3', des: '设备描述3',
type: 'DVR', type: '监测',
project: '治理' project: 'XXX项目3'
},
{
name: '设备4',
des: '设备描述4',
type: 'DVR',
project: '治理'
},
{
name: '设备5',
des: '设备描述5',
type: 'APF',
project: '治理'
},
{
name: '设备6',
des: '设备描述6',
type: 'APF',
project: '治理'
} }
] ]
} }
}, },
computed: { computed: {
deviceListFilter () { deviceListFilter () {
if (this.navMenuActive == 0) { return this.deviceList.filter(item => {
return this.deviceList if (this.select.projectName) {
} else { return item.project === this.select.projectName
return this.deviceList.filter(item => item.project == this.navMenuList[this.navMenuActive].text) } else if (this.select.projectType) {
} return item.type === this.select.projectType
} else {
return true
}
})
} }
}, },
methods: { methods: {
projectTypeChange (e) {
// 重置name
this.select.projectName = ''
this.select.projectNameIndex = 0
this.select.projectTypeIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectType = ''
return
}
this.select.projectType = this.projectType[e.detail.value].text
},
projectNameChange (e) {
console.log(e);
// 重置type
this.select.projectType = ''
this.select.projectTypeIndex = 0
this.select.projectNameIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectName = ''
return
}
this.select.projectName = this.projectList[e.detail.value].text
},
registerDevice () { registerDevice () {
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
@@ -130,11 +197,11 @@ export default {
this.navMenuActive = index this.navMenuActive = index
}, },
jump (item) { jump (item) {
if (item.type == 'APF') { if (item.name.indexOf('APF') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/APF/detail' url: '/pages/device/APF/detail'
}) })
} else { } else if (item.name.indexOf('DVR') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/DVR/detail' url: '/pages/device/DVR/detail'
}) })
@@ -157,6 +224,4 @@ export default {
} }
} }
</script> </script>
<style lang='scss'> <style lang='scss'></style>
</style>

View File

@@ -23,9 +23,14 @@
</Cn-grid> </Cn-grid>
</view> </view>
<view class="nav"> <view class="nav">
<view class="nav-menu" :class="{ 'nav-menu-active': navMenuActive == index }" <picker @change="projectNameChange" :value="select.projectNameIndex" :range="projectList" range-key="text">
v-for="(item, index) in navMenuList" :key="index" @click="navMenuClick(index)">{{ item.text }} <view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }">{{
</view> select.projectName || '项目' }} </view>
</picker>
<picker @change="projectTypeChange" :value="select.projectTypeIndex" :range="projectType" range-key="text">
<view class="nav-menu" :class="{ 'nav-menu-active': select.projectType }">{{
select.projectType || '类型' }} </view>
</picker>
</view> </view>
<view class="content device" :style="{ minHeight: minHeight }"> <view class="content device" :style="{ minHeight: minHeight }">
<uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0" <uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0"
@@ -41,66 +46,128 @@ export default {
data () { data () {
return { return {
loading: false, loading: false,
navMenuList: [{ select: {
text: '全部' projectName: '',
}, { projectNameIndex: 0,
text: '监测' projectType: '',
}, { projectTypeIndex: 0
text: '治理' },
}], projectType: [
navMenuActive: 0, {
text: '全部类型',
value: 0
},
{
text: '监测',
value: 1
},
{
text: '用能',
value: 2
},
{
text: '环境',
value: 3
},
{
text: '安防',
value: 4
},
{
text: '其他',
value: 5
}
],
projectList: [
{
text: '全部项目',
value: 1
},
{
text: 'XXX项目1',
value: 1
},
{
text: 'XXX项目2',
value: 1
},
{
text: 'XXX项目3',
value: 1
},
],
navHeight: 0, navHeight: 0,
minHeight: '', minHeight: '',
deviceList: [ deviceList: [
{ {
name: '设备1', name: '设备APF-1',
des: '设备描述1', des: '设备描述1',
type: 'APF', type: '监测',
project: '监测', project: 'XXX项目1',
}, },
{ {
name: '设备2', name: '设备APF-2',
des: '设备描述1',
type: '监测',
project: 'XXX项目1',
},
{
name: '设备APF-3',
des: '设备描述2', des: '设备描述2',
type: 'DVR', type: '用能',
project: '治理' project: 'XXX项目2'
}, },
{ {
name: '设备3', name: '设备DVR-1',
des: '设备描述3', des: '设备描述3',
type: 'DVR', type: '监测',
project: '治理' project: 'XXX项目3'
},
{
name: '设备4',
des: '设备描述4',
type: 'DVR',
project: '治理'
},
{
name: '设备5',
des: '设备描述5',
type: 'APF',
project: '治理'
},
{
name: '设备6',
des: '设备描述6',
type: 'APF',
project: '治理'
} }
] ]
} }
}, },
computed: { computed: {
deviceListFilter () { deviceListFilter () {
if (this.navMenuActive == 0) { return this.deviceList.filter(item => {
return this.deviceList if (this.select.projectName) {
} else { return item.project === this.select.projectName
return this.deviceList.filter(item => item.project == this.navMenuList[this.navMenuActive].text) } else if (this.select.projectType) {
} return item.type === this.select.projectType
} else {
return true
}
})
} }
}, },
methods: { methods: {
projectTypeChange (e) {
// 重置name
this.select.projectName = ''
this.select.projectNameIndex = 0
this.select.projectTypeIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectType = ''
return
}
this.select.projectType = this.projectType[e.detail.value].text
},
projectNameChange (e) {
console.log(e);
// 重置type
this.select.projectType = ''
this.select.projectTypeIndex = 0
this.select.projectNameIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectName = ''
return
}
this.select.projectName = this.projectList[e.detail.value].text
},
registerDevice () { registerDevice () {
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
@@ -130,11 +197,11 @@ export default {
this.navMenuActive = index this.navMenuActive = index
}, },
jump (item) { jump (item) {
if (item.type == 'APF') { if (item.name.indexOf('APF') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/APF/detail' url: '/pages/device/APF/detail'
}) })
} else { } else if (item.name.indexOf('DVR') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/DVR/detail' url: '/pages/device/DVR/detail'
}) })
@@ -157,6 +224,4 @@ export default {
} }
} }
</script> </script>
<style lang='scss'> <style lang='scss'></style>
</style>

View File

@@ -23,9 +23,14 @@
</Cn-grid> </Cn-grid>
</view> </view>
<view class="nav"> <view class="nav">
<view class="nav-menu" :class="{ 'nav-menu-active': navMenuActive == index }" <picker @change="projectNameChange" :value="select.projectNameIndex" :range="projectList" range-key="text">
v-for="(item, index) in navMenuList" :key="index" @click="navMenuClick(index)">{{ item.text }} <view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }">{{
</view> select.projectName || '项目' }} </view>
</picker>
<picker @change="projectTypeChange" :value="select.projectTypeIndex" :range="projectType" range-key="text">
<view class="nav-menu" :class="{ 'nav-menu-active': select.projectType }">{{
select.projectType || '类型' }} </view>
</picker>
</view> </view>
<view class="content device" :style="{ minHeight: minHeight }"> <view class="content device" :style="{ minHeight: minHeight }">
<uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0" <uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0"
@@ -41,66 +46,128 @@ export default {
data () { data () {
return { return {
loading: false, loading: false,
navMenuList: [{ select: {
text: '全部' projectName: '',
}, { projectNameIndex: 0,
text: '监测' projectType: '',
}, { projectTypeIndex: 0
text: '治理' },
}], projectType: [
navMenuActive: 0, {
text: '全部类型',
value: 0
},
{
text: '监测',
value: 1
},
{
text: '用能',
value: 2
},
{
text: '环境',
value: 3
},
{
text: '安防',
value: 4
},
{
text: '其他',
value: 5
}
],
projectList: [
{
text: '全部项目',
value: 1
},
{
text: 'XXX项目1',
value: 1
},
{
text: 'XXX项目2',
value: 1
},
{
text: 'XXX项目3',
value: 1
},
],
navHeight: 0, navHeight: 0,
minHeight: '', minHeight: '',
deviceList: [ deviceList: [
{ {
name: '设备1', name: '设备APF-1',
des: '设备描述1', des: '设备描述1',
type: 'APF', type: '监测',
project: '监测', project: 'XXX项目1',
}, },
{ {
name: '设备2', name: '设备APF-2',
des: '设备描述1',
type: '监测',
project: 'XXX项目1',
},
{
name: '设备APF-3',
des: '设备描述2', des: '设备描述2',
type: 'DVR', type: '用能',
project: '治理' project: 'XXX项目2'
}, },
{ {
name: '设备3', name: '设备DVR-1',
des: '设备描述3', des: '设备描述3',
type: 'DVR', type: '监测',
project: '治理' project: 'XXX项目3'
},
{
name: '设备4',
des: '设备描述4',
type: 'DVR',
project: '治理'
},
{
name: '设备5',
des: '设备描述5',
type: 'APF',
project: '治理'
},
{
name: '设备6',
des: '设备描述6',
type: 'APF',
project: '治理'
} }
] ]
} }
}, },
computed: { computed: {
deviceListFilter () { deviceListFilter () {
if (this.navMenuActive == 0) { return this.deviceList.filter(item => {
return this.deviceList if (this.select.projectName) {
} else { return item.project === this.select.projectName
return this.deviceList.filter(item => item.project == this.navMenuList[this.navMenuActive].text) } else if (this.select.projectType) {
} return item.type === this.select.projectType
} else {
return true
}
})
} }
}, },
methods: { methods: {
projectTypeChange (e) {
// 重置name
this.select.projectName = ''
this.select.projectNameIndex = 0
this.select.projectTypeIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectType = ''
return
}
this.select.projectType = this.projectType[e.detail.value].text
},
projectNameChange (e) {
console.log(e);
// 重置type
this.select.projectType = ''
this.select.projectTypeIndex = 0
this.select.projectNameIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectName = ''
return
}
this.select.projectName = this.projectList[e.detail.value].text
},
registerDevice () { registerDevice () {
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
@@ -130,11 +197,11 @@ export default {
this.navMenuActive = index this.navMenuActive = index
}, },
jump (item) { jump (item) {
if (item.type == 'APF') { if (item.name.indexOf('APF') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/APF/detail' url: '/pages/device/APF/detail'
}) })
} else { } else if (item.name.indexOf('DVR') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/DVR/detail' url: '/pages/device/DVR/detail'
}) })
@@ -157,6 +224,4 @@ export default {
} }
} }
</script> </script>
<style lang='scss'> <style lang='scss'></style>
</style>

View File

@@ -41,11 +41,11 @@ export default {
}, },
methods: { methods: {
jump (item) { jump (item) {
if (item % 2) { if (item.name.indexOf('APF') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/APF/detail' url: '/pages/device/APF/detail'
}) })
} else { } else if (item.name.indexOf('DVR') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/DVR/detail' url: '/pages/device/DVR/detail'
}) })

View File

@@ -23,9 +23,14 @@
</Cn-grid> </Cn-grid>
</view> --> </view> -->
<view class="nav"> <view class="nav">
<view class="nav-menu" :class="{ 'nav-menu-active': navMenuActive == index }" <picker @change="projectNameChange" :value="select.projectNameIndex" :range="projectList" range-key="text">
v-for="(item, index) in navMenuList" :key="index" @click="navMenuClick(index)">{{ item.text }} <view class="nav-menu" :class="{ 'nav-menu-active': select.projectName }">{{
</view> select.projectName || '项目' }} </view>
</picker>
<picker @change="projectTypeChange" :value="select.projectTypeIndex" :range="projectType" range-key="text">
<view class="nav-menu" :class="{ 'nav-menu-active': select.projectType }">{{
select.projectType || '类型' }} </view>
</picker>
</view> </view>
<view class="content device" :style="{ minHeight: minHeight }"> <view class="content device" :style="{ minHeight: minHeight }">
<uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0" <uni-card :title="item.name" :sub-title="item.project" :extra="item.type" padding="0"
@@ -41,66 +46,129 @@ export default {
data () { data () {
return { return {
loading: false, loading: false,
navMenuList: [{ select: {
text: '全部' projectName: '',
}, { projectNameIndex: 0,
text: '监测' projectType: '',
}, { projectTypeIndex: 0
text: '治理' },
}], projectType: [
navMenuActive: 0, {
text: '全部类型',
value: 0
},
{
text: '监测',
value: 1
},
{
text: '用能',
value: 2
},
{
text: '环境',
value: 3
},
{
text: '安防',
value: 4
},
{
text: '其他',
value: 5
}
],
projectList: [
{
text: '全部项目',
value: 1
},
{
text: 'XXX项目1',
value: 1
},
{
text: 'XXX项目2',
value: 1
},
{
text: 'XXX项目3',
value: 1
},
],
navHeight: 0, navHeight: 0,
minHeight: '', minHeight: '',
deviceList: [ deviceList: [
{ {
name: '设备1', name: '设备APF-1',
des: '设备描述1', des: '设备描述1',
type: 'APF', type: '监测',
project: '监测', project: 'XXX项目1',
}, },
{ {
name: '设备2', name: '设备APF-2',
des: '设备描述1',
type: '监测',
project: 'XXX项目1',
},
{
name: '设备APF-3',
des: '设备描述2', des: '设备描述2',
type: 'DVR', type: '用能',
project: '治理' project: 'XXX项目2'
}, },
{ {
name: '设备3', name: '设备DVR-1',
des: '设备描述3', des: '设备描述3',
type: 'DVR', type: '监测',
project: '治理' project: 'XXX项目3'
},
{
name: '设备4',
des: '设备描述4',
type: 'DVR',
project: '治理'
},
{
name: '设备5',
des: '设备描述5',
type: 'APF',
project: '治理'
},
{
name: '设备6',
des: '设备描述6',
type: 'APF',
project: '治理'
} }
] ]
} }
}, },
computed: { computed: {
deviceListFilter () { deviceListFilter () {
if (this.navMenuActive == 0) { return this.deviceList.filter(item => {
return this.deviceList if (this.select.projectName) {
} else { return item.project === this.select.projectName
return this.deviceList.filter(item => item.project == this.navMenuList[this.navMenuActive].text) } else if (this.select.projectType) {
} return item.type === this.select.projectType
} else {
return true
}
})
} }
}, },
methods: { methods: {
projectTypeChange (e) {
// 重置name
this.select.projectName = ''
this.select.projectNameIndex = 0
this.select.projectTypeIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectType = ''
return
}
this.select.projectType = this.projectType[e.detail.value].text
},
projectNameChange (e) {
console.log(e);
// 重置type
this.select.projectType = ''
this.select.projectTypeIndex = 0
this.select.projectNameIndex = e.detail.value
if (e.detail.value === 0) {
this.select.projectName = ''
return
}
this.select.projectName = this.projectList[e.detail.value].text
},
registerDevice () { registerDevice () {
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
@@ -130,11 +198,11 @@ export default {
this.navMenuActive = index this.navMenuActive = index
}, },
jump (item) { jump (item) {
if (item.type == 'APF') { if (item.name.indexOf('APF') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/APF/detail' url: '/pages/device/APF/detail'
}) })
} else { } else if (item.name.indexOf('DVR') > -1) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/device/DVR/detail' url: '/pages/device/DVR/detail'
}) })
@@ -157,6 +225,4 @@ export default {
} }
} }
</script> </script>
<style lang='scss'> <style lang='scss'></style>
</style>

View File

@@ -2,7 +2,7 @@
<Cn-page :loading='loading'> <Cn-page :loading='loading'>
<view slot='body'> <view slot='body'>
<view class='detail'> <view class='detail'>
<view class="detail-content "> <view class="detail-content " style="font-size:32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> --> <!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>2023-02-14</view> <view>2023-02-14</view>
</view> </view>

View File

@@ -1,8 +1,11 @@
<template> <template>
<view class="content"> <view class="content">
<uni-list :border="false"> <uni-list :border="false">
<uni-list-item :show-badge="item<4" badgeType="error" isDot badge-text="未读" title="输入电压异常1" <uni-list-item show-badge badgeType="error" isDot badge-text="未读" title="发生稳态越限监测点10个" note="2023-02-03" clickable @click="jump" />
note="2023-02-01 15:10:29" v-for="item in 5" /> <uni-list-item show-badge badgeType="error" isDot badge-text="未读" title="发生稳态越限监测点10个" note="2023-02-02" clickable @click="jump" />
<uni-list-item show-badge badgeType="error" isDot badge-text="未读" title="发生稳态越限监测点10个" note="2023-02-01" clickable @click="jump" />
<uni-list-item badgeType="error" isDot badge-text="未读" title="发生稳态越限监测点10个" note="2023-01-31" clickable @click="jump" />
<uni-list-item badgeType="error" isDot badge-text="未读" title="发生稳态越限监测点10个" note="2023-01-30" clickable @click="jump" />
</uni-list> </uni-list>
<uni-load-more status="nomore"></uni-load-more> <uni-load-more status="nomore"></uni-load-more>
</view> </view>
@@ -19,7 +22,9 @@ export default {
}, },
methods: { methods: {
jump(){
uni.navigateTo({ url: '/pages/message/reportList' })
}
} }
} }
</script> </script>
@@ -33,6 +38,7 @@ export default {
/deep/ .uni-list-item { /deep/ .uni-list-item {
background-color: $uni-theme-white !important; background-color: $uni-theme-white !important;
} }
/deep/ .uni-badge { /deep/ .uni-badge {
background-color: unset !important; background-color: unset !important;
color: #dd524d !important; color: #dd524d !important;

View File

@@ -0,0 +1,49 @@
<template>
<Cn-page :loading='loading'>
<view slot='body'>
<view class='detail'>
<view class="detail-content " style="font-size:32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>2023-02-14</view>
</view>
<view class="detail-content ">
<view class="detail-content-title mb20">电压谐波畸变率越限4</view>
<image style="width:100%" src="/static/boxing3.jpeg" mode="widthFix" />
</view>
<view class="detail-content ">
<view class="detail-content-title mb20">5次电压谐波含有率越限</view>
<image style="width:100%" src="/static/boxing3.jpeg" mode="widthFix" />
</view>
</view>
</view>
</Cn-page>
</template>
<script>
export default {
data () {
return {
loading: false
}
},
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

@@ -0,0 +1,54 @@
<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/reportDetail' })
}
}
}
</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

@@ -2,7 +2,7 @@
<Cn-page :loading='loading'> <Cn-page :loading='loading'>
<view slot='body'> <view slot='body'>
<view class='detail'> <view class='detail'>
<view class="detail-content "> <view class="detail-content " style="font-size:32rpx">
<!-- <view class="detail-content-title mb20">发生时间</view> --> <!-- <view class="detail-content-title mb20">发生时间</view> -->
<view>2023-02-14</view> <view>2023-02-14</view>
</view> </view>

View File

@@ -3,7 +3,9 @@
<view slot='body'> <view slot='body'>
<view class='detail'> <view class='detail'>
<view class="header"> <view class="header">
<view class="header-title">{{ project }}</view> <view class="header-title">{{ project }}
<view class="header-title-extra">用能</view>
</view>
<view class="header-des">项目详情</view> <view class="header-des">项目详情</view>
</view> </view>
<view class="nav"> <view class="nav">
@@ -13,8 +15,8 @@
</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 title="用能设备" sub-title="设备" extra="APF" v-for="item in 2" :key="item" @click="goDevice" <uni-card :title="'设备' + item" :sub-title="project" extra="用能" v-for="item in 2" :key="item"
padding="0" thumbnail="/static/real_time_data.png"> @click="goDevice" padding="0" thumbnail="/static/device.png">
</uni-card> </uni-card>
</view> </view>
<view style="padding: 0 20rpx" v-show="navMenuActive == 1"> <view style="padding: 0 20rpx" v-show="navMenuActive == 1">
@@ -36,7 +38,7 @@
<uni-load-more status="nomore"></uni-load-more> <uni-load-more status="nomore"></uni-load-more>
</view> </view>
<uni-fab ref="fab" direction="vertical" horizontal="right" vertical="bottom" :content="content" <uni-fab ref="fab" direction="vertical" horizontal="right" vertical="bottom" :content="content"
@trigger="trigger" /> @trigger="trigger" v-if="content.length" />
<uni-popup ref="share" type="share" background-color="#fff"> <uni-popup ref="share" type="share" background-color="#fff">
<uni-popup-share title="分享到"></uni-popup-share> <uni-popup-share title="分享到"></uni-popup-share>
</uni-popup> </uni-popup>
@@ -55,18 +57,21 @@ export default {
}, { }, {
text: '子用户列表' text: '子用户列表'
}], }],
content: [{ content: [],
iconPath: '/static/share.png',
text: '分享',
}],
navHeight: 0, navHeight: 0,
navMenuActive: 0 navMenuActive: 0
} }
}, },
methods: { methods: {
trigger () { trigger (e) {
console.log(this.$refs); console.log(this.$refs);
this.$refs.share.open() if (e.item.text == '移交') {
uni.navigateTo({
url: '/pages/project/transfer'
})
} else if (e.item.text == '分享') {
this.$refs.share.open()
}
}, },
navMenuClick (index) { navMenuClick (index) {
this.navMenuActive = index this.navMenuActive = index
@@ -99,6 +104,18 @@ export default {
}, },
onLoad (option) { onLoad (option) {
this.project = option.project this.project = option.project
let userInfo = uni.getStorageSync('userInfo')
if (userInfo.role == '3') {
this.content.push({
iconPath: '/static/transfer.png',
text: '移交',
})
} else if (userInfo.role == '4') {
this.content.push({
iconPath: '/static/share.png',
text: '分享',
})
}
setTimeout(() => { setTimeout(() => {
// 获取nav高度 // 获取nav高度
uni.createSelectorQuery().select('.nav').boundingClientRect((rect) => { uni.createSelectorQuery().select('.nav').boundingClientRect((rect) => {
@@ -120,8 +137,17 @@ export default {
padding: 20rpx 20rpx 0; padding: 20rpx 20rpx 0;
.header-title { .header-title {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 40rpx; font-size: 40rpx;
margin-bottom: 10rpx; margin-bottom: 10rpx;
.header-title-extra {
font-size: 24rpx;
color: #666;
padding-right: 10rpx;
}
} }
.header-des { .header-des {

View File

@@ -4,20 +4,31 @@
<uni-nav-bar dark :fixed="true" status-bar left-icon="left" rightIcon="plusempty" background-color="#fff" <uni-nav-bar dark :fixed="true" status-bar left-icon="left" rightIcon="plusempty" background-color="#fff"
color="#111" title="项目管理" @clickLeft="back" @clickRight="add" /> color="#111" title="项目管理" @clickLeft="back" @clickRight="add" />
<view class="message"> <view class="message">
<view class="message-nav" @click="jump('监测')"> <uni-card title="XXX项目1" extra="用能" @click="jump('XXX项目1')">
<view class="message-nav-label">监测</view> <view class="term-list-bottom">
<uni-icons type="forward" color="#aaa" size="20"></uni-icons> <view class="term-list-bottom-item">
</view> <view>设备个数</view>
<view class="message-nav" @click="jump('治理')"> <view>3</view>
<view class="message-nav-label">治理</view> </view>
<uni-icons type="forward" color="#aaa" size="20"></uni-icons> <view class="term-list-bottom-item">
</view> <view>用户个数</view>
<view class="message-nav" @click="jump('用能')"> <view>1</view>
<view class="message-nav-label">用能</view> </view>
<!-- <uni-badge text="3"></uni-badge> --> </view>
<uni-icons type="forward" color="#aaa" size="20"></uni-icons> </uni-card>
</view> <uni-card title="XXX项目2" extra="监测" @click="jump('XXX项目2')">
<view class="term-list-bottom">
<view class="term-list-bottom-item">
<view>设备个数</view>
<view>3</view>
</view>
<view class="term-list-bottom-item">
<view>用户个数</view>
<view>1</view>
</view>
</view>
</uni-card>
<uni-load-more status="nomore"></uni-load-more>
</view> </view>
</view> </view>
</template> </template>
@@ -117,4 +128,20 @@ export default {
} }
} }
} }
.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;
}
}
</style> </style>

View File

@@ -7,6 +7,9 @@
<uni-forms-item label="项目名称"> <uni-forms-item label="项目名称">
<uni-easyinput type="number" v-model="formData.name" placeholder="请输入项目名称" /> <uni-easyinput type="number" v-model="formData.name" placeholder="请输入项目名称" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="项目类别">
<uni-data-select v-model="formData.type" :localdata="TypeRange"></uni-data-select>
</uni-forms-item>
<uni-forms-item label="区域"> <uni-forms-item label="区域">
<view style="display:flex;"> <view style="display:flex;">
<uni-easyinput :clearable="false" type="textarea" autoHeight v-model="formData.address" <uni-easyinput :clearable="false" type="textarea" autoHeight v-model="formData.address"
@@ -16,7 +19,7 @@
</view> </view>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="描述"> <uni-forms-item label="描述">
<uni-easyinput type="textarea" v-model="formData.name" placeholder="请输入项目描述" /> <uni-easyinput type="textarea" autoHeight v-model="formData.name" placeholder="请输入项目描述" />
</uni-forms-item> </uni-forms-item>
<uni-file-picker title="请上传拓扑图" :sourceType="['album']"></uni-file-picker> <uni-file-picker title="请上传拓扑图" :sourceType="['album']"></uni-file-picker>
</uni-forms> </uni-forms>
@@ -35,8 +38,19 @@ export default {
loading: false, loading: false,
formData: { formData: {
name: '', name: '',
gplot: '' gplot: '',
type:''
}, },
TypeRange: [
{
text: '监测',
value: '1'
},
{
text: '用能',
value: '2'
}
]
} }
}, },
methods: { methods: {
@@ -54,7 +68,7 @@ export default {
submit () { submit () {
this.$util.toast('项目创建成功') this.$util.toast('项目创建成功')
setTimeout(() => { setTimeout(() => {
uni.navigateBack({ delta: 1 }) uni.navigateBack({ delta: 1 })
}, 1500); }, 1500);
} }
} }
@@ -62,7 +76,7 @@ export default {
</script> </script>
<style lang='scss'> <style lang='scss'>
.new { .new {
padding: 34rpx; padding: 34rpx;
.content { .content {
.content-des { .content-des {
@@ -72,7 +86,7 @@ export default {
} }
margin-bottom: 20rpx; margin-bottom: 20rpx;
padding: 34rpx; padding: 34rpx;
background: $uni-theme-white; background: $uni-theme-white;
border-radius: 12rpx; border-radius: 12rpx;
} }

View File

@@ -0,0 +1,75 @@
<template>
<Cn-page :loading='loading'>
<view slot='body'>
<view class='transfer'>
<image class="transfer-img" src="/static/transfer.png" mode="scaleToFill" />
<view class="transfer-text">请让接收人员扫码接收</view>
<view class="transfer-btn">
<button class="transfer-btn-item" style="background-color:#fff;color:#111" @click="back">返回</button>
<button class="transfer-btn-item ml20" @click="home">转移成功</button>
</view>
</view>
</view>
</Cn-page>
</template>
<script>
export default {
data () {
return {
loading: false
}
},
methods: {
back () {
uni.navigateBack({
delta: 1
})
},
home () {
uni.switchTab({
url: '/pages/index/index'
})
}
}
}
</script>
<style lang='scss'>
.transfer {
padding: 200rpx 34rpx 0;
display: flex;
flex-direction: column;
align-items: center;
.transfer-img {
width: 500rpx;
height: 500rpx;
background: $uni-theme-blue ;
}
.transfer-text {
font-size: 28rpx;
color: #999999;
margin-top: 30rpx;
}
.transfer-btn {
display: flex;
flex-direction: row;
justify-content: space-between;
margin-top: 100rpx;
width: 100%;
.transfer-btn-item {
flex: 1;
height: 80rpx;
border-radius: 12rpx;
background-color: $uni-theme-blue;
font-size: 28rpx;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
}
}
}
</style>

BIN
static/boxing3.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB