From b7d59880975d3aa75760e764c20c2c4217039c78 Mon Sep 17 00:00:00 2001 From: zhouwenxuan <1175765986@qq.com> Date: 星期五, 04 八月 2023 09:17:25 +0800 Subject: [PATCH] 叫应率修改 --- pages/tabBar/current/current.vue | 122 ++++++++++++++++++++++++++++------------ 1 files changed, 86 insertions(+), 36 deletions(-) diff --git a/pages/tabBar/current/current.vue b/pages/tabBar/current/current.vue index e0f559d..89a9100 100644 --- a/pages/tabBar/current/current.vue +++ b/pages/tabBar/current/current.vue @@ -6,9 +6,13 @@ <view class="statusBar" :style="{ paddingTop: statusBarHeight + 'px' }"></view> <!-- 真正的导航栏内容 --> <view class="navBar"> + <u-icon style=" margin-left: -25px;" name="arrow-left" color="black" size="17" @click="goBack" /> <view class="barText">信息查看</view> </view> </view> + <div v-if="loading" style='display: flex;justify-content: center;position: absolute;width:100%;top: 40%;left: 0'> + <u-loading-icon></u-loading-icon> + </div> <!-- 页面内容 --> <view class="controlBar"> <view class="buttonGroup"> @@ -38,7 +42,9 @@ </view> <view style="display: flex;flex-direction: column;margin-bottom: 55px;"> <view class="examineList"> - <view class="listContent" v-if="InfoList.length > 0"> +<!-- <view class="listContent" v-if="InfoList.length > 0">--> + <scroll-view :scroll-top="scrollTop" scroll-y="true" class="listContent" @scrolltoupper="upper" v-if="InfoList.length > 0" + @scrolltolower="lower" @scroll="scroll" lower-threshold="50"> <view v-for="(item, index) in InfoList" :key="index" class="itemContent"> <view class="content"> <text>[{{item.colorContent}}]</text> @@ -62,7 +68,8 @@ </view> </view> </view> - </view> + </scroll-view> +<!-- </view>--> <view v-else> <u-empty margin-top="40%" text="数据为空" mode="data"></u-empty> </view> @@ -74,7 +81,7 @@ <script> import tabBar from '../tabBarIndex.vue' - import {getExamine} from '../../../api/examine.js' + import { getPublished, getResponseDetail } from '../../../api/notice.js' import tebBar from '../tabBarIndex.vue' export default { components:{ @@ -88,9 +95,11 @@ searchParams: { emergType: null,//1-紧急;2-常规 warningLevel: null,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警 - reviewStatus: null//1:未审核,2:已审核,3:审核已驳回 } }, + total: 0, + scrollTop: 0, + loading: false, page: 'pages/tabBar/current/current', checked: false, isReadOnly: false, @@ -115,68 +124,84 @@ ], selectedSaleAnalysis: 'all', InfoList: [], + unitType: null, } }, onLoad() { + this.unitType = uni.getStorageSync('unittype') + 1; + console.log("11",this.unitType) //获取手机状态栏高度 this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight']; uni.hideTabBar(); }, onShow() { + this.data.pageIndex = 1 this.getInfoList(); }, methods: { goBack() { - console.log("1111") uni.switchTab({ url:'/pages/tabBar/firstPage/firstPage' }); }, getInfoList() { + this.loading = true this.data.searchParams.emergType = this.checked ? 1 : null; this.data.searchParams.warningLevel = this.selectedSaleAnalysis == 'all' ? null : this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4; - // getExamine(this.data).then(res => { - // if(res.code == 100) { - this.InfoList = [ - { - attachment: null, - disasterType: 1, - gmtReviewSubmit: "2023-07-21 14:36:16", - id: 111, - infoSubmitter: "1-1", - infoSubmitterReal: "省级工作人员", - publishingUnit: "自治区自然灾害综合检测预警中心", - reviewStatus: 1, - title: "【20230721】预警信息标题", - warningLevel: 1, - } - ]; - if(this.InfoList.length > 0) { + getPublished(this.data).then(res => { + if(res.code == 100) { + let list = res.data?res.data: []; + if (res.pageIndex != 1) { + this.InfoList = this.InfoList.concat(list) + } else { + this.InfoList = list; + } + this.total = res.total + if(this.InfoList && this.InfoList.length > 0) { this.InfoList.forEach((item, index) => { this.InfoList[index].colorContent = item.warningLevel == 1 ? '红色预警': item.warningLevel == 2 ? '橙色预警': item.warningLevel == 3 ? '黄色预警':'蓝色预警'; this.InfoList[index].warningLevel = item.warningLevel; }); } - // } - // }) + }else{ + uni.$u.toast(res.msg) + } + this.loading = false + }) }, handleButtonClick(button) { + this.data.pageIndex = 1 this.selectedSaleAnalysis = button.label; this.getInfoList(); }, toDetail(item) { - console.log("item",item) uni.navigateTo({ url: `/pages/tabBar/notice/detail?data=` + encodeURIComponent(JSON.stringify(item)) }) }, toResponsivity(item) { - //县 - uni.navigateTo({ - url: `/pages/tabBar/responsivity/countyResponsivity?data=` + encodeURIComponent(JSON.stringify(item)) + const param = { + pageIndex: 1, + pageSize: 100, + searchParams: { + warnInfoId: item.id + } + } + getResponseDetail(param).then(res => { + if(res.code == 100){ + console.log("res",res) + let data = res.data.appPageResponseByIdRespDTOS; + res.data.appPageResponseByIdRespDTOS.forEach((item,index) => { + if(item.forwardRate){ + data[index].forwardRate = item.forwardRate.replace(/%/g, '%25'); + } + + }) + uni.navigateTo({ + url: `/pages/tabBar/responsivity/countyResponsivity?data=` + encodeURIComponent(JSON.stringify(res.data)) + }) + } }) - //市 - //村 }, //下拉刷新 onPullDownRefresh() { @@ -187,8 +212,31 @@ }, 1000); }, clickSwitch(e) { + this.data.pageIndex = 1 this.getInfoList(); + }, + + upper: function(e) { + // console.log(e) + }, + lower: function(e) { + if (this.data.pageIndex * this.data.pageSize >= this.total){ + uni.$u.toast('已加载全部数据') + return } + //并且让页码+1,调用获取数据的方法获取第二页数据 + this.data.pageIndex++ + //此处调用自己获取数据列表的方法 + this.getInfoList() + }, + scroll: function(e) { + // console.log(e) + }, + goBack() { + uni.switchTab({ + url:'/pages/tabBar/firstPage/firstPage' + }); + }, } } @@ -329,12 +377,14 @@ align-items: center; } .listContent{ - display: flex; - flex-direction: column; - margin: 0 12px; - background: #fff; - border-radius: 5px; - box-shadow: 0 3px 12px rgba(0,0,0,0.05); + display: flex; + flex-direction: column; + width: calc(100% - 24px); + margin: 0 12px; + background: #fff; + border-radius: 5px; + box-shadow: 0 3px 12px rgba(0,0,0,0.05); + height: 100%; } .itemContent{ font-size: 16px; -- Gitblit v1.9.2