From 9461caf2a459a7ed1eb16f8f439c02cfbcf1930b Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期三, 02 八月 2023 15:06:08 +0800
Subject: [PATCH] 新增功能
---
pages/tabBar/notice/measures.vue | 20 +-
pages/tabBar/current/current.vue | 113 +++++++------
pages/tabBar/notice/detail.vue | 41 ++--
pages/tabBar/firstPage/firstPage.vue | 43 ++++-
pages/tabBar/notice/notice.vue | 14
pages/tabBar/responsivity/showMeasures.vue | 14 +
pages/tabBar/responsivity/countyResponsivity.vue | 124 ++++++++++----
pages/tabBar/examine/examine.vue | 71 +++++++-
pages/tabBar/utils/tabBar.js | 16 +-
9 files changed, 293 insertions(+), 163 deletions(-)
diff --git a/pages/tabBar/current/current.vue b/pages/tabBar/current/current.vue
index 2bf9410..89a9100 100644
--- a/pages/tabBar/current/current.vue
+++ b/pages/tabBar/current/current.vue
@@ -6,6 +6,7 @@
<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>
@@ -67,7 +68,7 @@
</view>
</view>
</view>
- </scroll-view>
+ </scroll-view>
<!-- </view>-->
<view v-else>
<u-empty margin-top="40%" text="数据为空" mode="data"></u-empty>
@@ -80,7 +81,7 @@
<script>
import tabBar from '../tabBarIndex.vue'
- import { getPublished } from '../../../api/notice.js'
+ import { getPublished, getResponseDetail } from '../../../api/notice.js'
import tebBar from '../tabBarIndex.vue'
export default {
components:{
@@ -123,18 +124,18 @@
],
selectedSaleAnalysis: 'all',
InfoList: [],
- unitType: '',
+ unitType: null,
}
},
onLoad() {
- this.unitType = uni.getStorageSync('unittype');
+ this.unitType = uni.getStorageSync('unittype') + 1;
console.log("11",this.unitType)
//获取手机状态栏高度
this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight'];
uni.hideTabBar();
},
onShow() {
- this.data.pageIndex = 1
+ this.data.pageIndex = 1
this.getInfoList();
},
methods: {
@@ -144,18 +145,18 @@
});
},
getInfoList() {
- this.loading = true
+ 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;
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
+ 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 ? '黄色预警':'蓝色预警';
@@ -163,39 +164,44 @@
});
}
}else{
- uni.$u.toast(res.msg)
- }
- this.loading = false
+ uni.$u.toast(res.msg)
+ }
+ this.loading = false
})
},
handleButtonClick(button) {
- this.data.pageIndex = 1
+ 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) {
- console.log("item",item)
-
- // if(this.unitType == 2 || this.unitType == 1 ){
- // uni.navigateTo({
- // url: `/pages/tabBar/responsivity/countyResponsivity?data=` + encodeURIComponent(JSON.stringify(item))
- // })
- // }else if(this.unitType == 3){
- // uni.navigateTo({
- // url: `/pages/tabBar/responsivity/cityResponsivity?data=` + encodeURIComponent(JSON.stringify(item))
- // })
- // }else if(this.unitType == 4){
- // uni.navigateTo({
- // url: `/pages/tabBar/responsivity/villageResponsivity?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() {
@@ -206,26 +212,31 @@
}, 1000);
},
clickSwitch(e) {
- this.data.pageIndex = 1
+ 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)
- },
+ 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'
+ });
+ },
}
}
diff --git a/pages/tabBar/examine/examine.vue b/pages/tabBar/examine/examine.vue
index 90c1acd..93a632d 100644
--- a/pages/tabBar/examine/examine.vue
+++ b/pages/tabBar/examine/examine.vue
@@ -12,6 +12,9 @@
</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">
@@ -46,7 +49,9 @@
</view>
<view style="display: flex;flex-direction: column;margin-bottom: 55px;">
<view class="examineList">
- <view class="listContent" v-if="examineList.length > 0">
+ <scroll-view :scroll-top="scrollTop" scroll-y="true" class="listContent" @scrolltoupper="upper" v-if="examineList.length > 0"
+ @scrolltolower="lower" @scroll="scroll" lower-threshold="50">
+ <!-- <view class="listContent" v-if="examineList.length > 0"> -->
<view v-for="(item, index) in examineList" :key="index" class="itemContent">
<view class="content" @click="toDetail(item)">
<text>[{{item.colorContent}}]</text>
@@ -63,9 +68,9 @@
</u-button>
</view>
</view>
-
</view>
- </view>
+ </scroll-view>
+ <!-- </view> -->
<view v-else>
<u-empty margin-top="40%" text="数据为空" mode="data"></u-empty>
</view>
@@ -84,9 +89,11 @@
},
data() {
return {
+ loading:false,
+ scrollTop: 0,
data: {
pageIndex: 1,
- pageSize: 999999999,
+ pageSize: 10,
searchParams: {
emergType: null,//1-紧急;2-常规
warningLevel: null,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警
@@ -125,6 +132,7 @@
uni.hideTabBar();
},
onShow() {
+ this.data.pageIndex = 1
this.getExanineList();
},
methods: {
@@ -133,18 +141,28 @@
uni.switchTab({
url:'/pages/tabBar/firstPage/firstPage'
});
+ this.selectedSaleAnalysis = 'all';
+ this.checked = false;
+ this.isReadOnly = false;
},
getExanineList() {
+ this.loading = true
this.data.searchParams.reviewStatus = this.isReadOnly ? 1 : null;
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.examineList = res.data ? res.data : [];
- console.log("res111111",res);
+ let list = res.data?res.data: [];
+ if (res.pageIndex != 1) {
+ this.examineList = this.examineList.concat(list)
+ } else {
+ this.examineList = list;
+ }
+ this.total = res.total
+ // this.examineList = res.data ? res.data : [];
+ console.log("res111111",this.examineList);
this.examineCopy = this.examineList;
if(this.examineList.length > 0) {
-
this.examineList.forEach((item, index) => {
this.examineList[index].colorContent = item.warningLevel == 1 ? '红色预警': item.warningLevel == 2 ? '橙色预警': item.warningLevel == 3 ? '黄色预警':'蓝色预警';
this.examineList[index].buttonContent = item.reviewStatus == 1 ? '待审核': item.reviewStatus == 2 ? '已审核通过' : '已驳回';
@@ -152,14 +170,19 @@
this.examineList[index].warningLevel = item.warningLevel;
});
}
+ }else{
+ uni.$u.toast(res.msg)
}
+ this.loading = false
})
},
handleButtonClick(button) {
+ this.data.pageIndex = 1
this.selectedSaleAnalysis = button.label;
this.getExanineList();
},
chooseRead(e) {
+ this.data.pageIndex = 1
this.isReadOnly = e;
this.getExanineList();
},
@@ -179,7 +202,25 @@
},
clickSwitch(e) {
this.getExanineList();
- }
+ this.data.pageIndex = 1
+ },
+ upper: function(e) {
+ // console.log(e)
+ },
+ lower: function(e) {
+ console.log("111")
+ if (this.data.pageIndex * this.data.pageSize >= this.total){
+ uni.$u.toast('已加载全部数据')
+ return
+ }
+ //并且让页码+1,调用获取数据的方法获取第二页数据
+ this.data.pageIndex++
+ //此处调用自己获取数据列表的方法
+ this.getExanineList()
+ },
+ scroll: function(e) {
+ // console.log(e)
+ },
}
}
@@ -326,12 +367,14 @@
// height: 35px;
// }
.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;
diff --git a/pages/tabBar/firstPage/firstPage.vue b/pages/tabBar/firstPage/firstPage.vue
index 2d7b90d..0e42cb6 100644
--- a/pages/tabBar/firstPage/firstPage.vue
+++ b/pages/tabBar/firstPage/firstPage.vue
@@ -11,25 +11,33 @@
</view>
<view class="list">
<view class="first" @click="goExamine" v-if="role == '审核领导'">
- 预警审核
+ <view class="icon">
+ <image src="../../../static/examine.png" class="img"></image>预警审核
+ </view>
</view>
<view class="first"
@click="goCurrent"
style="background-color:rgb(249, 130, 180) ;"
>
- 信息查看
+ <view class="icon">
+ <image src="../../../static/look.png" class="img"></image>信息查看
+ </view>
</view>
<view class="first"
style="background-color: rgb(41, 203, 280);"
@click="goWeather"
>
- 实时气象
+ <view class="icon">
+ <image src="../../../static/we.png" class="img"></image>实时气象
+ </view>
</view>
<view class="first"
- style="background-color: rgb(11, 246, 158) ;"
+ style="background-color: rgb(11, 246, 158) ;margin-bottom: 35px;"
@click="goCount"
>
- 统计分析
+ <view class="icon">
+ <image src="../../../static/count.png" class="img"></image>统计分析
+ </view>
</view>
</view>
@@ -107,9 +115,16 @@
background-color:lightgrey;
}
.list{
- display: flex;
- flex-direction: column;
- padding: 10px 15px;
+ margin: 12px 12px 0;
+ padding: 12px;
+ box-sizing: border-box;
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ width: calc(100% - 24px);
+ background: #fff;
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.first{
@@ -123,10 +138,22 @@
border: 1px solid lightgrey;
font-size: 18px;
margin-top: 40px;
+ color: #2c2c2c;
+ font-weight: 600;
+}
+.icon{
+ display: flex;
+ align-items: center;
+ justify-content: center;
}
.barText{
text-align: center;
font-size: 16px;
font-weight: 600;
}
+.img{
+ width: 20px;
+ height: 20px;
+ margin-right: 6px;
+}
</style>
\ No newline at end of file
diff --git a/pages/tabBar/notice/detail.vue b/pages/tabBar/notice/detail.vue
index 28aee18..bb956c7 100644
--- a/pages/tabBar/notice/detail.vue
+++ b/pages/tabBar/notice/detail.vue
@@ -35,9 +35,12 @@
</text>
<text class="textTop" v-else><b>发布单位:</b>{{detailData.publishingUnit}}</text>
<text class="textTop"><b>短信内容:</b><i style="background-color: rgb(240, 248, 255);">{{detailData.content}}发布单位:{{detailData.publishingUnit}}</i></text>
- <view style="display: flex;">
+ <view :style="{ height: directViewUrl ? '360px' : '' }" style="margin-top: 20px;">
<text class="textTop" style="width: 76px;" ><b>附件内容:</b></text>
- <view class="attache" v-if="isAllImg == 'no'">
+ <view style="width: 100%; height: 350px;" v-if="directViewUrl">
+ <iframe :src="directViewUrl" class="frameStyle"></iframe>
+ </view>
+<!-- <view class="attache" v-if="isAllImg == 'no'">
<view v-for="(item, index) in detailData.attachments" :key="index" >
<view style="display: flex;margin-top: 10px;" v-if="item.suffix == 'jpg'|| item.suffix =='jpeg' || item.suffix =='png'">
<image @click="previewSqs(item,index)" :src="item.attachment" style="width: 100rpx; height: 100rpx;margin-left: 5rpx;border: 3px solid #ccc;margin-right: 3px;"></image>
@@ -57,12 +60,7 @@
<u-icon name="attach" color="#2979ff" size="20"></u-icon> {{item.attachementName}}
</view>
</view>
- </view>
-
-<!-- <view style="width: 100%; height: 100px;">
- <iframe :src="" width="100%" height="100%"> </iframe>
</view> -->
-
</view>
<text class="textTop" v-if="detailData.role == 'leader'"><b>信息提交人:</b>{{detailData.infoSubmitterRealName}}</text>
<view class="textTop" v-if="detailData.role == 'leader'">
@@ -83,7 +81,7 @@
<text v-else class="responseStatus"
style='color: rgb(153, 148, 143);'>已驳回</text>
</view>
- <view class="textTop" v-else>
+<!-- <view class="textTop" v-else>
<text ><b>响应状态:</b></text>
<text v-if="detailData.responseStatus == 1" class="responseStatus"
style='background-color:rgb(247, 108, 125);color: white;'>待叫应</text>
@@ -91,7 +89,7 @@
style='background-color:limegreen'>已叫应</text>
<text v-else class="responseStatus"
style='background-color:rgb(247, 108, 125); color: white;'>超时未叫应</text>
- </view>
+ </view> -->
<view v-if="detailData.role == 'leader' && detailData.reviewStatus == 1" class="btn">
<u-button
style="background-color:rgb(6, 202, 23);color: white;width: 180px;"
@@ -144,7 +142,8 @@
reviewStatus: null
},
role: '',
- unitType: ''
+ unitType: '',
+ directViewUrl: ''
}
},
onLoad:function(options){
@@ -153,18 +152,8 @@
this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight'];
let test = options.data && JSON.parse(decodeURIComponent(options.data));
this.detailData = test;
- // if(this.detailData.forwardPath){
- // this.detailData.publishingUnit = this.detailData.forwardPath.map((item,index) => {
- // if(index == this.detailData.forwardPath.length){
- // return item
- // }else {
- // return item + '>'
- // }
-
- // })
- // }
+ this.directViewUrl = this.detailData.directViewUrl;
this.unitType = uni.getStorageSync('unittype');
- console.log("this.unitType",this.unitType);
if(this.detailData.role == 'leader' || this.detailData.role == 'infoPeople' ) {
this.detailData.attachments = this.detailData.attachment;
if (this.detailData.attachments){
@@ -190,7 +179,7 @@
}
console.log("this.isAllImg",this.isAllImg)
console.log("detailData",this.detailData)
- this.detailData.disaster = test.disasterType == 1 ? '地震': test.disasterType == 2 ? '洪涝' : test.disasterType == 3 ? '气象' : test.disasterType == 4 ? '泥石流': test.disasterType == 5 ? '水旱': '森林草原火灾';
+ this.detailData.disaster = test.disasterType == 1 ? '地震': test.disasterType == 2 ? '洪涝' : test.disasterType == 3 ? '气象' : test.disasterType == 4 ? '地质灾害': test.disasterType == 5 ? '水旱': '森林草原火灾';
},
methods: {
goBack() {
@@ -201,7 +190,7 @@
goMeasures() {
getMeasureDetail({id: this.detailData.id}).then(res => {
if(res.code == 100){
- if(res.data.id){
+ if(res.data.baseMeasures && res.data.baseMeasures.length>0 ){
console.log('111111')
uni.navigateTo({
url: `/pages/tabBar/responsivity/showMeasures?data=` + encodeURIComponent(JSON.stringify(res.data))
@@ -383,5 +372,11 @@
box-shadow: 0 3px 12px rgba(33,148,239,0.4);
}
}
+.frameStyle{
+ width: 100%;
+ height: 350px;
+ border: 1px solid #dddddc;
+ margin-top: 5px;
+}
</style>
diff --git a/pages/tabBar/notice/measures.vue b/pages/tabBar/notice/measures.vue
index 0a6832b..6aa6d4b 100644
--- a/pages/tabBar/notice/measures.vue
+++ b/pages/tabBar/notice/measures.vue
@@ -56,6 +56,7 @@
<script>
import { measureList, submitMeasures, getMeasureDetail } from '@/api/notice.js'
+ import VUE_APP_BASE_URL from '../../../common/constant.js'
export default {
components:{
@@ -73,7 +74,7 @@
autoHeight: true,
detailData : {},
measureIds : [],
- baseUrl: '',
+ baseUrl: VUE_APP_BASE_URL,
list: [],
showBtn: false
}
@@ -86,18 +87,12 @@
this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight'];
uni.hideTabBar();
this.getMeasureList();
- console.log("huan",process.env.NODE_ENV)
- if (process.env.NODE_ENV == 'development') {
- this.baseUrl = 'http://192.168.0.41:8086'
- }else {
- this.baseUrl = 'http://121.239.169.30:13001'
- }
},
methods: {
getMeasureList() {
const param = {
pageIndex: 1,
- pageSize: 10000000,
+ pageSize: 10000,
}
measureList(param).then(res => {
if(res.code == 100){
@@ -119,6 +114,13 @@
console.log('change', this.measureIds);
},
submit() {
+ if(this.measureIds.length <0) {
+ uni.showToast({
+ icon: "none",
+ title: '请勾选基础措施'
+ });
+ return;
+ }
const param = {
id: this.detailData.id,
baseMeasures: this.measureIds,
@@ -170,7 +172,7 @@
uploadFilePromise(url) {
return new Promise((resolve, reject) => {
let a = uni.uploadFile({
- url: this.baseUrl + '/attachment/uploadMeasureImage/key',
+ url: VUE_APP_BASE_URL + '/attachment/uploadMeasureImage/key',
filePath: url,
name: 'file',
header: {
diff --git a/pages/tabBar/notice/notice.vue b/pages/tabBar/notice/notice.vue
index fbacbc5..211adbd 100644
--- a/pages/tabBar/notice/notice.vue
+++ b/pages/tabBar/notice/notice.vue
@@ -181,13 +181,13 @@
getNotice(this.data).then(res => {
if (res.code == 100) {
// this.noticeList = res.data ? res.data : [];
- let list = res.data?res.data: [];
- if (res.pageIndex != 1) {
- this.noticeList = this.noticeList.concat(list)
- } else {
- this.noticeList = list;
- }
- this.total = res.total
+ let list = res.data?res.data: [];
+ if (res.pageIndex != 1) {
+ this.noticeList = this.noticeList.concat(list)
+ } else {
+ this.noticeList = list;
+ }
+ this.total = res.total
this.noticeListCopy = this.noticeList;
if (this.noticeList.length > 0) {
this.noticeList.forEach((item, index) => {
diff --git a/pages/tabBar/responsivity/countyResponsivity.vue b/pages/tabBar/responsivity/countyResponsivity.vue
index 75d12f8..b5ab7cc 100644
--- a/pages/tabBar/responsivity/countyResponsivity.vue
+++ b/pages/tabBar/responsivity/countyResponsivity.vue
@@ -13,26 +13,39 @@
</view>
</view>
<view class="responseCard">
+ <view class='title'>{{title}}</view>
<table class="table">
<thead class="head">
<tr>
<th></th>
- <th>叫应情况</th>
- <th>县市叫应率</th>
- <th>详情</th>
+ <th>处理情况</th>
+ <th v-if="unittype == 4">叫应时间</th>
+ <th v-else>叫应率</th>
+ <th v-if="unittype == 4">反馈</th>
+ <th v-else>详情</th>
</tr>
</thead>
<tbody class="tableBody">
<tr v-for="(item, index) in tableData" :key="index" >
- <td align="center" width="90px">{{ item.unit }}</td>
- <td align="center">{{ item.response }}</td>
- <td align="center">{{ item.responsivity }}</td>
+ <td align="center" width="90px">{{ item.receiveUnit }}</td>
+ <td align="center">{{ item.response }}</td>
+ <td align="center" v-if="unittype == 4" width="85px">{{ item.responseTime }}</td>
+ <td align="center" v-else>{{ item.responsivity }}</td>
<td>
+ <u-button
+ v-if="unittype == 4"
+ size="medium"
+ type="text"
+ style="color: blue"
+ @click="toDetail(item)"
+ >查看
+ </u-button>
<u-button
- size="mini"
+ v-else
+ size="medium"
type="text"
style="color: sandybrown"
- @click="toCity(item)"
+ @click="toNext(item)"
>叫应详情
</u-button>
</td>
@@ -44,52 +57,81 @@
</template>
<script>
+ import { getResponseDetail,getMeasureDetail } from '../../../api/notice.js'
export default {
data() {
return {
page: 'pages/tabBar/count/count',
statusBarHeight: '',
- tableData: [
- {
- unit:'伊犁州',
- response: '1',
- responsivity: '88.9%'
- },
- {
- unit:'伊犁州1',
- response: '1',
- responsivity: '88.9%'
- },
- {
- unit:'伊犁州2',
- response: '1',
- responsivity: '88.9%'
- },
- {
- unit:'伊犁州3',
- response: '1',
- responsivity: '88.9%'
- }
- ]
+ tableData: [],
+ unittype: null,
+ title: ''
}
},
- onLoad() {
- //获取手机状态栏高度
+ onLoad(options) {
+ let test = options.data && JSON.parse(decodeURIComponent(options.data));
+ console.log("data",test)
+ this.title = test.title;
+ this.tableData = test.appPageResponseByIdRespDTOS;
+ this.unittype = test.unittype;
+ this.tableData.forEach((item,index) => {
+ this.tableData[index].response = item.responseStatus ==1 ? '待叫应' :item.responseStatus == 2 ? '已叫应' :'超时未叫应'
+ this.tableData[index].responsivity = item.forwardRate ? item.forwardRate :'--';
+ this.tableData[index].responseTime = item.responseTime ? item.responseTime :'--';
+ })
this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight'];
uni.hideTabBar();
},
methods: {
goBack() {
- console.log("1111")
uni.switchTab({
url:'/pages/tabBar/current/current'
});
},
- toCity(item) {
- console.log("item",item)
- uni.navigateTo({
- url: `/pages/tabBar/responsivity/cityResponsivity?data=` + encodeURIComponent(JSON.stringify(item))
+ toNext(item) {
+ if(item.forwardWarnInfoId != null){
+ const param = {
+ pageIndex: 1,
+ pageSize: 100,
+ searchParams: {
+ warnInfoId: item.forwardWarnInfoId
+ }
+ }
+ getResponseDetail(param).then(res => {
+ if(res.code == 100){
+ this.tableData = res.data.appPageResponseByIdRespDTOS;
+ this.unittype = this.tableData[0].unittype;
+ this.tableData.forEach((item,index) => {
+ this.tableData[index].response = item.responseStatus ==1 ? '待叫应' :item.responseStatus == 2 ? '已叫应' :'超时未叫应'
+ this.tableData[index].responsivity = item.forwardRate ? item.forwardRate :'--'
+ })
+ }
+ })
+ }else {
+ // uni.showToast({
+ // icon: 'none',
+ // title: '无转发',
+ // duration: 3000
+ // })
+ }
+ },
+ toDetail(item){
+ console.log("d",item)
+ getMeasureDetail({id: item.id}).then(res => {
+ if(res.code == 100){
+ if(res.data.baseMeasures && res.data.baseMeasures.length>0 ){
+ uni.navigateTo({
+ url: `/pages/tabBar/responsivity/showMeasures?data=` + encodeURIComponent(JSON.stringify(res.data))
+ })
+ }else{
+ uni.showToast({
+ icon: 'none',
+ title: '该记录暂无响应措施',
+ duration: 3000
+ })
+ }
+ }
})
}
}
@@ -138,7 +180,7 @@
box-shadow: 0 3px 12px rgba(0,0,0,0.05);
margin: 12px 12px 20px;
border-radius: 5px;
- padding: 30px 12px;
+ padding: 20px 12px;
}
.table{
.head{
@@ -158,4 +200,10 @@
background-color: rgb(233, 239, 248); /* 设置偶数行颜色 */
}
}
+.title{
+ text-align: center;
+ font-size: 16px;
+ font-weight: 600;
+ margin-bottom: 20px;
+}
</style>
\ No newline at end of file
diff --git a/pages/tabBar/responsivity/showMeasures.vue b/pages/tabBar/responsivity/showMeasures.vue
index 6364cf7..5f348da 100644
--- a/pages/tabBar/responsivity/showMeasures.vue
+++ b/pages/tabBar/responsivity/showMeasures.vue
@@ -19,13 +19,13 @@
<u-form-item label="反馈时间 :">{{form.measureSubmitTime}}</u-form-item>
</u-form>
</view>
- <view class="first">
+ <view class="first" v-if="measureList">
<text style="font-size: 16px;margin-bottom: 20px;font-weight: 600;">基础措施</text>
<view v-for="(item, index) in measureList" :key="index" style="margin-left: 18px;margin-bottom:10px; font-size:16px;">
<text style="margin-top: 15px;">{{item}}</text>
</view>
</view>
- <view class="second">
+ <view class="second" v-if="measures!=null">
<text style="font-size: 16px;margin-bottom: 20px;font-weight: 600;">补充措施</text>
<u--textarea style="margin-top: -5px;" v-model="measures" disabled placeholder="请输入内容" ></u--textarea>
</view>
@@ -67,9 +67,13 @@
this.form = test;
this.measures = this.form.responseMeasure;
this.measureList = this.form.baseMeasures;
- this.images = this.form.attachments.map((item) => {
- return {url: VUE_APP_BASE_URL + item.attachment};
- });
+ if(this.form.attachments && this.form.attachments.length>0){
+ this.images = this.form.attachments.map((item) => {
+ return {url: VUE_APP_BASE_URL + item.attachment};
+ });
+ }else {
+ this.images = [];
+ }
console.log("img",this.images)
this.statusBarHeight = uni.getSystemInfoSync()['statusBarHeight'];
uni.hideTabBar();
diff --git a/pages/tabBar/utils/tabBar.js b/pages/tabBar/utils/tabBar.js
index 0473dd4..4ef8ad8 100644
--- a/pages/tabBar/utils/tabBar.js
+++ b/pages/tabBar/utils/tabBar.js
@@ -1,14 +1,14 @@
const user_leader = [
{
"pagePath": "pages/tabBar/firstPage/firstPage",
- "iconPath": "/static/notice1.png",
- "selectedIconPath": "/static/notice1-selected.png",
+ "iconPath": "/static/home.png",
+ "selectedIconPath": "/static/home_sel.png",
"text": "首页"
},
{
"pagePath": "pages/tabBar/current/current",
- "iconPath": "/static/send.png",
- "selectedIconPath": "/static/send_selected.png",
+ "iconPath": "/static/notice1.png",
+ "selectedIconPath": "/static/notice1-selected.png",
"text": "信息"
},
// {
@@ -19,14 +19,14 @@
// },
{
"pagePath": "pages/tabBar/weather/weather",
- "iconPath": "/static/notice1.png",
- "selectedIconPath": "/static/notice1-selected.png",
+ "iconPath": "/static/weather.png",
+ "selectedIconPath": "/static/weather_sel.png",
"text": "气象"
},
{
"pagePath": "pages/tabBar/count/count",
- "iconPath": "/static/notice1.png",
- "selectedIconPath": "/static/notice1-selected.png",
+ "iconPath": "/static/count.png",
+ "selectedIconPath": "/static/count_sel.png",
"text": "信息统计"
},
]
--
Gitblit v1.9.2