qa-regulatory-gwj-app/pages/information/index/index.vue

107 lines
2.7 KiB
Vue
Raw Normal View History

2023-11-07 10:08:37 +08:00
<template>
<view class="page">
<u-tabs
lineWidth="336upx"
:list="tabsList"
itemStyle="height:80upx;padding-bottom:10upx;background-color: #fff;"
@click="tabsClick"
></u-tabs>
<view class="message_list">
<u-list @scrolltolower="scrolltolower" v-if="list.length > 0">
<u-list-item v-for="(item, index) in list" :key="index">
<view class="message_item arrow" @click="fnNavigator(item)">
<view class="message_flex">
<view>
<view class="fontstyle u-line-1">{{ item.SYNOPSIS }}</view>
<view class="message_time">提醒时间{{ item.CREATTIME }}</view>
</view>
<view class="font0">{{ item.noticeUserType == '0' ? '待阅' : '已阅' }}</view>
</view>
</view>
</u-list-item>
</u-list>
<empty v-else></empty>
</view>
</view>
</template>
<script>
import {getAnnouncementNoticeList, getPlatformReminderList} from "../../../api";
export default {
data() {
return {
tabsList: [
{name: '公告通知', id: '1'},
{name: '平台提醒', id: '2'}
],
TYPE: '1',
pageSize: 10,
currentPage: 1,
totalPage: 0,
list: [],
}
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
onShow(event) {
this.resetList()
},
methods: {
async fnGetAnnouncementNoticeList() {
let resData = await getAnnouncementNoticeList({
loginUserId: this.userInfo.USER_ID,
showCount: this.pageSize,
currentPage: this.currentPage,
})
this.list = [...this.list, ...resData.varList]
},
async fnGetPlatformReminderList() {
let resData = await getPlatformReminderList({
loginUserId: this.userInfo.USER_ID,
showCount: this.pageSize,
currentPage: this.currentPage,
})
this.list = [...this.list, ...resData.varList]
},
resetList() {
this.pageSize = 10
this.currentPage = 1
this.list = []
this.getData();
},
getData() {
if (this.TYPE === '1') this.fnGetAnnouncementNoticeList()
if (this.TYPE === '2') this.fnGetPlatformReminderList()
},
scrolltolower() {
this.currentPage++;
if (this.totalPage >= this.currentPage) this.getData();
},
tabsClick(e) {
this.TYPE = e.id
this.resetList()
},
fnNavigator(item) {
uni.$u.route({
url: 'pages/information/index/detail',
params: {
ID: this.TYPE === '1' ? item.NOTICEREGULATORY_ID : item.NOTICE_ID,
TYPE: this.TYPE
}
})
}
}
}
</script>
<style scoped>
.page {
background-color: #f7f9ff;
height: 100vh;
}
</style>