1.添加瞬时流量相关2.优化界面3.修改原开阀和未关阀列表的sessionId为clientId
| | |
| | | // BASEURL = 'http://127.0.0.1:8087/' |
| | | BASEURL = 'http://192.168.40.166:8087/' |
| | | // BASEURL = 'http://192.168.10.52:8087/' |
| | | // BASEURL = 'http://8.130.130.233:54321/prod-api/' |
| | | // BASEURL = 'https://sp.dayuyanjiuyuan.top/' |
| | | break |
| | | default: |
| | | BASEURL = '' |
| | |
| | | globalData: { |
| | | sessionId:'', |
| | | clientId:'', |
| | | tag:'ym', |
| | | tag:'sp', |
| | | userInfo: null, |
| | | userId:"", |
| | | userCode:"", |
| | |
| | | "componentFramework": "glass-easel", |
| | | "sitemapLocation": "sitemap.json", |
| | | "permission": { |
| | | "scope": { |
| | | "userLocation": { |
| | | "desc": "为了更好的为您服务,将获取您的位置信息" |
| | | } |
| | | "scope.userLocation": { |
| | | "desc": "为了更好的为您服务,将获取您的位置信息" |
| | | } |
| | | } |
| | | |
| | | |
| | | }, |
| | | "requiredPrivateInfos": [ |
| | | "getLocation" |
| | | ] |
| | | } |
| | |
| | | z-index: 0; |
| | | margin-top: 10rpx; |
| | | margin-bottom: 20rpx; |
| | | overflow: hidden; /* 避免横向滚动 */ |
| | | width: 100%; /* 确保 scroll-view 的宽度占满父容器 */ |
| | | flex-direction: column; /* 确保内容按列排列 */ |
| | | } |
| | | |
| | | |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?><svg width="24" height="24" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M24 44C35.0457 44 44 35.0457 44 24C44 12.9543 35.0457 4 24 4C12.9543 4 4 12.9543 4 24C4 35.0457 12.9543 44 24 44Z" fill="none" stroke="#1890FF" stroke-width="4" stroke-linejoin="round"/><path d="M24.0084 12.0001L24.0072 24.0089L32.4866 32.4883" stroke="#1890FF" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/></svg> |
New file |
| | |
| | | <svg height="1006" width="1024" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns" viewBox="0 0 60 59"><desc>Created with Sketch.</desc><g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage"><g sketch:type="MSLayerGroup" transform="translate(1.000000, 1.000000)" stroke="#1890FF" stroke-width="2" stroke-linecap="round"><path fill="#ffffffff" d="M49,35 L55,35 L55,57 L49,57 L49,35 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M9,54 L49,54 L49,38 L9,38" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M55,54 L58,54 L58,38 L55,38 L55,54 Z" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M3,35 L9,35 L9,57 L3,57 L3,35 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M0,54 L3,54 L3,38 L0,38 L0,54 Z" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M14,32 L44,32 L44,38 L14,38 L14,32 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M17,29 L41,29 L41,32 L17,32 L17,29 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M24,21 L34,21 L34,29 L24,29 L24,21 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M27,12 L31,12 L31,21 L27,21 L27,12 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M32.586,2.414 L32.414,2.586 C31.509,3.491 30.281,4 29,4 C27.719,4 26.491,3.491 25.586,2.586 L25.414,2.414 C24.509,1.509 23.281,1 22,1 L16.746,1 C14.125,1 12,3.125 12,5.746 L12,10.254 C12,12.875 14.125,15 16.746,15 L24,15 L24,12 L34,12 L34,15 L41.254,15 C43.875,15 46,12.875 46,10.254 L46,5.746 C46,3.125 43.875,1 41.254,1 L36,1 C34.719,1 33.491,1.509 32.586,2.414 L32.586,2.414 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path><path fill="#ffffffff" d="M29,4 C29.699,4 30.376,3.836 31,3.551 L31,0 L27,0 L27,3.551 C27.624,3.836 28.301,4 29,4 L29,4 Z" stroke-linejoin="round" sketch:type="MSShapeGroup"></path></g></g></svg> |
| | |
| | | height: 160, |
| | | }, |
| | | originFiles: [], |
| | | |
| | | contentValue: '', //反馈详情 |
| | | accSavePath: [], //上传的音频文件接口返回的地址 |
| | | photoSavePath: [], //上传的照片文件返回的地址 |
| | |
| | | }, 1000) |
| | | |
| | | }, |
| | | |
| | | //开启定时器 |
| | | startRecordingCountdown() { |
| | | console.log("startRecordingCountdown"); |
| | | const that = this; |
| | | if (this.recordingInterval) { |
| | | // 如果定时器已经在运行,避免重复启动 |
| | | return; |
| | | } |
| | | this.recordingInterval = setInterval(() => { |
| | | const newVoiceTime = that.data.voiceTime + 1; |
| | | const newContDownTime = that.data.contDownTime - 1; |
| | |
| | | } |
| | | }, 1000); |
| | | }, |
| | | |
| | | onUnload() { |
| | | if (this.recordingInterval) { |
| | | clearInterval(this.recordingInterval); |
| | | this.recordingInterval = null; |
| | | } |
| | | }, |
| | | stopRecordingCountdown() { |
| | | console.log("stopRecordingCountdown"); |
| | | if (this.recordingInterval) { |
| | |
| | | this.setData({ |
| | | isRefreshing: false, |
| | | pageCurr: 1, |
| | | listData:[] |
| | | listData: [] |
| | | }); |
| | | } |
| | | const app = getApp(); |
| | |
| | | <button class="fb-submit" bind:tap="submit">提交</button> |
| | | </view> |
| | | |
| | | <scroll-view class="container-scroll" wx:if="{{currentTab === 1}}" scroll-y="true" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isRefreshing}}" bindscrolltolower="loadMore"> |
| | | <scroll-view class="container-scroll" enable-flex="true" wx:if="{{currentTab === 1}}" scroll-y="true" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isRefreshing}}" bindscrolltolower="loadMore"> |
| | | <block wx:for="{{listData}}" wx:key="index"> |
| | | <t-swipe-cell style="width: 100%;" class="swipe-cell-base"> |
| | | <view class="item"> |
| | |
| | | isLogin: true |
| | | }) |
| | | if (app.globalData.sessionId) { |
| | | this.getOpenList(); |
| | | this.getUserDataBySession(); |
| | | } |
| | | }).catch((err) => {}); |
| | | storage.getItem('clientId').then((data) => { |
| | | app.globalData.clientId = data; |
| | | this.getOpenList(); |
| | | }).catch((err) => {}); |
| | | } else { |
| | | //本地没有缓存微信登录 |
| | |
| | | if (this.data.options.param === "1") { |
| | | this.setData({ |
| | | showTipDialog: true, |
| | | tipData: "开阀命令下发成功,约20-60秒后可刷新快速关阀列表查看执行结果。" |
| | | tipData: "开阀命令下发成功,因开阀需要时间,约20-60秒后可刷新快速关阀列表查看执行结果。" |
| | | }) |
| | | setTimeout(() => { |
| | | this.getOpenList(); |
| | |
| | | } |
| | | }, |
| | | wxLogin() { |
| | | const that = this; |
| | | wx.login({ |
| | | success: function (res) { |
| | | if (res.code) { |
| | | var code = res.code; |
| | | console.log(code); |
| | | // 将code发送到服务器获取openid |
| | | that.codeLogin(code); |
| | | } else { |
| | | console.log('登录失败!' + res.errMsg); |
| | | // if (!this.data.isLogin) { |
| | | const that = this; |
| | | wx.login({ |
| | | success: function (res) { |
| | | if (res.code) { |
| | | var code = res.code; |
| | | console.log(code); |
| | | // 将code发送到服务器获取openid |
| | | that.codeLogin(code); |
| | | } else { |
| | | console.log('登录失败!' + res.errMsg); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | // } |
| | | |
| | | }, |
| | | //微信code登录 |
| | | codeLogin(codeData) { |
| | |
| | | showForceConfirm: false, |
| | | showConfirm: false, |
| | | showTipDialog: false, |
| | | showUnBind:false |
| | | showUnBind: false |
| | | }); |
| | | }, |
| | | /** |
| | |
| | | const params = { |
| | | url: 'wx/valve/get', |
| | | data: { |
| | | operator: app.globalData.sessionId |
| | | operator: app.globalData.clientId |
| | | } |
| | | }; |
| | | get(params).then(data => { |
| | |
| | | title: '正在强制删除请稍候...', // 加载提示文字 |
| | | mask: true // 是否显示透明蒙层,防止触摸穿透,默认为 false |
| | | }); |
| | | that.setData({ |
| | | lastIntakeName: intakeName |
| | | }) |
| | | const data = { |
| | | vcNum: item.vcNum, //取水口ID |
| | | rtuAddr: item.rtuAddr, //阀控器地址 |
| | |
| | | } else { |
| | | displayText = "关阀" |
| | | } |
| | | let deleteText = "删除" |
| | | let time; |
| | | if (!item.dt) { |
| | | time = "暂无" |
| | | } else { |
| | | time = this.extractTime(item.dt) |
| | | } |
| | | if (item.waterInstant===null) { |
| | | item.waterInstant = "暂无" |
| | | } |
| | | |
| | | return { |
| | | ...item, |
| | | displayText |
| | | displayText, |
| | | deleteText, |
| | | time |
| | | }; // 保留所有其他字段,并添加 displayText 字段 |
| | | }); |
| | | // 更新列表数据 |
| | |
| | | this.setData({ |
| | | showInfoDialog: false |
| | | }) |
| | | }, |
| | | //处理时间去掉年月日 |
| | | extractTime(datetimeString) { |
| | | const formattedDate = datetimeString.replace(" ", "T"); |
| | | const date = new Date(formattedDate); |
| | | // 获取小时、分钟和秒 |
| | | const hours = date.getHours().toString().padStart(2, '0'); |
| | | const minutes = date.getMinutes().toString().padStart(2, '0'); |
| | | const seconds = date.getSeconds().toString().padStart(2, '0'); |
| | | return `${hours}:${minutes}:${seconds}`; |
| | | } |
| | | }) |
| | |
| | | |
| | | <view class="scroll-bg"> |
| | | <view wx:if="{{listData.length > 0}}" class="list-item" wx:for="{{listData}}" wx:key="index"> |
| | | <t-swipe-cell style="width: 100%;" class="swipe-cell-base"> |
| | | <t-swipe-cell style="width: 100%;"> |
| | | <view class="swipe-cell"> |
| | | <view class="item-left"> |
| | | <!-- <image class="item-img" src="/images/pipeline.svg" /> --> |
| | | <text>{{item.intakeNum}}</text> |
| | | <image class="item-img" src="{{item.isOnLine ? '/images/wifi_no.svg' : '/images/wifi_off.svg'}}" /> |
| | | <view class="left-intake-name"> |
| | | <image class="item-img-left" src="/images/valve.svg" /> |
| | | <text class="water-intake-name">{{item.intakeNum}}</text> |
| | | <image class="item-img" src="{{item.isOnLine ? '/images/wifi_no.svg' : '/images/wifi_off.svg'}}" /> |
| | | </view> |
| | | <view class="left-time"> |
| | | <image class="item-img" src="/images/time.svg" /> |
| | | <text class="flow-time"> {{item.time}}</text> |
| | | <text class="flow-rate">的瞬时流量:{{item.waterInstant}} m³/h</text> |
| | | </view> |
| | | </view> |
| | | <view> |
| | | |
| | | <view class="item-right"> |
| | | <text class="item-button" bind:tap="handleChange" data-item="{{item}}">关阀</text> |
| | | </view> |
| | | </view> |
| | | <view slot="right" class="delete-btn" bind:tap="onDelete" data-item="{{item}}">{{item.displayText}}</view> |
| | | <view slot="right" class="delete-btn" bind:tap="onDelete" data-item="{{item}}">{{item.deleteText}}</view> |
| | | </t-swipe-cell> |
| | | </view> |
| | | </view> |
| | |
| | | margin-bottom: 10rpx; |
| | | /* 图标和文本之间的间距 */ |
| | | } |
| | | .center-view-question image{ |
| | | |
| | | .center-view-question image { |
| | | padding-top: 10rpx; |
| | | width: 75rpx; |
| | | /* 根据需要调整图标大小 */ |
| | |
| | | margin-bottom: 15rpx; |
| | | /* 图标和文本之间的间距 */ |
| | | } |
| | | |
| | | .center-view text, |
| | | .center-view-question text { |
| | | margin-top: 15rpx; |
| | |
| | | background-color: #fff; |
| | | margin-bottom: 2rpx; |
| | | display: flex; |
| | | |
| | | align-items: center; |
| | | padding-left: 30rpx; |
| | | padding-right: 30rpx; |
| | |
| | | } |
| | | |
| | | .bottom-title-text { |
| | | |
| | | margin-right: 10rpx; /* 给文本和图标之间添加一些间距 */ |
| | | font-size: 16px; /* 字体大小 */ |
| | | color: #333; /* 字体颜色 */ |
| | | margin-right: 10rpx; |
| | | /* 给文本和图标之间添加一些间距 */ |
| | | font-size: 35rpx; |
| | | /* 字体大小 */ |
| | | color: #333; |
| | | /* 字体颜色 */ |
| | | } |
| | | |
| | | .refresh-button { |
| | |
| | | .item-left { |
| | | display: flex; |
| | | align-items: center; |
| | | flex-direction: column; |
| | | /* 确保子元素纵向排列 */ |
| | | } |
| | | |
| | | .item-left text { |
| | | font-size: 40rpx; |
| | | min-width: 150rpx; |
| | | |
| | | } |
| | | |
| | | .item-img { |
| | |
| | | /* 根据需要调整图标大小 */ |
| | | height: 40rpx; |
| | | /* 根据需要调整图标大小 */ |
| | | margin-left: 20rpx; |
| | | |
| | | } |
| | | |
| | | .dialog { |
| | |
| | | |
| | | .item-button { |
| | | display: flex; |
| | | height: 80rpx; |
| | | padding: 0 60rpx; |
| | | height: 70rpx; |
| | | padding: 0 40rpx; |
| | | background-color: #1890FF; |
| | | color: white; |
| | | border: none; |
| | | border-radius: 20rpx; |
| | | font-size: 30rpx; |
| | | font-size: 30rpx !important; |
| | | align-items: center; |
| | | justify-content: center; |
| | | white-space: nowrap; /* 确保文字不换行 */ |
| | | } |
| | | |
| | | .item-right { |
| | | display: flex; |
| | | /* 垂直方向居中 */ |
| | | align-items: center; |
| | | } |
| | | |
| | | .item-button:active { |
| | |
| | | |
| | | .delete-btn { |
| | | display: flex; |
| | | align-items: center; |
| | | align-items: center; |
| | | justify-content: center; |
| | | width: 120rpx; |
| | | height: 100%; |
| | |
| | | background-color: #e34d59; |
| | | } |
| | | |
| | | .swipe-cell{ |
| | | .swipe-cell { |
| | | display: flex; |
| | | justify-content: space-between; /* 使子元素在主轴上均匀分布 */ |
| | | justify-content: space-between; |
| | | /* 使子元素在主轴上均匀分布 */ |
| | | background-color: #fff; |
| | | margin-bottom: 2rpx; |
| | | width: 100wh; |
| | | } |
| | | .info-img{ |
| | | |
| | | .info-img { |
| | | width: 50rpx; |
| | | height: 50rpx; |
| | | } |
| | | .title-center{ |
| | | |
| | | .title-center { |
| | | position: absolute; |
| | | /* 绝对定位 */ |
| | | left: 50%; |
| | | /* 移动到容器的中间 */ |
| | | transform: translateX(-50%); |
| | | display: flex; |
| | | justify-content: space-between; /* 使子元素在主轴上均匀分布 */ |
| | | align-items: center; /* 垂直居中对齐 */ |
| | | justify-content: space-between; |
| | | /* 使子元素在主轴上均匀分布 */ |
| | | align-items: center; |
| | | /* 垂直居中对齐 */ |
| | | } |
| | | |
| | | .content-container{ |
| | | .content-container { |
| | | white-space: pre-line; |
| | | word-wrap: break-word; /* 防止长单词无法换行 */ |
| | | word-wrap: break-word; |
| | | /* 防止长单词无法换行 */ |
| | | } |
| | | |
| | | .long-content { |
| | |
| | | margin-top: 16rpx; |
| | | font-size: 32rpx; |
| | | color: #888; |
| | | } |
| | | |
| | | .flow-rate { |
| | | font-size: 30rpx !important; |
| | | margin-left: 10rpx; |
| | | } |
| | | |
| | | .flow-time { |
| | | font-size: 30rpx !important; |
| | | align-items: center; |
| | | margin-left: 10rpx; |
| | | display: inline-flex; |
| | | min-width: 120rpx |
| | | } |
| | | |
| | | .water-intake-name { |
| | | font-size: 50rpx !important; |
| | | margin-left: 15rpx; |
| | | margin-right: 15rpx; |
| | | white-space: nowrap; /* 防止文本换行 */ |
| | | } |
| | | |
| | | .left-time { |
| | | width: 100%; |
| | | display: flex; |
| | | /* 垂直居中 */ |
| | | align-items: center; |
| | | margin-top: 15rpx; |
| | | |
| | | } |
| | | .left-intake-name{ |
| | | width: 100%; |
| | | display: flex; |
| | | /* 垂直居中 */ |
| | | align-items: center; |
| | | } |
| | | |
| | | .item-img-left { |
| | | width: 40rpx; |
| | | /* 根据需要调整图标大小 */ |
| | | height: 40rpx; |
| | | /* 根据需要调整图标大小 */ |
| | | |
| | | } |
| | |
| | | intakeId: this.data.intakeId, //取水口ID |
| | | vcId: this.data.vcId, //虚拟卡ID |
| | | intakeName: this.data.intakeName, //取水口名称 |
| | | operator: app.globalData.sessionId, //操作员 |
| | | operator: app.globalData.clientId, //操作员 |
| | | forceOpen: !!isforce // 使用逻辑非操作符 !! 来确保 isForce 是布尔值 |
| | | }; |
| | | post({ |
| | |
| | | intakeId: this.data.intakeId, //取水口ID |
| | | vcId: this.data.vcId, //虚拟卡ID |
| | | minutes: this.data.postMinutes, //分钟 |
| | | operator: app.globalData.sessionId //操作员 |
| | | operator: app.globalData.clientId //操作员 |
| | | }; |
| | | post({ |
| | | url: "wx/valve/timed_close", |
| | |
| | | intakeId: this.data.intakeId, //取水口ID |
| | | vcId: this.data.vcId, //虚拟卡ID |
| | | minutes: this.data.postMinutes, //分钟 |
| | | operator: app.globalData.sessionId, //操作员 |
| | | operator: app.globalData.clientId, //操作员 |
| | | plannedOpenTime: this.data.openTime |
| | | }; |
| | | post({ |
| | |
| | | intakeId: this.data.intakeId, //取水口ID |
| | | vcId: this.data.vcId, //虚拟卡ID |
| | | waterAmount: this.data.waterAmount, //水量 |
| | | operator: app.globalData.sessionId //操作员 |
| | | operator: app.globalData.clientId //操作员 |
| | | }; |
| | | post({ |
| | | url: "wx/valve/quantify_close", |
| | |
| | | intakeId: this.data.intakeId, //取水口ID |
| | | vcId: this.data.vcId, //虚拟卡ID |
| | | waterAmount: this.data.waterAmount, //水量 |
| | | operator: app.globalData.sessionId, //操作员 |
| | | operator: app.globalData.clientId, //操作员 |
| | | plannedOpenTime: this.data.openTime |
| | | }; |
| | | post({ |
| | |
| | | <!--pages/openCard/openCard.wxml 开阀时的虚拟卡--> |
| | | <view class="container"> |
| | | |
| | | <scroll-view class="list-container" scroll-y="true" scroll-x="false" refresher-enabled="true" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isWXRefreshing}}"> |
| | | <scroll-view class="list-container" scroll-y="true" scroll-x="false" enable-flex="true" refresher-enabled="true" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isWXRefreshing}}"> |
| | | <block wx:if="{{allCardPoints.length > 0}}" wx:for="{{allCardPoints}}" wx:key="index"> |
| | | <view class="{{item.inUse===false?'item':'item-gray'}}"> |
| | | <view class="item-card"> |
| | |
| | | } |
| | | |
| | | .dialog-title { |
| | | font-size: 18px; |
| | | margin-bottom: 20px; |
| | | font-size: 38rpx; |
| | | margin-bottom: 20rpx; |
| | | text-align: center; |
| | | } |
| | | |
| | | .dialog-title-text { |
| | | font-size: 18px; |
| | | margin-bottom: 20px; |
| | | font-size: 38rpx; |
| | | margin-bottom: 20rpx; |
| | | text-align: center; |
| | | } |
| | | |
| | |
| | | color: #1890FF; |
| | | } |
| | | |
| | | .choseitemactive text { |
| | | color: #fff; |
| | | } |
| | | |
| | | |
| | | |
| | | .choseitem { |
| | |
| | | <!-- </view> --> |
| | | |
| | | <!-- 虚拟卡 --> |
| | | <scroll-view class="list-container" wx:if="{{currentTab === 0}}" scroll-y="true" refresher-enabled="true" bindrefresherrefresh="onPullDownRefresh" scroll-x="false" refresher-triggered="{{isWXRefreshing}}"> |
| | | <scroll-view class="list-container" enable-flex="true" wx:if="{{currentTab === 0}}" scroll-y="true" refresher-enabled="true" bindrefresherrefresh="onPullDownRefresh" scroll-x="false" refresher-triggered="{{isWXRefreshing}}"> |
| | | <block wx:if="{{allCardPoints.length > 0}}" wx:for="{{allCardPoints}}" wx:key="index"> |
| | | <view class="{{item.inUse===false?'item':'item-gray'}}"> |
| | | <view class="item-card"> |
| | |
| | | |
| | | <view class="rechageList-view"> |
| | | <text class="rechageList-view-head">充值记录</text> |
| | | <scroll-view class="list-container" scroll-y="true" scroll-x="false" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isWXRefreshing}}" bindscrolltolower="loadMore"> |
| | | <scroll-view class="list-container" enable-flex="true" scroll-y="true" scroll-x="false" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isWXRefreshing}}" bindscrolltolower="loadMore"> |
| | | <block wx:if="{{allRechargeList.length > 0}}" wx:for="{{allRechargeList}}" wx:key="index"> |
| | | <view class="itemList"> |
| | | <text class="item-card-text">{{item.rechargeTime}}</text> |
| | |
| | | <view class="indicator" wx:if="{{currentTab === 1}}"></view> |
| | | </view> |
| | | </view> |
| | | <scroll-view class="list-container" wx:if="{{currentTab === 0}}" scroll-y="true" scroll-x="false" refresher-enabled="true" bindrefresherrefresh="onPullVirtualDownRefresh" scroll-x="false" refresher-triggered="{{isVirtualRefreshing}}" bindscrolltolower="loadVirtualMore"> |
| | | <scroll-view class="list-container" enable-flex="true" wx:if="{{currentTab === 0}}" scroll-y="true" scroll-x="false" refresher-enabled="true" bindrefresherrefresh="onPullVirtualDownRefresh" refresher-triggered="{{isVirtualRefreshing}}" bindscrolltolower="loadVirtualMore"> |
| | | <block wx:if="{{listVirtualData.length > 0}}" wx:for="{{listVirtualData}}" wx:key="index"> |
| | | <view class="list-item" > |
| | | <!-- <image class="item-img" src="/images/pipeline.svg" /> --> |
| | |
| | | <view wx:if="{{ !virtualhasMore && listVirtualData.length > 0}}" class="loading">没有更多数据</view> |
| | | </scroll-view> |
| | | |
| | | <scroll-view class="list-container" wx:else scroll-y="true" scroll-x="false" refresher-enabled="true" bindrefresherrefresh="onPullPhysicalDownRefresh" scroll-x="false" refresher-triggered="{{isPhysicalRefreshing}}" bindscrolltolower="loadPhysicalMore"> |
| | | <scroll-view class="list-container" wx:else enable-flex="true" scroll-y="true" scroll-x="false" refresher-enabled="true" bindrefresherrefresh="onPullPhysicalDownRefresh" scroll-x="false" refresher-triggered="{{isPhysicalRefreshing}}" bindscrolltolower="loadPhysicalMore"> |
| | | <block wx:if="{{listPhysicalData.length > 0}}" wx:for="{{listPhysicalData}}" wx:key="index"> |
| | | <view class="list-item" > |
| | | <!-- <image class="item-img" src="/images/pipeline.svg" /> --> |
| | |
| | | } |
| | | |
| | | .tab { |
| | | font-size: 16px; |
| | | font-size: 35rpx; |
| | | padding: 10px; |
| | | cursor: pointer; |
| | | position: relative; |
| | |
| | | get({ |
| | | url: 'wx/intake/used_intakes', |
| | | data: { |
| | | operatorId: getApp().globalData.sessionId |
| | | operatorId: getApp().globalData.clientId |
| | | } |
| | | }) |
| | | .then((data) => { |
| | |
| | | </view> |
| | | </block> |
| | | </view> |
| | | <scroll-view class="list-container" scroll-y="true" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh_common" refresher-triggered="{{isRefreshing_common}}"> |
| | | <scroll-view class="list-container" enable-flex="true" scroll-y="true" refresher-enabled="true" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh_common" refresher-triggered="{{isRefreshing_common}}"> |
| | | <block wx:for="{{commonWaterPoints}}" wx:key="index"> |
| | | <view class="item"> |
| | | <view class="item-left"> |
| | | <text>{{item.intakeNum}}</text> |
| | | <image class="item-img" src="{{item.isOnLine ? '/images/wifi_no.svg' : '/images/wifi_off.svg'}}" /> |
| | | <image class="item-img-left" src="/images/valve.svg" /> |
| | | <text class="water-intake-name">{{item.intakeNum}}</text> |
| | | <image class="item-img" src="{{item.isOnLine ? '/images/wifi_no.svg' : '/images/wifi_off.svg'}}" /> |
| | | </view> |
| | | <text class="item-button" bindtap="choseCard" data-item="{{item}}">开阀</text> |
| | | </view> |
| | |
| | | .result-item { |
| | | padding: 20rpx; |
| | | border-bottom: 1px solid #eaeaea; |
| | | } |
| | | } |
| | | .item-img-left { |
| | | width: 40rpx; |
| | | /* 根据需要调整图标大小 */ |
| | | height: 40rpx; |
| | | /* 根据需要调整图标大小 */ |
| | | |
| | | } |
| | | .water-intake-name { |
| | | font-size: 50rpx !important; |
| | | margin-left: 15rpx; |
| | | } |