123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- <template>
- <view class="scroll-list-card mobile-card-box">
- <!-- title -->
- <text class="mobile-card-title">{{data.ksName === null ? '':data.ksName}}</text>
- <!-- content -->
- <view class="mobile-card-row">
- 时间:{{data.ksStartTime === null ? '':data.ksStartTime}}-{{data.ksEndTime === null ? '':data.ksEndTime}}
- </view>
- <view class="mobile-card-row">
- <text>总分:{{data.ksScore === null ? '':data.ksScore}}</text>
- <text class="card-score-box">学分:{{data.credit === null ? '':data.credit}}</text>
- </view>
- <view class="mobile-card-row">
- <text>及格分:{{data.okScore === null ? '':data.okScore}}</text>
- <text class="card-score-box">考试时长:{{data.totalTm === null ? '':data.totalTm}}分钟</text>
- </view>
- <!-- button -->
- <template v-for="item in btns" :key="item.status">
- <button class="lli-btn" @click="btnClick(item)" v-if="item.show" :key="item.status"
- :disabled="data.disabled">{{item.text}}</button>
- </template>
- </view>
- </template>
- <script setup>
- import {
- toRefs,
- ref,
- computed
- } from "vue";
- const props = defineProps({
- data: {
- type: Object
- }
- })
- const {
- data
- } = toRefs(props)
- const btns = computed(() => [{
- status: 0,
- btnType: 'kaoshi',
- text: '未开始',
- show: data.value.status === 0,
- },
- {
- status: 1,
- btnType: 'kaoshi',
- text: '开始考试',
- show: data.value.status === 1,
- },
- {
- status: 3,
- btnType: 'kaoshi',
- text: '考试中',
- show: data.value.status === 3,
- },
- {
- status: 2,
- btnType: 'kaoshi',
- text: '再次考试',
- show: data.value.status === 2,
- },
- {
- status: 4,
- btnType: 'kaoshi',
- text: '已结束',
- show: data.value.status === 4,
- },
- {
- status: 5,
- btnType: 'kaoshi',
- text: '报名',
- show: data.value.status === 5,
- },
- {
- status: 6,
- btnType: 'kaoshi',
- text: '报名审核中',
- show: data.value.status === 6,
- },
- {
- status: 7,
- btnType: 'kaoshi',
- text: '审核未通过',
- show: data.value.status === 7,
- },
- {
- status: 8,
- btnType: 'kaoshi',
- text: '等待人工评分',
- show: data.value.status === 8,
- },
- ])
- </script>
- <style lang="scss" scoped>
- .mobile-card-box {
- box-sizing: border-box;
- margin: 0 30rpx 10rpx;
- border-bottom: 2rpx solid #f2f1f2;
- }
- .mobile-card-title {
- color: #333;
- font-size: 32rpx;
- font-weight: 500;
- margin: 24rpx 0 24rpx 0;
- text-overflow: ellipsis;
- -o-text-overflow: ellipsis;
- overflow: hidden;
- word-wrap: break-word;
- display: -webkit-box;
- white-space: normal;
- -webkit-box-orient: vertical;
- text-align: justify;
- -webkit-line-clamp: 2;
- line-clamp: 2;
- line-height: 48rpx;
- }
- // 行
- .mobile-card-row {
- margin-bottom: 32rpx;
- display: flex;
- justify-content: space-between;
- align-items: flex-end;
- text {
- font-size: 28rpx;
- line-height: 40rpx
- }
- // 得分
- .mobile-card-score {
- font-size: 40rpx;
- color: #F10A0A;
- }
- // 分数(有最小宽度)
- .card-score-box {
- min-width: 240rpx;
- text-align: left;
- }
- }
- // 按钮
- .mobile-card-btn {
- width: 60%;
- height: 80rpx;
- line-height: 80rpx;
- margin: 50rpx auto;
- background: linear-gradient(0deg, #436aff 0%, #234ff7 100%);
- border-radius: 80rpx;
- display: block;
- }
- </style>
|