风险测评小程序前端代码仓库
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.

197 lines
4.7 KiB

  1. <template>
  2. <view class="page__view">
  3. <navbar title="咨询客服" leftClick @leftClick="$utils.navigateBack" bgColor="transparent" />
  4. <image class="bg" :src="configList.customer_service_bg" mode="widthFix"></image>
  5. <!-- <view class="flex bg">
  6. <view class="flex bg-content">
  7. <view class="text">
  8. <view class="title">Hi,有什么可以帮您</view>
  9. <view class="desc">
  10. <view class="line">工作时间</view>
  11. <view class="line">8:00-12:00 13:00-17:30</view>
  12. </view>
  13. </view>
  14. <image class="icon" src="@/pages_order/static/service/icon-service.png" mode="widthFix"></image>
  15. </view>
  16. </view> -->
  17. <view class="main">
  18. <view class="content">
  19. <view class="flex card concat">
  20. <button plain class="flex flex-column btn" open-type="contact">
  21. <image class="icon" src="@/pages_order/static/service/icon-message.png" mode="widthFix"></image>
  22. <view>联系客服</view>
  23. </button>
  24. <button plain class="flex flex-column btn" @click="openQrPopup">
  25. <image class="icon" src="@/pages_order/static/service/icon-wx.png" mode="widthFix"></image>
  26. <view>添加微信</view>
  27. </button>
  28. <button plain class="flex flex-column btn" @click="openPhonePopup">
  29. <image class="icon" src="@/pages_order/static/service/icon-phone.png" mode="widthFix"></image>
  30. <view>电话咨询</view>
  31. </button>
  32. </view>
  33. <view class="card question">
  34. <view class="card-header">常见问题</view>
  35. <view class="flex row" v-for="item in list" :key="item.id" @click="jumpToQuestion(item.id)">
  36. <view>{{ item.question }}</view>
  37. <uv-icon name="arrow-right" color="#999999" size="33rpx"></uv-icon>
  38. </view>
  39. </view>
  40. </view>
  41. </view>
  42. <popupQrCode ref="popupQrCode"></popupQrCode>
  43. <popupPhone ref="popupPhone"></popupPhone>
  44. </view>
  45. </template>
  46. <script>
  47. import mixinsList from '@/mixins/list.js'
  48. import popupQrCode from './popupQrCode.vue'
  49. import popupPhone from './popupPhone.vue'
  50. export default {
  51. mixins: [mixinsList],
  52. components: {
  53. popupQrCode,
  54. popupPhone,
  55. },
  56. data() {
  57. return {
  58. list: [],
  59. mixinsListApi: 'queryFaqList',
  60. }
  61. },
  62. methods: {
  63. openQrPopup() {
  64. this.$refs.popupQrCode.open()
  65. },
  66. openPhonePopup() {
  67. this.$refs.popupPhone.open()
  68. },
  69. jumpToQuestion(id) {
  70. let data = this.list.find(item => item.id === id)
  71. this.$store.commit('setCommonQuestion', data)
  72. uni.navigateTo({
  73. url: `/pages_order/service/commonQuestion?id=${id}`
  74. })
  75. },
  76. },
  77. }
  78. </script>
  79. <style scoped lang="scss">
  80. .page__view {
  81. background: #F5F5F5;
  82. /deep/ .nav-bar__view {
  83. position: fixed;
  84. top: 0;
  85. left: 0;
  86. }
  87. }
  88. .bg {
  89. width: 100%;
  90. height: auto;
  91. min-height: 501rpx;
  92. // width: 100%;
  93. // height: 501rpx;
  94. // background: linear-gradient(160deg, #014FA2 36%, #4C8FD6);
  95. // padding: 0 104rpx 90rpx 65rpx;
  96. // box-sizing: border-box;
  97. // align-items: flex-end;
  98. // &-content {
  99. // width: 100%;
  100. // justify-content: space-between;
  101. // }
  102. // .text {
  103. // padding: 26rpx 0 34rpx 0;
  104. // color: #FFFFFF;
  105. // .title {
  106. // font-size: 36rpx;
  107. // font-weight: 600;
  108. // }
  109. // .desc {
  110. // margin-top: 13rpx;
  111. // font-size: 22rpx;
  112. // .line + .line {
  113. // margin-top: 11rpx;
  114. // }
  115. // }
  116. // }
  117. // .icon {
  118. // width: 168rpx;
  119. // height: auto;
  120. // }
  121. }
  122. .main {
  123. width: 100%;
  124. padding: 0 28rpx 28rpx 28rpx;
  125. box-sizing: border-box;
  126. background: #F5F5F5;
  127. .content {
  128. transform: translateY(-64rpx);
  129. }
  130. }
  131. .card {
  132. width: 100%;
  133. background: #FFFFFF;
  134. border-radius: 15rpx;
  135. }
  136. .card.concat {
  137. justify-content: space-between;
  138. width: 100%;
  139. padding: 55rpx 64rpx 26rpx 64rpx;
  140. box-sizing: border-box;
  141. .btn {
  142. justify-content: space-between;
  143. font-size: 28rpx;
  144. color: #000000;
  145. border: none;
  146. .icon {
  147. width: 66rpx;
  148. height: auto;
  149. }
  150. }
  151. }
  152. .card.question {
  153. margin-top: 25rpx;
  154. padding: 34rpx 19rpx;
  155. box-sizing: border-box;
  156. .card-header {
  157. padding: 0 11rpx 11rpx 11rpx;
  158. font-size: 32rpx;
  159. font-weight: 600;
  160. color: #000000;
  161. }
  162. .row {
  163. margin-top: 22rpx;
  164. justify-content: space-between;
  165. padding: 17rpx 14rpx 17rpx 23rpx;
  166. font-size: 30rpx;
  167. color: #000000;
  168. border-bottom: 0.5rpx solid rgba($color: #707070, $alpha: 0.1);
  169. }
  170. }
  171. </style>