|
@@ -13,8 +13,9 @@ import { useSlidesStore } from "@/store"
|
|
|
type pptWork = { id: string; coverImg: string; jsonUrl: string; isSave: boolean }
|
|
|
const useStore = defineStore("pptWork", {
|
|
|
state: (): pptWork => {
|
|
|
+ const route = useRoute()
|
|
|
return {
|
|
|
- id: "",
|
|
|
+ id: route.query.id as string,
|
|
|
coverImg: "",
|
|
|
jsonUrl: "",
|
|
|
isSave: false // 当前是否保存,用来关闭页面时候判断 提不提示
|
|
@@ -23,15 +24,12 @@ const useStore = defineStore("pptWork", {
|
|
|
actions: {
|
|
|
/** 初始化 */
|
|
|
async initPPTData() {
|
|
|
- const route = useRoute()
|
|
|
- const id = route.query.id as string | undefined
|
|
|
- if (id) {
|
|
|
+ if (this.id) {
|
|
|
LoadingBar.loading(true, "资源加载中,请稍等...")
|
|
|
- const res = await httpAjaxErrMsg(getTeacherChapterKnowledgeMaterial, id)
|
|
|
+ const res = await httpAjaxErrMsg(getTeacherChapterKnowledgeMaterial, this.id)
|
|
|
if (res.code === 200) {
|
|
|
- const { id, dataJson, chapterLessonCoursewareName } = res.data || {}
|
|
|
+ const { dataJson, chapterLessonCoursewareName } = res.data || {}
|
|
|
const { coverImg, jsonUrl } = JSON.parse(dataJson)
|
|
|
- this.id = id
|
|
|
this.coverImg = coverImg || ""
|
|
|
const slidesStore = useSlidesStore()
|
|
|
slidesStore.setTitle(chapterLessonCoursewareName)
|
|
@@ -47,8 +45,8 @@ const useStore = defineStore("pptWork", {
|
|
|
},
|
|
|
async updatePPT() {
|
|
|
await this.updateCoverImg()
|
|
|
- const { blob, title } = getJsonToBlob()
|
|
|
- fileUpload(title, blob)
|
|
|
+ const { blob } = getJsonToBlob()
|
|
|
+ fileUpload(`${this.id}ppt`, blob, `${this.id}/`, false)
|
|
|
.then(url => {
|
|
|
LoadingBar.loading(true, "课件保存中,请稍等...")
|
|
|
httpAjaxErrMsg(putTeacherChapterKnowledgeMaterial, {
|
|
@@ -84,7 +82,7 @@ const useStore = defineStore("pptWork", {
|
|
|
if (coverImgDom) {
|
|
|
const dataBlob = await toBlob(coverImgDom)
|
|
|
if (dataBlob) {
|
|
|
- const url = await fileUpload("coverImg", dataBlob)
|
|
|
+ const url = await fileUpload(`${this.id}coverImg`, dataBlob, `${this.id}/`, false)
|
|
|
url && (this.coverImg = url)
|
|
|
}
|
|
|
}
|