mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-student.git
synced 2025-12-08 18:36:48 +08:00
修改阶段状态
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -20,16 +20,10 @@
|
||||
<div class="titleL">{{ data.currentStageName }}</div>
|
||||
<div class="titleR" :style="{ display: 'flex' }">
|
||||
<img :src="data.currentChapterCnt ? circle : circle2" />
|
||||
<div class="titleRT">
|
||||
<!-- <div class="titleRT" :style="{ color: data.currentChapterCnt ? '' : 'rgba(102, 102, 102, 1)' }"> -->
|
||||
<!-- {{ data.currentChapterCnt ? '进行中' : '未开始' }} -->
|
||||
进行中
|
||||
</div>
|
||||
<div class="titleRT" :style="(stageStatusName === '未开始' || stageStatusName === '已结束') && 'color:#999'">{{stageStatusName}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="course" v-for="(value, index) in data.taskBoList?.filter(
|
||||
(e) => !whiteTypes(e.type)
|
||||
)" :key="index">
|
||||
<div class="course" v-for="(value, index) in data.taskBoList?.filter((e) => !whiteTypes(e.type))" :key="index">
|
||||
<div style="width: 70%">
|
||||
<div v-if="value.name.length > 50" class="coursename" :title="value.name">
|
||||
<el-popover ref="popover" placement="right" trigger="hover" :width="300" :content="value.name">
|
||||
@@ -123,8 +117,8 @@
|
||||
{{ data.remark || "暂无说明" }}
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
|
||||
<el-tab-pane label="共享文档" name="second">
|
||||
|
||||
<el-tab-pane label="共享文档" name="second">
|
||||
<div style="padding: 19px 30px 17px 28px">
|
||||
<div
|
||||
v-for="(value, index) in JSON.parse(data.attach?data.attach:'[]')"
|
||||
@@ -179,7 +173,7 @@
|
||||
<div class="text" style="margin-left: 9px">学习进度</div>
|
||||
<div class="box"></div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="rate">
|
||||
<div class="ratetext">上次学到:{{ data.lastLearned }}</div>
|
||||
<div v-if="data.lastLearned" class="ratebtn" @click="continueLearn(data.lastLearned, data.taskBoList)">继续学习</div>
|
||||
@@ -294,9 +288,20 @@ const returnclick = () => {
|
||||
};
|
||||
const { data } = useRequest(ROUTER_PROCESS, { routerId });
|
||||
const userInfo = computed(() => store.state.userInfo);
|
||||
console.log('lalalallala', data)
|
||||
const activeName = ref("first");
|
||||
|
||||
const stageStatusName = computed(()=>{
|
||||
if(data.value.status !== 1){
|
||||
return '已结束'
|
||||
}
|
||||
if(!data.value.taskBoList?.filter(t=>t.status===1)?.length){
|
||||
return '未开始'
|
||||
}
|
||||
if(data.value.taskBoList.filter(t=>t.status===1).length === data.value.taskBoList.length){
|
||||
return '已完成'
|
||||
}
|
||||
return '进行中'
|
||||
});
|
||||
const handleClick = (tab, event) => {
|
||||
console.log(tab, event);
|
||||
};
|
||||
@@ -369,9 +374,9 @@ function judgeTaskIsEnd(type, endTimes, status) {
|
||||
case 1:
|
||||
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
|
||||
break;
|
||||
case 3:
|
||||
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
|
||||
break;
|
||||
// case 3:
|
||||
// status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
|
||||
// break;
|
||||
case 5:
|
||||
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
|
||||
break;
|
||||
@@ -385,232 +390,232 @@ function judgeTaskIsEnd(type, endTimes, status) {
|
||||
return isEnd;
|
||||
}
|
||||
|
||||
function toFinish(d) {
|
||||
console.log(d)
|
||||
console.log(data.value.currentStageId, routerId)
|
||||
|
||||
if(judgeTaskIsEnd(d.type ,data.value.endTime, data.value.status)){
|
||||
ElMessage.error("当前任务已结束")
|
||||
return
|
||||
}
|
||||
async function toFinish(d) {
|
||||
console.log(d)
|
||||
console.log(data.value.currentStageId, routerId)
|
||||
|
||||
if (!types.value.path[d.type]) {
|
||||
ElMessage.error("暂时未开放");
|
||||
return;
|
||||
}
|
||||
if (d.type == 2) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前面授课已结束';
|
||||
dialogVisible.value = true;
|
||||
if (judgeTaskIsEnd(d.type, data.value.endTime, data.value.status)) {
|
||||
ElMessage.error("当前任务已结束")
|
||||
return
|
||||
}
|
||||
|
||||
//return
|
||||
}
|
||||
}
|
||||
if (d.type == 4) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前作业已结束';
|
||||
dialogVisible.value = true;
|
||||
if (!types.value.path[d.type]) {
|
||||
ElMessage.error("暂时未开放");
|
||||
return;
|
||||
}
|
||||
if (d.type == 2) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前面授课已结束';
|
||||
dialogVisible.value = true;
|
||||
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 直播结束时间
|
||||
if (d.type == 6) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前直播已结束';
|
||||
dialogVisible.value = true;
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 考试 停用
|
||||
if (d.type == 5) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
// 此处判断外部考试跳转
|
||||
if(d.examType==2){
|
||||
//return
|
||||
}
|
||||
}
|
||||
if (d.type == 4) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前作业已结束';
|
||||
dialogVisible.value = true;
|
||||
|
||||
// 点击即更新状态 进行中
|
||||
request(SubmitExternalExam, {
|
||||
"chapterId": data.value.currentStageId,
|
||||
"externalId": d.courseId,
|
||||
"externalName": d.name,
|
||||
"targetId": routerId,
|
||||
"studentNo": userInfo.value.userNo
|
||||
}).then(res=>{
|
||||
console.log(res)
|
||||
}).catch(err=>{
|
||||
console.log(err)
|
||||
})
|
||||
|
||||
router.push({
|
||||
path: '/externalexamination',
|
||||
query: {
|
||||
id: d.routerTaskId,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 考试名称
|
||||
},
|
||||
});
|
||||
return
|
||||
}
|
||||
}
|
||||
// 评估 停用
|
||||
if (d.type == 11) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
// 其他活动 结束时间
|
||||
if (d.type == 9) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前活动已结束';
|
||||
dialogVisible.value = true;
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 在线课 停用 -- 暂时没有在线课停用标记
|
||||
if (d.type == 1) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
// 面授课 停用
|
||||
if (d.type == 2) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 直播结束时间
|
||||
if (d.type == 6) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前直播已结束';
|
||||
dialogVisible.value = true;
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 考试 停用
|
||||
if (d.type == 5) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
// 此处判断外部考试跳转
|
||||
if (d.examType == 2) {
|
||||
|
||||
// 点击即更新状态 进行中
|
||||
request(SubmitExternalExam, {
|
||||
"chapterId": data.value.currentStageId,
|
||||
"externalId": d.courseId,
|
||||
"externalName": d.name,
|
||||
"targetId": routerId,
|
||||
"studentNo": userInfo.value.userNo
|
||||
}).then(res => {
|
||||
console.log(res)
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
})
|
||||
|
||||
router.push({
|
||||
path: '/externalexamination',
|
||||
query: {
|
||||
id: d.id,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 考试名称
|
||||
},
|
||||
});
|
||||
return
|
||||
}
|
||||
}
|
||||
// 评估 停用
|
||||
if (d.type == 11) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
// 其他活动 结束时间
|
||||
if (d.type == 9) {
|
||||
let date1 = new Date(d.endTime).getTime();
|
||||
let date2 = new Date().getTime();
|
||||
if (date1 < date2) {
|
||||
dialogVisibleTip.value = '当前活动已结束';
|
||||
dialogVisible.value = true;
|
||||
//return
|
||||
}
|
||||
}
|
||||
// 在线课 停用 -- 暂时没有在线课停用标记
|
||||
if (d.type == 1) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
// 面授课 停用
|
||||
if (d.type == 2) {
|
||||
if (d.taskStatus == 1 || d.taskStatus == 2) {
|
||||
// ElMessage.error("该任务无法学习,请联系管理员进行替换。")
|
||||
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
|
||||
dialogVisible.value = true;
|
||||
return
|
||||
}
|
||||
}
|
||||
//更新学员当前任务
|
||||
request(UPDATE_CURRENT_TASK,{id:d.routerTaskId,type:ROUTER,pid:routerId,name:d.name})
|
||||
if (d.type === 3 || d.type === 7) {
|
||||
d.status!==1 && request(STUDY_RECORD, {
|
||||
studentId: userInfo.value.id,
|
||||
targetId: data.value.routerId,
|
||||
logo: ROUTER,
|
||||
stageOrChapterId: data.value.currentStageId,
|
||||
taskId: d.routerTaskId,
|
||||
});
|
||||
await request(UPDATE_CURRENT_TASK, {id: d.id, type: ROUTER, pid: routerId, name: d.name})
|
||||
if (d.type === 3 || d.type === 7) {
|
||||
d.status !== 1 && await request(STUDY_RECORD, {
|
||||
studentId: userInfo.value.id,
|
||||
targetId: data.value.routerId,
|
||||
logo: ROUTER,
|
||||
stageOrChapterId: data.value.currentStageId,
|
||||
taskId: d.id,
|
||||
});
|
||||
|
||||
// 此处判断外链跳转详情界面
|
||||
if(d.type==7){
|
||||
router.push({
|
||||
path: '/outerchain',
|
||||
query: {
|
||||
id: d.routerTaskId,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 外链名称
|
||||
},
|
||||
});
|
||||
return
|
||||
}
|
||||
}
|
||||
// 此处判断外链跳转详情界面
|
||||
if (d.type == 7) {
|
||||
router.push({
|
||||
path: '/outerchain',
|
||||
query: {
|
||||
id: d.id,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 外链名称
|
||||
},
|
||||
});
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// 测评模块 请求接口跳转新的页面 - 新增 暂时未调试 目前无测评数据 2023-02-04
|
||||
if(d.type == 10) {
|
||||
// 测评模块 请求接口跳转新的页面 - 新增 暂时未调试 目前无测评数据 2023-02-04
|
||||
if (d.type == 10) {
|
||||
|
||||
|
||||
// 此处判断测评跳转详情界面
|
||||
router.push({
|
||||
path: '/evaluation',
|
||||
query: {
|
||||
id: d.routerTaskId,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 测评名称
|
||||
btype: 2 // 1项目 2 路径图
|
||||
},
|
||||
});
|
||||
return
|
||||
|
||||
// 调用接口 跳转页面
|
||||
console.log('我是查询测评跳转链接所传递得参数',{
|
||||
"businessType": "learningpath",
|
||||
"chapterId": data.value.currentStageId,
|
||||
"courseId": d.courseId,
|
||||
"quizKid": d.targetId,
|
||||
"routerOrProjectId": routerId,
|
||||
"studentId": userInfo.value.id,
|
||||
"studentName": userInfo.value.realName
|
||||
})
|
||||
request(EvaluationToLearn, {
|
||||
"businessType": "learningpath",
|
||||
"chapterId": data.value.currentStageId,
|
||||
"courseId": d.courseId,
|
||||
"quizKid": d.targetId,
|
||||
"routerOrProjectId": routerId,
|
||||
"studentId": userInfo.value.id,
|
||||
"studentName": userInfo.value.realName
|
||||
}).then(res=>{
|
||||
console.log(res)
|
||||
if(res.code==200){
|
||||
let jumpUrl = res.data.quizUrl
|
||||
// 此处写跳转url
|
||||
window.open( jumpUrl, '_top')
|
||||
}
|
||||
}).catch(err=>{
|
||||
console.log(err)
|
||||
})
|
||||
return
|
||||
}
|
||||
// 此处判断测评跳转详情界面
|
||||
router.push({
|
||||
path: '/evaluation',
|
||||
query: {
|
||||
id: d.id,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
exname: d.name, // 测评名称
|
||||
btype: 2 // 1项目 2 路径图
|
||||
},
|
||||
});
|
||||
return
|
||||
|
||||
if (typeof types.value.path[d.type] === "string") {
|
||||
types.value.path[d.type] &&
|
||||
types.value.path[d.type].startsWith("http") &&
|
||||
window.open(types.value.path[d.type] + d.targetId,'_top');
|
||||
types.value.path[d.type] &&
|
||||
types.value.path[d.type].startsWith("/") &&
|
||||
router.push({
|
||||
path: types.value.path[d.type],
|
||||
query: {
|
||||
id: d.routerTaskId,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
btype: 2
|
||||
},
|
||||
});
|
||||
} else if (typeof types.value.path[d.type] === "function") {
|
||||
console.log("ddddddd", d);
|
||||
types.value.path[d.type](d);
|
||||
// console.log("types.value.path[d.type](d)", d);
|
||||
}
|
||||
// 调用接口 跳转页面
|
||||
console.log('我是查询测评跳转链接所传递得参数', {
|
||||
"businessType": "learningpath",
|
||||
"chapterId": data.value.currentStageId,
|
||||
"courseId": d.courseId,
|
||||
"quizKid": d.targetId,
|
||||
"routerOrProjectId": routerId,
|
||||
"studentId": userInfo.value.id,
|
||||
"studentName": userInfo.value.realName
|
||||
})
|
||||
request(EvaluationToLearn, {
|
||||
"businessType": "learningpath",
|
||||
"chapterId": data.value.currentStageId,
|
||||
"courseId": d.courseId,
|
||||
"quizKid": d.targetId,
|
||||
"routerOrProjectId": routerId,
|
||||
"studentId": userInfo.value.id,
|
||||
"studentName": userInfo.value.realName
|
||||
}).then(res => {
|
||||
console.log(res)
|
||||
if (res.code == 200) {
|
||||
let jumpUrl = res.data.quizUrl
|
||||
// 此处写跳转url
|
||||
window.open(jumpUrl, '_top')
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (typeof types.value.path[d.type] === "string") {
|
||||
types.value.path[d.type] &&
|
||||
types.value.path[d.type].startsWith("http") &&
|
||||
window.open(types.value.path[d.type] + d.targetId, '_top');
|
||||
types.value.path[d.type] &&
|
||||
types.value.path[d.type].startsWith("/") &&
|
||||
router.push({
|
||||
path: types.value.path[d.type],
|
||||
query: {
|
||||
id: d.id,
|
||||
type: ROUTER,
|
||||
infoId: routerId,
|
||||
courseId: d.courseId,
|
||||
pName: data.value.name,
|
||||
sName: data.value.currentStageName,
|
||||
chapterOrStageId: data.value.currentStageId,
|
||||
btype: 2
|
||||
},
|
||||
});
|
||||
} else if (typeof types.value.path[d.type] === "function") {
|
||||
console.log("ddddddd", d);
|
||||
types.value.path[d.type](d);
|
||||
// console.log("types.value.path[d.type](d)", d);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -627,7 +632,7 @@ function downloadFile(url){
|
||||
function continueLearn(taskname, datas){
|
||||
console.log('我是当前的列表展示信息',data)
|
||||
console.log(datas)
|
||||
let jumpinfo
|
||||
let jumpinfo
|
||||
for(let i=0; i<datas.length; i++){
|
||||
if(datas[i].name==taskname){
|
||||
jumpinfo = datas[i]
|
||||
|
||||
Reference in New Issue
Block a user