修改阶段状态

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="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]