修改阶段状态

This commit is contained in:
yuping
2023-02-18 12:54:42 +08:00
parent 5dc9c0ef0d
commit e75e61d337
2 changed files with 1054 additions and 1016 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -20,16 +20,10 @@
<div class="titleL">{{ data.currentStageName }}</div> <div class="titleL">{{ data.currentStageName }}</div>
<div class="titleR" :style="{ display: 'flex' }"> <div class="titleR" :style="{ display: 'flex' }">
<img :src="data.currentChapterCnt ? circle : circle2" /> <img :src="data.currentChapterCnt ? circle : circle2" />
<div class="titleRT"> <div class="titleRT" :style="(stageStatusName === '未开始' || stageStatusName === '已结束') && 'color:#999'">{{stageStatusName}}</div>
<!-- <div class="titleRT" :style="{ color: data.currentChapterCnt ? '' : 'rgba(102, 102, 102, 1)' }"> -->
<!-- {{ data.currentChapterCnt ? '进行中' : '未开始' }} -->
进行中
</div>
</div> </div>
</div> </div>
<div class="course" v-for="(value, index) in data.taskBoList?.filter( <div class="course" v-for="(value, index) in data.taskBoList?.filter((e) => !whiteTypes(e.type))" :key="index">
(e) => !whiteTypes(e.type)
)" :key="index">
<div style="width: 70%"> <div style="width: 70%">
<div v-if="value.name.length > 50" class="coursename" :title="value.name"> <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"> <el-popover ref="popover" placement="right" trigger="hover" :width="300" :content="value.name">
@@ -294,9 +288,20 @@ const returnclick = () => {
}; };
const { data } = useRequest(ROUTER_PROCESS, { routerId }); const { data } = useRequest(ROUTER_PROCESS, { routerId });
const userInfo = computed(() => store.state.userInfo); const userInfo = computed(() => store.state.userInfo);
console.log('lalalallala', data)
const activeName = ref("first"); 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) => { const handleClick = (tab, event) => {
console.log(tab, event); console.log(tab, event);
}; };
@@ -369,9 +374,9 @@ function judgeTaskIsEnd(type, endTimes, status) {
case 1: case 1:
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false; status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
break; break;
case 3: // case 3:
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false; // status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
break; // break;
case 5: case 5:
status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false; status == 3 ? isEnd = true : nowTime > endTime ? isEnd = true : isEnd = false;
break; break;
@@ -385,232 +390,232 @@ function judgeTaskIsEnd(type, endTimes, status) {
return isEnd; return isEnd;
} }
function toFinish(d) { async function toFinish(d) {
console.log(d) console.log(d)
console.log(data.value.currentStageId, routerId) console.log(data.value.currentStageId, routerId)
if(judgeTaskIsEnd(d.type ,data.value.endTime, data.value.status)){ if (judgeTaskIsEnd(d.type, data.value.endTime, data.value.status)) {
ElMessage.error("当前任务已结束") ElMessage.error("当前任务已结束")
return return
} }
if (!types.value.path[d.type]) { if (!types.value.path[d.type]) {
ElMessage.error("暂时未开放"); ElMessage.error("暂时未开放");
return; return;
} }
if (d.type == 2) { if (d.type == 2) {
let date1 = new Date(d.endTime).getTime(); let date1 = new Date(d.endTime).getTime();
let date2 = new Date().getTime(); let date2 = new Date().getTime();
if (date1 < date2) { if (date1 < date2) {
dialogVisibleTip.value = '当前面授课已结束'; dialogVisibleTip.value = '当前面授课已结束';
dialogVisible.value = true; dialogVisible.value = true;
//return //return
} }
} }
if (d.type == 4) { if (d.type == 4) {
let date1 = new Date(d.endTime).getTime(); let date1 = new Date(d.endTime).getTime();
let date2 = new Date().getTime(); let date2 = new Date().getTime();
if (date1 < date2) { if (date1 < date2) {
dialogVisibleTip.value = '当前作业已结束'; dialogVisibleTip.value = '当前作业已结束';
dialogVisible.value = true; dialogVisible.value = true;
//return //return
} }
} }
// 直播结束时间 // 直播结束时间
if (d.type == 6) { if (d.type == 6) {
let date1 = new Date(d.endTime).getTime(); let date1 = new Date(d.endTime).getTime();
let date2 = new Date().getTime(); let date2 = new Date().getTime();
if (date1 < date2) { if (date1 < date2) {
dialogVisibleTip.value = '当前直播已结束'; dialogVisibleTip.value = '当前直播已结束';
dialogVisible.value = true; dialogVisible.value = true;
//return //return
} }
} }
// 考试 停用 // 考试 停用
if (d.type == 5) { if (d.type == 5) {
if (d.taskStatus == 1 || d.taskStatus == 2) { if (d.taskStatus == 1 || d.taskStatus == 2) {
// ElMessage.error("该任务无法学习,请联系管理员进行替换。") // ElMessage.error("该任务无法学习,请联系管理员进行替换。")
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!'; dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
dialogVisible.value = true; dialogVisible.value = true;
return return
} }
// 此处判断外部考试跳转 // 此处判断外部考试跳转
if(d.examType==2){ if (d.examType == 2) {
// 点击即更新状态 进行中 // 点击即更新状态 进行中
request(SubmitExternalExam, { request(SubmitExternalExam, {
"chapterId": data.value.currentStageId, "chapterId": data.value.currentStageId,
"externalId": d.courseId, "externalId": d.courseId,
"externalName": d.name, "externalName": d.name,
"targetId": routerId, "targetId": routerId,
"studentNo": userInfo.value.userNo "studentNo": userInfo.value.userNo
}).then(res=>{ }).then(res => {
console.log(res) console.log(res)
}).catch(err=>{ }).catch(err => {
console.log(err) console.log(err)
}) })
router.push({ router.push({
path: '/externalexamination', path: '/externalexamination',
query: { query: {
id: d.routerTaskId, id: d.id,
type: ROUTER, type: ROUTER,
infoId: routerId, infoId: routerId,
courseId: d.courseId, courseId: d.courseId,
pName: data.value.name, pName: data.value.name,
sName: data.value.currentStageName, sName: data.value.currentStageName,
chapterOrStageId: data.value.currentStageId, chapterOrStageId: data.value.currentStageId,
exname: d.name, // 考试名称 exname: d.name, // 考试名称
}, },
}); });
return return
} }
} }
// 评估 停用 // 评估 停用
if (d.type == 11) { if (d.type == 11) {
if (d.taskStatus == 1 || d.taskStatus == 2) { if (d.taskStatus == 1 || d.taskStatus == 2) {
// ElMessage.error("该任务无法学习,请联系管理员进行替换。") // ElMessage.error("该任务无法学习,请联系管理员进行替换。")
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!'; dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
dialogVisible.value = true; dialogVisible.value = true;
return return
} }
} }
// 其他活动 结束时间 // 其他活动 结束时间
if (d.type == 9) { if (d.type == 9) {
let date1 = new Date(d.endTime).getTime(); let date1 = new Date(d.endTime).getTime();
let date2 = new Date().getTime(); let date2 = new Date().getTime();
if (date1 < date2) { if (date1 < date2) {
dialogVisibleTip.value = '当前活动已结束'; dialogVisibleTip.value = '当前活动已结束';
dialogVisible.value = true; dialogVisible.value = true;
//return //return
} }
} }
// 在线课 停用 -- 暂时没有在线课停用标记 // 在线课 停用 -- 暂时没有在线课停用标记
if (d.type == 1) { if (d.type == 1) {
if (d.taskStatus == 1 || d.taskStatus == 2) { if (d.taskStatus == 1 || d.taskStatus == 2) {
// ElMessage.error("该任务无法学习,请联系管理员进行替换。") // ElMessage.error("该任务无法学习,请联系管理员进行替换。")
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!'; dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
dialogVisible.value = true; dialogVisible.value = true;
return return
} }
} }
// 面授课 停用 // 面授课 停用
if (d.type == 2) { if (d.type == 2) {
if (d.taskStatus == 1 || d.taskStatus == 2) { if (d.taskStatus == 1 || d.taskStatus == 2) {
// ElMessage.error("该任务无法学习,请联系管理员进行替换。") // ElMessage.error("该任务无法学习,请联系管理员进行替换。")
dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!'; dialogVisibleTip.value = '该任务无法学习,请联系管理员进行替换!';
dialogVisible.value = true; dialogVisible.value = true;
return return
} }
} }
//更新学员当前任务 //更新学员当前任务
request(UPDATE_CURRENT_TASK,{id:d.routerTaskId,type:ROUTER,pid:routerId,name:d.name}) await request(UPDATE_CURRENT_TASK, {id: d.id, type: ROUTER, pid: routerId, name: d.name})
if (d.type === 3 || d.type === 7) { if (d.type === 3 || d.type === 7) {
d.status!==1 && request(STUDY_RECORD, { d.status !== 1 && await request(STUDY_RECORD, {
studentId: userInfo.value.id, studentId: userInfo.value.id,
targetId: data.value.routerId, targetId: data.value.routerId,
logo: ROUTER, logo: ROUTER,
stageOrChapterId: data.value.currentStageId, stageOrChapterId: data.value.currentStageId,
taskId: d.routerTaskId, taskId: d.id,
}); });
// 此处判断外链跳转详情界面 // 此处判断外链跳转详情界面
if(d.type==7){ if (d.type == 7) {
router.push({ router.push({
path: '/outerchain', path: '/outerchain',
query: { query: {
id: d.routerTaskId, id: d.id,
type: ROUTER, type: ROUTER,
infoId: routerId, infoId: routerId,
courseId: d.courseId, courseId: d.courseId,
pName: data.value.name, pName: data.value.name,
sName: data.value.currentStageName, sName: data.value.currentStageName,
chapterOrStageId: data.value.currentStageId, chapterOrStageId: data.value.currentStageId,
exname: d.name, // 外链名称 exname: d.name, // 外链名称
}, },
}); });
return return
} }
} }
// 测评模块 请求接口跳转新的页面 - 新增 暂时未调试 目前无测评数据 2023-02-04 // 测评模块 请求接口跳转新的页面 - 新增 暂时未调试 目前无测评数据 2023-02-04
if(d.type == 10) { if (d.type == 10) {
// 此处判断测评跳转详情界面 // 此处判断测评跳转详情界面
router.push({ router.push({
path: '/evaluation', path: '/evaluation',
query: { query: {
id: d.routerTaskId, id: d.id,
type: ROUTER, type: ROUTER,
infoId: routerId, infoId: routerId,
courseId: d.courseId, courseId: d.courseId,
pName: data.value.name, pName: data.value.name,
sName: data.value.currentStageName, sName: data.value.currentStageName,
chapterOrStageId: data.value.currentStageId, chapterOrStageId: data.value.currentStageId,
exname: d.name, // 测评名称 exname: d.name, // 测评名称
btype: 2 // 1项目 2 路径图 btype: 2 // 1项目 2 路径图
}, },
}); });
return return
// 调用接口 跳转页面 // 调用接口 跳转页面
console.log('我是查询测评跳转链接所传递得参数',{ console.log('我是查询测评跳转链接所传递得参数', {
"businessType": "learningpath", "businessType": "learningpath",
"chapterId": data.value.currentStageId, "chapterId": data.value.currentStageId,
"courseId": d.courseId, "courseId": d.courseId,
"quizKid": d.targetId, "quizKid": d.targetId,
"routerOrProjectId": routerId, "routerOrProjectId": routerId,
"studentId": userInfo.value.id, "studentId": userInfo.value.id,
"studentName": userInfo.value.realName "studentName": userInfo.value.realName
}) })
request(EvaluationToLearn, { request(EvaluationToLearn, {
"businessType": "learningpath", "businessType": "learningpath",
"chapterId": data.value.currentStageId, "chapterId": data.value.currentStageId,
"courseId": d.courseId, "courseId": d.courseId,
"quizKid": d.targetId, "quizKid": d.targetId,
"routerOrProjectId": routerId, "routerOrProjectId": routerId,
"studentId": userInfo.value.id, "studentId": userInfo.value.id,
"studentName": userInfo.value.realName "studentName": userInfo.value.realName
}).then(res=>{ }).then(res => {
console.log(res) console.log(res)
if(res.code==200){ if (res.code == 200) {
let jumpUrl = res.data.quizUrl let jumpUrl = res.data.quizUrl
// 此处写跳转url // 此处写跳转url
window.open( jumpUrl, '_top') window.open(jumpUrl, '_top')
} }
}).catch(err=>{ }).catch(err => {
console.log(err) console.log(err)
}) })
return return
} }
if (typeof types.value.path[d.type] === "string") { if (typeof types.value.path[d.type] === "string") {
types.value.path[d.type] && types.value.path[d.type] &&
types.value.path[d.type].startsWith("http") && types.value.path[d.type].startsWith("http") &&
window.open(types.value.path[d.type] + d.targetId,'_top'); window.open(types.value.path[d.type] + d.targetId, '_top');
types.value.path[d.type] && types.value.path[d.type] &&
types.value.path[d.type].startsWith("/") && types.value.path[d.type].startsWith("/") &&
router.push({ router.push({
path: types.value.path[d.type], path: types.value.path[d.type],
query: { query: {
id: d.routerTaskId, id: d.id,
type: ROUTER, type: ROUTER,
infoId: routerId, infoId: routerId,
courseId: d.courseId, courseId: d.courseId,
pName: data.value.name, pName: data.value.name,
sName: data.value.currentStageName, sName: data.value.currentStageName,
chapterOrStageId: data.value.currentStageId, chapterOrStageId: data.value.currentStageId,
btype: 2 btype: 2
}, },
}); });
} else if (typeof types.value.path[d.type] === "function") { } else if (typeof types.value.path[d.type] === "function") {
console.log("ddddddd", d); console.log("ddddddd", d);
types.value.path[d.type](d); types.value.path[d.type](d);
// console.log("types.value.path[d.type](d)", d); // console.log("types.value.path[d.type](d)", d);
} }
} }