31 changed files with 1197 additions and 106 deletions
After Width: | Height: | Size: 144 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 1.5 KiB |
@ -0,0 +1,130 @@ |
|||||
|
// subpages/communitySelfInsp/pages/dissatisfactionDetails/dissatisfactionDetails.js
|
||||
|
import {getInspResult} from "../../../../utils/api" |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
tableData:[], |
||||
|
pageNo:1, |
||||
|
pageSize:20, |
||||
|
lowerThreshold:'10', |
||||
|
loadMoreVisible:false, |
||||
|
loadMoreType: "none", |
||||
|
nodata:false |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad(options) { |
||||
|
console.log(options); |
||||
|
this.setData({ |
||||
|
satisfactionCategory:options.category, |
||||
|
inspRecordId:options.inspRecordId |
||||
|
}) |
||||
|
this.getInspResult() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom() { |
||||
|
|
||||
|
}, |
||||
|
onScrollToLower(e){ |
||||
|
if (this.data.loadMoreType === 'more') { |
||||
|
this.setData({ |
||||
|
loadMoreVisible: true, |
||||
|
}) |
||||
|
this.data.pageNo += 1 |
||||
|
this.getInspResult() |
||||
|
} |
||||
|
}, |
||||
|
getInspResult(){ |
||||
|
this.setData({ |
||||
|
loadMoreVisible: true, |
||||
|
nodata: false, |
||||
|
loadMoreType: "more", |
||||
|
}) |
||||
|
let parm = { |
||||
|
inspRecordId:this.data.inspRecordId, |
||||
|
satisfactionCategory:this.data.satisfactionCategory, |
||||
|
satisfactionLevel:'bad', |
||||
|
pageNo:this.data.pageNo, |
||||
|
pageSize:this.data.pageSize |
||||
|
} |
||||
|
if(!parm.type) delete parm.type |
||||
|
getInspResult(parm).then(res=>{ |
||||
|
this.setData({ |
||||
|
loadMoreType: res.data.list.length === this.data.pageSize ? 'more' : 'none', |
||||
|
tableData: this.data.tableData.concat(res.data.list), |
||||
|
}) |
||||
|
if (this.data.tableData.length == 0) { |
||||
|
this.setData({ |
||||
|
loadMoreVisible: false, |
||||
|
nodata: true |
||||
|
}) |
||||
|
} |
||||
|
}).catch(err=>{ |
||||
|
console.log(err); |
||||
|
this.setData({ |
||||
|
loadMoreVisible: false, |
||||
|
nodata: true, |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
handleClickPhone(e){ |
||||
|
wx.makePhoneCall({ |
||||
|
phoneNumber: e.currentTarget.dataset.mobile, |
||||
|
}) |
||||
|
}, |
||||
|
toFollowUpDetails(e){ |
||||
|
console.log(JSON.stringify(e.currentTarget.dataset.item)); |
||||
|
wx.navigateTo({ |
||||
|
url: `/subpages/communitySelfInsp/pages/followUpDetail/followUpDetail?resiInfo=${JSON.stringify(e.currentTarget.dataset.item)}`, |
||||
|
}) |
||||
|
}, |
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage() { |
||||
|
|
||||
|
} |
||||
|
}) |
@ -0,0 +1,7 @@ |
|||||
|
{ |
||||
|
"usingComponents": { |
||||
|
"load-more": "../../../../components/loadMore/loadMore", |
||||
|
"no-data": "../../../../components/noData/nodata" |
||||
|
}, |
||||
|
"navigationBarTitleText": "不满意结果明细" |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
<!--subpages/communitySelfInsp/pages/dissatisfactionDetails/dissatisfactionDetails.wxml--> |
||||
|
<view class="content"> |
||||
|
<scroll-view class="scroll" scroll-y="{{true}}" lower-threshold="{{ lowerThreshold }}" bindscrolltolower="onScrollToLower"> |
||||
|
<view class="card" wx:for="{{tableData}}" wx:key="index" > |
||||
|
<view class="title" > |
||||
|
<view>{{item.reporterName}} {{item.reporterMobile}}</view> |
||||
|
<view><text class="red" bind:tap="handleClickPhone" data-mobile="{{item.reporterMobile}}">打电话</text> <text class="blue" bind:tap="toFollowUpDetails" data-item="{{item}}">回访记录</text> </view> |
||||
|
</view> |
||||
|
<view class="{{item.followUpStatus == 1?'blue_small':'red_small'}}"> {{ item.followUpStatus!= null?item.followUpStatus == -1 ?'不接受回访':item.followUpStatus == 1 ?'已回访':'接受回访/未回访':'--' }} |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
不满意原因:{{item.reason}} |
||||
|
</view> |
||||
|
</view> |
||||
|
<load-more loadVisible="{{loadMoreVisible}}" loadType="{{loadMoreType}}" ></load-more> |
||||
|
<no-data isShow="{{nodata}}" wx:if="{{nodata}}"></no-data> |
||||
|
</scroll-view> |
||||
|
|
||||
|
</view> |
@ -0,0 +1,80 @@ |
|||||
|
/* subpages/communitySelfInsp/pages/dissatisfactionDetails/dissatisfactionDetails.wxss */ |
||||
|
page { |
||||
|
width: 100%; |
||||
|
min-height: 100vh; |
||||
|
overflow-y: scroll; |
||||
|
background-color: #f7f7f7; |
||||
|
} |
||||
|
.red, |
||||
|
.blue{ |
||||
|
font-size: 28rpx; |
||||
|
color: #fff; |
||||
|
padding: 8rpx 20rpx ; |
||||
|
border-radius: 40rpx; |
||||
|
box-sizing: border-box; |
||||
|
margin-right: 16rpx; |
||||
|
} |
||||
|
.red{ |
||||
|
background-color: #ff783c; |
||||
|
} |
||||
|
.blue{ |
||||
|
background-color: #4f94ff; |
||||
|
} |
||||
|
.blue_small, |
||||
|
.red_small{ |
||||
|
font-size: 26rpx; |
||||
|
width: fit-content; |
||||
|
padding: 8rpx 16rpx; |
||||
|
border-radius: 40rpx; |
||||
|
box-sizing: border-box; |
||||
|
height: 40rpx; |
||||
|
line-height: 20rpx; |
||||
|
margin: 24rpx 0 ; |
||||
|
|
||||
|
} |
||||
|
.blue_small{ |
||||
|
background-color: #eef4fd; |
||||
|
color: #5693EE; |
||||
|
} |
||||
|
.red_small{ |
||||
|
background-color: #fff1eb; |
||||
|
color: #FF783C; |
||||
|
} |
||||
|
.content{ |
||||
|
width: 100%; |
||||
|
padding:0 20rpx ; |
||||
|
box-sizing: border-box; |
||||
|
} |
||||
|
.content .scroll { |
||||
|
height: calc(100vh - 100rpx); |
||||
|
overflow-y: scroll; |
||||
|
} |
||||
|
.content .card{ |
||||
|
width: 100%; |
||||
|
background-color: #fff; |
||||
|
display: flex; |
||||
|
height: 236rpx; |
||||
|
flex-direction: column; |
||||
|
border-radius: 20rpx; |
||||
|
padding: 30rpx 30rpx; |
||||
|
box-sizing: border-box; |
||||
|
margin-top: 20rpx; |
||||
|
overflow: hidden; |
||||
|
color: #333; |
||||
|
|
||||
|
} |
||||
|
.content .card .title{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
/* */ |
||||
|
.content .card .bottom{ |
||||
|
border-bottom: 2rpx #EAEAEA solid; |
||||
|
padding-bottom: 20rpx; |
||||
|
display: -webkit-box; |
||||
|
-webkit-box-orient: vertical; |
||||
|
-webkit-line-clamp: 2; |
||||
|
width: 100%; /* 根据实际情况调整 */ |
||||
|
max-height: 100rpx; /* 根据字体大小和行高调整 */ |
||||
|
min-height:50rpx ; |
||||
|
} |
@ -0,0 +1,106 @@ |
|||||
|
const app = getApp() |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
resiInfo:{}, |
||||
|
title:'回访记录', |
||||
|
formType:'add', |
||||
|
followUpWayList:[ |
||||
|
{ |
||||
|
label:'电话回访', |
||||
|
value:'1' |
||||
|
}, |
||||
|
{ |
||||
|
label:'上门回访', |
||||
|
value:'2' |
||||
|
} |
||||
|
], |
||||
|
form:{ |
||||
|
|
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad(options) { |
||||
|
console.log(JSON.parse(options.resiInfo)); |
||||
|
this.setData({ |
||||
|
statusHeight: app.globalData.deviceInfo.statusHeight, |
||||
|
navigationHeight: app.globalData.deviceInfo.navigationHeight, |
||||
|
formType:options.type |
||||
|
}) |
||||
|
if(options.type == 'add'){ |
||||
|
this.setData({ |
||||
|
resiInfo:JSON.parse(options.resiInfo), |
||||
|
}) |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage() { |
||||
|
|
||||
|
}, |
||||
|
bindPickerChangefollowUpWay(e){ |
||||
|
const selectedIndex = e.detail.value; |
||||
|
const selectedVillage = this.data.followUpWayList[selectedIndex]; |
||||
|
this.setData({ |
||||
|
'form.followUpWay': selectedVillage.label, |
||||
|
}); |
||||
|
}, |
||||
|
handleChangeRadio(e){ |
||||
|
console.log(e); |
||||
|
}, |
||||
|
back(){ |
||||
|
wx.navigateBack({ |
||||
|
delta: 1 |
||||
|
}) |
||||
|
} |
||||
|
}) |
@ -0,0 +1,4 @@ |
|||||
|
{ |
||||
|
"navigationStyle": "custom", |
||||
|
"usingComponents": {} |
||||
|
} |
@ -0,0 +1,50 @@ |
|||||
|
<view class="header"> |
||||
|
<image src="../../../../images/back.png" class="back" style=" top: {{statusHeight}}px;width: 30rpx;height: 30rpx;" bindtap="back" mode="" /> |
||||
|
<view class="navigation" style="height: {{navigationHeight}}px; top: {{statusHeight}}px;"> |
||||
|
{{title}} |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="content"> |
||||
|
<view class="content_header"> |
||||
|
<view class="bto_bor"> |
||||
|
<view> 马魁 177777777777</view> |
||||
|
<view class="gray font28" style="margin: 20rpx 0;">河南省鹤壁市</view> |
||||
|
</view> |
||||
|
<view style="margin-top: 20rpx;"> |
||||
|
不满意原因:aacece |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="content_form"> |
||||
|
<view class="bto_bor form_item" style="color:#333;font-weight: bold;">填写回访记录</view> |
||||
|
<view class="form_item bto_bor"> |
||||
|
<view class="label"> |
||||
|
<view class="title" style="color: #333333">回访方式</view> |
||||
|
</view> |
||||
|
<view class="input"> |
||||
|
<picker bindchange="bindPickerChangefollowUpWay" range-key="label" value="{{index}}" range="{{followUpWayList}}"> |
||||
|
<view class="{{form.followUpWay?'':'gray'}}"> |
||||
|
{{followUpWayName?followUpWayName:'请选择'}} |
||||
|
</view> |
||||
|
</picker> |
||||
|
<image src="../../../../images/right.png" mode=""/> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view > |
||||
|
<view style="margin-top: 20rpx; color: #333333">回访情况记录</view> |
||||
|
<view> |
||||
|
<textarea style="background-color: #f7f7f7; border-radius: 10rpx; padding: 30rpx;margin-top: 20rpx;" value="{{form.description}}" placeholder="请详细填写回访情况(不超过500字)"/> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view style="margin-bottom: 80rpx;"> |
||||
|
<view style="margin-top: 20rpx; color: #333333">是否还为不满意风险人员</view> |
||||
|
<view> |
||||
|
<radio-group bindchange="handleChangeRadio" style="margin-top: 20rpx;"> |
||||
|
<radio color="#70acfc" value="{{0}}"/>否 |
||||
|
<radio color="#70acfc" style="margin-left: 20rpx;" value="{{1}}"/>是 |
||||
|
</radio-group> |
||||
|
|
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<button class="fixed_btn" bind:tap="jumpAdd">提交</button> |
@ -0,0 +1,149 @@ |
|||||
|
page { |
||||
|
width: 100%; |
||||
|
min-height: 100vh; |
||||
|
overflow-y: auto; |
||||
|
background-color: #f7f7f7; |
||||
|
} |
||||
|
.header { |
||||
|
width: 100%; |
||||
|
height: 532rpx; |
||||
|
background: linear-gradient(180deg, #7DB5FF 0%, #E8F2FF 66%, #F7F7F7 100%); |
||||
|
} |
||||
|
|
||||
|
.header .header-bg { |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
/* position: absolute; |
||||
|
z-index: 10; |
||||
|
left: 0; |
||||
|
top: 0; */ |
||||
|
position: absolute; |
||||
|
height: 100%; |
||||
|
z-index: -999; |
||||
|
} |
||||
|
|
||||
|
.gray{ |
||||
|
color: #666666; |
||||
|
|
||||
|
} |
||||
|
|
||||
|
.font28{ |
||||
|
font-size: 28rpx; |
||||
|
} |
||||
|
|
||||
|
.bto_bor{ |
||||
|
border-bottom: 2rpx #EAEAEA solid; |
||||
|
} |
||||
|
.header .navigation { |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: center; |
||||
|
font-size: 32rpx; |
||||
|
position: relative; |
||||
|
z-index: 1; |
||||
|
} |
||||
|
.back { |
||||
|
width: 30rpx; |
||||
|
height: 30rpx; |
||||
|
margin-left: 20rpx; |
||||
|
position: absolute; |
||||
|
margin-top: 25rpx; |
||||
|
border-radius: 0rpx; |
||||
|
z-index: 2; |
||||
|
} |
||||
|
.content{ |
||||
|
height: auto; |
||||
|
width: 100%; |
||||
|
overflow: hidden; |
||||
|
position: relative; |
||||
|
top: -380rpx; |
||||
|
padding: 0 20rpx; |
||||
|
box-sizing: border-box; |
||||
|
} |
||||
|
.content .content_header{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
background: linear-gradient(to bottom right, #d1e7f7 0%, #E8F2FF 20%, #F7F7F7 100%); |
||||
|
border-radius:20rpx; |
||||
|
padding: 30rpx; |
||||
|
box-sizing: border-box; |
||||
|
} |
||||
|
.content .content_form{ |
||||
|
height: auto; |
||||
|
width: 100%; |
||||
|
overflow: hidden; |
||||
|
padding: 0 20rpx; |
||||
|
box-sizing: border-box; |
||||
|
background-color: #FFFFFF; |
||||
|
margin-top: 17rpx; |
||||
|
border-radius: 20rpx; |
||||
|
} |
||||
|
.form_item{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
height: 100rpx; |
||||
|
} |
||||
|
|
||||
|
.form_item .label{ |
||||
|
width: 130rpx; |
||||
|
height: 100%; |
||||
|
line-height: 100rpx; |
||||
|
font-size: 32rpx; |
||||
|
font-family: PingFang SC; |
||||
|
font-weight: 500; |
||||
|
color: #666666; |
||||
|
position: relative; |
||||
|
} |
||||
|
.form_item .label .must{ |
||||
|
font-size: 32rpx; |
||||
|
font-weight: 500; |
||||
|
color: #FF2A00; |
||||
|
position: absolute; |
||||
|
left: -18rpx; |
||||
|
top: 50%; |
||||
|
transform: translateY(-50rpx); |
||||
|
} |
||||
|
.form_item .input{ |
||||
|
flex: 1; |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
align-items: center; |
||||
|
margin-left: 51rpx; |
||||
|
overflow: hidden; |
||||
|
|
||||
|
} |
||||
|
.form_item .input .residentCategorySty{ |
||||
|
flex: 1; |
||||
|
overflow: hidden; |
||||
|
text-overflow: ellipsis; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.form_item .input picker, |
||||
|
.form_item .input input{ |
||||
|
flex: 1; |
||||
|
} |
||||
|
.form_item image{ |
||||
|
height: 22rpx; |
||||
|
width: 22rpx; |
||||
|
} |
||||
|
button{ |
||||
|
width: 360rpx; |
||||
|
height: 76rpx; |
||||
|
background: linear-gradient(87deg, #81B5FB 0%, #3E92FF 100%); |
||||
|
border-radius: 76rpx !important; |
||||
|
font-size: 32rpx; |
||||
|
font-weight: 400 !important; |
||||
|
font-family: PingFang SC; |
||||
|
color: #FFFFFF; |
||||
|
position: fixed; |
||||
|
bottom: 63rpx; |
||||
|
left: 50%; |
||||
|
transform: translateX(-180rpx); |
||||
|
} |
||||
|
.fixed_btn{ |
||||
|
position: fixed; |
||||
|
bottom: 30rpx; |
||||
|
left: 50%; |
||||
|
transform: translateX(-184rpx); |
||||
|
} |
@ -0,0 +1,120 @@ |
|||||
|
import {getFollowUpList} from "../../../../utils/api" |
||||
|
Page({ |
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
tableData:[], |
||||
|
pageNo:1, |
||||
|
pageSize:20, |
||||
|
lowerThreshold:'10', |
||||
|
loadMoreVisible:false, |
||||
|
loadMoreType: "none", |
||||
|
nodata:false |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad(options) { |
||||
|
console.log(options); |
||||
|
this.setData({ |
||||
|
satisfactionCategory:options.category, |
||||
|
inspRecordId:options.inspRecordId |
||||
|
}) |
||||
|
this.getFollowUpList() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom() { |
||||
|
|
||||
|
}, |
||||
|
onScrollToLower(e){ |
||||
|
if (this.data.loadMoreType === 'more') { |
||||
|
this.setData({ |
||||
|
loadMoreVisible: true, |
||||
|
}) |
||||
|
this.data.pageNo += 1 |
||||
|
this.getFollowUpList() |
||||
|
} |
||||
|
}, |
||||
|
getFollowUpList(){ |
||||
|
this.setData({ |
||||
|
loadMoreVisible: true, |
||||
|
nodata: false, |
||||
|
loadMoreType: "more", |
||||
|
}) |
||||
|
let parm = { |
||||
|
inspRecordId:'', |
||||
|
pageNo:this.data.pageNo, |
||||
|
pageSize:this.data.pageSize |
||||
|
} |
||||
|
if(!parm.type) delete parm.type |
||||
|
getFollowUpList(parm).then(res=>{ |
||||
|
this.setData({ |
||||
|
loadMoreType: res.data.list.length === this.data.pageSize ? 'more' : 'none', |
||||
|
tableData: this.data.tableData.concat(res.data.list), |
||||
|
}) |
||||
|
if (this.data.tableData.length == 0) { |
||||
|
this.setData({ |
||||
|
loadMoreVisible: false, |
||||
|
nodata: true |
||||
|
}) |
||||
|
} |
||||
|
}).catch(err=>{ |
||||
|
console.log(err); |
||||
|
this.setData({ |
||||
|
loadMoreVisible: false, |
||||
|
nodata: true, |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
handleClickPhone(e){ |
||||
|
wx.makePhoneCall({ |
||||
|
phoneNumber: e.currentTarget.dataset.mobile, |
||||
|
}) |
||||
|
}, |
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage() { |
||||
|
|
||||
|
} |
||||
|
}) |
@ -0,0 +1,7 @@ |
|||||
|
{ |
||||
|
"usingComponents": { |
||||
|
"load-more": "../../../../components/loadMore/loadMore", |
||||
|
"no-data": "../../../../components/noData/nodata" |
||||
|
}, |
||||
|
"navigationBarTitleText": "我的回访记录" |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
<!--subpages/communitySelfInsp/pages/dissatisfactionDetails/dissatisfactionDetails.wxml--> |
||||
|
<view class="content"> |
||||
|
<scroll-view class="scroll" scroll-y="{{true}}" lower-threshold="{{ lowerThreshold }}" bindscrolltolower="onScrollToLower"> |
||||
|
<view class="card" wx:for="{{tableData}}" wx:key="index" > |
||||
|
<view class="title" > |
||||
|
<view> |
||||
|
<text class="{{item.followUpWay == '1'?'blue_small':'red_small'}}">{{item.followUpWayName}}</text> |
||||
|
{{item.reporterName}} {{item.reporterMobile}} |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
<view style="color: #999999 ;">{{item.addressDetail != null?item.addressDetail:'--'}}</view> |
||||
|
<view style="color: #C1C1C1;">{{item.followUpTime}}</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<load-more loadVisible="{{loadMoreVisible}}" loadType="{{loadMoreType}}" ></load-more> |
||||
|
<no-data isShow="{{nodata}}" wx:if="{{nodata}}"></no-data> |
||||
|
</scroll-view> |
||||
|
</view> |
@ -0,0 +1,75 @@ |
|||||
|
page { |
||||
|
width: 100%; |
||||
|
min-height: 100vh; |
||||
|
overflow-y: scroll; |
||||
|
background-color: #f7f7f7; |
||||
|
} |
||||
|
.red, |
||||
|
.blue{ |
||||
|
font-size: 28rpx; |
||||
|
color: #fff; |
||||
|
padding: 8rpx 20rpx ; |
||||
|
border-radius: 40rpx; |
||||
|
box-sizing: border-box; |
||||
|
margin-right: 16rpx; |
||||
|
} |
||||
|
.red{ |
||||
|
background-color: #ff783c; |
||||
|
} |
||||
|
.blue{ |
||||
|
background-color: #4f94ff; |
||||
|
} |
||||
|
.blue_small, |
||||
|
.red_small{ |
||||
|
font-size: 26rpx; |
||||
|
width: fit-content; |
||||
|
padding: 8rpx 16rpx; |
||||
|
border-radius: 40rpx; |
||||
|
box-sizing: border-box; |
||||
|
height: 40rpx; |
||||
|
line-height: 20rpx; |
||||
|
margin: 24rpx 0 ; |
||||
|
|
||||
|
} |
||||
|
.blue_small{ |
||||
|
background-color: #eef4fd; |
||||
|
color: #5693EE; |
||||
|
} |
||||
|
.red_small{ |
||||
|
background-color: #fff1eb; |
||||
|
color: #FF783C; |
||||
|
} |
||||
|
.content{ |
||||
|
width: 100%; |
||||
|
padding:0 20rpx ; |
||||
|
box-sizing: border-box; |
||||
|
} |
||||
|
.content .scroll { |
||||
|
height: calc(100vh - 100rpx); |
||||
|
overflow-y: scroll; |
||||
|
} |
||||
|
.content .card{ |
||||
|
width: 100%; |
||||
|
background-color: #fff; |
||||
|
display: flex; |
||||
|
height: 180rpx; |
||||
|
flex-direction: column; |
||||
|
border-radius: 20rpx; |
||||
|
padding: 30rpx 30rpx; |
||||
|
box-sizing: border-box; |
||||
|
margin-top: 20rpx; |
||||
|
overflow: hidden; |
||||
|
color: #333; |
||||
|
} |
||||
|
.content .card .title{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
.content .card .bottom{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: center; |
||||
|
margin-top: 30rpx; |
||||
|
border-bottom: 2rpx #EAEAEA solid; |
||||
|
padding-bottom: 20rpx; |
||||
|
} |
@ -0,0 +1,110 @@ |
|||||
|
// subpages/communitySelfInsp/pages/synthesis/synthesis.js
|
||||
|
const app = getApp() |
||||
|
import {getSynthesis} from '../../../../utils/api' |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
agencyName:'',//组织名称
|
||||
|
tableData:[], |
||||
|
monthName:'',//月份
|
||||
|
personQty:'',//提交人数
|
||||
|
synthesisScore:'',//综合得分
|
||||
|
inspRecordId:''//自查表Id
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad(options) { |
||||
|
this.setData({ |
||||
|
statusHeight: app.globalData.deviceInfo.statusHeight, |
||||
|
navigationHeight: app.globalData.deviceInfo.navigationHeight, |
||||
|
}) |
||||
|
this.getSynthesis() |
||||
|
}, |
||||
|
|
||||
|
getSynthesis(){ |
||||
|
let parm = { |
||||
|
period:'2023-09', |
||||
|
inspRecordId:'' |
||||
|
} |
||||
|
getSynthesis(parm).then(res=>{ |
||||
|
console.log(res); |
||||
|
this.setData({ |
||||
|
tableData:res.data.categoryDatas, |
||||
|
monthName:res.data.monthName, |
||||
|
synthesisScore:res.data.synthesisScore, |
||||
|
personQty:res.data.personQty, |
||||
|
agencyName:res.data.agencyName, |
||||
|
inspRecordId:res.data.inspRecordId |
||||
|
}) |
||||
|
|
||||
|
}).catch((err)=>{ |
||||
|
console.log(err); |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage() { |
||||
|
|
||||
|
}, |
||||
|
toDissatisfactionDetails(e){ |
||||
|
console.log(e); |
||||
|
let category = e.currentTarget.dataset.item.satisfactionCategory |
||||
|
wx.navigateTo({ |
||||
|
url: `/subpages/communitySelfInsp/pages/dissatisfactionDetails/dissatisfactionDetails?inspRecordId=${this.data.inspRecordId}&category=${category}`, |
||||
|
}) |
||||
|
}, |
||||
|
back(){ |
||||
|
wx.navigateBack({ |
||||
|
delta: 1 |
||||
|
}) |
||||
|
} |
||||
|
}) |
@ -0,0 +1,4 @@ |
|||||
|
{ |
||||
|
"navigationStyle": "custom", |
||||
|
"usingComponents": {} |
||||
|
} |
@ -0,0 +1,63 @@ |
|||||
|
<view class="header"> |
||||
|
<image class="header-bg" src="../../../../images/work/bg.png" mode="widthFix" /> |
||||
|
<image src="../../../../images/back.png" class="back" bind:tap="back" style=" top: {{statusHeight}}px;width: 30rpx;height: 30rpx;" bindtap="back" mode=""/> |
||||
|
<view class="navigation" style="height: {{navigationHeight}}px; top: {{statusHeight}}px;"> |
||||
|
社区满意度自查 |
||||
|
</view> |
||||
|
<view class="content"> |
||||
|
<view class="h2">{{agencyName}}{{monthName}}月份满意度自查</view> |
||||
|
<view class="tag"> <image src="../../../../images/tag.png" mode=""/> 进行中</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="body"> |
||||
|
<view class="top"> |
||||
|
<image src="../../../../images/work/messageBg.png" class="bg" mode=""/> |
||||
|
<view class="top_box"> |
||||
|
<view class="cnm"> |
||||
|
<view class="tagB">提交人数</view> |
||||
|
<view class="blue"> <b>{{personQty}}</b>人 </view> |
||||
|
</view> |
||||
|
<view> |
||||
|
<view class="tagR">目前得分</view> |
||||
|
<view class="red"> <b>{{synthesisScore}}</b>分 </view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bto"> |
||||
|
<view class="th"> |
||||
|
<view class="tr"> |
||||
|
<view class="td"> |
||||
|
类型 |
||||
|
</view> |
||||
|
<view class="td"> |
||||
|
满意 |
||||
|
</view> |
||||
|
<view class="td"> |
||||
|
基本满意 |
||||
|
</view> |
||||
|
<view class="td"> |
||||
|
不满意 |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="tr {{index%2 == 0?'tr_bg':''}}" wx:for="{{tableData}}" wx:key="index"> |
||||
|
<view class="td"> |
||||
|
{{item.satisfactionCategoryName}} |
||||
|
</view> |
||||
|
<view class="td"> |
||||
|
{{item.veryGoodQty}} |
||||
|
</view> |
||||
|
<view class="td"> |
||||
|
{{item.goodQty}} |
||||
|
</view> |
||||
|
<view class="td" style="color:#FF502E " data-item="{{item}}" bind:tap="toDissatisfactionDetails"> |
||||
|
{{item.badQty}} <image src="../../../../images/work/rightCri.png" mode=""/> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<!-- |
||||
|
<view class="bto_btn"> |
||||
|
<view>分享给好友参与测评</view> |
||||
|
</view> --> |
@ -0,0 +1,162 @@ |
|||||
|
/* subpages/communitySelfInsp/pages/synthesis/synthesis.wxss */ |
||||
|
page { |
||||
|
width: 100%; |
||||
|
min-height: 100vh; |
||||
|
overflow-y: scroll; |
||||
|
background-color: #f7f7f7; |
||||
|
} |
||||
|
.header { |
||||
|
width: 100%; |
||||
|
height: 464rpx; |
||||
|
/* position: fixed; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
z-index: 1000; */ |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
.blue{ |
||||
|
color: #3A80E7 ; |
||||
|
} |
||||
|
.red{ |
||||
|
color: #FF502E; |
||||
|
} |
||||
|
.header .header-bg { |
||||
|
width: 100%; |
||||
|
height: 444rpx; |
||||
|
position: absolute; |
||||
|
height: 100%; |
||||
|
z-index: -997; |
||||
|
} |
||||
|
.header .navigation { |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: center; |
||||
|
color: #333333; |
||||
|
font-size: 32rpx; |
||||
|
position: relative; |
||||
|
z-index: 100; |
||||
|
} |
||||
|
.back{ |
||||
|
width: 30rpx; |
||||
|
height: 30rpx; |
||||
|
margin-left: 20rpx; |
||||
|
position: absolute; |
||||
|
margin-top: 25rpx; |
||||
|
border-radius: 0rpx; |
||||
|
z-index: 2; |
||||
|
} |
||||
|
.header .content{ |
||||
|
margin: 140rpx 0 0 69rpx; |
||||
|
} |
||||
|
.header .content .h2{ |
||||
|
font-size: 44rpx; |
||||
|
font-family: PingFang SC; |
||||
|
font-weight: 800; |
||||
|
color: #333333; |
||||
|
margin-bottom: 40rpx; |
||||
|
width: 330rpx; |
||||
|
} |
||||
|
.header .content .tag{ |
||||
|
width: 170rpx; |
||||
|
height: 50rpx; |
||||
|
position: relative; |
||||
|
line-height: 48rpx; |
||||
|
font-size: 28rpx; |
||||
|
font-family: PingFang SC; |
||||
|
font-weight: 500; |
||||
|
color: #FFFFFF; |
||||
|
padding-left: 35rpx; |
||||
|
} |
||||
|
.header .content .tag image { |
||||
|
width: 170rpx; |
||||
|
height: 50rpx; |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
z-index: -888; |
||||
|
} |
||||
|
.body{ |
||||
|
padding: 0 20rpx; |
||||
|
box-sizing: border-box; |
||||
|
position: relative; |
||||
|
top: -30rpx; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
.body .top .bg{ |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
width: 100%; |
||||
|
height: 200rpx; |
||||
|
z-index: -996; |
||||
|
} |
||||
|
.body .top .top_box{ |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
} |
||||
|
.body .top .top_box>view{ |
||||
|
width: 50%; |
||||
|
height: 200rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
position: relative; |
||||
|
top: 20rpx; |
||||
|
color: #666666; |
||||
|
} |
||||
|
.body .top .top_box>view b{ |
||||
|
font-size: 50rpx; |
||||
|
} |
||||
|
.body .top .top_box>view .tagB, |
||||
|
.body .top .top_box>view .tagR |
||||
|
{ |
||||
|
position: relative; |
||||
|
} |
||||
|
.body .top .top_box>view .tagB::after{ |
||||
|
display: inline-block; |
||||
|
content: ''; |
||||
|
width:18rpx; |
||||
|
height: 18rpx; |
||||
|
background-color: #3A80E7; |
||||
|
position: absolute; |
||||
|
left: -30rpx; |
||||
|
top: 10rpx; |
||||
|
} |
||||
|
.body .top .top_box>view .tagR::after{ |
||||
|
display: inline-block; |
||||
|
content: ''; |
||||
|
width:18rpx; |
||||
|
height: 18rpx; |
||||
|
background-color: #FF502E ; |
||||
|
position: absolute; |
||||
|
left: -30rpx; |
||||
|
top: 10rpx; |
||||
|
} |
||||
|
.body .bto{ |
||||
|
border-radius: 10rpx; |
||||
|
background-color: #fff; |
||||
|
padding: 30rpx; |
||||
|
margin-top: 20rpx; |
||||
|
} |
||||
|
.body .bto .th .tr{ |
||||
|
color: #333333; |
||||
|
} |
||||
|
.body .bto .tr{ |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
align-items: center; |
||||
|
height: 90rpx; |
||||
|
color: #666666; |
||||
|
} |
||||
|
.body .bto .tr_bg{ |
||||
|
background-color: #f0f5fd; |
||||
|
} |
||||
|
.body .bto .tr .td{ |
||||
|
width: 25%; |
||||
|
text-align: center; |
||||
|
} |
||||
|
.body .bto .tr .td image{ |
||||
|
width: 24rpx; |
||||
|
height: 24rpx; |
||||
|
} |
Loading…
Reference in new issue