城阳居民端公众号前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
3.8 KiB

1 year ago
<template>
<div class="container">
<van-list finished-text="没有更多了" v-model="loading" :finished="finished" @load="querystaffmessage">
<div class="message flex flex-y" v-for="item in MessageList" :key="item.id" @click="toDetail(item)">
1 year ago
<div class="flex flex-x flex-end m-bottom10">
<div class="flex flex-x flex-center2 ">
<div v-if="item.messageType !== 'ic_event'"><img class="img_23 m-right7"
src="../../assets/images/Mess/suqiu.png">
1 year ago
</div>
1 year ago
<div v-if="item.messageType == 'ic_event'"><img class="img_23 m-right7"
1 year ago
src="../../assets/images/Mess/manyidu.png"></div>
<div class="font-size15 m-right7">{{ item.messageType == 'ic_event' ? '诉求办理' : '满意度调查' }}</div>
<div class="font-size13 C1">{{ item.createdTime }}</div>
</div>
<div class="font-size13 C1 flex flex-center2"><span>{{ item.readFlag == 'unread' ? '未读' : '已读'
}}</span>
1 year ago
</div>
</div>
<div class="m-bottom10"><span>{{ item.messageContent }}</span></div>
1 year ago
<div v-if="item.messageType == 'ic_event'" class="label m-bottom10">
<div class="font-size15 lable-span gray">{{ item.eventContent || '--' }}</div>
1 year ago
</div>
1 year ago
<div v-if="item.messageType !== 'ic_event'" class="label m-bottom10">
<div class="font-size15 lable-span gray">{{ item.eventContent }}</div>
1 year ago
</div>
</div>
</van-list>
1 year ago
<Android></Android>
1 year ago
</div>
</template>
<script>
import { querystaffmessage } from '@/api/message'
import { eventDetail } from '@/api/event'
1 year ago
import Android from '@/components/Android'
1 year ago
1 year ago
1 year ago
export default {
name: 'message',
data() {
return {
MessageList: [
{
id: "1580112951706976257",
title: "您有一条事件消息!",
messageContent: "您上报的事件已完成,请查看。",
readFlag: "unread",
createdTime: "1665563259",
messageType: "ic_event",
targetId: "1580089831937847297"
},
1 year ago
],
loading: true,
userId: "",
pageNo: 1,
finished: false,
pageSize: 10
1 year ago
}
},
1 year ago
components: {Android },
1 year ago
mounted() {
this.userId = this.$store.state.app.userInfo.id;
1 year ago
this.querystaffmessage()
1 year ago
},
methods: {
async toDetail(item) {
if (item.messageType === 'ic_event') {
let res = await eventDetail({ icEventId: item.id })
if (res.code === 0) {
res.data.pageType = 'event'
this.$router.push({ path: '/appealDetail', query: res.data })
}
}
},
async querystaffmessage() {
1 year ago
let parm = {
agencyId: this.$store.state.app.agencyId,
app: 'resi',
userId: this.userId,//'f838614e67cf8ae0edaefe562b6660e5'
pageSize: this.pageSize,
customerId: this.$store.state.app.userInfo.customerId,
pageNo: this.pageNo++
1 year ago
}
let res = await querystaffmessage(parm)
this.loading = false
if (res.code === 0) {
if (!res.data || res.data.length < this.pageSize) {
this.finished = true;
}
this.MessageList = res.data
}
1 year ago
},
}
}
</script>
<style scoped lang="less">
@import './index';
</style>