takePhoto.wxml 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. <!-- pages/takePhoto/takePhoto.wxml -->
  2. <view class="container">
  3. <!-- 顶部标题 -->
  4. <!-- 内容区域 -->
  5. <view class="content">
  6. <!-- 签到、拍货物、拍单据按钮 -->
  7. <view class="btn-group">
  8. <view class="btn btn-green" bindtap="onSignIn">
  9. {{checkinStatus==0?'签到':'已签到: '+checkinDatetime}}
  10. </view>
  11. <view class="btn btn-blue" bindtap="takePhoto" data-mediatype="{{3}}">拍货物</view>
  12. <view class="btn btn-red" bindtap="takeBill" data-mediatype="{{0}}">拍单据</view>
  13. </view>
  14. <!-- 码头服务查询 -->
  15. <view class="card">
  16. <view class="card-header">码头服务查询</view>
  17. <view class="card-content">
  18. <!-- 搜索栏 -->
  19. <view class="search-box">
  20. <input type="text" class="search-input" placeholder="输入关键词搜索" bindinput="onSearchInput" value="{{terminalSearchWords}}" />
  21. <view class="search-btn" bindtap="searchTerminalServices">搜索</view>
  22. </view>
  23. <!-- 热门推荐 -->
  24. <view class="section-title">热门推荐</view>
  25. <view class="hot-services">
  26. <view class="loading" wx:if="{{loading}}">加载中...</view>
  27. <block wx:elif="{{terminalServices.length > 0}}">
  28. <view class="service-item" wx:for="{{terminalServices}}" wx:key="id">
  29. <view class="df aic">
  30. <view class="dock-name">{{item.dockName || '未知码头'}}</view>
  31. <view class="service-name">{{item.serviceStaffName}}</view>
  32. <view class="service-type">{{item.serviceType}}</view>
  33. </view>
  34. <view class="btn btn-phone" data-phone="{{item.serviceStaffPhone}}" bindtap="makePhoneCall">
  35. <image class="tel" src="../../images/tel-f.png"></image>
  36. 拨打电话
  37. </view>
  38. </view>
  39. </block>
  40. <block wx:else>
  41. <view class="no-data">暂无码头服务数据</view>
  42. </block>
  43. </view>
  44. <!-- 水位信息 -->
  45. <view class="section-title">水位信息</view>
  46. <scroll-view class="water-level-info" scroll-y="true">
  47. <block wx:if="{{waterLevels.length > 0}}">
  48. <view class="water-level-item" wx:for="{{waterLevels}}" wx:key="site">
  49. <view class="water-level-station">{{item.site}}</view>
  50. <view class="water-level-value">{{item.waterLevel}}米</view>
  51. <view class="water-level-trend {{ item.change}}">
  52. {{item.changeIcon}} {{item.waterLevelFluctuation}} 米
  53. </view>
  54. </view>
  55. </block>
  56. <block wx:else>
  57. <view class="no-data">暂无水位数据</view>
  58. </block>
  59. </scroll-view>
  60. </view>
  61. </view>
  62. <!-- 新能源船舶政策解读 -->
  63. <view class="card">
  64. <view class="card-header">新能源船舶政策解读</view>
  65. <view class="card-content">
  66. <!-- 拆船政策 -->
  67. <view class="section-title mt0">拆船政策</view>
  68. <view class="policy-table">
  69. <view class="policy-header">
  70. <view class="policy-cell">吨位</view>
  71. <view class="policy-cell">补贴额度</view>
  72. </view>
  73. <block wx:if="{{demolitionPolicy.length > 0}}">
  74. <view class="policy-row" wx:for="{{demolitionPolicy}}" wx:key="shipTons">
  75. <view class="policy-cell">{{item.shipTons}}</view>
  76. <view class="policy-cell">{{item.subsidyAmount}} 万元/艘</view>
  77. </view>
  78. </block>
  79. <block wx:else>
  80. <view class="no-data">暂无拆船政策数据</view>
  81. </block>
  82. </view>
  83. <!-- 造船政策 -->
  84. <view class="section-title">造船政策</view>
  85. <view class="policy-table">
  86. <view class="policy-header">
  87. <view class="policy-cell">吨位</view>
  88. <view class="policy-cell">新能源类型</view>
  89. <view class="policy-cell">补贴额度</view>
  90. </view>
  91. <block wx:if="{{shipbuildingPolicy.length > 0}}">
  92. <view class="policy-row" wx:for="{{shipbuildingPolicy}}" wx:key="shipTons">
  93. <view class="policy-cell">{{item.shipTons}}</view>
  94. <view class="policy-cell">{{item.newEnergyType}}</view>
  95. <view class="policy-cell">{{item.subsidyAmount}} 万元/艘</view>
  96. </view>
  97. </block>
  98. <block wx:else>
  99. <view class="no-data">暂无造船政策数据</view>
  100. </block>
  101. </view>
  102. </view>
  103. </view>
  104. <!-- 智能服务 -->
  105. <view class="card">
  106. <view class="card-header">智能服务</view>
  107. <view class="card-content">
  108. <!-- 船舶年检 -->
  109. <view class="list-item" wx:if="{{shipAnnualInspection && shipAnnualInspection.length > 0}}">
  110. <view class="tag tag-warning">提醒</view>
  111. 您的船舶年检信息
  112. <view style="margin-top: 10px">
  113. <view class="cert-item c7">
  114. <view>年检证书</view>
  115. <view>到期时间</view>
  116. </view>
  117. </view>
  118. <view>
  119. <view class="cert-item" wx:for="{{shipAnnualInspection}}" wx:key="shipCertName">
  120. <view>{{item.shipCertName}}</view>
  121. <view class="expire-date {{item.expireType === 1 ? 'text-danger' : ''}}">
  122. {{item.validityPeriodEndTime}}
  123. </view>
  124. </view>
  125. </view>
  126. </view>
  127. <!-- 船舶证书 -->
  128. <view class="list-item" wx:if="{{shipCertificate && shipCertificate.length > 0}}">
  129. <view class="tag tag-danger">提醒</view>
  130. 您有 {{shipCertificate.length}} 个证书即将到期
  131. <view style="margin-top: 10px">
  132. <view class="cert-item c7">
  133. <view>证书名称</view>
  134. <view>到期时间</view>
  135. </view>
  136. </view>
  137. <view>
  138. <view class="cert-item" wx:for="{{shipCertificate}}" wx:key="shipCertName">
  139. <view>{{item.shipCertName}}</view>
  140. <view class="expire-date {{item.shipCertValid.expireType === 1 ? 'text-danger' : ''}}">
  141. {{item.shipCertValid.validityPeriodEndTime}}
  142. </view>
  143. </view>
  144. </view>
  145. </view>
  146. <!-- 船员升级 -->
  147. <view class="list-item" wx:if="{{crewUpgradeData && crewUpgradeData.length > 0}}">
  148. <view class="tag tag-blue">提醒</view>
  149. 您有 {{crewUpgradeData.length}} 个船员资质可升级
  150. <view style="margin-top: 10px">
  151. <view class="cert-item c7">
  152. <view class="w33p">船员名称</view>
  153. <view class="w33p tac">当前资质</view>
  154. <view class="w33p tar">可升级为</view>
  155. </view>
  156. </view>
  157. <view>
  158. <view class="cert-item" wx:for="{{crewUpgradeData}}" wx:key="index">
  159. <view class="w33p">{{item.shipOwnerName}}</view>
  160. <view class="w33p tac">{{item.nowPostName}}</view>
  161. <view class="expire-date stable w33p tar">{{item.upgradePostName}}</view>
  162. </view>
  163. </view>
  164. </view>
  165. <!-- 证书办理联系人 -->
  166. <view class="list-item contact-info" wx:if="{{certOperationContact && certOperationContact.length > 0}}">
  167. <view class="mb20">证书办理联系人</view>
  168. <view wx:for="{{certOperationContact}}" wx:key="id" class="contact-item">
  169. <view>{{item.officeName}} - {{item.contactPerson}}</view>
  170. <view class="btn btn-phone" data-phone="{{item.contactPhone}}" bindtap="makePhoneCall">
  171. 拨打电话
  172. </view>
  173. </view>
  174. </view>
  175. <!-- 无数据提示 -->
  176. <view class="no-data" wx:if="{{(!shipAnnualInspection || shipAnnualInspection.length === 0) && (!shipCertificate || shipCertificate.length === 0) && (!certOperationContact || certOperationContact.length === 0)}}">
  177. 暂无智能服务数据
  178. </view>
  179. </view>
  180. </view>
  181. <!-- 搜查附近货盘 -->
  182. <view class="card">
  183. <view class="card-header">搜查附近货盘</view>
  184. <view class="card-content">
  185. <view class="search-box">
  186. <input type="text" class="search-input" placeholder="输入关键词搜索" bindinput="onPalletSearchInput" value="{{palletListSearchWords}}" />
  187. <view class="search-btn" bindtap="searchPalletList">搜索</view>
  188. </view>
  189. <!-- <view class="map-container">
  190. <view>地图区域 - 显示船舶与货盘</view>
  191. 这里可以使用微信小程序的map组件替换
  192. <view class="map-marker ship"></view>
  193. <view class="map-marker cargo" style="top: 30%; left: 60%"></view>
  194. <view class="map-marker cargo" style="top: 50%; left: 30%"></view>
  195. <view class="map-marker cargo" style="top: 60%; left: 55%"></view>
  196. </view> -->
  197. <!-- 货盘列表 -->
  198. <view class="cargo-list">
  199. <block wx:if="{{palletList.length > 0}}">
  200. <view class="cargo-item" wx:for="{{palletList}}" wx:key="id">
  201. <view class="cargo-info">
  202. <text class="cargo-type">{{item.cargoName}}</text>
  203. <view>| {{item.loadPortName}} → {{item.dischargePortName}} |</view>
  204. <view>{{item.cargoTons}} 吨</view>
  205. </view>
  206. <view class="cargo-meta">
  207. <view class="cargo-distance">联系人: {{item.contactName}}</view>
  208. <view class="btn btn-phone" data-phone="{{item.contactPhone}}" bindtap="makePhoneCall">
  209. <image class="tel" src="../../images/tel-f.png"></image>
  210. 拨打电话
  211. </view>
  212. </view>
  213. </view>
  214. </block>
  215. <block wx:else>
  216. <view class="no-data">暂无货盘数据</view>
  217. </block>
  218. </view>
  219. </view>
  220. </view>
  221. </view>
  222. </view>