Commit 6e3075f9 authored by zhengke's avatar zhengke

修改

parent 0e1a402f
......@@ -52,7 +52,7 @@
</view>
<view
class="AnswerContent"
v-if="!isOperate"
v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)"
style="margin-top: 30rpx"
>
<view>
......@@ -102,6 +102,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { proxy } = getCurrentInstance();
......@@ -117,6 +118,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -144,11 +146,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -40,7 +40,7 @@
v-html="item3.Content"></view>
</template>
</view>
<template v-if="!isOperate">
<template v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view class="AnswerContent" style="margin-bottom:20px;">
<view>
<text style="color: #8c8a94">正确答案:</text>
......@@ -70,7 +70,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate&&item1.AnswerParse" style="margin-top:20px;">
<view class="AnswerContent" v-if="!isOperate&&item1.AnswerParse&&(ExamStatus==2||ExamStatus==3)" style="margin-top:20px;">
<view style="margin-top: 20rpx; word-wrap: break-word">
<text style="color: #8c8a94">解析:</text>
<text style="color: #000">{{ item1.AnswerParse }}</text>
......@@ -106,6 +106,7 @@
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let {
......@@ -120,6 +121,7 @@
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -147,11 +149,13 @@
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -53,7 +53,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
您的答案:
<template v-if="item1.AnswerList && item1.AnswerList.length > 0">
......@@ -110,6 +110,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -125,6 +126,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -152,11 +154,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -53,7 +53,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
您的答案:
<template v-if="item1.AnswerList && item1.AnswerList.length > 0">
......@@ -110,6 +110,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -125,6 +126,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -157,11 +159,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -47,7 +47,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
您的答案:
<template v-if="item1.AnswerList && item1.AnswerList.length > 0">
......@@ -104,6 +104,7 @@ export default {
sortTotal: Number,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -118,6 +119,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -143,11 +145,14 @@ export default {
onchange(e) {
context.emit("answerChange", data.data);
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -92,7 +92,7 @@
</template>
</view>
</view>
<template v-if="!isOperate">
<template v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view class="AnswerContent">
<view>
<text style="color: #8c8a94">正确答案:</text>
......@@ -125,7 +125,7 @@
</view>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate&&item1.AnswerParse">
<view class="AnswerContent" v-if="!isOperate&&item1.AnswerParse&&(ExamStatus==2||ExamStatus==3)">
<view style="word-wrap: break-word">
<text style="color: #8c8a94">解析:</text>
<view
......@@ -166,7 +166,8 @@
sortTotal: Number,
isLast: Boolean,
startIndex: Number,
isOperate: Boolean
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let s = getCurrentInstance();
......@@ -184,7 +185,8 @@
audioTime: 999,
isPlay: true,
statusBarHeight: 0,
isOperate: props.isOperate
isOperate: props.isOperate,
ExamStatus: props.ExamStatus
});
data.data.DetailsList.map((item) => {
let arr = item.Title.split(" "); //按空格分段
......@@ -298,8 +300,10 @@
});
data.isPlay = true;
console.log(369, data.audioTime);
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
this.$emit("getAfterTopic");
}
......
......@@ -64,7 +64,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text
......@@ -130,6 +130,7 @@ export default {
sortTotal: Number,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let data = reactive({
......@@ -141,6 +142,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -174,7 +176,6 @@ export default {
item1.IsRes = item1.QuestionContentObj.some((e) => {
return e.IsAnswer;
});
console.log(item1, "item1");
context.emit("answerChange", data.data);
},
onchange(e) {
......
......@@ -32,7 +32,7 @@
<view class="viewAnswerContent" style="margin-top:20px;" v-html="item1.Answer"></view>
</template>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text>
......@@ -88,7 +88,8 @@
sortTotal: Number,
isLast: Boolean,
startIndex: Number,
isOperate: Boolean
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let {
......@@ -102,7 +103,8 @@
current: 1, //默认从第几个开始-用于从快捷菜单点入
ExamIndex: 1, //第几题
statusBarHeight: 0,
isOperate: props.isOperate
isOperate: props.isOperate,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -130,11 +132,13 @@
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -49,7 +49,7 @@
</template>
</template>
<template v-else>
<view class="AnswerContent">
<view class="AnswerContent" v-if="ExamStatus==2||ExamStatus==3">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text>
......@@ -108,6 +108,7 @@
isLast: Boolean,
isOperate: Boolean,
startIndex: Number,
ExamStatus: Number
},
setup(props, context) {
let {
......@@ -130,6 +131,7 @@
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -157,11 +159,13 @@
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -5,95 +5,59 @@
<view class="name">
<view class="grow">
{{ changeNumToHan(sortIndex) }}{{ data.GroupName }}
<text style="color: #999999"
>(共{{ data.DetailsList.length }}道,{{ data.GScore }}分)</text
>
<text style="color: #999999">(共{{ data.DetailsList.length }}道,{{ data.GScore }}分)</text>
</view>
<view class="ExamIndex_Box">
<text class="Single_Before">{{ ExamIndex }}</text
>/<text class="Exam_Total">{{ data.DetailsList.length }}</text>
<text class="Single_Before">{{ ExamIndex }}</text>/<text
class="Exam_Total">{{ data.DetailsList.length }}</text>
</view>
</view>
<swiper
class="swiper-box"
:style="{
<swiper class="swiper-box" :style="{
height: `calc(100vh - 300rpx - ${statusBarHeight}px)`,
}"
:autoplay="autoplay"
:current="current"
@change="onchange"
:skip-hidden-item-layout="true"
:disable-programmatic-animation="true"
>
}" :autoplay="autoplay" :current="current" @change="onchange" :skip-hidden-item-layout="true"
:disable-programmatic-animation="true">
<swiper-item v-if="sortIndex != 1"></swiper-item>
<swiper-item v-for="(item1, index1) in data.DetailsList" :key="index1">
<view class="item1">
<view class="flex flex_start_center">
<view class="num" v-html="item1.Title"></view>
<view class="num" v-html="item1.Title"></view>{{item1.Score}}
</view>
<view
v-for="(item2, index2) in item1.QuestionContentObj"
:key="index2"
class="flex item2 flex_start_center"
>
<view v-for="(item2, index2) in item1.QuestionContentObj" :key="index2"
class="flex item2 flex_start_center">
<template v-if="isOperate">
<view
class="chooseNum"
:class="{ myAnswer: item2.IsAnswer }"
@click="change(item1, item2)"
>{{ item2.ShowName }}
<view class="chooseNum" :class="{ myAnswer: item2.IsAnswer }"
@click="change(item1, item2)">{{ item2.ShowName }}
</view>
<view
class="chooseName"
@click="change(item1, item2)"
v-html="item2.Content"
></view>
<view class="chooseName" @click="change(item1, item2)" v-html="item2.Content"></view>
</template>
<template v-else>
<view
class="chooseNum"
:class="{ isTrueAnswer: item2.IsAnswer }"
>{{ item2.Name }}
<view class="chooseNum" :class="{ isTrueAnswer: item2.IsAnswer }">{{ item2.Name }}
</view>
<view
class="chooseName"
:class="{ isTrueAnswer: item2.IsAnswer }"
v-html="item2.Content"
>
<view class="chooseName" :class="{ isTrueAnswer: item2.IsAnswer }"
v-html="item2.Content">
</view>
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text
>
<text
>您的答案是:
<text class="isTrueAnswer">{{ item1.Answer }}</text>
<text>您的答案是:
<template v-if="item1.StundetAnswer != ''">
<text
v-if="item1.Answer == item1.StundetAnswer"
class="isTrueAnswer"
>
<text v-if="item1.Answer == item1.StundetAnswer" class="isTrueAnswer">
{{ item1.StundetAnswer }},回答正确
</text>
<text v-else class="isNotAnswer"
>{{ item1.StundetAnswer }},回答错误</text
>
<text v-else class="isNotAnswer">{{ item1.StundetAnswer }},回答错误</text>
</template>
<template v-else>
<text>未作答</text>
</template>
</text>
</view>
<view
style="margin-top: 20rpx; word-wrap: break-word"
v-if="item1.AnswerParse"
>
<text style="color: #8c8a94">解析:</text>
<text style="color: #000">{{ item1.AnswerParse }}</text>
<view style="margin-top: 20rpx; word-wrap: break-word" class="flex" v-if="item1.AnswerParse">
<text style="color: #8c8a94;flex-shrink: 0;">解析:</text>
<view style="color: #000" v-html="item1.AnswerParse"></view>
</view>
</view>
</swiper-item>
......@@ -107,7 +71,7 @@
</template>
<script>
import {
import {
ref,
reactive,
toRefs,
......@@ -116,9 +80,11 @@ import {
watch,
computed,
onMounted,
} from "vue";
import { changeNumToHan } from "../../utils/index";
export default {
} from "vue";
import {
changeNumToHan
} from "../../utils/index";
export default {
props: {
paperData: Object,
sort: Number,
......@@ -126,9 +92,12 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
let {
ctx
} = getCurrentInstance();
let data = reactive({
autoplay: false,
sortIndex: props.sort + 1, //大题序号
......@@ -138,6 +107,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -214,10 +184,10 @@ export default {
...methods,
};
},
};
};
</script>
<style scoped>
.name {
.name {
height: 90rpx;
font-size: 28rpx;
font-family: PingFang SC;
......@@ -226,76 +196,76 @@ export default {
display: flex;
align-items: center;
justify-content: space-between;
}
}
.isTrueAnswer {
.isTrueAnswer {
color: green !important;
}
}
.isNotAnswer {
.isNotAnswer {
color: red !important;
}
}
.AnswerContent {
.AnswerContent {
font-size: 28rpx;
padding: 25rpx;
background-color: #f4f4f4;
border-radius: 5px;
}
}
.Single_Before {
.Single_Before {
font-size: 28rpx;
font-weight: bold;
color: #da7878;
}
}
.ExamIndex_Box {
.ExamIndex_Box {
margin-right: 20px;
}
}
.Exam_Total {
.Exam_Total {
font-size: 25rpx;
color: gray;
}
}
.answerSheet {
.answerSheet {
font-size: 30rpx;
margin-left: 20rpx;
color: #000;
}
}
.swiper-box {
.swiper-box {
box-sizing: border-box;
}
}
.num {
.num {
font-size: 28rpx;
font-family: PingFang SC;
font-weight: bold;
color: #111111;
}
}
.item {
.item {
/* margin-bottom: 40rpx; */
position: relative;
}
}
.item1 {
.item1 {
/* margin: 25rpx 0; */
align-items: center;
}
}
.item2 {
.item2 {
padding-left: 25rpx;
margin: 30rpx 0;
}
}
.myAnswer {
.myAnswer {
background-color: #00acf9 !important;
color: #ffffff !important;
}
}
.chooseNum {
.chooseNum {
width: 40rpx;
height: 40rpx;
text-align: center;
......@@ -307,12 +277,12 @@ export default {
font-family: PingFang SC;
font-weight: bold;
color: #111111;
}
}
.chooseName {
.chooseName {
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 500;
color: #111111;
}
}
</style>
......@@ -29,7 +29,7 @@
<swiper-item v-for="(item1, index1) in data.DetailsList" :key="index1">
<view class="item1">
<view class="flex flex_start_center">
<view class="num" v-html="item1.Title"></view>
<view class="num" v-html="item1.Title"></view>{{item1.Score}}
</view>
<view
......@@ -65,7 +65,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text
......@@ -126,6 +126,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -138,6 +139,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......
......@@ -80,7 +80,7 @@
</template>
</template>
<template v-else>
<view class="AnswerContent">
<view class="AnswerContent" v-if="ExamStatus==2||ExamStatus==3">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{ item1.Answer }}</text
......@@ -146,6 +146,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -165,6 +166,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -197,11 +199,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -48,7 +48,7 @@
<view class="viewAnswerContent" style="margin-top:15px;" v-html="item1.Answer"></view>
</template>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
您的答案:
<view class="viewAnswerContent" style="margin-top: 10px">
......@@ -95,7 +95,8 @@ export default {
sortTotal: Number,
isLast: Boolean,
startIndex: Number,
isOperate: Boolean
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -107,7 +108,8 @@ export default {
current: 1, //默认从第几个开始-用于从快捷菜单点入
ExamIndex: 1, //第几题
statusBarHeight: 0,
isOperate: props.isOperate
isOperate: props.isOperate,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -135,11 +137,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -95,6 +95,8 @@ export default {
props: {
paperData: Object,
ExamStuId: Number,
SubmitTimes: Number,
StartTime: String
},
setup(props, ctx) {
let Gid = uni.getStorageSync("userInfo").Id;
......@@ -115,11 +117,43 @@ export default {
back() {
ctx.emit("hideAnswer");
},
getNowTime(){
let dateTime
let yy = new Date().getFullYear()
let mm = new Date().getMonth() + 1
let dd = new Date().getDate()
let hh = new Date().getHours()
let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
:
new Date().getMinutes()
let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
:
new Date().getSeconds()
dateTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss;
return dateTime
},
getCeshi(){
console.log('测试来了');
},
//交卷
async savePaper() {
let obj = JSON.parse(JSON.stringify(props.paperData.Paper));
delete obj.Group_Id;
obj.Exam_Student_Id = props.ExamStuId;
let time1 = props.StartTime;
let time2 = methods.getNowTime();
console.log(time1,'time1');
console.log(time2,'time2');
var d1 = new Date(time1);
var d2 = new Date(time2);
let TimeDis = parseInt(d2 - d1) / 1000 / 60;
if(TimeDis<props.SubmitTimes){
uni.showToast({
title: `开场不足${props.SubmitTimes}分钟禁止交卷哦~`,
icon: "none",
});
return
}
let res = await submitPaper(obj);
if (res) {
console.log(119, res);
......
......@@ -52,7 +52,7 @@
</view>
<view
class="AnswerContent"
v-if="!isOperate"
v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)"
style="margin-top: 30rpx"
>
<view>
......@@ -102,6 +102,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -117,6 +118,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -144,11 +146,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -37,7 +37,7 @@
</template>
</view>
</view>
<view class="AnswerContent" v-if="!isOperate">
<view class="AnswerContent" v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{item1.Answer}}</text>
......@@ -94,6 +94,7 @@
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let {
......@@ -108,6 +109,7 @@
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -147,10 +149,13 @@
onchange(e) {
context.emit("answerChange", data.data);
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
}
......
......@@ -50,7 +50,7 @@
</view>
<view
class="AnswerContent"
v-if="!isOperate"
v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)"
style="margin-top: 30rpx"
>
<view>
......@@ -100,6 +100,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -115,6 +116,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -142,11 +144,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -33,7 +33,7 @@
<view style="white-space: nowrap">{{ index2 + 1 }}、({{
item2.QuestionName.slice(0, 2)
}})</view>
<view v-html="item2.SubTitle" class="grow"></view>
<view v-html="item2.SubTitle"></view>{{item2.SubScore}}
</view>
<view v-for="(item3, index3) in item2.SubAnwser" :key="index3">
<!-- 单选 、判断-->
......@@ -114,12 +114,12 @@
<view v-html="item3.Content" class="chooseName"></view>
</view>
</view>
<view class="AnswerContent">
<view class="AnswerContent" v-if="ExamStatus==2||ExamStatus==3">
<view>
<text style="color: #8c8a94">正确答案:</text>
<text class="isTrueAnswer">{{item1.QuestionAnswerList[index2].SubAnswer}}</text>
<text>您的答案:
<template v-if="item2.StundetAnswer != ''">
<template v-if="item1.AnswerList && item1.AnswerList.length>0">
<text v-if="item1.QuestionAnswerList[index2].SubAnswer == item1.AnswerList[index2].SubAnswer" class="isTrueAnswer">
{{ item1.AnswerList[index2].SubAnswer }}
</text>
......@@ -138,7 +138,7 @@
</view>
</view>
<view style="word-wrap: break-word; margin: 0 30rpx 30rpx 30rpx"
class="AnswerContent" v-if="item1.AnswerParse">
class="AnswerContent" v-if="item1.AnswerParse&&(ExamStatus==2||ExamStatus==3)">
<text style="color: #8c8a94">解析:</text>
<text style="color: #000">{{ item1.AnswerParse }}</text>
</view>
......@@ -176,6 +176,7 @@
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let {
......@@ -194,6 +195,7 @@
timeOutEvent: false,
statusBarHeight: 0,
isOperate: props.isOperate,
ExamStatus:props.ExamStatus
});
//判断是否是第一大题
if (data.sortIndex === 1) {
......@@ -246,10 +248,13 @@
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -49,7 +49,7 @@
</view>
<view
class="AnswerContent"
v-if="!isOperate"
v-if="!isOperate&&(ExamStatus==2||ExamStatus==3)"
style="margin-top: 30rpx"
>
<view>
......@@ -99,6 +99,7 @@ export default {
isLast: Boolean,
startIndex: Number,
isOperate: Boolean,
ExamStatus: Number
},
setup(props, context) {
let { ctx } = getCurrentInstance();
......@@ -115,6 +116,7 @@ export default {
ExamIndex: 1, //第几题
isOperate: props.isOperate,
statusBarHeight: 0,
ExamStatus: props.ExamStatus
});
if (props.startIndex) {
data.current = props.startIndex;
......@@ -136,11 +138,13 @@ export default {
},
onchange(e) {
data.ExamIndex = e.detail.current;
if (data.sortIndex == 1) {
data.ExamIndex = e.detail.current + 1;
}
if (data.ExamIndex === data.data.DetailsList.length + 1) {
console.log("进入");
this.$emit("getAfterTopic");
}
if (e.detail.current == 0) {
if (e.detail.current == 0 && data.sortIndex != 1) {
this.$emit("getBeforeTopic");
}
},
......
......@@ -48,6 +48,7 @@
:sortTotal="peaperDetail.Paper.GroupList.length"
:isLast="isLast"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
v-if="
item.QuestionTypeKey === 'single-number' && index === changeIndex
"
......@@ -60,6 +61,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getBeforeTopic="getBeforeTopic()"
@getAfterTopic="getAfterTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -73,6 +75,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getBeforeTopic="getBeforeTopic()"
@getAfterTopic="getAfterTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -86,6 +89,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getBeforeTopic="getBeforeTopic()"
@getAfterTopic="getAfterTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -99,6 +103,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getBeforeTopic="getBeforeTopic()"
@getAfterTopic="getAfterTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -113,6 +118,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -129,6 +135,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -142,6 +149,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -157,6 +165,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -172,6 +181,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -187,6 +197,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -200,6 +211,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -215,6 +227,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -228,6 +241,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -241,6 +255,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -254,6 +269,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -269,6 +285,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -284,6 +301,7 @@
:sort="index"
:sortTotal="peaperDetail.Paper.GroupList.length"
:isOperate="isOperate"
:ExamStatus="ExamStatus"
@getAfterTopic="getAfterTopic()"
@getBeforeTopic="getBeforeTopic()"
@answerChange="getAnswerChange($event, index)"
......@@ -309,6 +327,8 @@
<Answer
:paperData="peaperDetail"
:ExamStuId="Exam_Student_Id"
:StartTime="StartTime"
:SubmitTimes="SubmitTimes"
@hideAnswer="hideAnswerSheet"
@chooseTopic="jumpTopic"
ref="answer"
......@@ -388,8 +408,11 @@ export default {
isShowAnswer: false, //是否显示答题卡
Exam_Student_Id: 0,
autoTimeStart: false,
isOperate: true, //考试状态 判断是考试还是查看答案
isAutoTime: true
isOperate: false, //考试状态 判断是考试还是查看答案
isAutoTime: false,
ExamStatus:-2,
StartTime:'', //页面加载后的时间
SubmitTimes: 0 //后台设置几分钟后可提交
});
let methods = {
changeNumToHan,
......@@ -409,10 +432,15 @@ export default {
if (res) {
if (res.Code == 1) {
data.peaperDetail = res.Data;
//判断是查看答题结果就不倒计时
if(this.isAutoTime){
//-1-缺考, 0-未开始,1-已开始,2-已考试,3-已阅卷
this.ExamStatus = res.Data.ExamStatusTemp;
this.SubmitTimes = res.Data.Publish.SubmitTimes;
//判断是答卷
if(res.Data.ExamStatusTemp==1){
this.isOperate=true;
data.autoTimeStart = true;
data.time = res.Data.Publish.ExamTimes * 60 * 1000;
// data.time = res.Data.Publish.ExamTimes * 60 * 1000;
data.time = 60000
}
}
}
......@@ -449,12 +477,24 @@ export default {
},
//考试结束
examFinish() {
if (data.peaperDetail.Publish.IsAutoSubmit === 1) {
}
console.log('进入');
this.$refs.answer.getCeshi();
},
};
onMounted(() => {
data.statusBarHeight = uni.getSystemInfoSync().statusBarHeight;
let yy = new Date().getFullYear()
let mm = new Date().getMonth() + 1
let dd = new Date().getDate()
let hh = new Date().getHours()
let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
:
new Date().getMinutes()
let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
:
new Date().getSeconds()
data.StartTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss;
console.log(data.StartTime,'11111111111111');
});
return {
...toRefs(data),
......@@ -474,10 +514,8 @@ export default {
if (options.Exam_Student_Id) {
this.Exam_Student_Id = options.Exam_Student_Id;
}
if (options.ExamStatus && (options.ExamStatus == 1||options.ExamStatus == 2)) {
this.isOperate = false;
if (options.ExamStatus && (options.ExamStatus == 1||options.ExamStatus == 3)) {
this.msg.isShowAnswer = true;
this.isAutoTime = false;
}
this.getPaperDetail();
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment