authorizeMode.vue 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <template>
  2. <view>
  3. <view class="public_tip">尊敬的用户,为了充分保障患者的隐私安全,该项功能需要患者本人的授权才可进行使用,请选择授权方式</view>
  4. <view class="list">
  5. <view class="item" @click="optionsClick('authSms')" v-if="level > (userInfo.userLevel || 0) && level <= 1">
  6. <image class="item_img" :src="iconUrl.icon_authSjyz"></image>
  7. <image class="public_right_img" :src="iconUrl.icon_right"></image>
  8. <view class="item_con">
  9. <view class="item_con_tit">手机验证码授权</view>
  10. <view class="item_con_subtit">使用填写手机动态验证码方式</view>
  11. </view>
  12. </view>
  13. <view class="item" @click="optionsClick('authFace')" v-if="level > (userInfo.userLevel || 0) && level <= 2">
  14. <image class="item_img" :src="iconUrl.icon_authSlhs"></image>
  15. <view class="item_con">
  16. <view class="item_con_tit">人脸识别授权</view>
  17. <view class="item_con_subtit">使用活体扫脸识别方式</view>
  18. </view>
  19. <image class="public_right_img" :src="iconUrl.icon_right"></image>
  20. </view>
  21. </view>
  22. </view>
  23. </template>
  24. <script lang="ts" setup>
  25. import { ref } from 'vue';
  26. import { common } from '@/utils';
  27. import icon from '@/utils/icon';
  28. const props = withDefaults(defineProps<{
  29. level?: string | number;
  30. userInfo?: any;
  31. }>(), {
  32. level: '',
  33. userInfo: () => ({})
  34. });
  35. const iconUrl = ref(icon);
  36. /**
  37. * 授权选项点击
  38. */
  39. const optionsClick = (type: string) => {
  40. console.log(`/pagesPersonal/st1/business/patientAuth/${type}/${type}`)
  41. common.goToUrl(`/pagesPersonal/st1/business/patientAuth/${type}/${type}`)
  42. };
  43. </script>
  44. <style lang="scss" scoped>
  45. .list {
  46. padding: 0 30upx;
  47. }
  48. .item {
  49. position: relative;
  50. background: rgba(255, 255, 255, 1);
  51. box-shadow: 0px 0px 40upx 0px rgba(0, 0, 0, 0.06);
  52. border-radius: 24upx;
  53. padding: 48upx 30upx;
  54. display: flex;
  55. align-items: center;
  56. margin: 30upx 0;
  57. }
  58. .item_img {
  59. width: 100upx;
  60. height: 100upx;
  61. margin-right: 30upx;
  62. }
  63. .item_con_tit {
  64. margin-bottom: 22upx;
  65. font-size: 32upx;
  66. font-weight: 500;
  67. color: rgba(0, 0, 0, 1);
  68. }
  69. .item_con_subtit {
  70. font-size: 28upx;
  71. font-family: Source Han Sans CN;
  72. font-weight: 400;
  73. color: rgba(166, 166, 166, 1);
  74. }
  75. .public_tip{
  76. margin: 40upx 0;
  77. padding: 0 30upx;
  78. }
  79. .public_right_img{
  80. right: 30upx;
  81. }
  82. </style>