景徳镇旅游微信小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

220 lines
3.9 KiB

9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
8 months ago
9 months ago
  1. <template>
  2. <view class="page">
  3. <navbar title="提交预约" leftClick @leftClick="$utils.navigateBack" />
  4. <view class="box">
  5. <view class="info">
  6. <view class="title">
  7. 遗产讲述
  8. </view>
  9. <view class="tips">
  10. 开放时间06:00-21:00
  11. </view>
  12. <view class="tips">
  13. 开放时间06:00-21:00
  14. </view>
  15. </view>
  16. <view class="form-time">
  17. <!-- 预约日期 -->
  18. <view class="title">
  19. 预约日期
  20. </view>
  21. <view class="line"
  22. @click="$refs.calendars.open()">
  23. <view class="">
  24. {{ selectDate.split('-')[0] }}
  25. <view class="icon">
  26. <uv-icon
  27. name="arrow-down"
  28. size="26rpx">
  29. </uv-icon>
  30. </view>
  31. </view>
  32. <view class="">
  33. {{ selectDate.split('-')[1] }}
  34. <view class="icon">
  35. <uv-icon
  36. name="arrow-down"
  37. size="26rpx">
  38. </uv-icon>
  39. </view>
  40. </view>
  41. <view class="">
  42. {{ selectDate.split('-')[2] }}
  43. <view class="icon">
  44. <uv-icon
  45. name="arrow-down"
  46. size="26rpx">
  47. </uv-icon>
  48. </view>
  49. </view>
  50. </view>
  51. <!-- 预约时间 -->
  52. <view class="title">
  53. 预约时间
  54. </view>
  55. <view class="line"
  56. @click="$refs.picker.open()">
  57. <view class="">
  58. 08:00
  59. <view class="icon">
  60. <uv-icon
  61. name="arrow-down"
  62. size="26rpx">
  63. </uv-icon>
  64. </view>
  65. </view>
  66. <view class="">
  67. 14:00
  68. <view class="icon">
  69. <uv-icon
  70. name="arrow-down"
  71. size="26rpx">
  72. </uv-icon>
  73. </view>
  74. </view>
  75. </view>
  76. </view>
  77. </view>
  78. <view class="box">
  79. <view class="form-input">
  80. <view class="title">
  81. 游客信息
  82. </view>
  83. <view class="input">
  84. <view class="label">
  85. 姓名
  86. </view>
  87. <input type="text"
  88. placeholder="请输入姓名"
  89. v-model="form.name"/>
  90. </view>
  91. <view class="input">
  92. <view class="label">
  93. 联系方式
  94. </view>
  95. <input type="text"
  96. placeholder="请输入联系方式"
  97. v-model="form.phone"/>
  98. </view>
  99. </view>
  100. </view>
  101. <!-- 选择日期 -->
  102. <uv-calendars
  103. color="#B12026"
  104. :date="selectDate"
  105. confirmColor="#B12026"
  106. :clearDate="false"
  107. ref="calendars" @confirm="confirmDate" />
  108. <!-- 选择时间 -->
  109. <uv-picker ref="picker"
  110. :columns="timeColumns"
  111. confirmColor="#B12026"
  112. @confirm="confirmTime"></uv-picker>
  113. </view>
  114. </template>
  115. <script>
  116. export default {
  117. data() {
  118. return {
  119. form : {
  120. name : '',
  121. phone : '',
  122. },
  123. selectDate : this.$dayjs().format('YYYY-MM-DD'),
  124. timeColumns : [
  125. [
  126. '08',
  127. '10',
  128. ],
  129. [
  130. '14',
  131. '16',
  132. '20',
  133. ]
  134. ],
  135. }
  136. },
  137. methods: {
  138. // 选择日期
  139. confirmDate(e){
  140. this.selectDate = e.fulldate
  141. },
  142. // 选择时间
  143. confirmTime(e){
  144. console.log(e);
  145. },
  146. }
  147. }
  148. </script>
  149. <style scoped lang="scss">
  150. .page{
  151. .box{
  152. border-radius: 20rpx;
  153. margin: 20rpx;
  154. background-color: #fff;
  155. box-shadow: 0 0 16rpx 6rpx #00000011;
  156. .info{
  157. padding: 40rpx;
  158. border-bottom: 1rpx dashed #000;
  159. .title{
  160. font-size: 34rpx;
  161. font-weight: 900;
  162. padding-bottom: 20rpx;
  163. }
  164. .tips{
  165. font-size: 26rpx;
  166. color: #666666;
  167. padding: 10rpx 0;
  168. }
  169. }
  170. .form-time{
  171. padding: 40rpx;
  172. .title{
  173. font-weight: 900;
  174. padding-bottom: 20rpx;
  175. margin-top: 10rpx;
  176. }
  177. .line{
  178. display: flex;
  179. align-items: center;
  180. >view{
  181. border: 1rpx solid #333;
  182. padding: 6rpx 20rpx;
  183. margin: 10rpx;
  184. border-radius: 10rpx;
  185. font-size: 26rpx;
  186. display: flex;
  187. align-items: center;
  188. justify-content: center;
  189. .icon{
  190. padding: 0 10rpx;
  191. }
  192. }
  193. }
  194. }
  195. .form-input{
  196. padding: 40rpx;
  197. .input{
  198. display: flex;
  199. padding-top: 30rpx;
  200. .label{
  201. width: 200rpx;
  202. }
  203. input{
  204. font-size: 26rpx;
  205. }
  206. }
  207. }
  208. }
  209. }
  210. </style>