yws_dev #103
|
@ -60,7 +60,6 @@ export class PPTApi {
|
|||
return new Promise(async (resolve, reject) => {
|
||||
const params: object = { parentid, orderByColumn: 'fileidx', isAsc: 'asc', pageSize: 9999 }
|
||||
const res: Result = await API_entpcoursefile.listEntpcoursefileNew(params)
|
||||
console.log(res.rows,'res.rows');
|
||||
if (res.code === 200) {
|
||||
const slides = (res.rows || []).map(o => {
|
||||
if (!!o.datacontent) {
|
||||
|
@ -74,7 +73,8 @@ export class PPTApi {
|
|||
// 活动列表处理
|
||||
const workList = (res.rows || []).map(o => o.activityContent)
|
||||
const workItem = [...res.rows]
|
||||
slidesStore.updateSlideIndex(0) // 下标0 为第一页
|
||||
// 加入活动后刷新ppt数据内容,不跟换为第一页
|
||||
// slidesStore.updateSlideIndex(0) // 下标0 为第一页
|
||||
slidesStore.setSlides(slides) // 写入数据
|
||||
// 写入作业列表数据
|
||||
slidesStore.setWorkList(workList)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
<Divider />
|
||||
|
||||
<!-- 作业列表 -->
|
||||
<div class="c-apt-r">
|
||||
<div class="c-apt-r" v-loading='loadingActive'>
|
||||
<!-- 显示-作业内容 -->
|
||||
<template v-for="(item, index) in workList" :key="index">
|
||||
<div class="item">
|
||||
|
@ -45,9 +45,11 @@
|
|||
</template>
|
||||
</div>
|
||||
<!-- // 推送作业 -->
|
||||
<el-dialog v-model="dialogVisible" append-to-body :show-close="false" width="80%" height="500">
|
||||
<el-scrollbar height="500">
|
||||
<NewClassTsakAssign :currentCourse='currentCourse' @getData="getData" />
|
||||
<el-dialog v-model="dialogVisible" append-to-body :show-close="false" width="90%" height="500">
|
||||
<el-scrollbar height="550">
|
||||
<div style="height: 550px;">
|
||||
<NewClassTsakAssign :currentCourse='currentCourse' @getData="getData" />
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
</el-dialog>
|
||||
<!-- 活动引用 -->
|
||||
|
@ -142,7 +144,6 @@ const currentCourse = reactive<CurrentCourse>({
|
|||
worktype: '',
|
||||
})
|
||||
|
||||
const dataList = ref<WorkItem[]>([])
|
||||
const dialogVisible = ref<boolean>(false)
|
||||
const tasklist_loading = ref<boolean>(false)
|
||||
|
||||
|
@ -152,11 +153,6 @@ const taskList = ref<WorkItem[]>([])
|
|||
// 活动引用的弹窗
|
||||
const activeVisible = ref<boolean>(false)
|
||||
|
||||
const params = reactive<Params>({
|
||||
parentid: 14766,
|
||||
pageSize: 500,
|
||||
orderby: 'fileidx'
|
||||
})
|
||||
|
||||
const type = ref<WorkType[]>([
|
||||
{
|
||||
|
@ -179,6 +175,8 @@ const workList = ref<WorkItem[]>([])
|
|||
|
||||
// 获取所选择的作业列表
|
||||
const selectedWorkList = ref<WorkItem[]>([])
|
||||
// 活动页面的loading框
|
||||
const loadingActive = ref<boolean>(false)
|
||||
|
||||
|
||||
const paramData = ref<{ id: number, activityContent: string }>({} as { id: number, activityContent: string })
|
||||
|
@ -196,7 +194,6 @@ const formatClassWorkFile = async (postData: WorkItem[]): Promise<void> => {
|
|||
}
|
||||
break;
|
||||
case '习题训练': {
|
||||
console.log(item,'item');
|
||||
// let workIds = item.quizlist!.map(items => items.id).join(',');
|
||||
// let ress = await listEntpcoursework({ ids: workIds });
|
||||
// const arr = ress.rows.map((item:{id:number}) => {
|
||||
|
@ -214,22 +211,19 @@ const formatClassWorkFile = async (postData: WorkItem[]): Promise<void> => {
|
|||
// item.prevData = JSON.parse(item.workcodes);
|
||||
}
|
||||
}
|
||||
const arr = paramData.value.activityContent.split(',')
|
||||
arr.push(item.id.toString())
|
||||
await PPTApi.updateSlide(paramData.value)
|
||||
addWorkList(item)
|
||||
workList.value.push(item)
|
||||
loadingActive.value = false
|
||||
}
|
||||
await nextTick();
|
||||
}
|
||||
// 添加的活动回显到页面上面去
|
||||
const addWorkList = (item: WorkItem) => {
|
||||
workList.value.push(item)
|
||||
}
|
||||
// 删除作业
|
||||
}// 删除作业
|
||||
const handleRemoveDemoActivityClassWork = (item: WorkItem) => {
|
||||
ElMessageBox.confirm('是否确认删除?')
|
||||
.then(() => {
|
||||
workList.value.splice(workList.value.indexOf(item), 1);
|
||||
workList.value = []
|
||||
const arr = paramData.value.activityContent.split(',')
|
||||
const filterArr = arr.filter(itemId => itemId!== item.id.toString())
|
||||
paramData.value.activityContent = filterArr.join(',')
|
||||
upDateData()
|
||||
})
|
||||
.catch(() => { });
|
||||
}
|
||||
|
@ -269,13 +263,52 @@ const savePPtData = async () => {
|
|||
ElMessage.warning('请选择活动')
|
||||
return
|
||||
}
|
||||
workList.value = []
|
||||
const arr = selectedWorkList.value.map(item => item.id)
|
||||
// 应该是新加而不是覆盖
|
||||
paramData.value.activityContent = arr.join(',')
|
||||
await PPTApi.updateSlide(paramData.value)
|
||||
debugger
|
||||
const existingIds = paramData.value.activityContent ? paramData.value.activityContent.split(',') : []
|
||||
paramData.value.activityContent = Array.from(new Set([...existingIds, ...arr])).join(',')
|
||||
upDateData()
|
||||
activeVisible.value = false
|
||||
}
|
||||
|
||||
// 获取当前ppt页的数据
|
||||
const getCurrentPPtData = async () => {
|
||||
workList.value = []
|
||||
objItem.value = workItem.value[slideIndex.value]
|
||||
paramData.value.id = objItem.value.id
|
||||
paramData.value.activityContent = objItem.value?.activityContent
|
||||
if (objItem.value?.activityContent) {
|
||||
loadingActive.value = true
|
||||
const res = await homeworklist({ ids: objItem.value?.activityContent, pageSize: 100 })
|
||||
await formatClassWorkFile(res.rows)
|
||||
}
|
||||
}
|
||||
|
||||
// 接收习题训练的值
|
||||
const getData = async (data: WorkItem) => {
|
||||
workList.value = []
|
||||
if(paramData.value.activityContent){
|
||||
const arr = paramData.value.activityContent.split(',')
|
||||
arr.push(data.id.toString())
|
||||
const unitArr = Array.from(new Set(arr))
|
||||
paramData.value.activityContent = unitArr.join(',')
|
||||
}else{
|
||||
paramData.value.activityContent = data.id.toString()
|
||||
}
|
||||
upDateData()
|
||||
dialogVisible.value = false
|
||||
}
|
||||
const upDateData = async () => {
|
||||
await PPTApi.updateSlide(paramData.value)
|
||||
loadingActive.value = true
|
||||
const res = await homeworklist({ ids: paramData.value.activityContent, pageSize: 100 })
|
||||
await formatClassWorkFile(res.rows)
|
||||
const resource = sessionStore.get('curr.resource')
|
||||
await PPTApi.getSlideList(resource.id)
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
const curNode = sessionStore.get('subject.curNode') as CourseNode
|
||||
currentCourse.textbookId = curNode.rootid
|
||||
|
@ -283,33 +316,12 @@ onMounted(() => {
|
|||
currentCourse.levelSecondId = curNode.id
|
||||
currentCourse.coursetitle = curNode.itemtitle
|
||||
currentCourse.node = curNode
|
||||
listEntpcoursefile(params).then((res: { rows: WorkItem[] }) => {
|
||||
dataList.value = [...res.rows]
|
||||
})
|
||||
objItem.value = workItem.value[slideIndex.value]
|
||||
getCurrentPPtData()
|
||||
})
|
||||
watch(() => slideIndex.value, () => {
|
||||
getCurrentPPtData()
|
||||
})
|
||||
// 获取当前ppt页的数据
|
||||
const getCurrentPPtData = async () => {
|
||||
workList.value = []
|
||||
objItem.value = workItem.value[slideIndex.value]
|
||||
paramData.value.id = objItem.value.id
|
||||
if (objItem.value?.activityContent) {
|
||||
paramData.value.activityContent = objItem.value?.activityContent
|
||||
const res = await homeworklist({ ids: objItem.value?.activityContent, pageSize: 100 })
|
||||
await formatClassWorkFile(res.rows)
|
||||
}
|
||||
}
|
||||
|
||||
// 接收习题训练的值
|
||||
const getData = async (data: WorkItem) => {
|
||||
console.log(data, 'data')
|
||||
await formatClassWorkFile([data])
|
||||
}
|
||||
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
.buttonDiv{
|
||||
|
@ -375,5 +387,8 @@ const getData = async (data: WorkItem) => {
|
|||
--el-border-color: var(--current-color);
|
||||
}
|
||||
}
|
||||
.page .page-resource{
|
||||
height: 500px !important;
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -157,6 +157,7 @@ const props = defineProps({
|
|||
currentCourse: Object,
|
||||
})
|
||||
const emits = defineEmits(['getData'])
|
||||
// 这个代表的是是否从ppt里面添加的作业
|
||||
const isShow = ref(false)
|
||||
|
||||
const propsQueryCourseObj = route.query.courseObj;//作业布置的内容对象
|
||||
|
@ -490,12 +491,14 @@ const handleClassWorkFormQuizRemove = (index) =>{
|
|||
|
||||
|
||||
// 当前为[编辑]状态下点进来得处理 newWorkSpaceEdit true 为编辑状态
|
||||
if(classWorkForm.id != '' ) {// 编辑状态 有id
|
||||
|
||||
editWork(cform); // 编辑作业
|
||||
if(isShow.value === false){
|
||||
if(classWorkForm.id != '' ) {// 编辑状态 有id
|
||||
editWork(cform); // 编辑作业
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (classWorkForm.worktype === "课堂展示") {
|
||||
boardLoading.value = true
|
||||
let canvasJson = proxy.$refs.boardref.getCanvasJson()
|
||||
|
@ -596,7 +599,12 @@ const handleClassWorkFormQuizRemove = (index) =>{
|
|||
}
|
||||
console.log('该清空左侧列表数据了');
|
||||
// 清空左侧 选中的布置列表 并刷新列表
|
||||
currentRow.value = {id:0};
|
||||
debugger
|
||||
if(isShow.value){
|
||||
currentRow.value = {id:1};
|
||||
}else{
|
||||
currentRow.value = {id:0};
|
||||
}
|
||||
initHomeWork();
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue