diff --git a/src/components/drawers/project/AddCertificate.vue b/src/components/drawers/project/AddCertificate.vue index 2b6684f1..71698ba6 100644 --- a/src/components/drawers/project/AddCertificate.vue +++ b/src/components/drawers/project/AddCertificate.vue @@ -307,7 +307,7 @@ id="inputNumber" v-model:value="score" :min="1" - :max="100" + :max="projectPoints" style="width: 70px" :disabled="condition !== 5" /> @@ -320,7 +320,7 @@ margin-left: 5px; " > - 分可获得,当前项目积分为 10 分 + 分可获得,当前项目积分为 {{ projectPoints }} 分 ", state.projectId,period, type); - console.log('我是查询榜单传递的数据',{ + console.log("projectId----->", state.projectId, period, type); + console.log("我是查询榜单传递的数据", { projectId: state.projectId, // 项目id name: "", // 名字,没有则传空字符串 - startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳 - endTime: state.rankEndTime?state.rankEndTime:0, + startTime: state.rankStartTime ? state.rankStartTime : 0, // 数据查询的起始时间 10位时间戳 + endTime: state.rankEndTime ? state.rankEndTime : 0, size: 10, // 前多少名 type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜 - }) + }); let obj = { projectId: 290, // 项目id name: "", // 名字,没有则传空字符串 - startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳 - endTime: state.rankEndTime?state.rankEndTime:0, + startTime: state.rankStartTime ? state.rankStartTime : 0, // 数据查询的起始时间 10位时间戳 + endTime: state.rankEndTime ? state.rankEndTime : 0, size: 10, // 前多少名 type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜 }; - + api .scoreRank(obj) .then((res) => { console.log("获取项目积分-榜单", res); - if(res.data.code==200){ + if (res.data.code == 200) { state.datascore = res.data.data; state.datascoreg = res.data.data; state.xuefentabledata = res.data.data; state.scoreRankLoading = false; - }else{ + } else { state.datascore = []; state.datascoreg = []; state.xuefentabledata = []; @@ -2848,7 +2854,7 @@ export default { .catch((err) => { console.log("获取项目积分-榜单失败", err); message.destroy(); - message.error('榜单获取失败'); + message.error("榜单获取失败"); state.datascore = []; state.datascoreg = []; state.xuefentabledata = []; @@ -2861,29 +2867,31 @@ export default { state.processRankLoading = true; let obj = { projectId: 290, // 项目id - startTime: state.rankStartTime?state.rankStartTime:0, // 数据查询的起始时间 10位时间戳 - endTime: state.rankEndTime?state.rankEndTime:0, + startTime: state.rankStartTime ? state.rankStartTime : 0, // 数据查询的起始时间 10位时间戳 + endTime: state.rankEndTime ? state.rankEndTime : 0, stageId: state.valuestu2, // 阶段ID type: Number(state.valuestu3), // 查询类型 0 学员积分榜 1 小组积分榜 - } + }; - console.log('我是获取得项目进度排行榜--》', obj) - api.completionRank(obj).then(res=>{ - console.log('项目进度榜单获取',res) - if(res.data.datas){ - state.jindutabledata = res.data.datas; - state.processRankLoading = false; - }else{ + console.log("我是获取得项目进度排行榜--》", obj); + api + .completionRank(obj) + .then((res) => { + console.log("项目进度榜单获取", res); + if (res.data.datas) { + state.jindutabledata = res.data.datas; + state.processRankLoading = false; + } else { + state.jindutabledata = []; + state.processRankLoading = false; + } + }) + .catch((err) => { + console.log(err); state.jindutabledata = []; state.processRankLoading = false; - } - - }).catch(err=>{ - console.log(err) - state.jindutabledata = []; - state.processRankLoading = false; - }) - } + }); + }; // 排行榜 - end @@ -2948,27 +2956,30 @@ export default { } } levelList.stageList = res.data.data.stageList; - - if(levelList.stageList.length==1){ + + if (levelList.stageList.length == 1) { // 无解段任务 - state.rankjieduan = [{value:0, label:'无阶段'}]; + state.rankjieduan = [{ value: 0, label: "无阶段" }]; state.valuestu2 = 0; - }else{ + } else { // 有阶段任务 - let arrStage = [] - for(let i=0; i', res.data.data.stageList) + console.log( + "----------------------------------->", + res.data.data.stageList + ); //暂时传个固定的id用 到时候看数据里面是否有在更换 // state.projectTaskId = res.data.data.stageList[0].taskList[0].projectTaskId @@ -3221,13 +3232,13 @@ export default { }; //考试管理的抽屉 const showTest = (name, id, data) => { - if(data.startTime==null && data.endTime==null){ + if (data.startTime == null && data.endTime == null) { // 外部考试抽屉显示 state.TMvisibleExternal = true; state.examData = data; state.showTestText = name; state.projectTaskId = id; - }else{ + } else { // 系统考试抽屉显示 state.TMvisible = true; state.examData = data; @@ -3633,7 +3644,6 @@ export default { scoreRank(); // 获取项目进度排行榜 completionRank(); - } else if (e == 3) { state.tabFlag = true; } else { @@ -3641,8 +3651,8 @@ export default { state.tabFlag = false; } - if(e!=7){ -state.ischeckCertificate=false + if (e != 7) { + state.ischeckCertificate = false; } console.log("切换了", state.tabFlag); }; @@ -4578,8 +4588,205 @@ state.ischeckCertificate=false return typeRules[type]; }; + // 判断当前任务已结束及时间意义上的结束 提示用户 + function judgeTaskIsEnd(type, endTimes, status) { + // type 任务类型 endTime 结束时间 status 任务状态 (状态 0 未完成 1 已完成 2 未开始 3 已结束) + console.log(type, endTimes, status); + let isEnd = false; + let nowTime = new Date().getTime(); + let endTime = new Date().getTime(endTimes); + switch (type) { + 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 5: + status == 3 + ? (isEnd = true) + : nowTime > endTime + ? (isEnd = true) + : (isEnd = false); + break; + case 7: + status == 3 + ? (isEnd = true) + : nowTime > endTime + ? (isEnd = true) + : (isEnd = false); + break; + case 10: + status == 3 + ? (isEnd = true) + : nowTime > endTime + ? (isEnd = true) + : (isEnd = false); + break; + } + return isEnd; + } //显示二维码弹窗 const showCodeModel = (item) => { + if (judgeTaskIsEnd(item.type, state.endTime, state.status)) { + message.error("当前任务已结束"); + return; + } + console.log("item", item); + let codeUrl = ""; + // 在线课 停用 -- 暂时没有在线课停用标记 + if (item.type == 1) { + if (item.taskStatus == 1 || item.taskStatus == 2) + return message.error("该任务无法学习,请联系管理员进行替换。"); + window.open( + window.location.protocol + + import.meta.env.VITE_BOE_ONLINE_CLASS_URL + + item.targetId, + "_top" + ); + } + if (item.type == 2) { + let date1 = new Date(item.endTime).getTime(); + let date2 = new Date().getTime(); + if (date1 < date2) return message.warning("当前面授课已结束"); + if (item.taskStatus == 1 || item.taskStatus == 2) + return message.error("该任务无法学习,请联系管理员进行替换。"); + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/externalexam?courseId=" + + item.courseId; + } + + if (item.type == 4) { + let date1 = new Date(item.endTime).getTime(); + let date2 = new Date().getTime(); + if (date1 < date2) return message.warning("当前作业已结束"); + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/homeworkpage?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId; + } + // 考试 停用 + if (item.type == 5) { + if (item.taskStatus == 1 || item.taskStatus == 2) + return message.error("该任务无法学习,请联系管理员进行替换。"); + // 此处判断外部考试跳转 + if (item.startTime == null || item.endTime == null) { + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/externalexam?courseId=" + + item.courseId; + } + } + // 直播结束时间 + if (item.type == 6) { + let date1 = new Date(item.endTime).getTime(); + let date2 = new Date().getTime(); + if (date1 < date2) return message.warning("当前直播已结束"); + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/livebroadcast?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId; + } + // 外链 + if (item.type == 7) { + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/outerchain?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId + + "&status=" + + item.status + + "&chapterOrStageId=" + + item.stageId + + "&infoId=" + + state.projectId; + } + //讨论 + if (item.type == 8) { + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/discusspage?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId; + } + //活动 + if (item.type == 9) { + let date1 = new Date(item.endTime).getTime(); + let date2 = new Date().getTime(); + if (date1 < date2) return message.warning("当前活动已结束"); + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/activitiespage?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId; + } + //活动 + if (item.type == 10) { + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/evaluation?courseId=" + + item.courseId + + "&evaType=" + + item.evaType + + "&targetId=" + + item.targetId; + } + + // 评估 停用 + if (item.type == 11) { + if (item.taskStatus == 1 || item.taskStatus == 2) + return message.error("该任务无法学习,请联系管理员进行替换。"); + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/investigatage?courseId=" + + item.courseId + + "&type=1&id=" + + item.projectTaskId + + "&chapterOrStageId=" + + item.stageId + + "&infoId=" + + state.projectId; + } + // 投票 + if (item.type == 12) { + codeUrl = + window.location.protocol + + process.env.VUE_APP_H5 + + "/ballotpage?courseId=" + + item.courseId + + "&btype=2&id=" + + item.projectTaskId + + "&chapterOrStageId=" + + item.chapterId + + "&infoId=" + + state.projectId; + } + state.codevisible = true; let obj = { title: "[" + checkType(item.type) + "]二维码", @@ -4594,7 +4801,7 @@ state.ischeckCertificate=false let obj = { title: "[项目]二维码", name: state.name, - url: codeUrl, + // url: codeUrl, }; state.codeInfo = obj; }; @@ -4821,7 +5028,6 @@ state.ischeckCertificate=false completionRank, jdSelectChange, jdSelectChange1, - }; }, };