| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 | 
							- <template>
 
- 	<view>
 
- 		<cu-custom bgColor="bg-blue" backUrl="/pages/index/index?id=apps" :isBack="false">
 
- 			<block slot="content"> 消息</block>
 
- 		</cu-custom>
 
- 		<u-search  :show-action="false" v-model="searchForm.title" @change="inputWord" margin="20rpx 50rpx"></u-search>
 
- 		<view>
 
- 			<u-swipe-action>
 
- 				<view
 
- 					v-for="(notify, index) in dataList"
 
- 					:key="index">
 
- 						<u-swipe-action-item @click="del(notify.id)"  :key="notify.id" :threshold="60" duration="500" 
 
- 						:options="[ {
 
- 							text: '删除',
 
- 							style: {
 
- 								backgroundColor: '#f56c6c'
 
- 							}
 
- 						}]">
 
- 						  <u-cell-group>
 
- 							  <u-cell @click="toDetail(notify)">
 
- 								  <u-avatar slot="icon" icon="bell-fill" fontSize="22" randomBgColor></u-avatar>
 
- 								  <view slot="title" class="content">
 
- 										<view class="text-bold text-grey">
 
- 											<view class="ellipsis-description">
 
- 												 标题:{{notify.title}}
 
- 											</view>
 
- 										</view>
 
- 									
 
- 										<view class="text-gray text-sm">
 
- 											<view class="ellipsis-description">
 
- 												发布者:{{notify.createBy.name}}, {{notify.createTime}}
 
- 											</view>
 
- 										</view>
 
- 										<view class="text-sm">
 
- 											<view class="ellipsis-description">
 
- 												内容:{{notify.content}}
 
- 											</view>
 
- 										</view>
 
- 								  </view>
 
- 								  <view slot="right-icon">
 
- 									<u-tag :text="$dictUtils.getDictLabel('oa_notify_read', notify.readFlag ,'')" v-if="notify.readFlag === '1'" plain shape="circle"></u-tag>
 
- 									<u-tag :text="$dictUtils.getDictLabel('oa_notify_read', notify.readFlag ,'')" v-else plain type="error" shape="circle"></u-tag>
 
- 								  </view>
 
- 								</u-cell>
 
- 						  </u-cell-group>
 
- 						</u-swipe-action-item>
 
- 				</view>
 
- 			</u-swipe-action>
 
- 		</view>
 
- 		<u-loadmore :status="status"  @loadmore="loadmore" :line="true" />
 
- 		<u-gap height="100" bgColor="#fff"></u-gap>
 
- 		<u-back-top :scrollTop="0" mode="square"></u-back-top>
 
- 	</view>
 
- </template>
 
- <script>
 
- 	import notifyService from "@/api/notify/notifyService";	
 
- 	export default {
 
- 		data() {
 
- 			return {
 
- 				status: 'loadmore',
 
- 				searchForm: {
 
- 					title: ''
 
- 				},
 
- 				dataList: [],
 
- 				tablePage: {
 
- 					pages: 0,
 
- 					currentPage: 0,
 
- 					pageSize: 10,
 
- 					orders: [{ column: "a.create_time", asc: false }],
 
- 				},
 
- 				loading: false,
 
- 			}
 
- 		},
 
- 		created() {
 
- 			this.loadmore()
 
- 		},
 
- 		methods: {
 
- 			// 跳转到详细页面
 
- 			toDetail (notify) {
 
- 				if(notify.status === '1'){
 
- 					uni.navigateTo({
 
- 					  url: '/pages/apps/notification/notificationDetail?id='+notify.id
 
- 					})
 
- 				}else{
 
- 					this.toEdit(notify)
 
- 				}
 
- 				
 
- 			},
 
- 			toEdit (notify) {
 
- 				uni.navigateTo({
 
- 				  url: '/pages/apps/notification/oaNotifyForm?id='+notify.id
 
- 				})
 
- 			},
 
- 			toAdd (){
 
- 				uni.navigateTo({
 
- 				  url: '/pages/apps/notification/oaNotifyForm'
 
- 				})
 
- 			},
 
- 			// 输入监听
 
- 			inputWord(e){
 
- 				this.searchTimer && clearTimeout(this.searchTimer)
 
- 				this.searchTimer = setTimeout(()=>{
 
- 					this.doSearch()
 
- 				},300)
 
- 			},
 
- 			// 搜索
 
- 			doSearch(){
 
- 				this.dataList = []; 
 
- 				this.tablePage.currentPage = 0;
 
- 				this.tablePage.pageSize = 10;
 
- 				this.tablePage.pages = 0;
 
- 				this.loadmore()
 
- 			},
 
- 			onReachBottom() {
 
- 				this.loadmore()
 
- 			},
 
- 			loadmore() {
 
- 				if(this.tablePage.currentPage!==0 && this.tablePage.pages <= this.tablePage.currentPage ) {
 
- 					this.status = 'nomore';
 
- 					return;
 
- 				}
 
- 				this.tablePage.currentPage = ++ this.tablePage.currentPage;
 
- 				//联网加载数据
 
- 				this.status = 'loading';
 
- 				notifyService.list({
 
- 					isSelf: true,
 
- 					current: this.tablePage.currentPage,
 
- 					size: this.tablePage.pageSize,
 
- 					orders: this.tablePage.orders,
 
- 					...this.searchForm
 
- 				}).then((data)=>{
 
- 					//追加新数据
 
- 					this.dataList=this.dataList.concat(data.records);
 
- 					this.tablePage.pages = data.pages;
 
- 					if(this.tablePage.pages <= this.tablePage.currentPage){
 
- 						this.status = 'nomore'
 
- 					} else {
 
- 						this.status = 'loadmore'
 
- 					}
 
- 				})
 
- 				
 
- 			},
 
- 			del (id) {
 
- 				notifyService.delete(id).then((data)=>{
 
- 					this.doSearch()
 
- 					uni.showToast({
 
- 						title: data,
 
- 						icon:"success"
 
- 					})
 
- 				})
 
- 			},
 
- 		}
 
- 	}
 
- </script>
 
 
  |