From 29cfc35a8409362bed4ac5d0888fe626826248d6 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 26 Sep 2024 17:56:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 预约列表接口调试 预约时间选择加入更完善判定 --- miniprogram/api/meeting/meetingRoom.js | 3 +- .../meetingBooked/meetingBooked.js | 97 +++++++++++++++---- .../meetingBooked/meetingBooked.wxml | 4 +- .../meetingRecord/meetingRecord.js | 97 +++++++++---------- .../meetingRecord/meetingRecord.wxml | 8 +- 5 files changed, 133 insertions(+), 76 deletions(-) diff --git a/miniprogram/api/meeting/meetingRoom.js b/miniprogram/api/meeting/meetingRoom.js index 414eb50..6edddf9 100644 --- a/miniprogram/api/meeting/meetingRoom.js +++ b/miniprogram/api/meeting/meetingRoom.js @@ -81,7 +81,8 @@ export function saveMeetingRecordRq(data) { // 根据用户id查询预约记录 export function selectReservationListByUserIdRq(data) { return request({ - url: '/api/roomContent/selectReservationListByUserId?pageNum=' + data.pageNum + '&pageSize=' + data.pageSize, + // url: '/api/roomContent/selectReservationListByUserId?pageNum=' + data.pageNum + '&pageSize=' + data.pageSize, + url: '/app/mr/list?pageNum=' + data.pageNum + '&pageSize=' + data.pageSize, method: "post", data }); diff --git a/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.js b/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.js index f9ce390..b6a3288 100644 --- a/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.js +++ b/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.js @@ -30,8 +30,12 @@ Page({ meetingRoomId: null, minTime: null, maxTime: null, + minMinute: null, // 开始时间最小分钟 + maxMinute: null, // 开始时间最大分钟 endMinTime: null, // 结束时间最小小时(与开始时间联动) endMaxTime: null, // 结束时间最大小时(根据范围固定) + endMinMinute: null, // 结束时间最小分钟 + endMaxMinute: null, // 结束时间最小分钟 startTime: null, endTime: null, showTime: true, @@ -75,22 +79,58 @@ Page({ }, // 选择-开始时间 onInputStartTime(event) { + let timeRange = this.data.timeRange let valueArr = event.detail.getValues() let detail = valueArr[0] + ':' + valueArr[1] + let _minMintue = '' + let _maxMintue = '' + if (valueArr[0] == '08') { + // 8点和17点,从30分开始 + _minMintue = 30 + _maxMintue = 59 + } else if (valueArr[0] == '17') { + _minMintue = 0 + _maxMintue = 30 + } else { + _minMintue = 0 + _maxMintue = 59 + } this.setData({ + minMinute: _minMintue, + maxMinute: _maxMintue, startTime: detail, }) - console.log(detail) this.setEndMaxTime(detail) }, // 选择-结束时间 onInputEndTime(event) { let valueArr = event.detail.getValues() + let timeRange = this.data.timeRange let detail = valueArr[0] + ':' + valueArr[1] - console.log(detail) + let sTime = this.data.startTime + let sTimeArr = sTime.split(':') + let _endMinMinute = '' + let _endMaxMinute = '' + if (parseInt(valueArr[0]) == parseInt(sTimeArr[0])) { + // 小时相同,则分钟最小要大于开始时间的分钟 + _endMinMinute = parseInt(sTimeArr[1]) + _endMaxMinute = 59 + } else { + // 小时大于开始时间,则分钟数为0-59 + _endMinMinute = 0 + _endMaxMinute = 59 + } + if (timeRange == 1 && valueArr[0] == '12') { + // 上午12点,只允许选到0 + _endMinMinute = 0 + _endMaxMinute = 0 + detail = '12:00' + } this.setData({ endTime: detail, + endMinMinute: _endMinMinute, + endMaxMinute: _endMaxMinute }) }, @@ -165,28 +205,38 @@ Page({ let _minTime = '' let _maxTime = '' let _startTime = '' + let _minMintue = '' + let _maxMintue = '' if (_timeRange === 1) { - // 上午,从8:00 - 12:00 + // 上午,从8:30 - 12:00 _minTime = 8 _maxTime = 11 - _startTime = '9:00' + _startTime = '8:30' + _minMintue = 30 + _maxMintue = 59 } else if (_timeRange === 2) { - // 下午,从12:00 - 18:00 + // 下午,从12:00 - 17:30 _minTime = 12 _maxTime = 17 - _startTime = '14:00' + _startTime = '12:00' + _minMintue = 0 + _maxMintue = 59 } else if (_timeRange === 3) { - // 晚上,从18:00 - 24:00 - _minTime = 18 + // 晚上,从17:30 - 24:00 + _minTime = 17 _maxTime = 23 - _startTime = '18:00' + _startTime = '17:30' + _minMintue = 30 + _maxMintue = 59 } // let maxTime = new Date(_date) // maxTime.setFullYear(maxTime.getFullYear() + 3) this.setData({ startTime: _startTime, minTime: _minTime, - maxTime: _maxTime + maxTime: _maxTime, + minMinute: _minMintue, + maxMinute: _maxMintue // maxTime: maxTime.getTime() }) this.setEndMaxTime(this.data.startTime) @@ -207,25 +257,36 @@ Page({ // 获取结束时间的最大时间和最小时间 setEndMaxTime(time) { let timeArr = time.split(':') + let sTimeHour = timeArr[0] + let sTimeMin = timeArr[1] // let endMaxTime = new Date(new Date(time).toLocaleDateString()).getTime() + 24 * 60 * 60 * 1000 - 1; - let _endMinTime = timeArr[0] + let _endMinTime = time let _endMaxTime = '' + let _endMinMinute = sTimeMin // 分钟一定要大于开始时间的分钟(同小时) + let _endMaxMinute = 59 // 最大分钟,仅有下午17点特殊,最多为30 let _timeRange = this.data.timeRange _timeRange = parseInt(_timeRange) if (_timeRange === 1) { - // 上午,从8:00 - 12:00 - _endMaxTime = 11 + // 上午,从8:30 - 12:00 + _endMaxTime = 12 } else if (_timeRange === 2) { - // 下午,从12:00 - 18:00 + // 下午,从12:00 - 17:30 _endMaxTime = 17 + // 分钟,0-30 + if (sTimeHour == '17') { + // 17点,结束分钟从0-29 + _endMaxMinute = 30 + } } else if (_timeRange === 3) { - // 晚上,从18:00 - 24:00 + // 晚上,从17:30 - 24:00 _endMaxTime = 23 } this.setData({ - endTime: _endMinTime + ':' + '00', - endMinTime: _endMinTime, - endMaxTime: _endMaxTime + endTime: _endMinTime, + endMinTime: sTimeHour, + endMaxTime: _endMaxTime, + endMinMinute: _endMinMinute, + endMaxMinute: _endMaxMinute }) }, diff --git a/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.wxml b/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.wxml index 90bfed4..85e8e63 100644 --- a/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.wxml +++ b/miniprogram/pages/meeting/meetingRoom/meetingBooked/meetingBooked.wxml @@ -21,7 +21,7 @@ - + 请选择结束时间 @@ -29,7 +29,7 @@ - + 确认时间 diff --git a/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.js b/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.js index 3fc19c3..38f4a5b 100644 --- a/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.js +++ b/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.js @@ -226,19 +226,20 @@ Page({ } = param // 查询数据 selectReservationListByUserIdRq({ + role: 1, // 按不同角色去查询预约记录。1.普通用户, 3.会议服务人员 ,5.会议管理员 pageNum, pageSize, - userId, - parkId: 25, - title: _this.data.search.title.value, - statusValue: _this.data.search.status.value + // userId, + // parkId: 25, + name: _this.data.search.title.value, // 会议室名称 + status: _this.data.search.status.value // 预约状态 }).then(res => { console.log('selectReservationListByUserIdRq', res); // 判断数据是否全部查询 - let queryDataList = res.page.records; - if (queryDataList && queryDataList.length > 0) { + let queryDataList = res.rows; + if (_this.data.reservationDataList.length < res.total) { // 更新参数 - let reservationDataList = _this.data.reservationDataList.concat(_this.formartData(queryDataList)); + let reservationDataList = _this.data.reservationDataList.concat(_this.formartData(queryDataList)) let reservationPageNum = _this.data.reservationPageNum + 1; _this.setData({ reservationPageNum, @@ -289,69 +290,63 @@ Page({ formartData(queryDataList) { // 格式化数据 return queryDataList.map(item => { - item.timeSlot = selfFormatTimeYMD(item.startTime) + ' ' + selfFormatTimeHM(item.startTime) + '~' + selfFormatTimeHM(item.endDate); + item.timeSlot = selfFormatTimeYMD(item.start) + ' ' + selfFormatTimeHM(item.start) + '~' + selfFormatTimeHM(item.end); // 状态字体颜色 let statusColor = "#FFB119"; // 按钮是否显示 - let statusValue = item.statusValue; - let showPay = false; - let showInvite = false; - let showCancel = false; - let showDetail = false; - // 待支付 0 :去支付、取消订单、查看详情 - if (statusValue == 0) { - showPay = true; - showCancel = true; - showDetail = true; + let statusValue = item.status; + let showCancel = false // 显示取消操作 + let showEdit = false // 显示编辑操作 + let statusName = '' + // 预约状态,1 取消 3 驳回 4 占用 5 待审核 7 审核通过,待开始 9 进行中 11已结束 + if (statusValue == 1 ) { + // 取消 // 状态字体颜色 - statusColor = "#FFB119"; + statusColor = "#333333" + statusName = '已取消' } - // 待使用 1:去邀请、取消订单、查看详情 - if (statusValue == 1) { - showInvite = true; - showCancel = true; - showDetail = true; - // 状态字体颜色 - statusColor = "#3794FF"; - // 待使用 修改为 预约成功 - item.statusName = '预约成功' - } - // 进行中 2:去邀请、查看详情 - if (statusValue == 2) { - showInvite = true; - showDetail = true; - // 状态字体颜色 - statusColor = "#FF4040"; - } - // 已结束 3:查看详情 if (statusValue == 3) { - showDetail = true; - // 状态字体颜色 - statusColor = "#333333"; + // 驳回,可以修改 + showEdit = true + statusName = '已驳回' } - // 已取消 4:查看详情 if (statusValue == 4) { - showDetail = true; - // 状态字体颜色 - statusColor = "#7F7F7F"; + // 占用,可以修改,取消 + showEdit = true + showCancel = true + statusName = '已占用' + } + if (statusValue == 5) { + // 待审核 + showEdit = true + showCancel = true + statusName = '待审核' + } + if (statusValue == 7) { + // 审核通过,可以取消,不允许修改 + showCancel = true + statusName = '已通过' + } + if (statusValue == 11) { + // 已结束 + statusColor = "#333333" + statusName = '已结束' } - // // 赋值 - item.showPay = showPay; - item.showInvite = showInvite; item.showCancel = showCancel; - item.showDetail = showDetail; + item.showEdit = showEdit; + item.statusName = statusName // 状态字体颜色 item.statusColor = statusColor; // 图片 - if (item.roomContent.indoorPicUrl) { + if (item.imgs) { try { - item.roomContent.indoorPicUrlFirst = JSON.parse(item.roomContent.indoorPicUrl)[0].url + item.indoorPicUrlFirst = item.imgs[0].url } catch (error) { console.log(`JSON error : ${error}`); } } - return item; + return item }) }, diff --git a/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.wxml b/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.wxml index f785e47..500f29b 100644 --- a/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.wxml +++ b/miniprogram/pages/meeting/reservationRecord/meetingRecord/meetingRecord.wxml @@ -69,10 +69,10 @@ {{item.statusName}} - + - {{item.roomContent.buildingName}} | {{item.roomContent.roomName}} | {{item.roomContent.capacityNum}} | {{item.roomContent.shape}} - 预约人: {{item.createBy}} + {{item.floor}} | {{item.roomNum}} | {{item.capacityNum}} | {{item.typeName}} + 预约人: {{item.bookingUserName}} {{item.timeSlot}} @@ -84,7 +84,7 @@ --> 取消预约 - 修改信息 + 修改信息