Compare commits
6 Commits
eace8b56d8
...
3171c0b3f9
Author | SHA1 | Date |
---|---|---|
lyc | 3171c0b3f9 | |
lyc | 33e84ca006 | |
lyc | 28a815169d | |
lyc | 931ed531ab | |
lyc | a6bda302af | |
lyc | eb481e265b |
|
@ -42,4 +42,13 @@ export function delClasswork(id) {
|
|||
url: '/education/classwork/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增classwork
|
||||
export function addClassworkReturnId(data) {
|
||||
return request({
|
||||
url: '/education/classwork/saveAndReturnId',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
|
@ -75,6 +75,8 @@ const curBookImg = ref('')
|
|||
const curBookPath = ref('')
|
||||
// 上册
|
||||
const volumeOne = ref([])
|
||||
//
|
||||
const volumeTwo = ref([])
|
||||
|
||||
// 当前节点
|
||||
const currentNode = reactive({
|
||||
|
@ -90,13 +92,14 @@ const defaultExpandedKeys = ref([])
|
|||
const refTree = ref(null)
|
||||
|
||||
|
||||
//获取教材下面的单元内容
|
||||
//获取教材下面的单元 + 章节
|
||||
const getSubjectContent = async () => {
|
||||
treeLoading.value = true
|
||||
const params = {
|
||||
edusubject,
|
||||
edustage,
|
||||
entpcourseedituserid: userId,
|
||||
// entpcourseedituserid: userId,
|
||||
itemgroup: 'textbook',
|
||||
pageSize: 500
|
||||
}
|
||||
|
||||
|
@ -114,7 +117,8 @@ const getSubjectContent = async () => {
|
|||
* 不区分上下册
|
||||
* 2024/08/20调整
|
||||
*/
|
||||
volumeOne.value = data.filter(item => item.level == 1)
|
||||
// volumeOne.value = data.filter(item => item.level == 1 && item.semester == '上册')
|
||||
// volumeTwo.value = data.filter(item => item.level == 1 && item.semester == '下册')
|
||||
getTreeData()
|
||||
}
|
||||
|
||||
|
@ -132,7 +136,9 @@ const changeBook = ({ id, itemtitle, avartar, fileurl }) => {
|
|||
|
||||
const getTreeData = () => {
|
||||
//数据过滤
|
||||
let upData = transData(volumeOne.value)
|
||||
let upData = transData(evaluationList.value)
|
||||
|
||||
|
||||
if(upData.length){
|
||||
treeData.value = [...upData]
|
||||
}
|
||||
|
@ -222,30 +228,33 @@ const transData = (data) => {
|
|||
let ary = []
|
||||
data.forEach(item => {
|
||||
let obj = {}
|
||||
// 根据当前教材ID 过滤出对应的单元、章节
|
||||
if (item.rootid == curBookId.value) {
|
||||
obj.label = item.itemtitle
|
||||
obj.id = item.id
|
||||
obj.itemtitle = item.itemtitle
|
||||
obj.edudegree = item.edudegree
|
||||
obj.edustage = item.edustage
|
||||
obj.edusubject = item.edusubject
|
||||
let ary2 = []
|
||||
evaluationList.value.forEach(el => {
|
||||
let obj2 = {}
|
||||
if (item.id == el.parentid) {
|
||||
obj2 = {
|
||||
label: el.itemtitle,
|
||||
id: el.id,
|
||||
itemtitle : el.itemtitle,
|
||||
edudegree : el.edudegree,
|
||||
edustage : el.edustage,
|
||||
edusubject : el.edusubject,
|
||||
if(item.level == 1){
|
||||
obj.label = item.itemtitle
|
||||
obj.id = item.id
|
||||
obj.itemtitle = item.itemtitle
|
||||
obj.edudegree = item.edudegree
|
||||
obj.edustage = item.edustage
|
||||
obj.edusubject = item.edusubject
|
||||
let ary2 = []
|
||||
evaluationList.value.forEach(el => {
|
||||
let obj2 = {}
|
||||
if (item.id == el.parentid) {
|
||||
obj2 = {
|
||||
label: el.itemtitle,
|
||||
id: el.id,
|
||||
itemtitle : el.itemtitle,
|
||||
edudegree : el.edudegree,
|
||||
edustage : el.edustage,
|
||||
edusubject : el.edusubject,
|
||||
}
|
||||
ary2.push(obj2)
|
||||
}
|
||||
ary2.push(obj2)
|
||||
}
|
||||
obj.children = ary2
|
||||
})
|
||||
ary.push(obj)
|
||||
obj.children = ary2
|
||||
})
|
||||
ary.push(obj)
|
||||
}
|
||||
}
|
||||
})
|
||||
return ary
|
||||
|
@ -254,8 +263,10 @@ const transData = (data) => {
|
|||
//获取教材
|
||||
const getSubject = async () => {
|
||||
|
||||
const { rows } = await listEvaluation({ itemkey: "version", pageSize: 500 })
|
||||
subjectList.value = rows.filter(item => item.edustage == edustage && item.edusubject == edusubject && isHaveUnit(item.id))
|
||||
const { rows } = await listEvaluation({ itemkey: "version", edusubject, edustage, pageSize: 500 })
|
||||
|
||||
// subjectList.value = rows.filter(item => item.edustage == edustage && item.edusubject == edusubject)
|
||||
subjectList.value = rows
|
||||
localStorage.setItem('subjectList', JSON.stringify(subjectList.value))
|
||||
|
||||
// 默认第一个
|
||||
|
|
|
@ -113,7 +113,8 @@ const getSubjectContent = async () => {
|
|||
const params = {
|
||||
edusubject,
|
||||
edustage,
|
||||
entpcourseedituserid: userId,
|
||||
// entpcourseedituserid: userId,
|
||||
itemgroup: 'textbook',
|
||||
pageSize: 500
|
||||
}
|
||||
let data;
|
||||
|
@ -129,7 +130,7 @@ const getSubjectContent = async () => {
|
|||
* 不区分上下册
|
||||
* 2024/08/20调整
|
||||
*/
|
||||
volumeOne.value = data.filter(item => item.level == 1)
|
||||
// volumeOne.value = data.filter(item => item.level == 1)
|
||||
|
||||
getTreeData()
|
||||
}
|
||||
|
@ -141,8 +142,8 @@ const getSubject = async () => {
|
|||
subjectList.value = JSON.parse(localStorage.getItem('subjectList'))
|
||||
}
|
||||
else {
|
||||
const { rows } = await listEvaluation({ itemkey: "version", pageSize: 500 })
|
||||
subjectList.value = rows.filter(item => item.edustage == edustage && item.edusubject == edusubject && isHaveUnit(item.id))
|
||||
const { rows } = await listEvaluation({ itemkey: "version", edusubject, edustage, pageSize: 500 })
|
||||
subjectList.value = rows
|
||||
localStorage.setItem('subjectList', JSON.stringify(subjectList.value))
|
||||
}
|
||||
|
||||
|
@ -160,7 +161,7 @@ const isHaveUnit = (id) => {
|
|||
|
||||
const getTreeData = () => {
|
||||
//数据过滤
|
||||
let upData = transData(volumeOne.value)
|
||||
let upData = transData(evaluationList.value)
|
||||
if(upData.length){
|
||||
treeData.value = [...upData]
|
||||
}
|
||||
|
@ -248,26 +249,35 @@ const handleNodeClick = (data, node) => {
|
|||
|
||||
const transData = (data) => {
|
||||
let ary = []
|
||||
|
||||
data.forEach(item => {
|
||||
let obj = {}
|
||||
|
||||
// 根据当前教材ID 过滤出对应的单元、章节
|
||||
if (item.rootid == curBookId.value) {
|
||||
obj.label = item.itemtitle
|
||||
obj.id = item.id
|
||||
let ary2 = []
|
||||
evaluationList.value.forEach(el => {
|
||||
let obj2 = {}
|
||||
if (item.id == el.parentid) {
|
||||
obj2 = {
|
||||
label: el.itemtitle,
|
||||
id: el.id
|
||||
if(item.level == 1){
|
||||
obj.label = item.itemtitle
|
||||
obj.id = item.id
|
||||
obj.itemtitle = item.itemtitle
|
||||
obj.edudegree = item.edudegree
|
||||
obj.edustage = item.edustage
|
||||
obj.edusubject = item.edusubject
|
||||
let ary2 = []
|
||||
evaluationList.value.forEach(el => {
|
||||
let obj2 = {}
|
||||
if (item.id == el.parentid) {
|
||||
obj2 = {
|
||||
label: el.itemtitle,
|
||||
id: el.id,
|
||||
itemtitle : el.itemtitle,
|
||||
edudegree : el.edudegree,
|
||||
edustage : el.edustage,
|
||||
edusubject : el.edusubject,
|
||||
}
|
||||
ary2.push(obj2)
|
||||
}
|
||||
ary2.push(obj2)
|
||||
}
|
||||
obj.children = ary2
|
||||
})
|
||||
ary.push(obj)
|
||||
obj.children = ary2
|
||||
})
|
||||
ary.push(obj)
|
||||
}
|
||||
}
|
||||
})
|
||||
return ary
|
||||
|
|
|
@ -81,8 +81,8 @@ import { ipcMsgSend, ipcMsgSend2, ipcMsgInvoke } from '@/utils/tool'
|
|||
import { useToolState } from '@/store/modules/tool'
|
||||
import Lesson from './lesson.vue';
|
||||
import { parseCataByNode } from '@/utils/talkFile'
|
||||
import outLink from '@/utils/linkConfig'
|
||||
import MsgEnum from '@/plugins/imChat/msgEnum' // 消息枚举
|
||||
import { createHomework } from '../createHomework'
|
||||
|
||||
const route = useRoute();
|
||||
const usertore = useUserStore().user
|
||||
|
@ -129,16 +129,35 @@ const changeChapter = async (data)=>{
|
|||
getResource()
|
||||
}
|
||||
|
||||
// 文件资源打开web AIX 布置作业
|
||||
const openFileLink = (item) =>{
|
||||
// key 对应的 linkConfig.js 外部链接配置
|
||||
let key = 'filehomework'
|
||||
let configObj = outLink()[key]
|
||||
ipcMsgSend2('openWindow', {
|
||||
key,
|
||||
fullPath: configObj.fullPath + `&fileShowName=${item.fileShowName}&fileFullPath=${item.fileFullPath}`,
|
||||
cookieData: { ...configObj.data }
|
||||
})
|
||||
// 资源推送
|
||||
const openFileLink = async (item) =>{
|
||||
/**
|
||||
* 资源推送
|
||||
* 1:先生成作业
|
||||
* 2:再进行推送
|
||||
*/
|
||||
|
||||
// 根据当前月份日期 生成一个作业编号
|
||||
const today = new Date();
|
||||
// 获取月份
|
||||
const month = String(today.getMonth() + 1).padStart(2, '0');
|
||||
// 获取当前日
|
||||
const day = String(today.getDate()).padStart(2, '0');
|
||||
// 生成一个作业编号
|
||||
const uniquekey = `${usertore.edusubject}-${month}${day}-${dataList.value.length + 1}`
|
||||
|
||||
// 章节ID
|
||||
const querySearch = toolStore.curSubjectNode.querySearch
|
||||
const evalid = querySearch.levelSecondId ? querySearch.levelSecondId : querySearch.levelFirstId
|
||||
|
||||
// 资源数据
|
||||
const data = [{name: item.fileShowName, ulr: item.fileFullPath}]
|
||||
// 生成作业
|
||||
await createHomework({ uniquekey, evalid, data, entpcourseid: entpcourseid.value })
|
||||
// 查询作业
|
||||
getHomework()
|
||||
let row = dataList.value.at(-1)
|
||||
sendHomework(row)
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
import useUserStore from '@/store/modules/user'
|
||||
import { addClassworkReturnId } from '@/api/teaching/classwork'
|
||||
|
||||
export const createHomework = ({ uniquekey, evalid, data, entpcourseid }) =>{
|
||||
const usertore = useUserStore().user
|
||||
|
||||
var formObj = {};
|
||||
formObj.id = 0;
|
||||
|
||||
formObj.deaddate = '';
|
||||
formObj.entpid = usertore.deptId;
|
||||
formObj.level = 1;
|
||||
formObj.parentid = 0;
|
||||
formObj.worktype = '常规作业';
|
||||
formObj.workkey = '';
|
||||
formObj.worktag = '';
|
||||
|
||||
formObj.uniquekey = uniquekey;
|
||||
|
||||
formObj.classid = 0;
|
||||
formObj.classcourseid = 0;
|
||||
|
||||
formObj.entpcourseid = entpcourseid;
|
||||
|
||||
formObj.slideid = 0;
|
||||
|
||||
formObj.workcodes = JSON.stringify(data);
|
||||
|
||||
formObj.edusubject = usertore.edusubject;
|
||||
formObj.evalid = evalid
|
||||
|
||||
formObj.edustage = usertore.edustage;
|
||||
formObj.status = '';
|
||||
formObj.edituserid = usertore.userId;
|
||||
formObj.entpcourseworklist = JSON.stringify([{'id':-2, 'score': '10'}]);
|
||||
return addClassworkReturnId(formObj)
|
||||
}
|
Loading…
Reference in New Issue