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.

131 lines
3.2 KiB

3 weeks ago
3 weeks ago
3 weeks ago
1 week ago
3 weeks ago
4 weeks ago
3 weeks ago
3 weeks ago
4 weeks ago
4 weeks ago
  1. <template>
  2. <view class="content">
  3. <up-navbar leftText=" " :leftIconColor="'#fff'" :safeAreaInsetTop="true" :autoBack="true" title="我的学习"
  4. :bgColor="'transparent'" :titleStyle="{color: '#fff'}">
  5. <template #right>
  6. <view class="cjd" @click="$goPage('/pages/exercises/examSubjiect1/examResultsOne')">
  7. 成绩单
  8. </view>
  9. </template>
  10. </up-navbar>
  11. <view class="padding">
  12. <view class="useInfo flex">
  13. <view class="avatar">
  14. <image src="" mode=""></image>
  15. </view>
  16. <view class="rightBox">
  17. <view class="name">{{ phone }}</view>
  18. <view class="p" v-if="info.highScore">
  19. <text>最高分数{{ info.highScore }}</text>
  20. <text>用时{{ info.useTimes }} 分钟 </text>
  21. </view>
  22. </view>
  23. </view>
  24. <view class="card">
  25. <view class="text">考试车型{{ usecarStore.carInfo.carTypeName}}</view>
  26. <view class="text">考试时间{{ info.totalExamTime}}分钟 {{ info.totalCount }}</view>
  27. <view class="text">合格标准{{ info.score }}分及格满分{{ info.funllScore }}</view>
  28. <view class="text">出题规则{{info.questionRule}}</view>
  29. <view class="text">计分规则{{info.deductPointsRule}}</view>
  30. </view>
  31. <view class="btnBox">
  32. <oneBtn text="开始模拟考试" @click="$goPage(`/pages/exercises/brushQuestions/examQuestions?totalExamTime=${info.totalExamTime||45}&score=${info.score||90}`)"></oneBtn>
  33. </view>
  34. </view>
  35. </view>
  36. </template>
  37. <script setup>
  38. import { ref } from 'vue'
  39. import { questionExam} from '@/config/api.js'
  40. import carStore from '@/store/modules/car.js'
  41. let usecarStore = carStore()
  42. import {
  43. onShow,
  44. } from "@dcloudio/uni-app"
  45. let phone = uni.getStorageSync('loginInfo')?.phone
  46. let info = ref({})
  47. async function questionExamFn() {
  48. const {data:res} = await questionExam({stepType: usecarStore.carInfo.stepType, carType: usecarStore.carInfo.carType})
  49. let arr = res.useTime.split(':')
  50. res.useTimes =arr[0] +':'+ arr[1].substring(0, 2)
  51. info.value = res
  52. }
  53. onShow(()=>{
  54. questionExamFn()
  55. })
  56. </script>
  57. <style lang="scss" scoped>
  58. .content {
  59. width: 100%;
  60. min-height: 100vh;
  61. padding: 100rpx 0rpx 30rpx 0rpx;
  62. background: url('../../../static/images/topbg.png') #F6F7FA no-repeat;
  63. background-size: 100% 410rpx;
  64. .cjd {
  65. color: #fff;
  66. }
  67. .useInfo {
  68. padding: 30rpx 0;
  69. .avatar {
  70. width: 140rpx;
  71. height: 140rpx;
  72. overflow: hidden;
  73. border-radius: 50%;
  74. background: url('../../../static/images/avatarbg.png') no-repeat;
  75. background-size: 100% 100%;
  76. image {
  77. display: block;
  78. width: 100%;
  79. height: 100%;
  80. }
  81. }
  82. .rightBox {
  83. flex: 1;
  84. width: 0;
  85. padding-left: 30rpx;
  86. .name {
  87. font-size: 36rpx;
  88. color: #FFFFFF;
  89. font-weight: 500;
  90. }
  91. .p {
  92. padding-top: 30rpx;
  93. text {
  94. font-weight: 500;
  95. font-size: 28rpx;
  96. color: #FFFFFF;
  97. margin-right: 40rpx;
  98. }
  99. }
  100. }
  101. }
  102. .card {
  103. background: #FFFFFF;
  104. border-radius: 20rpx;
  105. padding: 20rpx 30rpx;
  106. .text {
  107. padding: 10rpx 0;
  108. font-weight: 500;
  109. font-size: 28rpx;
  110. color: #333333;
  111. }
  112. }
  113. .btnBox {
  114. padding: 100rpx 50rpx;
  115. width: 100%;
  116. }
  117. }
  118. </style>