Compare commits
4 Commits
cca640e945
...
d05388cb05
Author | SHA1 | Date |
---|---|---|
“zouyf” | d05388cb05 | |
baigl | 08ed5c9f2f | |
白了个白 | 35a00e2aca | |
白了个白 | e3ce510322 |
|
@ -32,9 +32,9 @@ export const editListItem = (row, courseObj) => {
|
||||||
worktype: '', // 设计中的作业类型
|
worktype: '', // 设计中的作业类型
|
||||||
quizlist: [], // 设计中的试题列表
|
quizlist: [], // 设计中的试题列表
|
||||||
chooseWorkLists: [],// 设计中的框架梳理list
|
chooseWorkLists: [],// 设计中的框架梳理list
|
||||||
fileHomeworkList: [],// 设计中的常规作业list
|
fileHomeworkList: [],// 设计中的主题作业list
|
||||||
whiteboardObj: '',// 设计中的课堂展示对象
|
whiteboardObj: '',// 设计中的创作展示对象
|
||||||
question: '', // 设计中的[课堂展示]的问题
|
question: '', // 设计中的[创作展示]的问题
|
||||||
};
|
};
|
||||||
console.log('编辑的行', row);
|
console.log('编辑的行', row);
|
||||||
|
|
||||||
|
@ -53,8 +53,8 @@ export const editListItem = (row, courseObj) => {
|
||||||
classtaskObj.worktype= row.worktype; // 设计中的作业类型
|
classtaskObj.worktype= row.worktype; // 设计中的作业类型
|
||||||
classtaskObj.quizlist= []; // 设计中的试题列表
|
classtaskObj.quizlist= []; // 设计中的试题列表
|
||||||
classtaskObj.chooseWorkLists = []; //设计中的 框架梳理list
|
classtaskObj.chooseWorkLists = []; //设计中的 框架梳理list
|
||||||
classtaskObj.fileHomeworkList = []; //设计中的 常规作业list
|
classtaskObj.fileHomeworkList = []; //设计中的 主题作业list
|
||||||
classtaskObj.whiteboardObj = ''; //设计中的 课堂展示对象
|
classtaskObj.whiteboardObj = ''; //设计中的 创作展示对象
|
||||||
|
|
||||||
|
|
||||||
if (row.worktype == '框架梳理') {
|
if (row.worktype == '框架梳理') {
|
||||||
|
@ -96,19 +96,19 @@ export const editListItem = (row, courseObj) => {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
else if (row.worktype == '课堂展示') {
|
else if (row.worktype == '创作展示') {
|
||||||
console.log('row.课堂展示', row.workcodes);
|
console.log('row.创作展示', row.workcodes);
|
||||||
const workcodes = JSON.parse(row.workcodes);
|
const workcodes = JSON.parse(row.workcodes);
|
||||||
classtaskObj.whiteboardObj = JSON.stringify(workcodes.json);
|
classtaskObj.whiteboardObj = JSON.stringify(workcodes.json);
|
||||||
classtaskObj.question = row.worktag;
|
classtaskObj.question = row.worktag;
|
||||||
// console.log('课堂展示', classtaskObj);
|
// console.log('创作展示', classtaskObj);
|
||||||
return resolve(classtaskObj);
|
return resolve(classtaskObj);
|
||||||
}
|
}
|
||||||
else if (row.worktype == '常规作业') {
|
else if (row.worktype == '主题作业') {
|
||||||
if(isJson(row.workcodes)){
|
if(isJson(row.workcodes)){
|
||||||
classtaskObj.fileHomeworkList = JSON.parse(row.workcodes);
|
classtaskObj.fileHomeworkList = JSON.parse(row.workcodes);
|
||||||
//
|
//
|
||||||
// console.log('常规作业', classtaskObj);
|
// console.log('主题作业', classtaskObj);
|
||||||
return resolve(classtaskObj);
|
return resolve(classtaskObj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -86,11 +86,11 @@ const getHomeWorkList = async () => {
|
||||||
// res.rows[i].workcodesList = JSON.parse(res.rows[i].workcodes);
|
// res.rows[i].workcodesList = JSON.parse(res.rows[i].workcodes);
|
||||||
// } else
|
// } else
|
||||||
// 课标研读 目标设定 教材研读 框架梳理 学科定位 TODO 后续接入在添加
|
// 课标研读 目标设定 教材研读 框架梳理 学科定位 TODO 后续接入在添加
|
||||||
if (res.rows[i].worktype == '课堂展示') {
|
if (res.rows[i].worktype == '创作展示') {
|
||||||
res.rows[i].workclass = 'primary';
|
res.rows[i].workclass = 'primary';
|
||||||
} else if (res.rows[i].worktype == '框架梳理') {
|
} else if (res.rows[i].worktype == '框架梳理') {
|
||||||
res.rows[i].workclass = 'warning';
|
res.rows[i].workclass = 'warning';
|
||||||
} else if (res.rows[i].worktype == '常规作业') {
|
} else if (res.rows[i].worktype == '主题作业') {
|
||||||
res.rows[i].workclass = 'info';
|
res.rows[i].workclass = 'info';
|
||||||
} else if (res.rows[i].worktype == '习题训练') {
|
} else if (res.rows[i].worktype == '习题训练') {
|
||||||
res.rows[i].workclass = 'danger';
|
res.rows[i].workclass = 'danger';
|
||||||
|
|
|
@ -36,8 +36,8 @@ export class MsgEnum {
|
||||||
* | MSG_pushQuizOfClassWorkdata2Public | 老师端:把选中的学生习题作业,推到大屏 | pushQuizOfClassWorkdata2Public |
|
* | MSG_pushQuizOfClassWorkdata2Public | 老师端:把选中的学生习题作业,推到大屏 | pushQuizOfClassWorkdata2Public |
|
||||||
* | MSG_pushClassWorkdata2Public | 老师端:把选中的学生作业,推到大屏 | pushClassWorkdata2Public |
|
* | MSG_pushClassWorkdata2Public | 老师端:把选中的学生作业,推到大屏 | pushClassWorkdata2Public |
|
||||||
* | MSG_shareStudentPresentdata2All | 把某个学生的展示成果数据推给全班所有学生 | shareStudentPresentdata2All |
|
* | MSG_shareStudentPresentdata2All | 把某个学生的展示成果数据推给全班所有学生 | shareStudentPresentdata2All |
|
||||||
* | MSG_pushStudentPresentdata2Public | 老师端:课堂展示活动,把选中的学生展示数据,推到大屏 | pushStudentPresentdata2Public |
|
* | MSG_pushStudentPresentdata2Public | 老师端:创作展示活动,把选中的学生展示数据,推到大屏 | pushStudentPresentdata2Public |
|
||||||
* | MSG_pushClassWorkPresentList2Public | 老师端:课堂展示活动,任务列表,推到大屏 | pushClassWorkPresentList2Public |
|
* | MSG_pushClassWorkPresentList2Public | 老师端:创作展示活动,任务列表,推到大屏 | pushClassWorkPresentList2Public |
|
||||||
* | MSG_activePageType | 课标研读-分页切换 | activePageType |
|
* | MSG_activePageType | 课标研读-分页切换 | activePageType |
|
||||||
* | MSG_slideFlapping | 幻灯片-切换 | slideFlapping |
|
* | MSG_slideFlapping | 幻灯片-切换 | slideFlapping |
|
||||||
* | MSG_anmationclick | 幻灯片-动画切换 | anmationclick |
|
* | MSG_anmationclick | 幻灯片-动画切换 | anmationclick |
|
||||||
|
@ -46,7 +46,7 @@ export class MsgEnum {
|
||||||
* | MSG_classtaskfeedback | 老师端:接收到学生反馈消息-课堂测练中的其他任务 | classtaskfeedback |
|
* | MSG_classtaskfeedback | 老师端:接收到学生反馈消息-课堂测练中的其他任务 | classtaskfeedback |
|
||||||
* | MSG_studentfeedback | 老师端:学生反馈的消息,具体要看其中的feedbackkey,类别较繁杂 | studentfeedback |
|
* | MSG_studentfeedback | 老师端:学生反馈的消息,具体要看其中的feedbackkey,类别较繁杂 | studentfeedback |
|
||||||
* | MSG_studentfeedbackcancel | 老师端:学生反馈的消息取消,如取消学会了,取消困惑 | studentfeedbackcancel |
|
* | MSG_studentfeedbackcancel | 老师端:学生反馈的消息取消,如取消学会了,取消困惑 | studentfeedbackcancel |
|
||||||
* | MSG_classshowdata | 学生提交的课堂展示数据-要在老师端显示,再由老师选择推送到公屏上 | classshowdata |
|
* | MSG_classshowdata | 学生提交的创作展示数据-要在老师端显示,再由老师选择推送到公屏上 | classshowdata |
|
||||||
* | MSG_classWorkOfPresentDataUpdate | 学生在公屏上展示并完善后,保存后,老师端要更新 | classWorkOfPresentDataUpdate |
|
* | MSG_classWorkOfPresentDataUpdate | 学生在公屏上展示并完善后,保存后,老师端要更新 | classWorkOfPresentDataUpdate |
|
||||||
* | MSG_classlecturePagesrc | 课堂讲授活动,选择不同的内容 | classlecturePagesrc |
|
* | MSG_classlecturePagesrc | 课堂讲授活动,选择不同的内容 | classlecturePagesrc |
|
||||||
* | --- | 以下为新定义-消息头 | --- |
|
* | --- | 以下为新定义-消息头 | --- |
|
||||||
|
@ -66,9 +66,9 @@ export class MsgEnum {
|
||||||
MSG_pushClassWorkdata2Public : 'pushClassWorkdata2Public',
|
MSG_pushClassWorkdata2Public : 'pushClassWorkdata2Public',
|
||||||
/** @desc: 把某个学生的展示成果数据推给全班所有学生 */
|
/** @desc: 把某个学生的展示成果数据推给全班所有学生 */
|
||||||
MSG_shareStudentPresentdata2All : 'shareStudentPresentdata2All',
|
MSG_shareStudentPresentdata2All : 'shareStudentPresentdata2All',
|
||||||
/** @desc: 老师端:课堂展示活动,把选中的学生展示数据,推到大屏 */
|
/** @desc: 老师端:创作展示活动,把选中的学生展示数据,推到大屏 */
|
||||||
MSG_pushStudentPresentdata2Public : 'pushStudentPresentdata2Public',
|
MSG_pushStudentPresentdata2Public : 'pushStudentPresentdata2Public',
|
||||||
/** @desc: 老师端:课堂展示活动,任务列表,推到大屏 */
|
/** @desc: 老师端:创作展示活动,任务列表,推到大屏 */
|
||||||
MSG_pushClassWorkPresentList2Public : 'pushClassWorkPresentList2Public',
|
MSG_pushClassWorkPresentList2Public : 'pushClassWorkPresentList2Public',
|
||||||
/** @desc: 课标研读-分页切换 */
|
/** @desc: 课标研读-分页切换 */
|
||||||
MSG_activePageType : 'activePageType',
|
MSG_activePageType : 'activePageType',
|
||||||
|
@ -86,7 +86,7 @@ export class MsgEnum {
|
||||||
MSG_studentfeedback : 'studentfeedback',
|
MSG_studentfeedback : 'studentfeedback',
|
||||||
/** @desc: 老师端:学生反馈的消息取消,如取消学会了,取消困惑 */
|
/** @desc: 老师端:学生反馈的消息取消,如取消学会了,取消困惑 */
|
||||||
MSG_studentfeedbackcancel : 'studentfeedbackcancel',
|
MSG_studentfeedbackcancel : 'studentfeedbackcancel',
|
||||||
/** @desc: 学生提交的课堂展示数据-要在老师端显示,再由老师选择推送到公屏上 */
|
/** @desc: 学生提交的创作展示数据-要在老师端显示,再由老师选择推送到公屏上 */
|
||||||
MSG_classshowdata : 'classshowdata',
|
MSG_classshowdata : 'classshowdata',
|
||||||
/** @desc: 学生在公屏上展示并完善后,保存后,老师端要更新 */
|
/** @desc: 学生在公屏上展示并完善后,保存后,老师端要更新 */
|
||||||
MSG_classWorkOfPresentDataUpdate : 'classWorkOfPresentDataUpdate',
|
MSG_classWorkOfPresentDataUpdate : 'classWorkOfPresentDataUpdate',
|
||||||
|
|
|
@ -340,7 +340,7 @@ const eventHandles = (type, win) => {
|
||||||
// 监听窗口的激活事件
|
// 监听窗口的激活事件
|
||||||
win.on('focus', async () => {
|
win.on('focus', async () => {
|
||||||
toolState.isTaskWin=true
|
toolState.isTaskWin=true
|
||||||
win&&win.reload(); //刷新该窗口
|
// win&&win.reload(); //刷新该窗口
|
||||||
});
|
});
|
||||||
// 监听窗口关闭事件
|
// 监听窗口关闭事件
|
||||||
win.on('closed', function () {
|
win.on('closed', function () {
|
||||||
|
|
|
@ -291,7 +291,7 @@ const getStudentClassWorkData = async() => {
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var e = 0; e < evalarray.length; e++) {
|
for (var e = 0; e < evalarray.length; e++) {
|
||||||
if (res.rows[i].worktype == '常规作业') {
|
if (res.rows[i].worktype == '主题作业') {
|
||||||
evalarray[e].feedcontent = escapeHtmlQuotes(evalarray[e].feedcontent).replace(
|
evalarray[e].feedcontent = escapeHtmlQuotes(evalarray[e].feedcontent).replace(
|
||||||
/"(\[.*\])"/g,
|
/"(\[.*\])"/g,
|
||||||
'$1'
|
'$1'
|
||||||
|
|
|
@ -148,9 +148,9 @@
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- TODO 课堂展示 预览待开发-->
|
<!-- TODO 创作展示 预览待开发-->
|
||||||
<!-- 常规作业:包含多个格式(图片略缩图展示,点击放大;其他附件跳转另外弹窗查看) -->
|
<!-- 主题作业:包含多个格式(图片略缩图展示,点击放大;其他附件跳转另外弹窗查看) -->
|
||||||
<div v-if="currentTag=='常规作业'" :style="{'padding': '15px', 'overflow': 'auto'}">
|
<div v-if="currentTag=='主题作业'" :style="{'padding': '15px', 'overflow': 'auto'}">
|
||||||
<div style="margin: 5px; background-color: white">
|
<div style="margin: 5px; background-color: white">
|
||||||
<div v-if="workConfObj.teacherFeedContentList.length > 0">
|
<div v-if="workConfObj.teacherFeedContentList.length > 0">
|
||||||
<div class="image_list">
|
<div class="image_list">
|
||||||
|
@ -362,9 +362,9 @@ const currentTag = ref('');// 当前作业类型
|
||||||
const workConfObj = reactive({
|
const workConfObj = reactive({
|
||||||
quizlist: [], // 习题list
|
quizlist: [], // 习题list
|
||||||
chooseWorkLists: [], // 框架梳理
|
chooseWorkLists: [], // 框架梳理
|
||||||
teacherFeedContentList: [],//常规作业
|
teacherFeedContentList: [],//主题作业
|
||||||
teachFileList: [], // 常规作业文件list
|
teachFileList: [], // 主题作业文件list
|
||||||
teachImageList: [],// 常规作业图片list
|
teachImageList: [],// 主题作业图片list
|
||||||
});
|
});
|
||||||
|
|
||||||
// 推送相关
|
// 推送相关
|
||||||
|
@ -440,11 +440,11 @@ const queryPushRecords = (row) => {
|
||||||
// res.rows[i].workcodesList = JSON.parse(res.rows[i].workcodes);
|
// res.rows[i].workcodesList = JSON.parse(res.rows[i].workcodes);
|
||||||
// } else
|
// } else
|
||||||
// 课标研读 目标设定 教材研读 框架梳理 学科定位 TODO 后续接入在添加
|
// 课标研读 目标设定 教材研读 框架梳理 学科定位 TODO 后续接入在添加
|
||||||
if (res.rows[i].worktype == '课堂展示') {
|
if (res.rows[i].worktype == '创作展示') {
|
||||||
res.rows[i].workclass = 'primary';
|
res.rows[i].workclass = 'primary';
|
||||||
} else if (res.rows[i].worktype == '框架梳理') {
|
} else if (res.rows[i].worktype == '框架梳理') {
|
||||||
res.rows[i].workclass = 'warning';
|
res.rows[i].workclass = 'warning';
|
||||||
} else if (res.rows[i].worktype == '常规作业') {
|
} else if (res.rows[i].worktype == '主题作业') {
|
||||||
res.rows[i].workclass = 'info';
|
res.rows[i].workclass = 'info';
|
||||||
} else if (res.rows[i].worktype == '习题训练') {
|
} else if (res.rows[i].worktype == '习题训练') {
|
||||||
res.rows[i].workclass = 'danger';
|
res.rows[i].workclass = 'danger';
|
||||||
|
@ -686,9 +686,9 @@ const handleWorkTitleEdit = (row, index, type) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO 待完善 课堂展示
|
//TODO 待完善 创作展示
|
||||||
if(row.worktype == '常规作业'){
|
if(row.worktype == '主题作业'){
|
||||||
console.log(row,'常规作业');
|
console.log(row,'主题作业');
|
||||||
workConfObj.teacherFeedContentList = [];
|
workConfObj.teacherFeedContentList = [];
|
||||||
workConfObj.teachImageList = [];
|
workConfObj.teachImageList = [];
|
||||||
workConfObj.teachFileList = [];
|
workConfObj.teachFileList = [];
|
||||||
|
@ -795,13 +795,13 @@ const prevRead = (item) => {
|
||||||
proxy.$refs.prevReadMsgDialogRef.openDialog(item);
|
proxy.$refs.prevReadMsgDialogRef.openDialog(item);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 常规作业:其他附件预览
|
* 主题作业:其他附件预览
|
||||||
*/
|
*/
|
||||||
const openFile = () => {
|
const openFile = () => {
|
||||||
const obj = {
|
const obj = {
|
||||||
teacherFeedContentList: workConfObj.teacherFeedContentList,//常规作业
|
teacherFeedContentList: workConfObj.teacherFeedContentList,//主题作业
|
||||||
teachFileList: workConfObj.teachFileList, // 常规作业文件list
|
teachFileList: workConfObj.teachFileList, // 主题作业文件list
|
||||||
teachImageList: workConfObj.teachImageList,// 常规作业图片list
|
teachImageList: workConfObj.teachImageList,// 主题作业图片list
|
||||||
}
|
}
|
||||||
proxy.$refs.prevReadImgFileDialogRef.acceptParams(obj);
|
proxy.$refs.prevReadImgFileDialogRef.acceptParams(obj);
|
||||||
}
|
}
|
||||||
|
|
|
@ -136,11 +136,11 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 题目内容:常规作业、课堂展示 -->
|
<!-- 题目内容:主题作业、创作展示 -->
|
||||||
<div
|
<div
|
||||||
v-if="
|
v-if="
|
||||||
dialogProps.studentObj.worktype == '常规作业' ||
|
dialogProps.studentObj.worktype == '主题作业' ||
|
||||||
dialogProps.studentObj.worktype == '课堂展示' ||
|
dialogProps.studentObj.worktype == '创作展示' ||
|
||||||
dialogProps.studentObj.worktype == '框架梳理'
|
dialogProps.studentObj.worktype == '框架梳理'
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
|
@ -152,11 +152,11 @@
|
||||||
<span>{{ sIndex + 1 }}、{{ stuItem.score ? stuItem.score : 0 }}分</span>
|
<span>{{ sIndex + 1 }}、{{ stuItem.score ? stuItem.score : 0 }}分</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<!-- 常规作业 -->
|
<!-- 主题作业 -->
|
||||||
<div
|
<div
|
||||||
v-if="
|
v-if="
|
||||||
dialogProps.studentObj.worktype == '常规作业' ||
|
dialogProps.studentObj.worktype == '主题作业' ||
|
||||||
dialogProps.studentObj.worktype == '课堂展示' ||
|
dialogProps.studentObj.worktype == '创作展示' ||
|
||||||
dialogProps.studentObj.worktype == '框架梳理'
|
dialogProps.studentObj.worktype == '框架梳理'
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
|
@ -210,8 +210,8 @@
|
||||||
|
|
||||||
<!-- 学生答题展示 -->
|
<!-- 学生答题展示 -->
|
||||||
<div v-if="feedContentList.length > 0">
|
<div v-if="feedContentList.length > 0">
|
||||||
<div v-if="dialogProps.studentObj.worktype == '常规作业' && stuItem.rightanswer != ''&& stuItem.rightanswer != null">
|
<div v-if="dialogProps.studentObj.worktype == '主题作业' && stuItem.rightanswer != ''&& stuItem.rightanswer != null">
|
||||||
<!-- 常规作业:学生有的会答复 -->
|
<!-- 主题作业:学生有的会答复 -->
|
||||||
<p style="padding: 10px 0;text-align: left;">学生答复内容</p>
|
<p style="padding: 10px 0;text-align: left;">学生答复内容</p>
|
||||||
<div style="padding: 0 20px;text-align: left;">{{stuItem.rightanswer}}</div>
|
<div style="padding: 0 20px;text-align: left;">{{stuItem.rightanswer}}</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -484,11 +484,11 @@ const dialogProps = ref({
|
||||||
studentQuizAllList: [], //学生答题的list
|
studentQuizAllList: [], //学生答题的list
|
||||||
quizlist: [] // 当前学生的所有题目list
|
quizlist: [] // 当前学生的所有题目list
|
||||||
})
|
})
|
||||||
//学生常规作业list
|
//学生主题作业list
|
||||||
const feedContentList = ref([])
|
const feedContentList = ref([])
|
||||||
const imageList = ref([])
|
const imageList = ref([])
|
||||||
const fileList = ref([])
|
const fileList = ref([])
|
||||||
// 老师常规作业、课堂展示布置题目附件list
|
// 老师主题作业、创作展示布置题目附件list
|
||||||
const teacherFeedContentList = ref([])
|
const teacherFeedContentList = ref([])
|
||||||
const teachImageList = ref([])
|
const teachImageList = ref([])
|
||||||
const teachFileList = ref([])
|
const teachFileList = ref([])
|
||||||
|
@ -708,9 +708,9 @@ const acceptParams = async (params) => {
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
// 学生回答
|
// 学生回答
|
||||||
if (params.studentObj.worktype == '常规作业') {
|
if (params.studentObj.worktype == '主题作业') {
|
||||||
try {
|
try {
|
||||||
// 老师布置的附件 datacontent TODO:常规作业、其他类型还未接入
|
// 老师布置的附件 datacontent TODO:主题作业、其他类型还未接入
|
||||||
const res = await getClassworkdata(params.studentObj.id);
|
const res = await getClassworkdata(params.studentObj.id);
|
||||||
if(res.data.datacontent != ''){
|
if(res.data.datacontent != ''){
|
||||||
const teachWorkFileList = JSON.parse(res.data.datacontent);
|
const teachWorkFileList = JSON.parse(res.data.datacontent);
|
||||||
|
@ -762,7 +762,7 @@ const acceptParams = async (params) => {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else if (
|
} else if (
|
||||||
params.studentObj.worktype == '课堂展示' ||
|
params.studentObj.worktype == '创作展示' ||
|
||||||
params.studentObj.worktype == '框架梳理'
|
params.studentObj.worktype == '框架梳理'
|
||||||
) {
|
) {
|
||||||
params.studentQuizAllList.forEach((item) => {
|
params.studentQuizAllList.forEach((item) => {
|
||||||
|
@ -774,7 +774,7 @@ const acceptParams = async (params) => {
|
||||||
classWorkFormScore.teacherremark = item.teacherremark // 评价语
|
classWorkFormScore.teacherremark = item.teacherremark // 评价语
|
||||||
// 根据移动端返回定义:只返回一张图片:rightanswer:"https://wzyzoss.eos-chongqing-3.cmecloud.cn/2024/9/5/c5d8e00a93364dd3b975f669afa217f9.png"
|
// 根据移动端返回定义:只返回一张图片:rightanswer:"https://wzyzoss.eos-chongqing-3.cmecloud.cn/2024/9/5/c5d8e00a93364dd3b975f669afa217f9.png"
|
||||||
// 这里只有一张图片;
|
// 这里只有一张图片;
|
||||||
console.log(item.rightanswer, '----------课堂展示学生答题------------------')
|
console.log(item.rightanswer, '----------创作展示学生答题------------------')
|
||||||
|
|
||||||
if (item.rightanswer != '' && item.rightanswer != null) {
|
if (item.rightanswer != '' && item.rightanswer != null) {
|
||||||
if (
|
if (
|
||||||
|
|
|
@ -59,7 +59,7 @@ const props = defineProps({})
|
||||||
|
|
||||||
const fileReadopen = ref(false)
|
const fileReadopen = ref(false)
|
||||||
|
|
||||||
// 老师常规作业、课堂展示布置题目附件list
|
// 老师主题作业、创作展示布置题目附件list
|
||||||
const teacherFeedContentList = ref([])
|
const teacherFeedContentList = ref([])
|
||||||
const teachImageList = ref([])
|
const teachImageList = ref([])
|
||||||
const teachFileList = ref([])
|
const teachFileList = ref([])
|
||||||
|
|
|
@ -429,7 +429,7 @@ const getStudentClassWorkDataDetail = (row) => {
|
||||||
// ? wevalres.rows[w].feedcontent.replace(/<[^>]+>/g, '')
|
// ? wevalres.rows[w].feedcontent.replace(/<[^>]+>/g, '')
|
||||||
// : wevalres.rows[w].feedcontent
|
// : wevalres.rows[w].feedcontent
|
||||||
|
|
||||||
if (classWorkAnalysis.row.worktype == '常规作业') {
|
if (classWorkAnalysis.row.worktype == '主题作业') {
|
||||||
wevalres.rows[w].feedcontent = JSON.parse(wevalres.rows[w].feedcontent)
|
wevalres.rows[w].feedcontent = JSON.parse(wevalres.rows[w].feedcontent)
|
||||||
}
|
}
|
||||||
if (wevalres.rows[w].feedcontent != '') {
|
if (wevalres.rows[w].feedcontent != '') {
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<!-- 作业资源 -->
|
<!-- 作业资源 -->
|
||||||
<el-row class="middle">
|
<el-row class="middle">
|
||||||
<el-col :span="24" style="height: 100%; overflow: hidden;">
|
<el-col :span="24" style="height: 100%; overflow: hidden;">
|
||||||
<div v-if="classWorkForm.worktype == '课堂展示'" style="height: 100%; display: flex; flex-direction: column;">
|
<div v-if="classWorkForm.worktype == '创作展示'" style="height: 100%; display: flex; flex-direction: column;">
|
||||||
<div style="flex: 0 0 auto;">
|
<div style="flex: 0 0 auto;">
|
||||||
<el-form-item label="问题">
|
<el-form-item label="问题">
|
||||||
<el-input v-model="classWorkForm.question" type="text" placeholder="请输入问题" />
|
<el-input v-model="classWorkForm.question" type="text" placeholder="请输入问题" />
|
||||||
|
@ -130,7 +130,7 @@
|
||||||
<!-- 非习题训练:常规作业、 -->
|
<!-- 非习题训练:常规作业、 -->
|
||||||
<div v-if="classWorkForm.worktype!='习题训练'">
|
<div v-if="classWorkForm.worktype!='习题训练'">
|
||||||
<div :style="{ 'overflow': 'auto'}">
|
<div :style="{ 'overflow': 'auto'}">
|
||||||
<template v-if="classWorkForm.worktype!='常规作业'">
|
<template v-if="classWorkForm.worktype!='主题作业'">
|
||||||
<template v-for="(item, index) in workResource.teachResourceList" :key="item">
|
<template v-for="(item, index) in workResource.teachResourceList" :key="item">
|
||||||
<div v-if="item.worktype==classWorkForm.worktype" style="border-bottom: 1px dotted;display: flex;justify-content: space-between;">
|
<div v-if="item.worktype==classWorkForm.worktype" style="border-bottom: 1px dotted;display: flex;justify-content: space-between;">
|
||||||
<div style="margin-bottom: 5px; padding-left: 15px;display: flex;flex-direction: row;align-items: center;">
|
<div style="margin-bottom: 5px; padding-left: 15px;display: flex;flex-direction: row;align-items: center;">
|
||||||
|
@ -152,7 +152,7 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="classWorkForm.worktype =='常规作业'">
|
<template v-if="classWorkForm.worktype =='主题作业'">
|
||||||
<div v-loading="fileLoading" class="upload-homework">
|
<div v-loading="fileLoading" class="upload-homework">
|
||||||
<FileUpload v-model="classWorkForm.fileHomeworkList" :fileSize="800" :fileType="['mp3','mp4','doc','docx','xlsx','xls','pdf','ppt','pptx','jpg','jpeg','gif','png','txt']"/>
|
<FileUpload v-model="classWorkForm.fileHomeworkList" :fileSize="800" :fileType="['mp3','mp4','doc','docx','xlsx','xls','pdf','ppt','pptx','jpg','jpeg','gif','png','txt']"/>
|
||||||
</div>
|
</div>
|
||||||
|
@ -208,7 +208,7 @@
|
||||||
<!-- 作业说明 -->
|
<!-- 作业说明 -->
|
||||||
<el-row class="bottom">
|
<el-row class="bottom">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item v-if="classWorkForm.worktype != '课堂展示'" label="作业说明" style="margin: 10px 0;">
|
<el-form-item v-if="classWorkForm.worktype != '创作展示'" label="作业说明" style="margin: 10px 0;">
|
||||||
<el-col :span="15" style="padding: 0px">
|
<el-col :span="15" style="padding: 0px">
|
||||||
<!-- <el-input v-model="classWorkForm.title" type="textarea" :rows="1" placeholder="请输入作业说明"/> -->
|
<!-- <el-input v-model="classWorkForm.title" type="textarea" :rows="1" placeholder="请输入作业说明"/> -->
|
||||||
<el-input v-model="classWorkForm.title" style="width: 400px" placeholder="请输入作业说明"/>
|
<el-input v-model="classWorkForm.title" style="width: 400px" placeholder="请输入作业说明"/>
|
||||||
|
@ -352,16 +352,16 @@ let classWorkForm = reactive({
|
||||||
quizlist: props.propsformobj.quizlist?cloneDeep(props.propsformobj.quizlist):[], // 作业习题列表内容
|
quizlist: props.propsformobj.quizlist?cloneDeep(props.propsformobj.quizlist):[], // 作业习题列表内容
|
||||||
chooseWorkLists: props.propsformobj.chooseWorkLists?cloneDeep(props.propsformobj.chooseWorkLists):[], // 作业框架梳理list
|
chooseWorkLists: props.propsformobj.chooseWorkLists?cloneDeep(props.propsformobj.chooseWorkLists):[], // 作业框架梳理list
|
||||||
fileHomeworkList: props.propsformobj.fileHomeworkList?cloneDeep(props.propsformobj.fileHomeworkList):[], // 常规作业文件列表
|
fileHomeworkList: props.propsformobj.fileHomeworkList?cloneDeep(props.propsformobj.fileHomeworkList):[], // 常规作业文件列表
|
||||||
whiteboardObj: props.propsformobj.whiteboardObj?cloneDeep(props.propsformobj.whiteboardObj):'', // 作业资源 - 课堂展示 白板
|
whiteboardObj: props.propsformobj.whiteboardObj?cloneDeep(props.propsformobj.whiteboardObj):'', // 作业资源 - 创作展示 白板
|
||||||
question: props.propsformobj.question?cloneDeep(props.propsformobj.question):'', // 作业资源 - 课堂展示 输入的问题
|
question: props.propsformobj.question?cloneDeep(props.propsformobj.question):'', // 作业资源 - 创作展示 输入的问题
|
||||||
}); // 提交的作业内容
|
}); // 提交的作业内容
|
||||||
// ---------------------------------------------------
|
// ---------------------------------------------------
|
||||||
// const listWorkType = ref(['习题训练', '框架梳理', '课堂展示', '常规作业']); //作业类型
|
// const listWorkType = ref(['习题训练', '框架梳理', '创作展示', '主题作业']); //作业类型
|
||||||
const listWorkType = ref(['习题训练', '课堂展示', '常规作业']); //作业类型
|
const listWorkType = ref(['习题训练', '创作展示', '主题作业']); //作业类型
|
||||||
|
|
||||||
// 课堂展示-------
|
// 创作展示-------
|
||||||
const boardLoading = ref(false);
|
const boardLoading = ref(false);
|
||||||
//常规作业----------
|
//主题作业----------
|
||||||
const fileLoading = ref(false); // 常规作业loading
|
const fileLoading = ref(false); // 常规作业loading
|
||||||
|
|
||||||
/***
|
/***
|
||||||
|
@ -638,7 +638,7 @@ const handleClassWorkSave = async () => {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (classWorkForm.worktype === "课堂展示") {
|
if (classWorkForm.worktype === "创作展示") {
|
||||||
boardLoading.value = true
|
boardLoading.value = true
|
||||||
let canvasJson = proxy.$refs.boardref.getCanvasJson()
|
let canvasJson = proxy.$refs.boardref.getCanvasJson()
|
||||||
let canvasBase64 = await proxy.$refs.boardref.getCanvasBase64()
|
let canvasBase64 = await proxy.$refs.boardref.getCanvasBase64()
|
||||||
|
@ -651,7 +651,7 @@ const handleClassWorkSave = async () => {
|
||||||
addClassworkReturnId(cform).then(() => {
|
addClassworkReturnId(cform).then(() => {
|
||||||
ElMessage({ type: 'success', message: '作业设计成功!'});
|
ElMessage({ type: 'success', message: '作业设计成功!'});
|
||||||
// 重置提交表单
|
// 重置提交表单
|
||||||
classWorkForm.worktype = "课堂展示";
|
classWorkForm.worktype = "创作展示";
|
||||||
classWorkForm.uniquekey = props.propsformobj.uniquekey, // 作业唯一标识 作业名称
|
classWorkForm.uniquekey = props.propsformobj.uniquekey, // 作业唯一标识 作业名称
|
||||||
classWorkForm.title = "";
|
classWorkForm.title = "";
|
||||||
classWorkForm.question = "";
|
classWorkForm.question = "";
|
||||||
|
@ -667,7 +667,7 @@ const handleClassWorkSave = async () => {
|
||||||
boardLoading.value = false
|
boardLoading.value = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(classWorkForm.worktype === "常规作业"){
|
else if(classWorkForm.worktype === "主题作业"){
|
||||||
fileLoading.value = true
|
fileLoading.value = true
|
||||||
cform.workcodes = JSON.stringify(classWorkForm.fileHomeworkList);
|
cform.workcodes = JSON.stringify(classWorkForm.fileHomeworkList);
|
||||||
cform.entpcourseworklist = JSON.stringify([{'id':-2, 'score': '10'}]);
|
cform.entpcourseworklist = JSON.stringify([{'id':-2, 'score': '10'}]);
|
||||||
|
@ -675,7 +675,7 @@ const handleClassWorkSave = async () => {
|
||||||
addClassworkReturnId(cform).then(() => {
|
addClassworkReturnId(cform).then(() => {
|
||||||
ElMessage({ type: 'success', message: '作业设计成功!'});
|
ElMessage({ type: 'success', message: '作业设计成功!'});
|
||||||
// 重置提交表单
|
// 重置提交表单
|
||||||
classWorkForm.worktype = "常规作业";
|
classWorkForm.worktype = "主题作业";
|
||||||
classWorkForm.uniquekey = props.propsformobj.uniquekey, // 作业唯一标识 作业名称
|
classWorkForm.uniquekey = props.propsformobj.uniquekey, // 作业唯一标识 作业名称
|
||||||
classWorkForm.title = "";
|
classWorkForm.title = "";
|
||||||
classWorkForm.quizlist = [], // 作业习题列表内容
|
classWorkForm.quizlist = [], // 作业习题列表内容
|
||||||
|
@ -757,7 +757,7 @@ const editWork = async (cform) =>{
|
||||||
ElMessage.error('请先添加作业资源!');
|
ElMessage.error('请先添加作业资源!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}else if (classWorkForm.worktype == '课堂展示' || classWorkForm.worktype == '常规作业') {
|
}else if (classWorkForm.worktype == '创作展示' || classWorkForm.worktype == '主题作业') {
|
||||||
// 不做校验
|
// 不做校验
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
|
@ -842,13 +842,13 @@ const editWork = async (cform) =>{
|
||||||
let res = await updateClassworkeval(uplParams);
|
let res = await updateClassworkeval(uplParams);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (classWorkForm.worktype=='课堂展示') {
|
else if (classWorkForm.worktype=='创作展示') {
|
||||||
let canvasJson = proxy.$refs.boardref.getCanvasJson()
|
let canvasJson = proxy.$refs.boardref.getCanvasJson()
|
||||||
let canvasBase64 = await proxy.$refs.boardref.getCanvasBase64()
|
let canvasBase64 = await proxy.$refs.boardref.getCanvasBase64()
|
||||||
cform.workcodes = JSON.stringify({json: canvasJson, base64: canvasBase64});
|
cform.workcodes = JSON.stringify({json: canvasJson, base64: canvasBase64});
|
||||||
cform.worktag = classWorkForm.question;
|
cform.worktag = classWorkForm.question;
|
||||||
}
|
}
|
||||||
else if (classWorkForm.worktype=='常规作业') {
|
else if (classWorkForm.worktype=='主题作业') {
|
||||||
// 1.更新作业任务下的课堂展示内容 (这里未做校验, 直接将当前文件对象更新过去)
|
// 1.更新作业任务下的课堂展示内容 (这里未做校验, 直接将当前文件对象更新过去)
|
||||||
cform.workcodes = JSON.stringify(classWorkForm.fileHomeworkList);
|
cform.workcodes = JSON.stringify(classWorkForm.fileHomeworkList);
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,8 +68,8 @@ const classWorkForm = reactive({
|
||||||
quizlist: classtaskObj? JSON.parse(classtaskObj).quizlist : [], // 设计中的试题列表
|
quizlist: classtaskObj? JSON.parse(classtaskObj).quizlist : [], // 设计中的试题列表
|
||||||
chooseWorkLists: classtaskObj? JSON.parse(classtaskObj).chooseWorkLists : [],// 设计中的框架梳理list
|
chooseWorkLists: classtaskObj? JSON.parse(classtaskObj).chooseWorkLists : [],// 设计中的框架梳理list
|
||||||
fileHomeworkList: classtaskObj? JSON.parse(classtaskObj).fileHomeworkList : [],// 设计中的常规文件作业list
|
fileHomeworkList: classtaskObj? JSON.parse(classtaskObj).fileHomeworkList : [],// 设计中的常规文件作业list
|
||||||
whiteboardObj: classtaskObj? JSON.parse(classtaskObj).whiteboardObj : '',// 设计中的 课堂展示 板书作业
|
whiteboardObj: classtaskObj? JSON.parse(classtaskObj).whiteboardObj : '',// 设计中的 创作展示 板书作业
|
||||||
question: classtaskObj? JSON.parse(classtaskObj).question : '',// 设计中的 课堂展示 输入的问题
|
question: classtaskObj? JSON.parse(classtaskObj).question : '',// 设计中的 创作展示 输入的问题
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -158,6 +158,7 @@ import quizStats from '@/views/classTask/container/quizStats.vue'
|
||||||
import ClassOverview from '@/views/classTask/container/classOverview.vue'
|
import ClassOverview from '@/views/classTask/container/classOverview.vue'
|
||||||
import {sessionStore} from '@/utils/store'
|
import {sessionStore} from '@/utils/store'
|
||||||
|
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const emit = defineEmits(['cle-click'])
|
const emit = defineEmits(['cle-click'])
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
@ -344,7 +345,7 @@ const getClassWorkStudentList = (rowId) => {
|
||||||
response.rows[i].classworkevallist != 'null'
|
response.rows[i].classworkevallist != 'null'
|
||||||
) {
|
) {
|
||||||
// 将标签中双引号改为转义, 测试数据: "{\"id\":172910, \"feedcontent\":\"毛泽东,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\", \"score\":4, \"rightanswer\":\"毛泽东重,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\"},{\"id\":172911, \"rating\":0, \"teacherRating\":0, \"entpcourseworkid\":363100, \"feedcontent\":\"毛泽东重游橘子洲,面对如画的秋色和大好的革命形势,回忆过去战斗的岁月,不禁心潮起伏,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\", \"score\":4, \"rightanswer\":\"毛泽东重游橘子洲,面对如画的秋色和大好的革命形势,回忆过去战斗的岁月,不禁心潮起伏,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\"}"
|
// 将标签中双引号改为转义, 测试数据: "{\"id\":172910, \"feedcontent\":\"毛泽东,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\", \"score\":4, \"rightanswer\":\"毛泽东重,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\"},{\"id\":172911, \"rating\":0, \"teacherRating\":0, \"entpcourseworkid\":363100, \"feedcontent\":\"毛泽东重游橘子洲,面对如画的秋色和大好的革命形势,回忆过去战斗的岁月,不禁心潮起伏,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\", \"score\":4, \"rightanswer\":\"毛泽东重游橘子洲,面对如画的秋色和大好的革命形势,回忆过去战斗的岁月,不禁心潮起伏,<bdo class=\"mathjye-underpoint2\">浮想联翩</bdo>。\"}"
|
||||||
// 常规作业(去除【】前后引号).replace(/"(\[.*\])"/g, '$1'); :eg: "feedcontent\":\"[{\"name\":\"Bliss.jpg\",\"url\":\"https://wzyzoss.3b8daa474.jpg\"}]\",
|
// 主题作业(去除【】前后引号).replace(/"(\[.*\])"/g, '$1'); :eg: "feedcontent\":\"[{\"name\":\"Bliss.jpg\",\"url\":\"https://wzyzoss.3b8daa474.jpg\"}]\",
|
||||||
// json转换会报错; .replace(/""/g, '"') eg: ""宇宙环境安全""
|
// json转换会报错; .replace(/""/g, '"') eg: ""宇宙环境安全""
|
||||||
response.rows[i].classworkevallist = escapeHtmlQuotes(response.rows[i].classworkevallist)
|
response.rows[i].classworkevallist = escapeHtmlQuotes(response.rows[i].classworkevallist)
|
||||||
//console.log('学生完成情况分析classworkevallist', response.rows[i].classworkevallist)
|
//console.log('学生完成情况分析classworkevallist', response.rows[i].classworkevallist)
|
||||||
|
@ -421,7 +422,7 @@ const getStudentClassWorkDataDetail = (row) => {
|
||||||
// ? wevalres.rows[w].feedcontent.replace(/<[^>]+>/g, '')
|
// ? wevalres.rows[w].feedcontent.replace(/<[^>]+>/g, '')
|
||||||
// : wevalres.rows[w].feedcontent
|
// : wevalres.rows[w].feedcontent
|
||||||
|
|
||||||
if (classWorkAnalysis.row.worktype == '常规作业') {
|
if (classWorkAnalysis.row.worktype == '主题作业') {
|
||||||
wevalres.rows[w].feedcontent = JSON.parse(wevalres.rows[w].feedcontent)
|
wevalres.rows[w].feedcontent = JSON.parse(wevalres.rows[w].feedcontent)
|
||||||
}
|
}
|
||||||
if (wevalres.rows[w].feedcontent != '') {
|
if (wevalres.rows[w].feedcontent != '') {
|
||||||
|
@ -637,16 +638,29 @@ const closeDialog = () => {
|
||||||
emit('cle-click')
|
emit('cle-click')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const reloadTimer = ref(0); // 开启定时查询,作业id是否刷新了,刷新了就重新获取
|
||||||
|
const cutid = ref(0); // 当前初始化的作业id
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
|
||||||
const data = JSON.parse(localStorage.getItem('teachClassWorkItem'));
|
const data = JSON.parse(localStorage.getItem('teachClassWorkItem'));
|
||||||
// const data = sessionStore.get('teachClassWorkItem');
|
// const data = sessionStore.get('teachClassWorkItem');
|
||||||
// const data = localStorage.getItem('teachClassWorkItem');
|
|
||||||
console.log(data,'????????????????????' )
|
|
||||||
if(data){
|
if(data){
|
||||||
openDialog(data)
|
openDialog(data)
|
||||||
}
|
}
|
||||||
|
// 开始定时查询
|
||||||
|
cutid.value = data.id;
|
||||||
|
isReloadTimer();
|
||||||
})
|
})
|
||||||
|
const isReloadTimer = () =>{
|
||||||
|
clearInterval(reloadTimer.value) // 关闭定时器
|
||||||
|
// 开启定时查询,作业id是否刷新了,刷新了就重新获取
|
||||||
|
reloadTimer.value = setInterval(() => {
|
||||||
|
const data = JSON.parse(localStorage.getItem('teachClassWorkItem'));
|
||||||
|
if(cutid.value != data.id){
|
||||||
|
cutid.value = data.id;
|
||||||
|
openDialog(data)
|
||||||
|
}
|
||||||
|
}, 1000)
|
||||||
|
}
|
||||||
|
|
||||||
watch(classWorkAnalysis, (newVal, oldVal) => {
|
watch(classWorkAnalysis, (newVal, oldVal) => {
|
||||||
if(newVal.view != 'quizStats'){
|
if(newVal.view != 'quizStats'){
|
||||||
|
@ -657,6 +671,7 @@ watch(classWorkAnalysis, (newVal, oldVal) => {
|
||||||
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
clearInterval(classWorkActiveData.timerId) // 关闭定时器 逐题讲评的
|
clearInterval(classWorkActiveData.timerId) // 关闭定时器 逐题讲评的
|
||||||
|
clearInterval(reloadTimer.value) // 关闭定时器 查询作业id是否刷新了
|
||||||
})
|
})
|
||||||
|
|
||||||
// defineExpose({
|
// defineExpose({
|
||||||
|
|
|
@ -11,7 +11,7 @@ export const createHomework = ({ uniquekey, evalid, data, entpcourseid }) =>{
|
||||||
formObj.entpid = usertore.deptId;
|
formObj.entpid = usertore.deptId;
|
||||||
formObj.level = 1;
|
formObj.level = 1;
|
||||||
formObj.parentid = 0;
|
formObj.parentid = 0;
|
||||||
formObj.worktype = '常规作业';
|
formObj.worktype = '主题作业';
|
||||||
formObj.workkey = '';
|
formObj.workkey = '';
|
||||||
formObj.worktag = '';
|
formObj.worktag = '';
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue