index.wxml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. <wxs src="../../utils/filter.wxs" module="filter" />
  2. <!--index.wxml-->
  3. <view class="container">
  4. <van-sticky>
  5. <!-- <van-button type="primary">基础用法</van-button> -->
  6. <navbar titleText='环境调节' projectName='{{tenantName}}' homeIcon="{{tenants.length>1?true:false}}" bind:home="goProject"></navbar>
  7. </van-sticky>
  8. <!-- 轮播图部分 -->
  9. <view class="header_container">
  10. <view class="header_box">
  11. <!-- indicator-dots="true" -->
  12. <swiper duration="1000" circular="true" bindchange="swiperChange" current="{{swiperCurrent}}">
  13. <block wx:for="{{swiperDate}}" wx:key="index">
  14. <swiper-item bindtap="changePop" data-index="{{index}}">
  15. <image src="{{item.initPic}}" wx:if="{{!item.imgShow||!item.pic}}"></image>
  16. <!-- -->
  17. <image wx:key="index" src="{{imgbaseUrl+item.pic}}&width=2154&height=1464" wx-if="{{!item.isInit&&item.pic}}" class='{{item.imgShow ? "" : "before-load"}}' bindload="imageLoad" data-index="{{index}}"></image>
  18. <!-- <image src="{{item.pic}}" wx-if="{{item.isInit}}" mode="scaleToFill"></image> -->
  19. <view class="img_footer">
  20. <!-- 环境参数信息 -->
  21. <view>
  22. <image src="../../static/images/Temp.png" mode="aspectFill"></image>
  23. 温度: <view class="envitem">{{filter.mathFormat(item.temperature) || '--'}} <text>°C</text></view>
  24. </view>
  25. <view>
  26. <image src="../../static/images/CO2.png"></image>
  27. CO2: <view class="envitem">{{filter.mathFormat(item.co2) || '--'}} <text>ppm</text> </view>
  28. </view>
  29. <view>
  30. <image src="../../static/images/RH.png"></image>
  31. 湿度: <view class="envitem">{{filter.mathFormat(item.humidity) || '--'}} <text>%</text></view>
  32. </view>
  33. <view>
  34. <image src="../../static/images/PM2.5.png"></image>PM2.5: <view class="envitem">{{filter.mathFormat(item.pm25) || '--'}} <text>μg/m³</text></view>
  35. </view>
  36. </view>
  37. <view class="fixed_box" wx:if="{{!item.isInit}}">
  38. <!-- 房间及定位 -->
  39. <view class="roombg"><text>{{item.localName}}</text></view>
  40. <!-- bindtap="changePop" data-index="{{index}}" -->
  41. <view class="envshow">
  42. <view>
  43. <view class="lottie" wx:if="{{!popShow}}"><lottie id="lottie" animationData="{{statusList[item.stateId].canvasDate}}" width="25" height="25"/></view>
  44. <!-- <image src="{{statusList[item.stateId].imgSrc}}"></image> -->
  45. <text>{{item.state}}</text>
  46. </view>
  47. <view class="fixed_dec">调节
  48. <van-icon name="arrow" color="#c3c6cb" />
  49. </view>
  50. </view>
  51. </view>
  52. </swiper-item>
  53. </block>
  54. </swiper>
  55. </view>
  56. </view>
  57. <!-- 轮播图小点 -->
  58. <swiper-dots swiperCurrent="{{swiperCurrent}}" swiperNum="{{swiperDate.length}}"></swiper-dots>
  59. <!-- 按钮部分 -->
  60. <view class="btn_list">
  61. <view id="{{item.id}}" catchtap="itemClick" class="btn_item" wx:for='{{meauList}}' wx:key="index">
  62. <view class="item_img">
  63. <!-- <van-icon name="qr" size="1em" /> -->
  64. <image src="{{item.imgSrc}}" mode="aspectFill"></image>
  65. </view>
  66. <view>
  67. <text class="item_title">{{item.title}}</text>
  68. <text class="item_des">{{item.des}}</text>
  69. </view>
  70. <view class="item_">
  71. <van-icon name="arrow" color="#C3C6CB" />
  72. </view>
  73. </view>
  74. </view>
  75. <!-- 弹窗部分 custom-style="height:1200rpx"-->
  76. <van-popup show="{{ popShow }}" round closeable="{{(popswiperDate.isClose||!feedBack)?flase:true}}" position="bottom" bind:close="popClose">
  77. <view class="spacedetail" catchtouchmove="preventTouchMove" >
  78. <!-- 房间名称 -->
  79. <view class="space_title">{{popswiperDate.localName}}</view>
  80. <!-- 数据列表 -->
  81. <swiper current="{{popswiperCurrent}}" bindchange="popswiperChange" circular="true">
  82. <swiper-item>
  83. <view class="item_list">
  84. <block wx:for="{{envList}}" wx:key="index">
  85. <view class="list_item">
  86. <view>{{filter.mathFormat(item.value) + item.unit|| '--'}}</view>
  87. <view>{{item.name}}</view>
  88. </view>
  89. </block>
  90. </view>
  91. </swiper-item>
  92. <swiper-item wx:if="{{feedBack&&!popswiperDate.isClose}}">
  93. <!-- catchtouchmove='preventTouchMove' bindtouchstart="touchHandler" wx:if="{{chartShow}}"-->
  94. <!-- {{!feedBack?'123':'456'}} -->
  95. <view class="canvas {{(!popShow||!chartShow)?'canvashidden':''}}}}" wx:key="{{feedBack}}" >
  96. <canvas canvas-id="areaCanvas" ></canvas>
  97. </view>
  98. <view wx:if="{{!chartShow}}" class="canvascenter">
  99. <view>小主辛苦了</view>
  100. <view>还未开始显示哦</view>
  101. </view>
  102. </swiper-item>
  103. </swiper>
  104. <!-- 轮播图小点 -->
  105. <swiper-dots swiperCurrent="{{popswiperCurrent}}" swiperNum="{{(feedBack&&!popswiperDate.isClose)?2:1}}"></swiper-dots>
  106. <view class="envstate" wx:if="{{feedBack&&!popswiperDate.isClose}}">
  107. <view class="lottie" wx:if="{{popShow}}">
  108. <lottie id="lottie" animationData="{{statusList[popswiperDate.stateId].canvasDate}}" width="25" height="25" wx:key="{{statusList[popswiperDate.stateId]}}"/>
  109. </view>
  110. <!-- <image src="{{statusList[popswiperDate.stateId].imgSrc}}"></image> -->
  111. {{popswiperDate.state}}
  112. </view>
  113. <van-divider wx:if="{{feedBack&&!popswiperDate.isClose}}" />
  114. <!-- 反馈列表 -->
  115. <view class="feedback_list" wx:if="{{feedBack&&!popswiperDate.isClose}}">
  116. <view class="feedback_title">您当前的感觉是</view>
  117. <view class="type_title">温度</view>
  118. <view class="typelist">
  119. <block wx:for="{{tempType}}" wx:key="index">
  120. <view bindtap="changeType" class="{{tempTypeValue===item.id?'typelistactive':''}}" data-index="{{item.id}}" data-type="temp">
  121. <image src="{{item.imgSrc}}"></image>{{item.value}}
  122. </view>
  123. </block>
  124. </view>
  125. <view class="type_title">环境</view>
  126. <view class="typelist typelistlast">
  127. <block wx:for="{{envType}}" wx:key="index">
  128. <view bindtap="changeType" class="{{envTypeValue===item.id?'typelistactive':''}}" data-index="{{item.id}}" data-type="env">
  129. <image src="{{item.imgSrc}}"></image>{{item.value}}
  130. </view>
  131. </block>
  132. </view>
  133. <view class='submitbtn {{(tempTypeValue!=-1||envTypeValue!=-1) ? "submitbtnactive" : ""}}' bindtap="submitFeedback">确定</view>
  134. </view>
  135. <!-- 反馈后页面显示 -->
  136. <view wx:if="{{!feedBack&&!popswiperDate.isClose}}">
  137. <!-- 文字 -->
  138. <view class="feedtext">
  139. <view class="feedimgbox">
  140. <!-- {{spaceStatusId}} -->
  141. <view class="lottie"><lottie id="lottie2" animationData="{{spacestatusList[spaceStatusId].canvasDate}}" width="25" height="25"/></view>
  142. <!-- <image src="{{spacestatusList[spaceStatusId].imgSrc}}"></image> -->
  143. <text class="feedtext_title">{{spaceStatus}}</text>
  144. </view>
  145. <block wx:for="{{notice}}" wx:key="{{index}}">
  146. <text class="feedtext_desc">{{item}}</text>
  147. </block>
  148. <!-- 滚动列表 -->
  149. <view class="noticbox">
  150. <!-- <view class="noticcontent" >
  151. <block wx:for="{{equipmentStatustext}}">
  152. <view class="noticbox_text">{{item.name}}</view>
  153. <view class="noticbox_text">{{item.actions}}</view>
  154. </block>
  155. <view></view>
  156. </view> -->
  157. <swiper vertical autoplay duration="300" circular interval="1500">
  158. <block wx:for="{{equipmentStatustext}}" >
  159. <swiper-item>
  160. <view class="noticbox_text">{{item.name}}</view>
  161. <!-- <view class="noticbox_text">{{item.actions}}</view> -->
  162. </swiper-item>
  163. <swiper-item>
  164. <!-- <view class="noticbox_text">{{item.name}}</view> -->
  165. <view class="noticbox_text">{{item.actions}}</view>
  166. </swiper-item>
  167. </block>
  168. </swiper>
  169. <!-- <van-notice-bar color="#80838F" backgroundColor="#ffffff" text="{{ equipmentStatustext }}" speed="{{speedValue}}" ></van-notice-bar> -->
  170. <!-- {{equipmentStatus}} -->
  171. </view>
  172. <view class="radiobox">
  173. <van-radio-group value="{{addFollow}}" bind:change="addonChange" wx:if="{{!popswiperDate.subscribe}}">
  174. <van-radio name="1" shape="square">是否加入关注列表</van-radio>
  175. </van-radio-group>
  176. <view wx:if="{{popswiperDate.subscribe}}">已加入关注列表</view>
  177. </view>
  178. </view>
  179. <!-- <view>是否加入关注列表</view> -->
  180. <view class='submitbtn opencontent_openbtn ' bindtap="colseFeedback">关闭</view>
  181. </view>
  182. <view class="opencontent" wx:if="{{popswiperDate.isClose}}">
  183. <view class="envstate">
  184. <view class="lottie"><lottie id="lottie" animationData="{{statusList[popswiperDate.stateId].canvasDate}}" width="25" height="25"/></view>
  185. <!-- <image src="{{statusList[popswiperDate.stateId].imgSrc}}"></image> -->
  186. {{popswiperDate.state}}
  187. </view>
  188. <!-- {{filter.formatTimeall(popswiperDate.nextOpenTime)}} -->
  189. <view class="opencontent_text">预计在{{monthDay}} 重新开启环境调节</view>
  190. <view class='submitbtn opencontent_openbtn' bindtap="openEnv">立即开启环境调节</view>
  191. </view>
  192. </view>
  193. </van-popup>
  194. <!-- 弹出提示框 -->
  195. <van-toast id="van-toast" />
  196. <!-- 关机二次确认弹窗 secondpopValue-->
  197. <van-popup show="{{ secondpopValue }}" round bind:close="commitClose" position="bottom" custom-style="height:380rpx;border-top:1px solid #ededee">
  198. <view class="spacedetail seconddetail">
  199. <view class="secondtxt secondtxt_title">
  200. <view class="lottie">
  201. <lottie id="lottie" animationData="{{spacestatusList[secondIcon-1].canvasDate}}" width="25" height="25" />
  202. </view>
  203. {{secondSpaceStatus}}
  204. </view>
  205. <view class="secondtxt">{{secondNotice}}</view>
  206. <view class="custom_button" bindtap="commitClose">关闭</view>
  207. </view>
  208. </van-popup>
  209. </view>