index.axml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. <wrapper>
  2. <view class="result-root {{ 'root-' + result.status }}">
  3. <!-- 预约成功 -->
  4. <block a:if="{{ result.status === 1 }}">
  5. <view class="result-block">
  6. <view class="result-block-top">
  7. <view class="result-block-row center">
  8. <icon type="success" size="40" color="#22b35e"/>
  9. <text class="result-block-success">预约成功</text>
  10. </view>
  11. <view class="result-block-row" a:for="{{ viewItem.slice(0, 4) }}" key="{{ index }}">
  12. <view class="result-form-label">{{ item.label }}</view>
  13. <view class="result-form-val" a:if="{{ item.key === 'date' }}">{{ result.registeredDate}}</view>
  14. <view class="result-form-val" a:elif="{{ item.key === 'time' }}">
  15. <text a:if="{{ result.timeRange }}">{{ result.timeRange }}</text>
  16. <text a:if="{{ result.queueNum }}" style="margin-left: 20rpx;">{{ result.queueNum }}号</text>
  17. </view>
  18. <view class="result-form-val" a:else >{{ result[item.key] || '-' }}</view>
  19. </view>
  20. </view>
  21. <view class="result-block-dashed" />
  22. <view class="result-card">
  23. <view class="result-card-row" a:for="{{ viewItem.slice(4) }}" key="{{ index }}">
  24. <block a:if="{{ item.key === 'price' }}">
  25. <view class="result-card-label">{{ item.label }}</view>
  26. <view class="result-card-val">
  27. <text class="{{ result.payType === '就诊时支付' ? 'light' : '' }}">
  28. <text a:if="{{ result.payType === '就诊时支付' }}">(就诊时支付)</text>
  29. <text a:else>(已支付)</text>
  30. <text>¥{{ result.amount }}</text>
  31. </text>
  32. </view>
  33. </block>
  34. <block a:elif="{{ item.key === 'name' }}">
  35. <view class="result-card-label">{{ item.label }}</view>
  36. <view class="result-card-val">
  37. {{ result.userName }}
  38. <text a:if="{{ result.sex }}">,{{ result.sex }}</text>
  39. <text a:if="{{ result.age }}">,{{ result.age }}岁</text>
  40. </view>
  41. </block>
  42. <block a:elif="{{ item.key === 'doctor' }}">
  43. <view class="result-card-label">{{ item.label }}</view>
  44. <view class="result-card-val">{{ result.level ? result.level + ' | ' + result.doctorName : result.doctorName }}</view>
  45. </block>
  46. <block a:elif="{{ item.key === 'card' }}">
  47. <block a:if="{{ result.cardNum }}">
  48. <view class="result-card-label">{{ item.label }}</view>
  49. <view class="result-card-val">
  50. <view>{{ result.cardNum }}</view>
  51. </view>
  52. </block>
  53. <view a:else class="result-card-support">
  54. <icon class="icon" type="warn" size="12" color="#ff6430"></icon>
  55. <text>该就诊人还未办理医院就诊卡,就诊当天请先去窗口/自助机凭身份证/医保卡办理就诊卡</text>
  56. </view>
  57. </block>
  58. <block a:else>
  59. <view class="result-card-label">{{ item.label }}</view>
  60. <view class="result-card-val">{{ result[item.key] || '--' }}</view>
  61. </block>
  62. </view>
  63. </view>
  64. </view>
  65. <!-- 底部路线按钮隐藏 -->
  66. <!-- <static-block /> -->
  67. <view class="footer-container">
  68. <view class="back-to-home" onTap="toBackHome">回到首页</view>
  69. <view class="result-button" onTap="onCancel"><text class="txt">取消预约</text></view>
  70. </view>
  71. </block>
  72. <!-- 叫号中 -->
  73. <block a:if="{{ result.status === 2 }}">
  74. <view class="result-block result-center">
  75. <view class="result-block-big">
  76. <text class="theme line">88号</text>
  77. <text>前面就诊 <text class="theme">{{ result.num }}</text> 位</text>
  78. </view>
  79. <view class="theme result-tip">排队中</view>
  80. <view class="result-gray">请不要走远,过号后将顺延3人</view>
  81. </view>
  82. <template is="from" data="{{ viewItem, result }}" />
  83. <view class="result-block">
  84. <view class="result-block-title">
  85. <view>如何就诊</view>
  86. </view>
  87. <view>取号后请到门诊4楼403眼科门诊候诊</view>
  88. <view class="result-block-btn">
  89. <text class="result-block-t" onTap="toH5" data-url="https://hospitalupgrade-dev.alipay-eco.com/page/hospital-navigation.html">查看路线</text>
  90. <text onTap="hrefTo">刷医保</text>
  91. </view>
  92. </view>
  93. <view class="result-block">
  94. <view class="result-block-title">
  95. <view>注意事项</view>
  96. </view>
  97. <view>1. 请严格按照提示时段就诊,过时作废</view>
  98. <view>2. 就诊时需携带本人身份证</view>
  99. <view>3. 就诊时必须携带口罩并请提前准备好健康码</view>
  100. </view>
  101. <view class="footer-container">
  102. <view class="back-to-home" onTap="toBackHome">回到首页</view>
  103. </view>
  104. </block>
  105. <!-- 待支付/已就诊/预期未就诊/取消预约 -->
  106. <block a:if="{{ result.status === 0 || result.status === 7 || result.status === 8 || result.status === 9 }}">
  107. <block a:if="{{ result.status === 0 }}">
  108. </block>
  109. <view class="result-block result-block-cansel" a:if="{{ result.status === 0 }}">
  110. <icon type="waiting" size="32" color="#ff6330"/>
  111. <view class="result-block-waiting">待支付</view>
  112. <view class="result-block-tip">15分钟未支付,订单将自动取消</view>
  113. </view>
  114. <view class="result-block result-block-cansel success" a:elif="{{ result.status === 7 }}">
  115. <icon type="success" size="32" color="#22b35e"></icon>
  116. <view>已就诊</view>
  117. </view>
  118. <view class="result-block result-block-cansel" a:elif="{{ result.status === 8 }}">
  119. <icon type="cancel" size="32" color="#ff3141"></icon>
  120. <view>逾期未就诊</view>
  121. </view>
  122. <view class="result-block result-block-cansel cansel" a:elif="{{ result.status === 9 }}">
  123. <icon type="cancel" size="32" color="#999"></icon>
  124. <view>已取消</view>
  125. </view>
  126. <template is="from" data="{{ viewItem, result }}" />
  127. <view class="result-block" a:if="{{ result.status === 8 || result.status === 9 }}">
  128. <view class="result-block-title">
  129. <view>关于退款</view>
  130. </view>
  131. <view>预约时间前24小时取消预约,已支付金额将会原路退还至支付账户</view>
  132. <view class="result-block-flex">
  133. <image a:for="{{ refund }}" key="{{ index }}" class="result-block-image" src="{{ item }}" />
  134. </view>
  135. </view>
  136. <view a:if="{{ result.status === 0 }}" class="order-button-wrap">
  137. <view class="order-pay-tip">暂不支持医保支付,如有需要请去人工窗口/自助机挂号</view>
  138. <view class="order-button-f">
  139. <view>挂号费<text class="coder-pay-price">¥{{ result.amount }}</text></view>
  140. <button type="primary" class="button" onTap="onPay">支付</button>
  141. </view>
  142. </view>
  143. <view a:else class="result-button" onTap="reAppoint"><text class="txt">再次预约</text></view>
  144. </block>
  145. </view>
  146. <modal
  147. show="{{ modalOpened }}"
  148. showClose="{{ false }}"
  149. onButtonClick="onButtonClick"
  150. buttons="{{ buttons }}"
  151. zIndex="10"
  152. >
  153. <view slot="header">确认取消预约?</view>
  154. 预约来之不易,取消后需重新预约
  155. </modal>
  156. </wrapper>
  157. <subscribe-msg ref="saveRef" />
  158. <template name="from">
  159. <view class="result-block tmp">
  160. <view class="result-block-title">
  161. <view>挂号信息</view>
  162. </view>
  163. <view class="result-card">
  164. <view class="result-card-row" a:for="{{ viewItem }}" key="{{ index }}">
  165. <block a:if="{{ item.key === 'price' }}">
  166. <view class="result-card-label">{{ item.label }}</view>
  167. <view class="result-card-val">
  168. <text class="{{ result.payType === '就诊时支付' ? 'light' : '' }}">
  169. <!-- <text a:if="{{ result.payType === '就诊时支付' }}">(就诊时支付)</text>
  170. <text a:else>(已支付)</text> -->
  171. <text>¥{{ result.amount }}</text>
  172. </text>
  173. </view>
  174. </block>
  175. <block a:elif="{{ item.key === 'date' }}">
  176. <view class="result-card-label">{{ item.label }}</view>
  177. <view class="result-card-val">{{ result.registeredDate }}</view>
  178. </block>
  179. <block a:elif="{{ item.key === 'time' }}">
  180. <view class="result-card-label">{{ item.label }}</view>
  181. <view class="result-card-val">{{ result.timeRange }}</view>
  182. </block>
  183. <block a:elif="{{ item.key === 'name' }}">
  184. <view class="result-card-label">{{ item.label }}</view>
  185. <view class="result-card-val">
  186. {{ result.userName }}
  187. <text a:if="{{ result.sex }}">,{{ result.sex }}</text>
  188. <text a:if="{{ result.age }}">,{{ result.age }}岁</text>
  189. </view>
  190. </block>
  191. <block a:elif="{{ item.key === 'doctor' }}">
  192. <view class="result-card-label">{{ item.label }}</view>
  193. <view class="result-card-val">{{ result.level ? result.doctorName + ' | ' + result.level : result.doctorName }}</view>
  194. </block>
  195. <block a:elif="{{ item.key === 'card' }}">
  196. <block a:if="{{ result.cardNum }}">
  197. <view class="result-card-label">{{ item.label }}</view>
  198. <view class="result-card-val">
  199. <view>{{ result.cardNum }}</view>
  200. </view>
  201. </block>
  202. <view a:else class="result-card-support">
  203. <icon class="icon" type="warn" size="12" color="#ff6430"></icon>
  204. <text>该就诊人还未办理医院就诊卡,就诊当天请先去窗口/自助机凭身份证/医保卡办理就诊卡</text>
  205. </view>
  206. </block>
  207. <block a:else>
  208. <view class="result-card-label">{{ item.label }}</view>
  209. <view class="result-card-val">{{ result[item.key] || '--' }}</view>
  210. </block>
  211. </view>
  212. </view>
  213. </view>
  214. </template>