合伙人运营小程序
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

index.wxml 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <view class="container">
  2. <!-- 地图组件:永久显示车+电站+用户所有坐标 -->
  3. <map
  4. id="map"
  5. class="map"
  6. longitude="{{longitude}}"
  7. latitude="{{latitude}}"
  8. scale="{{scale}}"
  9. markers="{{markers}}"
  10. polyline="{{polyline}}"
  11. show-location
  12. bindregionchange="onRegionChange"
  13. bindmarkertap="onMarkerTap"
  14. ></map>
  15. <!-- -->
  16. <view class="navigation-bar" style="height: 120rpx;">
  17. <!-- 晟运储能 -->
  18. <picker bindchange="bindPickerChange" value="{{powerindex}}" range="{{objectArray}}" range-key="projectName">
  19. <view class="picker">
  20. {{objectArray[powerindex].projectName}}
  21. <t-icon class="chevron_down" name="chevron-down" size="40rpx" data-name="chevron-down"/>
  22. </view>
  23. </picker>
  24. </view>
  25. <!-- 优化后的三选项卡(仅切换列表,不控制地图)-->
  26. <view class="tab_box">
  27. <view class="tab-container">
  28. <view class="tab-item {{activeType === 'car' ? 'tab-active' : ''}}" bindtap="switchType" data-type="car">
  29. <span class="tab-text">车辆</span>
  30. <span class="tab-badge">{{pointData.car.length}}</span>
  31. </view>
  32. <view class="tab-item {{activeType === 'station' ? 'tab-active' : ''}}" bindtap="switchType" data-type="station">
  33. <span class="tab-text">购电</span>
  34. <span class="tab-badge">{{pointData.station.length}}</span>
  35. </view>
  36. <view class="tab-item {{activeType === 'user' ? 'tab-active' : ''}}" bindtap="switchType" data-type="user">
  37. <span class="tab-text">售电</span>
  38. <span class="tab-badge">{{pointData.user.length}}</span>
  39. </view>
  40. <view class="tab-item {{activeType === 'driver' ? 'tab-active' : ''}}" bindtap="switchType" data-type="driver">
  41. <span class="tab-text">司机</span>
  42. <span class="tab-badge">{{pointData.driver.length}}</span>
  43. </view>
  44. </view>
  45. <!-- 优化后的分类列表 -->
  46. <view class="list-wrap">
  47. <view class="list-header">
  48. <!-- 优化列表标题 -->
  49. <text class="list-title">
  50. {{
  51. activeType === 'car' ? '储能车列表' :
  52. activeType === 'station' ? '购电电站列表' :
  53. activeType === 'user' ? '用电场景列表' :
  54. '司机列表'
  55. }}
  56. </text>
  57. <!-- 优化列表计数:合并为一行代码,减少重复 -->
  58. <text class="list-count">共{{currentList.length}}个点位</text>
  59. </view>
  60. <!-- 空数据占位 -->
  61. <view class="empty-wrap" wx:if="{{currentList.length === 0}}">
  62. <view class="empty-icon">📍</view>
  63. <view class="empty-text">
  64. {{
  65. activeType === 'car' ? '储能车' :
  66. activeType === 'station' ? '电站' :
  67. activeType === 'user' ? '用户用电' :
  68. '司机'
  69. }}数据
  70. </view>
  71. </view>
  72. <!-- 卡片式列项表 -->
  73. <view class="list-card" wx:for="{{currentList}}" wx:key="id">
  74. <view class="card-left">
  75. <view class="card-tag {{item.type === 'car' ? 'tag-car' : item.type === 'station' ? 'tag-station' : 'tag-user'}}">
  76. {{
  77. activeType === 'car' ? '储能车' :
  78. activeType === 'station' ? '电站' :
  79. activeType === 'user' ? '用户用电' :
  80. '司机'
  81. }}
  82. </view>
  83. <view wx:if="{{activeType === 'car'}}">
  84. <view class="card-name">{{item.carName}}</view>
  85. <view class="card-address">{{item.controllerId}}</view>
  86. <view class="card-status">{{item.lineType === 1 ? '在线' : '离线'}}</view>
  87. </view>
  88. <view wx:if="{{activeType === 'station' || activeType === 'user'}}">
  89. <view class="card-name">{{item.poiName}}</view>
  90. <view class="card-address">{{item.addressName}}</view>
  91. <view class="card-status">{{item.addressDeletetype === 0 ? '在线' : '离线'}}</view>
  92. </view>
  93. <view wx:if="{{activeType === 'driver'}}">
  94. <!-- 司机列表的显示内容,根据实际数据结构补充 -->
  95. <view class="card-name">{{item.operationName || item.name}}</view>
  96. <view class="card-address">{{item.operationPhone || item.id}}</view>
  97. <view class="card-status">{{item.lineType === 1 ? '在线' : '离线'}}</view>
  98. </view>
  99. </view>
  100. <view class="card-right">
  101. <t-icon name="chevron-right-s" size="40rpx" data-name="chevron-right-s" data-item="{{item}}" bind:tap="ondetails"/>
  102. <view style="height: 60rpx;"></view>
  103. <t-icon name="focus" size="40rpx" data-name="focus" data-item="{{item}}" bindtap="toPosition"/>
  104. </view>
  105. </view>
  106. </view>
  107. </view>
  108. </view>
  109. <!--
  110. -->