const app = getApp() import Notify from '@vant/weapp/notify/notify'; import { selfFormatTimeYMD, selfFormatTimeHM } from "../../../utils/util.js" import { getEquipmentByUserIdRq, openDoorRq, getOpenDoorRecordRq } from "../../../api/meeting/equipment.js" Page({ /** * 页面的初始数据 */ data: { IMG_NAME: app.IMG_NAME, activeNames: [0], userDetail: {}, equipmentDataList: [], openRecordList: [], }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { let _this = this; let userDetail = wx.getStorageSync('user') _this.setData({ userDetail, ...options, }) // 页面初始化 options为页面跳转所带来的参数 wx.setNavigationBarTitle({ title: '远程门禁' }) // 获取设备数据 _this.getEquipmentData(); // 获取-开门记录数据 _this.getOpenRecordData() }, // 获取设备数据 getEquipmentData() { let _this = this; getEquipmentByUserIdRq(_this.data.userDetail.id).then(res => { console.log('getEquipmentData', res); let equipmentDataList = res.data equipmentDataList = equipmentDataList.map(item => { let statusClass = "offline"; // equipmentStatus if (item.equipmentStatus == '在线') { statusClass = "online"; } else if (item.equipmentStatus == '离线') { statusClass = "offline"; } item.statusClass = statusClass; return item }) _this.setData({ equipmentDataList }) }) }, // 获取-开门记录数据 getOpenRecordData() { let _this = this; getOpenDoorRecordRq({ userId: _this.data.userDetail.id, pageNum: 1, pageSize: 5 }).then(res => { console.log('getOpenRecordData', res); let openRecordList = res.data.records openRecordList = openRecordList.map(item => { item.createTimeYMD = selfFormatTimeYMD(item.createTime) item.createTimeHM = selfFormatTimeHM(item.createTime) return item; }) _this.setData({ openRecordList }) }) }, // 开门 openDoor(e) { console.log('openDoor', e); let _this = this; let userId = _this.data.userDetail.id; let deviceId = e.currentTarget.dataset.deviceid let roomId = e.currentTarget.dataset.roomid let status = e.currentTarget.dataset.status let id = e.currentTarget.dataset.id // 点击切换动画 _this.clickSwitchAnimation(id) // if (status != '在线') { Notify({ type: 'danger', message: '设备不在线!' }); return; } openDoorRq({ roomId, deviceId, userId }).then(res => { console.log('openDoor', res); if (res.code == 0) { Notify({ type: 'success', message: res.msg }); // 获取-开门记录数据 _this.getOpenRecordData() } else { Notify({ type: 'danger', message: res.msg }); } }) }, // 点击切换动画 clickSwitchAnimation(id) { let _this = this; // 切换样式 let equipmentDataList = _this.data.equipmentDataList.map(item => { if (item.id == id) { item.activity = true; } return item; }) _this.setData({ equipmentDataList }) setTimeout(() => { equipmentDataList = _this.data.equipmentDataList.map(item => { if (item.id == id) { item.activity = false; } return item; }) _this.setData({ equipmentDataList }) }, 200); }, // 跳转-开门记录 jumpOpenDoorRecord() { wx.navigateTo({ url: "/pages/meeting/accessControl/accessControlRecord/accessControlRecord" }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })