mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-student.git
synced 2025-12-14 05:16:47 +08:00
init
This commit is contained in:
@@ -19,7 +19,7 @@ export const TAS_ACTIVITY_DETAIL = '/activity'
|
|||||||
export const TASK_ACTIVITY_SIGN = '/activitySubmit/updateActivitySignInStatus post'
|
export const TASK_ACTIVITY_SIGN = '/activitySubmit/updateActivitySignInStatus post'
|
||||||
export const TASK_BROADCAST_COMMIT = '/stu/task/broadcast/commit'
|
export const TASK_BROADCAST_COMMIT = '/stu/task/broadcast/commit'
|
||||||
export const TASK_BROADCAST_DETAIL = '/liveBroadcast'
|
export const TASK_BROADCAST_DETAIL = '/liveBroadcast'
|
||||||
export const TASK_BROADCAST_SIGN = '/stu/task/broadcast/sign'
|
export const TASK_BROADCAST_SIGN = '/stu/task/broadcast/sign post'
|
||||||
export const TASK_VOTE_COMMIT = '/stu/task/vote/commit'
|
export const TASK_VOTE_COMMIT = '/stu/task/vote/commit'
|
||||||
export const TASK_VOTE_DETAIL = '/stu/task/vote/detail'
|
export const TASK_VOTE_DETAIL = '/stu/task/vote/detail'
|
||||||
export const TASK_WORK_COMMIT = '/workSubmit/submitStudentWorkDetail post'
|
export const TASK_WORK_COMMIT = '/workSubmit/submitStudentWorkDetail post'
|
||||||
@@ -47,7 +47,7 @@ export const COMMENT_PRAISE = '/comment/praise post'
|
|||||||
export const COMMENT_COLLECTION = '/comment/collection post'
|
export const COMMENT_COLLECTION = '/comment/collection post'
|
||||||
|
|
||||||
export const ASSESSMENT_SUBMIT_QUERY = assessmentId => `/assessmentSubmit/queryAssessmentSubmitDetailById?assessmentSubmitId=${assessmentId} post`
|
export const ASSESSMENT_SUBMIT_QUERY = assessmentId => `/assessmentSubmit/queryAssessmentSubmitDetailById?assessmentSubmitId=${assessmentId} post`
|
||||||
export const ASSESSMENT_QUERY = assessmentId => `/assessment/queryAssessmentDetailById?assessmentId=${assessmentId} post`
|
export const ASSESSMENT_QUERY = assessmentId => `/stu/task/evaluate/get`
|
||||||
export const ASSESSMENT_SUBMIT = '/assessmentSubmit/submitAssessmentDetail'
|
export const ASSESSMENT_SUBMIT = '/stu/task/evaluate/commit post'
|
||||||
|
|
||||||
export const ACTIVITY = '/activity'
|
export const ACTIVITY = '/activity'
|
||||||
@@ -23,15 +23,15 @@
|
|||||||
<div class="title">【直播】{{ data?.liveName }}</div>
|
<div class="title">【直播】{{ data?.liveName }}</div>
|
||||||
<div class="time" style="margin-top: 26px">
|
<div class="time" style="margin-top: 26px">
|
||||||
<img
|
<img
|
||||||
style="width: 15px; height: 17px"
|
style="width: 15px; height: 17px"
|
||||||
src="../../assets/image/time.png"
|
src="../../assets/image/time.png"
|
||||||
/>
|
/>
|
||||||
<div style="margin-left: 8px">{{ data?.liveStartTime }}</div>
|
<div style="margin-left: 8px">{{ data?.liveStartTime }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="time" style="margin-top: 23px">
|
<div class="time" style="margin-top: 23px">
|
||||||
<img
|
<img
|
||||||
style="width: 16px; height: 18px"
|
style="width: 16px; height: 18px"
|
||||||
src="../../assets/image/position.png"
|
src="../../assets/image/position.png"
|
||||||
/>
|
/>
|
||||||
<!-- todo #直播详情 没有位置字段-->
|
<!-- todo #直播详情 没有位置字段-->
|
||||||
<div style="margin-left: 8px">大族广场</div>
|
<div style="margin-left: 8px">大族广场</div>
|
||||||
@@ -39,20 +39,19 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="threeBtn">
|
<div class="threeBtn">
|
||||||
<botton
|
<botton
|
||||||
class="btn"
|
class="btn"
|
||||||
style="background: rgb(59, 191, 252)"
|
style="background: rgb(59, 191, 252)"
|
||||||
@click="showClick"
|
@click="showClick"
|
||||||
>观看
|
>观看
|
||||||
</botton>
|
</botton>
|
||||||
<botton
|
<botton
|
||||||
class="btn"
|
class="btn"
|
||||||
style="background: rgb(57, 146, 249)"
|
:style="{background:`${data.signFlag?'#999':'rgb(57, 146, 249)'}`}"
|
||||||
@click="signClick"
|
@click="signClick"
|
||||||
v-if="!data.signFlag"
|
>{{ data.signFlag ? '已签到' : '签到' }}
|
||||||
>签到
|
|
||||||
</botton>
|
</botton>
|
||||||
<botton class="btn" @click="commitClick" v-if="!data.evalFlag"
|
<botton :style="{background:`${data.isSurvery?'#999':'rgb(57, 146, 249)'}`}" class="btn" @click="commitClick"
|
||||||
>评估
|
>{{ data.isSurvery ? '已评估' : '评估' }}
|
||||||
</botton>
|
</botton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -65,8 +64,8 @@
|
|||||||
<div class="" style="margin-left: 48px; margin-right: 48px">
|
<div class="" style="margin-left: 48px; margin-right: 48px">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<img
|
<img
|
||||||
style="width: 20px; height: 20px"
|
style="width: 20px; height: 20px"
|
||||||
src="../../assets/image/course.png"
|
src="../../assets/image/course.png"
|
||||||
/>
|
/>
|
||||||
<div class="text">课前预习</div>
|
<div class="text">课前预习</div>
|
||||||
<div class="box"></div>
|
<div class="box"></div>
|
||||||
@@ -74,21 +73,21 @@
|
|||||||
<div style="display: flex; align-items: center">
|
<div style="display: flex; align-items: center">
|
||||||
<!-- todo #直播 没有课前预习字段-->
|
<!-- todo #直播 没有课前预习字段-->
|
||||||
<div class="content">
|
<div class="content">
|
||||||
通过对各级人员的软件平台培训,使其能够了解如何运用乾元坤和智能信息管理系统来提升企业管理水平,最大限度发挥软件产品在企业中的作用;<br />
|
通过对各级人员的软件平台培训,使其能够了解如何运用乾元坤和智能信息管理系统来提升企业管理水平,最大限度发挥软件产品在企业中的作用;<br/>
|
||||||
● 培训目标
|
● 培训目标
|
||||||
<br />1.使企业不同部门人员掌握便捷、有效的系统平台操作方法;<br />
|
<br/>1.使企业不同部门人员掌握便捷、有效的系统平台操作方法;<br/>
|
||||||
2.通过系统平台的培训提高员工对企业的管理理念认识与提升。<br />
|
2.通过系统平台的培训提高员工对企业的管理理念认识与提升。<br/>
|
||||||
3.通过系统平台培训加强沟通,统一部署,协同工作,提高效率。
|
3.通过系统平台培训加强沟通,统一部署,协同工作,提高效率。
|
||||||
<br />
|
<br/>
|
||||||
●培训对象<br />
|
●培训对象<br/>
|
||||||
集团领导、各相关部门领导、总经理、车间主管、车间操作员等;<br />
|
集团领导、各相关部门领导、总经理、车间主管、车间操作员等;<br/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<img
|
<img
|
||||||
style="width: 20px; height: 20px"
|
style="width: 20px; height: 20px"
|
||||||
src="../../assets/image/write.png"
|
src="../../assets/image/write.png"
|
||||||
/>
|
/>
|
||||||
<!-- todo #直播 课后作业-->
|
<!-- todo #直播 课后作业-->
|
||||||
<div class="text">课后作业</div>
|
<div class="text">课后作业</div>
|
||||||
@@ -97,9 +96,9 @@
|
|||||||
<div style="display: flex; align-items: center">
|
<div style="display: flex; align-items: center">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span style="font-weight: 600"
|
<span style="font-weight: 600"
|
||||||
>网易有道词典现有功能结构拆解+问题分析</span
|
>网易有道词典现有功能结构拆解+问题分析</span
|
||||||
><br />
|
><br/>
|
||||||
查找资料,介绍一种国外(日本、美国、欧洲)道路(公路、铁路、城市道路、地铁)设计规范的演变过程,可以一种或几种主要技术指标为例,并说明其原因。<br />
|
查找资料,介绍一种国外(日本、美国、欧洲)道路(公路、铁路、城市道路、地铁)设计规范的演变过程,可以一种或几种主要技术指标为例,并说明其原因。<br/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -109,8 +108,8 @@
|
|||||||
<div class="tell">
|
<div class="tell">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<img
|
<img
|
||||||
style="width: 21px; height: 23px"
|
style="width: 21px; height: 23px"
|
||||||
src="../../assets/image/tv.png"
|
src="../../assets/image/tv.png"
|
||||||
/>
|
/>
|
||||||
<div class="text">直播公告</div>
|
<div class="text">直播公告</div>
|
||||||
<div class="box"></div>
|
<div class="box"></div>
|
||||||
@@ -120,18 +119,18 @@
|
|||||||
<div class="teacher">
|
<div class="teacher">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<img
|
<img
|
||||||
style="width: 21px; height: 23px"
|
style="width: 21px; height: 23px"
|
||||||
src="../../assets/image/livelecturer.png"
|
src="../../assets/image/livelecturer.png"
|
||||||
/>
|
/>
|
||||||
<!-- todo #直播详情 没有直播讲师-->
|
<!-- todo #直播详情 没有直播讲师-->
|
||||||
<div class="text">直播讲师</div>
|
<div class="text">直播讲师</div>
|
||||||
<div class="box"></div>
|
<div class="box"></div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="teacheritem"
|
class="teacheritem"
|
||||||
:style="{ 'border-bottom': '1px solid rgba(56, 125, 247, 0.2)' }"
|
:style="{ 'border-bottom': '1px solid rgba(56, 125, 247, 0.2)' }"
|
||||||
>
|
>
|
||||||
<img class="peopleimg" :src="userAvatar" />
|
<img class="peopleimg" :src="userAvatar"/>
|
||||||
<div style="margin-left: 17px; width: 190px">
|
<div style="margin-left: 17px; width: 190px">
|
||||||
<div class="teacherName" style="margin-right: 5px">
|
<div class="teacherName" style="margin-right: 5px">
|
||||||
{{ data.userInfoBo?.userName }}
|
{{ data.userInfoBo?.userName }}
|
||||||
@@ -148,23 +147,24 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { computed, reactive, toRefs } from "vue";
|
import {computed, reactive, toRefs} from "vue";
|
||||||
import img from "@/assets/image/uploadimg.png";
|
import img from "@/assets/image/uploadimg.png";
|
||||||
import { request, useRequest } from "@/api/request";
|
import {request, useRequest} from "@/api/request";
|
||||||
import { TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN } from "@/api/api";
|
import {TASK_BROADCAST_DETAIL, TASK_BROADCAST_SIGN} from "@/api/api";
|
||||||
import { useRoute } from "vue-router/dist/vue-router";
|
import {useRoute} from "vue-router/dist/vue-router";
|
||||||
import { useRouter } from "vue-router";
|
import {useRouter} from "vue-router";
|
||||||
import { useUserInfo } from "@/api/utils";
|
import {useUserInfo} from "@/api/utils";
|
||||||
|
import {ElMessage} from "element-plus";
|
||||||
|
|
||||||
const {
|
const {
|
||||||
query: { courseId: liveId },
|
query: {courseId: liveId},
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
||||||
const { data } = useRequest(TASK_BROADCAST_DETAIL, { liveId });
|
const {data} = useRequest(TASK_BROADCAST_DETAIL, {liveId});
|
||||||
|
|
||||||
const { avatar: userAvatar } = useUserInfo(
|
const {avatar: userAvatar} = useUserInfo(
|
||||||
computed(() => data.value.userInfoBo?.userId)
|
computed(() => data.value.userInfoBo?.userId)
|
||||||
);
|
);
|
||||||
|
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
@@ -174,20 +174,27 @@ const state = reactive({
|
|||||||
id: 1,
|
id: 1,
|
||||||
name: "王星天(显示事业)",
|
name: "王星天(显示事业)",
|
||||||
introduce:
|
introduce:
|
||||||
"教师是学生的镜子,学生是老师的影子。教师是学生的镜子,学生是老师的影子。教师是学生的镜子,学生是老师的影子。",
|
"教师是学生的镜子,学生是老师的影子。教师是学生的镜子,学生是老师的影子。教师是学生的镜子,学生是老师的影子。",
|
||||||
peopleimg: img,
|
peopleimg: img,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
const { activeName, teacher } = toRefs(state);
|
const {activeName, teacher} = toRefs(state);
|
||||||
const signClick = () => {
|
const signClick = () => {
|
||||||
|
if (data.value.signFlag) {
|
||||||
|
return
|
||||||
|
}
|
||||||
data.value.signFlag = 1;
|
data.value.signFlag = 1;
|
||||||
request(TASK_BROADCAST_SIGN, { courseId: liveId });
|
ElMessage.info("签到成功");
|
||||||
|
request(TASK_BROADCAST_SIGN, {courseId: liveId});
|
||||||
};
|
};
|
||||||
const commitClick = () => {
|
const commitClick = () => {
|
||||||
|
if (data.value.isSurvery) {
|
||||||
|
return
|
||||||
|
}
|
||||||
router.push({
|
router.push({
|
||||||
path: "/surveydetail",
|
path: "/surveydetail",
|
||||||
query: { courseId: data.value.assessmentId },
|
query: {courseId: data.value.assessmentId},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -480,9 +487,9 @@ function showClick() {
|
|||||||
background-color: rgba(255, 255, 255, 1);
|
background-color: rgba(255, 255, 255, 1);
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
background: linear-gradient(
|
background: linear-gradient(
|
||||||
180deg,
|
180deg,
|
||||||
rgba(36, 120, 255, 0.15) 0%,
|
rgba(36, 120, 255, 0.15) 0%,
|
||||||
rgba(255, 255, 255) 50%
|
rgba(255, 255, 255) 50%
|
||||||
);
|
);
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<div class="surveydetail" style="padding: 30px">
|
<div class="surveydetail" style="padding: 30px">
|
||||||
<!-- 面包屑导航 -->
|
<!-- 面包屑导航 -->
|
||||||
<div
|
<div
|
||||||
style="display: flex; align-items: center; justify-content: space-between"
|
style="display: flex; align-items: center; justify-content: space-between"
|
||||||
>
|
>
|
||||||
<div class="crumb">
|
<div class="crumb">
|
||||||
<div>混合制项目</div>
|
<div>混合制项目</div>
|
||||||
@@ -14,16 +14,16 @@
|
|||||||
<div class="prevnext">
|
<div class="prevnext">
|
||||||
<div class="prev">
|
<div class="prev">
|
||||||
<img
|
<img
|
||||||
style="width: 23px; height: 23px"
|
style="width: 23px; height: 23px"
|
||||||
src="../../assets/image/prev.png"
|
src="../../assets/image/prev.png"
|
||||||
/>
|
/>
|
||||||
<div style="margin-left: 7px">上一个</div>
|
<div style="margin-left: 7px">上一个</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="prev" style="margin-left: 31px">
|
<div class="prev" style="margin-left: 31px">
|
||||||
<div style="margin-right: 7px">下一个</div>
|
<div style="margin-right: 7px">下一个</div>
|
||||||
<img
|
<img
|
||||||
style="width: 23px; height: 23px"
|
style="width: 23px; height: 23px"
|
||||||
src="../../assets/image/next.png"
|
src="../../assets/image/next.png"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -36,23 +36,23 @@
|
|||||||
<div class="bascinfo">
|
<div class="bascinfo">
|
||||||
<div>
|
<div>
|
||||||
<div
|
<div
|
||||||
class="question"
|
class="question"
|
||||||
v-for="(value, index) in data.scoringQuestionVoList"
|
v-for="(value, index) in data.scoringQuestionVoList"
|
||||||
:key="index"
|
:key="index"
|
||||||
:style="{ 'margin-top': index === 0 ? '57px' : '41px' }"
|
:style="{ 'margin-top': index === 0 ? '57px' : '41px' }"
|
||||||
>
|
>
|
||||||
<div class="text">{{ value.assessmentScTitle }}</div>
|
<div class="text">{{ value.assessmentScTitle }}</div>
|
||||||
<div class="answer">
|
<div class="answer">
|
||||||
<div class="answerL">完全没用</div>
|
<div class="answerL">完全没用</div>
|
||||||
<div class="answerC">
|
<div class="answerC">
|
||||||
<div
|
<div
|
||||||
class="answerCitem"
|
class="answerCitem"
|
||||||
v-for="(item, key) in Array.from(
|
v-for="(item, key) in Array.from(
|
||||||
{ length: value.assessmentMaxScore },
|
{ length: value.assessmentMaxScore },
|
||||||
(k, i) => i
|
(k, i) => i
|
||||||
)"
|
)"
|
||||||
:key="key"
|
:key="key"
|
||||||
:style="{
|
:style="{
|
||||||
'margin-left': key === 0 ? '15px' : '10px',
|
'margin-left': key === 0 ? '15px' : '10px',
|
||||||
background:
|
background:
|
||||||
value.selectAnswer === item
|
value.selectAnswer === item
|
||||||
@@ -63,7 +63,7 @@
|
|||||||
? '#fff'
|
? '#fff'
|
||||||
: 'rgba(86, 163, 249, 1)',
|
: 'rgba(86, 163, 249, 1)',
|
||||||
}"
|
}"
|
||||||
@click="
|
@click="
|
||||||
() => {
|
() => {
|
||||||
value.selectAnswer = item;
|
value.selectAnswer = item;
|
||||||
}
|
}
|
||||||
@@ -76,23 +76,20 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="question"
|
class="question"
|
||||||
style="margin-top: 41px"
|
style="margin-top: 41px"
|
||||||
v-for="(item, i) in data.singleStemVoList"
|
v-for="(item, i) in data.assessmentSingleChoiceDtoList"
|
||||||
:key="i"
|
:key="i"
|
||||||
>
|
>
|
||||||
<div class="text">{{ item.singleStemName }}</div>
|
<div class="text">{{ item.singleStemName }}</div>
|
||||||
<div
|
<div
|
||||||
v-for="(value, index) in item.assessmentSingleChoiceVoList"
|
v-for="(value, index) in item.assessmentSingleChoiceDtoList"
|
||||||
:key="index"
|
:key="index"
|
||||||
style="display: flex; align-items: center"
|
style="display: flex; align-items: center"
|
||||||
:style="{
|
:style="{'margin-top': index === 0 ? '29px' : '22px',cursor: 'pointer'}"
|
||||||
'margin-top': index === 0 ? '29px' : '22px',
|
@click="
|
||||||
cursor: 'pointer',
|
|
||||||
}"
|
|
||||||
@click="
|
|
||||||
() => {
|
() => {
|
||||||
item.assessmentSingleChoiceVoList.forEach((e) => {
|
item.assessmentSingleChoiceDtoList.forEach((e) => {
|
||||||
e.select = false;
|
e.select = false;
|
||||||
});
|
});
|
||||||
value.select = true;
|
value.select = true;
|
||||||
@@ -100,56 +97,57 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
style="width: 19px; height: 18px; cursor: pointer"
|
style="width: 19px; height: 18px; cursor: pointer"
|
||||||
:src="value.select ? checkbox : checkbox2"
|
:src="value.select ? checkbox : checkbox2"
|
||||||
/>
|
/>
|
||||||
<div class="people">{{ value.singleOptionName }}</div>
|
<div class="people">{{ value.singleOptionName }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="question"
|
class="question"
|
||||||
style="margin-top: 41px"
|
style="margin-top: 41px"
|
||||||
v-for="(item, i) in data.multipleStemVoList"
|
v-for="(item, i) in data.multipleStemVoList"
|
||||||
:key="i"
|
:key="i"
|
||||||
>
|
>
|
||||||
<div class="text">{{ item.multipleStemName }}</div>
|
<div class="text">{{ item.multipleStemName }}</div>
|
||||||
<div
|
<div
|
||||||
v-for="(value, index) in item.multipleChoiceVoList"
|
v-for="(value, index) in item.multipleChoiceVoList"
|
||||||
:key="index"
|
:key="index"
|
||||||
style="display: flex; align-items: center"
|
style="display: flex; align-items: center"
|
||||||
:style="{
|
:style="{
|
||||||
'margin-top': index === 0 ? '29px' : '22px',
|
'margin-top': index === 0 ? '29px' : '22px',
|
||||||
cursor: 'pointer',
|
cursor: 'pointer',
|
||||||
}"
|
}"
|
||||||
@click="() => (value.select = !value.select)"
|
@click="() => (value.select = !value.select)"
|
||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
style="width: 19px; height: 18px; cursor: pointer"
|
style="width: 19px; height: 18px; cursor: pointer"
|
||||||
:src="value.select ? checkbox : checkbox2"
|
:src="value.select ? checkbox : checkbox2"
|
||||||
/>
|
/>
|
||||||
<div class="people">{{ value.multipleOptionName }}</div>
|
<div class="people">{{ value.multipleOptionName }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="question"
|
class="question"
|
||||||
style="margin-top: 41px"
|
style="margin-top: 41px"
|
||||||
v-for="(item, i) in data.essayQuestionVoList"
|
v-for="(item, i) in data.essayQuestionVoList"
|
||||||
:key="i"
|
:key="i"
|
||||||
>
|
>
|
||||||
<div class="text">{{ item.assessmentQaTitle }}</div>
|
<div class="text">{{ item.assessmentQaTitle }}</div>
|
||||||
<div style="width: 713px; margin-top: 31px; position: relative">
|
<div style="width: 713px; margin-top: 31px; position: relative">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="item.content"
|
v-model="item.content"
|
||||||
:autosize="{ minRows: 5, maxRows: 5 }"
|
:autosize="{ minRows: 5, maxRows: 5 }"
|
||||||
resize="none"
|
resize="none"
|
||||||
maxlength="200"
|
maxlength="200"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
/>
|
/>
|
||||||
<div class="words">{{ item.content?.length || 0 }}/200</div>
|
<div class="words">{{ item.content?.length || 0 }}/200</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: flex; justify-content: center">
|
<div style="display: flex; justify-content: center"
|
||||||
|
v-if="data.assessmentEssayQuestionDtoList?.length || data.assessmentMultipleChoiceDtoList?.length || data.assessmentSingleChoiceDtoList?.length || data.assessmentScoringQuestionDtoList?.length">
|
||||||
<div class="submit" @click="submit">提交</div>
|
<div class="submit" @click="submit">提交</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -161,25 +159,24 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import checkbox from "@/assets/image/checkbox.png";
|
import checkbox from "@/assets/image/checkbox.png";
|
||||||
import checkbox2 from "@/assets/image/checkbox2.png";
|
import checkbox2 from "@/assets/image/checkbox2.png";
|
||||||
import { useRoute } from "vue-router/dist/vue-router";
|
import {useRoute} from "vue-router/dist/vue-router";
|
||||||
import { request, usePage, useRequest } from "@/api/request";
|
import {request, usePage, useRequest} from "@/api/request";
|
||||||
import {
|
import {
|
||||||
ASSESSMENT_QUERY,
|
ASSESSMENT_QUERY,
|
||||||
ASSESSMENT_SUBMIT,
|
ASSESSMENT_SUBMIT,
|
||||||
COMMENT_LIST,
|
|
||||||
DISCUSS_DETAIL,
|
|
||||||
} from "@/api/api";
|
} from "@/api/api";
|
||||||
|
import {ElMessage} from "element-plus";
|
||||||
|
|
||||||
const {
|
const {
|
||||||
query: { courseId },
|
query: {courseId},
|
||||||
} = useRoute();
|
} = useRoute();
|
||||||
|
|
||||||
const { data } = useRequest(ASSESSMENT_QUERY(courseId), {});
|
const {data} = useRequest(ASSESSMENT_QUERY(courseId), {id:courseId});
|
||||||
|
|
||||||
function submit() {
|
function submit() {
|
||||||
request(ASSESSMENT_SUBMIT, data).then(() => {
|
request(ASSESSMENT_SUBMIT, {assessmentId: courseId, result: JSON.stringify(data.value)})
|
||||||
console.log("提交成功");
|
ElMessage.info("提交成功");
|
||||||
});
|
router.back()
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
|||||||
Reference in New Issue
Block a user