This commit is contained in:
SelfRidicule 2024-08-19 15:32:53 +08:00
parent 5f490cb581
commit fe923ab30f
7 changed files with 286 additions and 55 deletions

View File

@ -113,6 +113,25 @@ export function repairEvalRq(data) {
}); });
} }
// 消息提醒列表
export function repairRemindListRq(data) {
return request({
url: `/app/repairRemind/list`,
method: "get",
data
});
}
// 消息提醒已读
export function repairRemindReadRq(data) {
return request({
url: `/app/repairRemind/read`,
method: "post",
data
});
}
// 返回订单状态 // 返回订单状态
// 状态:1 待派单,3 重新派单,5 已派单,7 处理中, 9已完成 待评价, 11 已关闭 13 已评价 // 状态:1 待派单,3 重新派单,5 已派单,7 处理中, 9已完成 待评价, 11 已关闭 13 已评价
let statusList = [{ let statusList = [{

View File

@ -15,6 +15,11 @@ import {
getParkRq getParkRq
} from "../../api/index/index.js" } from "../../api/index/index.js"
import {
repairRemindListRq,
repairRemindReadRq
} from "../../api/repair/repair.js"
import { import {
getUrlParamsObj getUrlParamsObj
} from "../../utils/util.js" } from "../../utils/util.js"
@ -165,6 +170,8 @@ Page({
userDetail: {}, userDetail: {},
parkName: app.parkName, parkName: app.parkName,
qrcodeParam: null, qrcodeParam: null,
infoList: [],
}, },
onLoad(options) { onLoad(options) {
@ -211,6 +218,16 @@ Page({
bannerList bannerList
}) })
}) })
// 查询消息列表
repairRemindListRq({
pageNum: 1,
pageSize: 3
}).then(res => {
console.log('repairRemindListRq', res);
_this.setData({
infoList: res.rows
})
})
} else { } else {
app.selfShowMsg(res.msg, '/pages/login/login') app.selfShowMsg(res.msg, '/pages/login/login')
} }
@ -238,6 +255,25 @@ Page({
} }
}, },
jumpInfo() {
wx.navigateTo({
url: '/pages/my/info/info',
})
},
jumpInfoDetail(e) {
console.log('detail', e);
let id = e.currentTarget.dataset.obj.id
let repairId = e.currentTarget.dataset.obj.repairId
repairRemindReadRq({
id
}).then(res => {
wx.navigateTo({
url: `/pages/reportRepair/assign/detail/detail?id=${repairId}`,
})
})
},
// 成功通知 // 成功通知
showSuccessMsg(msg) { showSuccessMsg(msg) {
Notify({ Notify({

View File

@ -28,14 +28,14 @@
<!-- 消息通知 --> <!-- 消息通知 -->
<view class="itemTitleView"> <view class="itemTitleView">
<view class="title">消息通知</view> <view class="title">消息通知</view>
<view class="more">更多</view> <view class="more" bind:tap="jumpInfo">更多</view>
</view> </view>
<view class="infoView"> <view class="infoView">
<view class="itemView" wx:for="{{3}}"> <view class="itemView" wx:for="{{infoList}}" wx:for-item="item" wx:key="*this" data-obj="{{item}}" bind:tap="jumpInfoDetail">
<view class="contentView ellipsisFont"> <view class="contentView ellipsisFont">
<view class="title">工单动态</view> <view class="title">消息提醒</view>
<view class="msg ellipsisFont">您的工单《空调》已受理,正在处理中正在处理中正在处理中正在处理中</view> <view class="msg ellipsisFont">{{item.content}}</view>
<view class="time">2024-08-16 13:49:11</view> <view class="time">{{item.createTime}}</view>
</view> </view>
<!-- <van-icon class="arrow" name="arrow" color="#c3c3c3" size="40rpx"/> --> <!-- <van-icon class="arrow" name="arrow" color="#c3c3c3" size="40rpx"/> -->
</view> </view>

View File

@ -1,66 +1,158 @@
// pages/my/info/info.js const app = getApp()
import {
repairRemindListRq,
repairRemindReadRq
} from "../../../api/repair/repair.js"
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
IMG_NAME: app.IMG_NAME,
// info
info: {
pageNum: 1,
pageSize: 10,
dataList: [],
isDataAll: false,
},
},
}, /**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/** // 获取数据
* 生命周期函数--监听页面加载 getDataList() {
*/ let _this = this;
onLoad(options) {
}, // 获取参数
let pageNum = null
let pageSize = null
let type = null
let isDataAll = null
/** let info = _this.data.info
* 生命周期函数--监听页面初次渲染完成 //
*/ pageNum = info.pageNum
onReady() { pageSize = info.pageSize
isDataAll = info.isDataAll
}, // 判断数据是否已全部加载
if (isDataAll) {
return;
}
// 传递参数
let param = {
pageNum,
pageSize,
}
// 查询数据
repairRemindListRq(param).then(res => {
console.log('repairRemindListRq', res);
let dataList = res.rows
let isDataAll = false
if (pageNum * pageSize >= res.total) {
isDataAll = true
}
//
info.dataList = info.dataList.concat(_this.formartData(dataList))
info.pageNum = info.pageNum + 1
info.isDataAll = isDataAll
_this.setData({
info
})
})
},
/** // 格式化数据
* 生命周期函数--监听页面显示 formartData(dataList) {
*/ // 格式化数据
onShow() { return dataList.map(item => {
return item;
})
},
}, jumpInfoDetail(e) {
console.log('detail', e);
let id = e.currentTarget.dataset.obj.id
let repairId = e.currentTarget.dataset.obj.repairId
repairRemindReadRq({
id
}).then(res => {
wx.navigateTo({
url: `/pages/reportRepair/assign/detail/detail?id=${repairId}`,
})
})
},
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面初次渲染完成
*/ */
onHide() { onReady() {
}, },
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面显示
*/ */
onUnload() { onShow() {
let _this = this;
_this.setData({
info: {
pageNum: 1,
pageSize: 10,
dataList: [],
isDataAll: false,
}
})
//
_this.getDataList()
},
}, /**
* 生命周期函数--监听页面隐藏
*/
onHide() {
/** },
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
}, /**
* 生命周期函数--监听页面卸载
*/
onUnload() {
/** },
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
}, /**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
/** },
* 用户点击右上角分享
*/
onShareAppMessage() {
} /**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
console.log('onReachBottom', '页面上拉触底事件的处理函数');
let _this = this;
// 获取数据
_this.getDataList()
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
}) })

View File

@ -1,3 +1,8 @@
{ {
"usingComponents": {} "navigationBarTitleText": "报修记录",
"usingComponents": {
"van-divider": "@vant/weapp/divider/index",
"van-icon": "@vant/weapp/icon/index"
},
"onReachBottomDistance": 100
} }

View File

@ -1,2 +1,18 @@
<!--pages/my/info/info.wxml--> <view class="containerView public">
<text>pages/my/info/info.wxml</text>
<view class="infoView">
<view class="itemView {{item.read != '1' ? 'activity' : ''}} " wx:for="{{info.dataList}}" wx:for-item="item" wx:key="*this" data-obj="{{item}}" bind:tap="jumpInfoDetail">
<view class="contentView ellipsisFont">
<view class="title">消息提醒</view>
<view class="msg ellipsisFont">{{item.content}}</view>
<view class="time">{{item.createTime}}</view>
</view>
<van-icon class="arrow" name="arrow" color="#c3c3c3" size="40rpx" />
</view>
</view>
<view class="loadAllLine" wx:if="{{info.isDataAll}}">
<van-divider class="van-divider" customStyle="font-size: 26rpx;" contentPosition="center">数据已全部加载</van-divider>
</view>
</view>

View File

@ -1 +1,64 @@
/* pages/my/info/info.wxss */ .containerView.public {
background: none;
height: auto;
}
.infoView {
/* border: 1px solid red; */
background: white;
margin: 10rpx 0;
}
.infoView .itemView {
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
padding: 30rpx 40rpx;
border-bottom: 2rpx solid rgb(126, 126, 126, 0.2);
}
.infoView .itemView.activity::after {
display: block;
content: '';
position: absolute;
right: 26rpx;
top: 30rpx;
width: 16rpx;
height: 16rpx;
border-radius: 20rpx;
background: red;
}
.infoView .itemView:last-of-type {
border-bottom: none;
}
.infoView .itemView .contentView {}
.infoView .itemView .arrow {
margin-left: 20rpx;
}
.infoView .itemView .contentView .title {
font-size: 30rpx;
color: black;
}
.infoView .itemView .contentView .msg {
font-size: 26rpx;
color: gray;
margin-top: 16rpx;
}
.infoView .itemView .contentView .time {
font-size: 24rpx;
color: gray;
margin-top: 4rpx
}
.loadAllLine {
margin-top: 80rpx;
}