home.wxml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. <view class="home-wrapper"
  2. style="padding-top: {{navBarConfig.booFixed ? navBarHeight : 0}}px">
  3. <!-- 顶部栏 -->
  4. <navigation-bar
  5. navBarConfig="{{navBarConfig}}"
  6. bind:navBarEvent="navBarEvent"/>
  7. <view class="introduce">
  8. <view class="list"
  9. wx:for="{{introduceList}}"
  10. wx:key="index">
  11. <image src="{{tools.imgFilter(item.icon)}}"></image>
  12. <text>{{item.name}}</text>
  13. </view>
  14. </view>
  15. <view class="main">
  16. <view class="address start">
  17. <text class="icon">起</text>
  18. <view class="text-wrap {{ form.start_point.address_name ? 'has' : 'empty' }}"
  19. data-formkey="start_point"
  20. data-lat="{{form.start_point.latitude}}"
  21. data-lon="{{form.start_point.longitude}}"
  22. bind:tap="handleChooseLocation">
  23. <text wx:if="{{!(form.start_point.address_name)}}">从哪里出发</text>
  24. <block wx:else>
  25. <text>{{form.start_point.name}}</text>
  26. <text>{{form.start_point.address_name}}</text>
  27. </block>
  28. </view>
  29. </view>
  30. <block wx:if="{{form.order_pass_location.length}}">
  31. <view class="address underway"
  32. wx:for="{{form.order_pass_location}}"
  33. wx:key="index">
  34. <text class="icon">经</text>
  35. <view class="text-wrap {{ item.address_name ? 'has' : 'empty' }}"
  36. data-formkey="{{'order_pass_location-' + index}}"
  37. data-lat="{{item.latitude}}"
  38. data-lon="{{item.longitude}}"
  39. bind:tap="handleChooseLocation">
  40. <text wx:if="{{!(item.address_name)}}">输入途经点地址{{index + 1}}</text>
  41. <block wx:else>
  42. <text>{{item.name}}</text>
  43. <text>{{item.address_name}}</text>
  44. </block>
  45. <view class="del-wrap"
  46. catch:tap="delWay"
  47. data-index="{{index}}">
  48. <image class="del {{ item.address_name ? 'has' : 'empty' }}"
  49. src="{{tools.imgFilter('/home/Home_address_icon_delete@2x.png')}}"></image>
  50. </view>
  51. </view>
  52. </view>
  53. </block>
  54. <view class="address end">
  55. <text class="icon">终</text>
  56. <view class="text-wrap {{ form.end_point.address_name ? 'has' : 'empty' }}"
  57. data-formkey="end_point"
  58. data-lat="{{form.end_point.latitude}}"
  59. data-lon="{{form.end_point.longitude}}"
  60. bind:tap="handleChooseLocation">
  61. <text wx:if="{{!(form.end_point.address_name)}}">要到哪里去?</text>
  62. <block wx:else>
  63. <text>{{form.end_point.name}}</text>
  64. <text>{{form.end_point.address_name}}</text>
  65. </block>
  66. </view>
  67. </view>
  68. <view class="btn-wrap">
  69. <view class="number"
  70. bind:tap="showTravelerPopup">
  71. <text>{{form.order_user_num ? '乘客 ' + form.order_user_num + ' 人' : '输入乘车人数'}}</text>
  72. <image src="{{tools.imgFilter('/common/Home_people_icon_arrow@2x.png')}}"></image>
  73. </view>
  74. <view class="add" bind:tap="addWay">
  75. <image src="{{tools.imgFilter('/home/Home_via_icon_add@2x.png')}}"></image>
  76. <text>添加途经地</text>
  77. </view>
  78. </view>
  79. </view>
  80. <view class="main">
  81. <view class="time">
  82. <view class="label">
  83. <image class="icon"
  84. src="{{tools.imgFilter('/home/Home_time_icon_start@2x.png')}}"></image>
  85. <text>出发时间</text>
  86. </view>
  87. <view class="text-wrap {{ form.order_start_time ? 'has' : 'empty' }}" bind:tap="showGoTimePicker">
  88. <text wx:if="{{!(form.order_start_time)}}">请选择出发时间</text>
  89. <block wx:else>
  90. <text>{{tools.formatTs(form.order_start_time, 'YYYY.MM.DD hh:mm week')}}</text>
  91. </block>
  92. <image class="arrow"
  93. src="{{tools.imgFilter('/common/Home_time_icon_arrow@2x.png')}}"></image>
  94. </view>
  95. </view>
  96. <view class="time">
  97. <view class="label">
  98. <image class="icon"
  99. src="{{tools.imgFilter('/home/Home_time_icon_back@2x.png')}}"></image>
  100. <text>返程时间</text>
  101. </view>
  102. <view class="text-wrap {{ form.order_end_time ? 'has' : 'empty' }}" bind:tap="showBackTimePicker">
  103. <text wx:if="{{!(form.order_end_time)}}">请选择返程时间</text>
  104. <block wx:else>
  105. <text wx:if="{{form.order_end_time === '无返程'}}">无返程</text>
  106. <text wx:else>{{tools.formatTs(form.order_end_time, 'YYYY.MM.DD hh:mm week')}}</text>
  107. </block>
  108. <image class="arrow"
  109. src="{{tools.imgFilter('/common/Home_time_icon_arrow@2x.png')}}"></image>
  110. </view>
  111. </view>
  112. <button class="next"
  113. type="primary"
  114. disabled="{{booLock}}"
  115. bind:tap="onsubmit">下一步
  116. </button>
  117. </view>
  118. <view class="footer {{objOrderCount.count >= 1 ? 'padding-bottom-134' : 'padding-bottom-26'}}">
  119. <swiper class="home-swiper"
  120. indicator-color="rgba(255,255,255,1)"
  121. indicator-active-color="#FFFFFF9B"
  122. indicator-dots="{{false}}"
  123. autoplay="{{false}}"
  124. interval="{{2000}}"
  125. duration="{{500}}">
  126. <block wx:for="{{['demo-text-1', 'demo-text-2', 'demo-text-3']}}"
  127. wx:key="*this">
  128. <swiper-item>
  129. <view class="swiper-item" bind:tap="jumpCompany">
  130. <image src="{{tools.imgFilter('/home/banner.png?v=202207132134')}}"></image>
  131. </view>
  132. </swiper-item>
  133. </block>
  134. </swiper>
  135. <view class="tools">
  136. <view class="title">
  137. <image src="{{tools.imgFilter('/home/Home_Zone_icon_zone@2x.png')}}"></image>
  138. <text>功能专区</text>
  139. </view>
  140. <image class="customer-services"
  141. src="{{tools.imgFilter('/home/Home_Zone_banner_service@2x.png')}}"
  142. bind:tap="jumpHelp"></image>
  143. <view class="wrap">
  144. <view bind:tap="jumpInvoice">
  145. <image class="icon" src="{{tools.imgFilter('/home/Home_Zone_icon_invoice@2x.png')}}"></image>
  146. <text>开具发票</text>
  147. </view>
  148. <view bind:tap="jumpFeedback">
  149. <image class="icon" src="{{tools.imgFilter('/home/Home_Zone_icon_opinion@2x.png')}}"></image>
  150. <text>意见反馈</text>
  151. </view>
  152. </view>
  153. </view>
  154. </view>
  155. </view>
  156. <!-- 有未结束的订单时,首页底部有浮层提示,订单包括:待支付、待接单、待安排车辆、待出发、行驶中、已完成-->
  157. <!-- 当只有1个订单时,点击浮层直接进入该订单详情;当有2个(含)以上时,点击浮层进入“我的订单”列表页-->
  158. <view
  159. class="jump-order"
  160. wx:if="{{objOrderCount.count >= 1}}"
  161. bind:tap="jumpOrder">
  162. <!-- 悬浮按钮 -->
  163. <image class="icon-0"
  164. src="{{tools.imgFilter('/home/Home_remind_icon_indent@2x.png')}}"></image>
  165. <text>您有{{objOrderCount.count}}笔订单进行中</text>
  166. <image class="icon-1"
  167. src="{{tools.imgFilter('/common/Home_remind_icon_arrow@2x.png')}}"></image>
  168. </view>
  169. <!-- 弹窗:乘车人数 -->
  170. <van-popup
  171. custom-class="customer-van-popup customer-van-popup_traveler"
  172. show="{{travelerPopup}}"
  173. close-on-click-overlay="{{false}}"
  174. round
  175. position="bottom"
  176. bind:close="onClose">
  177. <view style="left:0;top:0;"
  178. class="close-icon"
  179. bind:tap="onClose">
  180. <image class="image" src="{{tools.imgFilter('/common/Popup_bus_icon_close@2x.png')}}"></image>
  181. </view>
  182. <view class="title">乘车人数</view>
  183. <form bindsubmit="bindSubmit">
  184. <view class="form-item">
  185. <input value="{{form.order_user_num}}"
  186. name="number"
  187. type="number"
  188. focus="{{isAutoFocus}}"
  189. placeholder="请输入乘车人数"
  190. placeholder-class="placeholder"
  191. cursor-spacing="{{52}}"
  192. bindinput="bindInput"></input>
  193. </view>
  194. <button type="primary"
  195. hover-class="none"
  196. form-type="submit">确定
  197. </button>
  198. </form>
  199. </van-popup>
  200. <!-- 时间选择器:请选择出发时间 -->
  201. <van-popup
  202. custom-class="customer-van-popup"
  203. show="{{ booGoTimePicker }}"
  204. round
  205. position="bottom"
  206. bind:close="onCloseGoTimePicker">
  207. <view style="right:0;top:0;"
  208. class="close-icon"
  209. bind:tap="onCloseGoTimePicker">
  210. <image class="image" src="{{tools.imgFilter('/common/Popup_bus_icon_close@2x.png')}}"></image>
  211. </view>
  212. <view class="title">请选择出发时间</view>
  213. <view>
  214. <van-picker
  215. id="van-picker-start_time"
  216. columns="{{ startColumns }}"
  217. bind:change="bindChangeGoTimePicker"/>
  218. </view>
  219. <button class="customer-picker_footer"
  220. hover-class="none"
  221. type="primary"
  222. bind:tap="getValueGoTimePicker">确定
  223. </button>
  224. </van-popup>
  225. <!-- 时间选择器:请选择返程时间 -->
  226. <van-popup
  227. custom-class="customer-van-popup"
  228. show="{{ booBackTimePicker }}"
  229. round
  230. position="bottom"
  231. bind:close="onCloseBackTimePicker">
  232. <view style="right:0;top:0;"
  233. class="close-icon"
  234. bind:tap="onCloseBackTimePicker">
  235. <image class="image" src="{{tools.imgFilter('/common/Popup_bus_icon_close@2x.png')}}"></image>
  236. </view>
  237. <view class="title">请选择返程时间</view>
  238. <view>
  239. <van-picker
  240. id="van-picker-back_time"
  241. columns="{{ endColumns }}"
  242. bind:change="bindChangeBackTimePicker"/>
  243. </view>
  244. <button class="customer-picker_footer"
  245. hover-class="none"
  246. type="primary"
  247. bind:tap="getValueBackTimePicker">确定
  248. </button>
  249. </van-popup>
  250. <wxs src="../../components/wxs/index.wxs" module="tools"></wxs>