diff --git a/src/components/drawers/router/RouterFaceStu.vue b/src/components/drawers/router/RouterFaceStu.vue index c9a1cc1f..3c10f798 100644 --- a/src/components/drawers/router/RouterFaceStu.vue +++ b/src/components/drawers/router/RouterFaceStu.vue @@ -413,21 +413,76 @@ function resetStudentPage() { //二维码 const qrcodeVisible = () => { - qrCode({ - title: "【开课】二维码", - name: openCourseName.value?openCourseName.value:data.value[0]?.name, - // url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${props.datasource.id}&taskType=${props.datasource.type}&type=${props.type}`, - url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/stu/project/redirectDetail?courseId=${data.value[coursePlanIndex.value]?.id}`, - }); + // 添加错误弹框 + let startName; + if (openCourseName.value) { + startName = openCourseName.value; + } else if (Array.isArray(data.value) && data.value.length > 0 && data.value[0]?.name) { + startName = data.value[0].name; + } else { + const errorMessage = '二维码生成失败,请联系运维人员 ,参数{ name : 课程名称未找到,url:未指定}' + message.error(errorMessage); + return; + } + let courseId; + if (Array.isArray(data.value) && coursePlanIndex.value !== undefined && data.value[coursePlanIndex.value]?.id) { + courseId = data.value[coursePlanIndex.value].id; + } else { + const errorMessage = `二维码生成失败,请联系运维人员 ,参数{ name : ${startName},url:未找到}`; + message.error(errorMessage); + return; + } + if (courseId && startName) { + qrCode({ + title: "【开课】二维码", + name: startName, + url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/stu/project/redirectDetail?courseId=${courseId}`, + }); + } + +// qrCode({ +// title: "【开课】二维码", +// name: openCourseName.value?openCourseName.value:data.value[0]?.name, +// // url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${props.datasource.id}&taskType=${props.datasource.type}&type=${props.type}`, +// url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/stu/project/redirectDetail?courseId=${data.value[coursePlanIndex.value]?.id}`, +// }); }; // 签到二维码 const qrcodeVisibleSign = () => { - qrCode({ - title: "【签到】二维码", - name: openCourseName.value?openCourseName.value:data.value[0]?.name, - // url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${props.datasource.id}&taskType=${props.datasource.type}&type=${props.type}`, - url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${data.value[coursePlanIndex.value]?.id}&taskType=${2}&type=${3}`, - }); + // 添加错误弹框 + let signName; + if (openCourseName.value) { + signName = openCourseName.value; + } else if (Array.isArray(data.value) && data.value.length > 0 && coursePlanIndex.value !== undefined && data.value[coursePlanIndex.value]?.name) { + signName = data.value[coursePlanIndex.value].name; + } else { + const errorMessage = '二维码生成失败,请联系运维人员 ,参数{ name : 签到课程名称未找到,url:未指定}' + message.error(errorMessage); + return; + } + let taskId; + if (Array.isArray(data.value) && data.value.length > 0 && coursePlanIndex.value !== undefined && data.value[coursePlanIndex.value]?.id) { + taskId = data.value[coursePlanIndex.value].id; + } else { + const errorMessage = `二维码生成失败,请联系运维人员 ,参数{ name : ${signName},url:未找到}`; + message.error(errorMessage); + return; + } + if (taskId && signName) { + qrCode({ + title: "【签到】二维码", + courseName: props.courseName + '项目', + createName: data.value[coursePlanIndex.value].offteachers.map(teacher => teacher.teacherName).join(', '), + name: signName + '课程签到', + url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${taskId}&taskType=${2}&type=${3}`, + }); + } +// qrCode({ +// title: "【签到】二维码", +// name: openCourseName.value?openCourseName.value:data.value[0]?.name, +// // url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${props.datasource.id}&taskType=${props.datasource.type}&type=${props.type}`, +// url: `${location.protocol}//${location.host}${process.env.VUE_APP_BASE_API}/admin/student/studentSign?taskId=${data.value[coursePlanIndex.value]?.id}&taskType=${2}&type=${3}`, +// }); }; const qrcodeAssement = () =>{