|
|
<template>
|
|
|
<view class="indexcontent">
|
|
|
<u-navbar :leftText="'驾驶舱'+navbarValue" :safeAreaInsetTop="false" @rightClick="rightClick" :autoBack="true"
|
|
|
:placeholder="true" leftIconColor="#ffffff">
|
|
|
<view class="u-nav-slot" slot="right">
|
|
|
欢迎您,审核员
|
|
|
</view>
|
|
|
</u-navbar>
|
|
|
<view class="indexcontent-tab">
|
|
|
<u-tabs :list="list1" :scrollable="false" lineWidth="30" @change="utabschange"
|
|
|
:current='tabscurrent'></u-tabs>
|
|
|
</view>
|
|
|
<scroll-view class="indexcontent-box" @scrolltolower="lowerBottom" scroll-y="true" :scroll-top="scrollTop"
|
|
|
@scroll="scroll">
|
|
|
<view class="indexcontent-bottom">
|
|
|
<u-search placeholder="请输入搜索内容" v-model="massEventsObj.title" @search="searchSou" @clear="qingkong"
|
|
|
showAction animation @custom="searchSou"></u-search>
|
|
|
<template class="" v-if="contentList.length !=0">
|
|
|
<view class="indexcontentbttom-item" v-for="item in contentList">
|
|
|
<view class="indexcontentbttom-item-left">
|
|
|
<view class="indexcontentbttom-item-left-1 indexcontentbttom-item-left-jiti">
|
|
|
<view class="indexcontentbttom-item-left-1-left">
|
|
|
{{item.msgTypeName}}
|
|
|
</view>
|
|
|
<view class="indexcontentbttom-item-left-1-right">
|
|
|
{{item.title}}
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="indexcontentbttom-item-left-2 indexcontentbttom-item-left-jiti">
|
|
|
<view class="indexcontentbttom-item-left-1-icon">
|
|
|
<u-icon name="map" size="18" color="#AEBAC8" class="icon"></u-icon>
|
|
|
</view>
|
|
|
<view class="smofontsiez">
|
|
|
{{item.warnFactor}}
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="indexcontentbttom-item-left-2 indexcontentbttom-item-left-jiti">
|
|
|
<view class="indexcontentbttom-item-left-1-icon ">
|
|
|
<u-icon name="clock" size="18" color="#AEBAC8" class="" class="icon"></u-icon>
|
|
|
</view>
|
|
|
<view class="smofontsiez">
|
|
|
{{item.eventTime}}
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="indexcontentbttom-item-rigth" @click="nextblack(item)">
|
|
|
{{tabscurrent==0?'审核':'查看'}}
|
|
|
</view>
|
|
|
</view>
|
|
|
</template>
|
|
|
<u-empty mode="list" v-else>
|
|
|
</u-empty>
|
|
|
</view>
|
|
|
|
|
|
|
|
|
<u-tabbar :value="tabValue" @change="change1" :fixed="true" :placeholder="true" :safeAreaInsetBottom="true">
|
|
|
<u-tabbar-item text="群体事件" name="群体事件-1" :badge="msgTypecount[0].count">
|
|
|
<image class="u-page__item__slot-icon" slot="active-icon" src="@/static/images/contimg/icon-0.png">
|
|
|
</image>
|
|
|
<image class="u-page__item__slot-icon" slot="inactive-icon"
|
|
|
src="@/static/images/contimg/icon-0-0.png"></image>
|
|
|
</u-tabbar-item>
|
|
|
<u-tabbar-item text="同人同诉" name="同人同诉-2" :badge="msgTypecount[1].count">
|
|
|
<image class="u-page__item__slot-icon" slot="active-icon" src="@/static/images/contimg/icon-3.png">
|
|
|
</image>
|
|
|
<image class="u-page__item__slot-icon" slot="inactive-icon"
|
|
|
src="@/static/images/contimg/icon-0-3.png"></image>
|
|
|
</u-tabbar-item>
|
|
|
<u-tabbar-item text="紧急事件" name="紧急事件-3" :badge="msgTypecount[2].count">
|
|
|
<image class="u-page__item__slot-icon" slot="active-icon" src="@/static/images/contimg/icon-1.png">
|
|
|
</image>
|
|
|
<image class="u-page__item__slot-icon" slot="inactive-icon"
|
|
|
src="@/static/images/contimg/icon-0-1.png"></image>
|
|
|
</u-tabbar-item>
|
|
|
|
|
|
<u-tabbar-item text="重点人员" name="重点人员-4" :badge="msgTypecount[3].count">
|
|
|
<image class="u-page__item__slot-icon" slot="active-icon" src="@/static/images/contimg/icon-4.png">
|
|
|
</image>
|
|
|
<image class="u-page__item__slot-icon" slot="inactive-icon"
|
|
|
src="@/static/images/contimg/icon-0-4.png"></image>
|
|
|
</u-tabbar-item>
|
|
|
<u-tabbar-item text="一人多诉" name="一人多诉-5" :badge="msgTypecount[4].count">
|
|
|
<image class="u-page__item__slot-icon" slot="active-icon" src="@/static/images/contimg/icon-2.png">
|
|
|
</image>
|
|
|
<image class="u-page__item__slot-icon" slot="inactive-icon"
|
|
|
src="@/static/images/contimg/icon-0-2.png"></image>
|
|
|
</u-tabbar-item>
|
|
|
</u-tabbar>
|
|
|
</scroll-view>
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import {
|
|
|
massEventsList,
|
|
|
eventPageCount,
|
|
|
fiveEventCount
|
|
|
} from '@/api/system/ApiList.js'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
tabscurrent: 0,
|
|
|
navbarValue: "群体事件",
|
|
|
tabValue: "群体事件-1",
|
|
|
scrollTop: 0,
|
|
|
list1: [{
|
|
|
name: '待审核',
|
|
|
badge: {
|
|
|
value: 0,
|
|
|
lable: 0,
|
|
|
}
|
|
|
}, {
|
|
|
name: '已上报',
|
|
|
badge: {
|
|
|
value: 0,
|
|
|
lable: 1,
|
|
|
}
|
|
|
|
|
|
}, {
|
|
|
name: '重训练',
|
|
|
badge: {
|
|
|
value: 0,
|
|
|
lable: 2,
|
|
|
}
|
|
|
|
|
|
}, {
|
|
|
name: '审核通过',
|
|
|
badge: {
|
|
|
value: 0,
|
|
|
lable: 3,
|
|
|
}
|
|
|
|
|
|
}, ],
|
|
|
massEventsObj: {
|
|
|
msgType: "1", //事件类型编码【群体事件】1【同人同诉】2【紧急事件】3【重点人员】4【一人多诉】5
|
|
|
isReport: null, //为未通过 2为已办结 3为作废
|
|
|
size: 10,
|
|
|
current: 1,
|
|
|
title: ""
|
|
|
},
|
|
|
pagesLogin: "",
|
|
|
contentList: [],
|
|
|
msgTypecount: [{
|
|
|
count: 0
|
|
|
}, {
|
|
|
count: 0
|
|
|
}, {
|
|
|
count: 0
|
|
|
}, {
|
|
|
count: 0
|
|
|
}, {
|
|
|
count: 0
|
|
|
}, ],
|
|
|
}
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
// 顶部导航栏
|
|
|
utabschange(e) {
|
|
|
this.tabscurrent = e.badge.lable
|
|
|
this.massEventsObj.current = 1
|
|
|
this.massEventsObj.title = ""
|
|
|
this.getList()
|
|
|
// console.log(e);
|
|
|
},
|
|
|
//搜索
|
|
|
searchSou() {
|
|
|
this.massEventsObj.current = 1
|
|
|
this.getList()
|
|
|
},
|
|
|
//清空
|
|
|
qingkong() {
|
|
|
this.massEventsObj.title = ""
|
|
|
this.getList()
|
|
|
},
|
|
|
// 跳转
|
|
|
nextblack(item) {
|
|
|
// console.log(item);
|
|
|
//navbarValue 头部标题
|
|
|
//tabscurrent 区分待审核0, 已上报1 重训练2
|
|
|
// item
|
|
|
uni.navigateTo({
|
|
|
url: `/views/jiashicangshenhe/jiashicangshenhe?navbarValue=${this.navbarValue}&tabscurrent=${this.tabscurrent}&innerEventId=${item.innerEventId}`
|
|
|
})
|
|
|
},
|
|
|
//切换
|
|
|
async change1(e) {
|
|
|
this.navbarValue = e.split("-")[0]
|
|
|
// 标题
|
|
|
this.massEventsObj.title = ""
|
|
|
// 类型
|
|
|
this.massEventsObj.msgType = e.split("-")[1]
|
|
|
// 页码
|
|
|
this.massEventsObj.current = 1
|
|
|
// 头部类型
|
|
|
this.massEventsObj.isReport = null
|
|
|
// tab
|
|
|
this.tabValue = e
|
|
|
// 头部归位
|
|
|
this.tabscurrent = 0
|
|
|
this.geteventPageCount()
|
|
|
await this.getList();
|
|
|
this.goTop()
|
|
|
},
|
|
|
scroll(e) {
|
|
|
//记录scroll 位置
|
|
|
this.oldScrollTop = e.detail.scrollTop
|
|
|
},
|
|
|
goTop(e) {
|
|
|
//视图会发生重新渲染
|
|
|
this.scrollTop = this.oldScrollTop
|
|
|
//当视图渲染结束 重新设置为0
|
|
|
this.$nextTick(() => {
|
|
|
this.scrollTop = 0
|
|
|
});
|
|
|
},
|
|
|
|
|
|
// 触底刷新
|
|
|
//触底加载
|
|
|
lowerBottom() {
|
|
|
// console.log("触底加载")
|
|
|
|
|
|
if (this.massEventsObj.current < this.pagesLogin) {
|
|
|
++this.massEventsObj.current
|
|
|
this.getList("触底")
|
|
|
} else {
|
|
|
// console.log("到底了");
|
|
|
uni.showToast({
|
|
|
title: '暂无更多',
|
|
|
icon: 'none',
|
|
|
duration: 1000
|
|
|
});
|
|
|
}
|
|
|
},
|
|
|
//获取list
|
|
|
getList(type) {
|
|
|
|
|
|
if (this.tabscurrent == 0) {
|
|
|
this.massEventsObj.isReport = 4
|
|
|
} else {
|
|
|
this.massEventsObj.isReport = this.tabscurrent
|
|
|
}
|
|
|
massEventsList(this.massEventsObj).then(res => {
|
|
|
|
|
|
if (type == "触底") {
|
|
|
this.contentList = this.contentList.concat(res.data.records)
|
|
|
this.pagesLogin = res.data.pages
|
|
|
} else {
|
|
|
this.contentList = res.data.records
|
|
|
this.pagesLogin = res.data.pages
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
// 获取待审核数量
|
|
|
geteventPageCount() {
|
|
|
eventPageCount({
|
|
|
msgType: this.massEventsObj.msgType
|
|
|
}).then(res => {
|
|
|
// console.log(res);
|
|
|
this.list1[0].badge.value = res.data
|
|
|
})
|
|
|
fiveEventCount().then(res => {
|
|
|
this.msgTypecount = res.data
|
|
|
this.msgTypecount = this.msgTypecount.sort((a, b) => {
|
|
|
return a.msgType - b.msgType;
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
})
|
|
|
}
|
|
|
|
|
|
},
|
|
|
onLoad: function() {
|
|
|
this.getList()
|
|
|
this.geteventPageCount()
|
|
|
this.$store.dispatch("Deletestate")
|
|
|
},
|
|
|
onShow() {
|
|
|
this.getList()
|
|
|
this.geteventPageCount()
|
|
|
this.$store.dispatch("Deletestate")
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
.indexcontent {
|
|
|
width: 100%;
|
|
|
|
|
|
.indexcontent-tab {
|
|
|
width: 100%;
|
|
|
height: 85rpx;
|
|
|
background: #ffffff;
|
|
|
position: sticky;
|
|
|
top: 0;
|
|
|
left: 0;
|
|
|
|
|
|
::v-deep .u-tabs__wrapper__nav__item {
|
|
|
position: relative;
|
|
|
|
|
|
.u-badge {
|
|
|
position: absolute;
|
|
|
right: -10rpx;
|
|
|
top: 30rpx;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.indexcontent-box {
|
|
|
padding: 20rpx 20rpx 0 20rpx;
|
|
|
height: 85vh;
|
|
|
|
|
|
.indexcontent-bottom {
|
|
|
width: 100%;
|
|
|
padding: 20rpx;
|
|
|
border-radius: 10rpx;
|
|
|
background: #ffffff;
|
|
|
|
|
|
.indexcontentbttom-item {
|
|
|
padding: 25rpx;
|
|
|
width: 100%;
|
|
|
background: #f7f7f7fa;
|
|
|
border-radius: 10rpx;
|
|
|
display: grid;
|
|
|
grid-template-columns: 85% 15%;
|
|
|
margin: 20rpx 0;
|
|
|
|
|
|
.indexcontentbttom-item-left {
|
|
|
|
|
|
.indexcontentbttom-item-left-jiti {
|
|
|
width: 100%;
|
|
|
display: grid;
|
|
|
grid-template-columns: 13% auto;
|
|
|
align-items: center;
|
|
|
/* 设置垂直居中对齐 */
|
|
|
margin-bottom: 10rpx;
|
|
|
|
|
|
.indexcontentbttom-item-left-1-icon {
|
|
|
width: 60rpx;
|
|
|
height: 40rpx;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
color: #AEBAC8;
|
|
|
}
|
|
|
|
|
|
.smofontsiez {
|
|
|
color: #AEBAC8;
|
|
|
font-size: 25rpx;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.indexcontentbttom-item-left-1 {
|
|
|
|
|
|
.indexcontentbttom-item-left-1-left {
|
|
|
width: 60rpx;
|
|
|
height: 60rpx;
|
|
|
padding-top: 6rpx;
|
|
|
border-radius: 6rpx;
|
|
|
font-weight: bold;
|
|
|
font-size: 25rpx;
|
|
|
color: #F43147;
|
|
|
background-color: #f4c9c5;
|
|
|
line-height: 27rpx;
|
|
|
text-align: center;
|
|
|
}
|
|
|
|
|
|
.indexcontentbttom-item-left-1-right {
|
|
|
text-align: left;
|
|
|
font-weight: 500;
|
|
|
font-size: 30rpx;
|
|
|
font-weight: bold;
|
|
|
color: #35393D;
|
|
|
// overflow: hidden;
|
|
|
// text-overflow: ellipsis;
|
|
|
// white-space: nowrap;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.indexcontentbttom-item-rigth {
|
|
|
width: 85rpx;
|
|
|
height: 85rpx;
|
|
|
border-radius: 50%;
|
|
|
color: #ffffff;
|
|
|
text-align: center;
|
|
|
line-height: 85rpx;
|
|
|
background: #4379D6;
|
|
|
margin-top: 60rpx;
|
|
|
box-shadow: 0rpx 0rpx 19rpx 0rpx rgba(67, 121, 214, 0.3);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.u-nav-slot {
|
|
|
font-size: 22rpx;
|
|
|
}
|
|
|
|
|
|
.u-page__item__slot-icon {
|
|
|
width: 50rpx;
|
|
|
height: 50rpx;
|
|
|
}
|
|
|
|
|
|
// /deep/.u-tabs__wrapper__nav__item {
|
|
|
// position: relative;
|
|
|
|
|
|
// .u-badge--not-dot {
|
|
|
// position: absolute;
|
|
|
// top: 10rpx;
|
|
|
// right: 50rpx;
|
|
|
// }
|
|
|
// }
|
|
|
/deep/.u-tabbar__content {
|
|
|
height: 120rpx;
|
|
|
}
|
|
|
</style> |