|
|
@@ -1,6 +1,5 @@
|
|
|
<template>
|
|
|
<div class="message">
|
|
|
- <NavBar v-show="!show" />
|
|
|
<div v-if="!show" class="page-container">
|
|
|
<van-tabs v-model="query.type" @change="refreshData">
|
|
|
<van-tab title="公告/通知" name="1"></van-tab>
|
|
|
@@ -12,6 +11,7 @@
|
|
|
<Scroll
|
|
|
@refresh="refreshData"
|
|
|
@loadMore="getDataList"
|
|
|
+ :pullup="pullup"
|
|
|
class="wrapper"
|
|
|
ref="wrapper">
|
|
|
<van-cell-group v-for="(v,i) in dataList">
|
|
|
@@ -39,6 +39,17 @@
|
|
|
<van-panel v-if="selected" :title="selected.title" :desc="selected.orgName">
|
|
|
<div class="message-content">
|
|
|
<p>{{selected.content}}</p>
|
|
|
+ <div class="file-box" >
|
|
|
+ <div>
|
|
|
+ <a :href="imgUrl(v.url)" v-for="(v,i) in selected.fileList" :key="v.name" type="download">{{v.name}}</a>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <div v-if="v.img" class="nfc-img" v-for="(v,i) in imageList" :key="v.img" @click="preViewNFC(i)">
|
|
|
+ <img :src="imgUrl(v.img)" alt="" >
|
|
|
+ <span>{{v.checkName}}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<p class="cell-time">{{selected.publishTime}}</p>
|
|
|
</div>
|
|
|
</van-panel>
|
|
|
@@ -50,9 +61,9 @@
|
|
|
<script>
|
|
|
import NavBar from '@/components/NavBar'
|
|
|
import Scroll from '@/components/scroll/scroll'
|
|
|
-import {msgList,dataList,Msg} from './api'
|
|
|
+import {msgList,dataList} from './api'
|
|
|
import {mapGetters} from "vuex";
|
|
|
-import day from "dayjs";
|
|
|
+
|
|
|
export default {
|
|
|
components: {
|
|
|
NavBar,
|
|
|
@@ -68,8 +79,9 @@ export default {
|
|
|
pageNum:1,
|
|
|
pageSize:1,
|
|
|
},
|
|
|
- pullup:false,
|
|
|
+ pullup:true,
|
|
|
message:null,
|
|
|
+ total:0,
|
|
|
};
|
|
|
},
|
|
|
computed:{
|
|
|
@@ -83,15 +95,29 @@ export default {
|
|
|
this.show = false;
|
|
|
},
|
|
|
clickItem(v){
|
|
|
+ v.fileList.forEach(v=>{
|
|
|
+ //p:获取url中的后缀名
|
|
|
+ let p = v.url.split('.');
|
|
|
+ console.log(p,'pppppppp')
|
|
|
+ //v.type = url.
|
|
|
+ })
|
|
|
this.selected = v;
|
|
|
this.show = true;
|
|
|
},
|
|
|
refreshData(){
|
|
|
this.query.pageNum = 1;
|
|
|
- this.dataList = []
|
|
|
+ this.total = 0;
|
|
|
+ this.dataList = [];
|
|
|
+ this.pullup = true;
|
|
|
this.getDataList();
|
|
|
},
|
|
|
getDataList(){
|
|
|
+ if( this.dataList.length !== 0 && this.dataList.length >= this.total) {
|
|
|
+ console.log(456,'456')
|
|
|
+ this.pullup = false;
|
|
|
+ this.$toast('已加载完毕');
|
|
|
+ return;
|
|
|
+ }
|
|
|
let data = {};
|
|
|
if(this.query.type == 1){
|
|
|
data = {
|
|
|
@@ -101,12 +127,12 @@ export default {
|
|
|
tagRoleIds:this.roleList.map(v=>{return v.roleId}),
|
|
|
}
|
|
|
msgList(data).then(res=>{
|
|
|
+ this.total = res.total;
|
|
|
if(this.dataList.length < res.total) {
|
|
|
this.dataList = [...this.dataList,...res.rows] ;
|
|
|
+ console.log(123,'123')
|
|
|
this.pullup = true;
|
|
|
this.query.pageNum++;
|
|
|
- }else {
|
|
|
- this.pullup = false;
|
|
|
}
|
|
|
})
|
|
|
return;
|
|
|
@@ -140,8 +166,8 @@ export default {
|
|
|
|
|
|
}
|
|
|
.card-list{
|
|
|
- padding: 20px;
|
|
|
- height: calc(100vh - 290px);
|
|
|
+ padding: 20px ;
|
|
|
+ height: calc(100vh - 190px);
|
|
|
overflow: auto;
|
|
|
}
|
|
|
.list-item{
|
|
|
@@ -193,5 +219,10 @@ export default {
|
|
|
word-break: break-word;
|
|
|
width: 100%;
|
|
|
}
|
|
|
+ .file-box{
|
|
|
+ width: 100%;
|
|
|
+ min-height: 40px;
|
|
|
+ padding: 20px 0;
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|