فهرست منبع

Merge branch 'dev' of http://git.dayaedu.com/huangqiyong/classroom into staging

黄琪勇 10 ماه پیش
والد
کامیت
f5f92979ca

+ 8 - 0
src/api/cloudPractice.api.ts

@@ -82,3 +82,11 @@ export const queryPage2_klx = (data: any) => {
       data
    })
 }
+
+export const selectCondition_klx = (data: any) => {
+   return httpAxios_klx.axioseRquest({
+      method: "post",
+      url: "/api-teacher/tenantAlbumMusic/selectCondition",
+      data
+   })
+}

BIN
src/img/coursewarePlay/goPracticeBtn.png


+ 67 - 44
src/views/cloudPractice/cloudPractice.tsx

@@ -80,22 +80,18 @@ export default defineComponent({
       /** 选中的item */
       const activeItem = computed(() => {
          const list = state.list[state.listActive] || {}
-         const mp3 = {
-            GYT: list?.audioFileUrl,
-            GYM: list?.musicSheetType === "CONCERT" ? list?.metronomeUrl : list?.metronomeMp3Url || list?.mp3Url,
-            KLX: ""
-         }
-
          let tempList: any = {}
 
          if (userStoreHook.roles === "GYM") {
+            const item = list.background?.[0]
+            const audioFileUrl = item?.musicSheetType === "CONCERT" ? item?.metronomeUrl : item?.metronomeMp3Url || item?.mp3Url
             tempList = {
-               id: list?.id,
-               name: list?.name,
+               id: item?.id,
+               name: item?.examSongName,
                background: list?.background,
-               xmlUrl: list?.xmlUrl,
-               musicSheetType: list?.musicSheetType,
-               audioFileUrl: mp3[userStoreHook.roles!]
+               xmlUrl: item?.xmlUrl,
+               musicSheetType: item?.musicSheetType,
+               audioFileUrl
             }
          } else if (userStoreHook.roles === "GYT") {
             tempList = {
@@ -104,7 +100,7 @@ export default defineComponent({
                background: list?.background,
                xmlUrl: list?.xmlFileUrl,
                musicSheetType: list?.musicSheetType,
-               audioFileUrl: mp3[userStoreHook.roles!]
+               audioFileUrl: list?.audioFileUrl
             }
          }
          return tempList
@@ -272,7 +268,6 @@ export default defineComponent({
             detailFlag: true,
             status: 1
          }
-         console.log(state.typeId, state.levelId, "level")
          await httpAjaxErrMsg(queryPage2_gyt, params).then(res => {
             loading.value = false
             if (res.code === 200) {
@@ -307,7 +302,39 @@ export default defineComponent({
          }).then(res => {
             loading.value = false
             if (res.code === 200) {
-               state.categoryList = res.data || []
+               const result = res.data || []
+
+               state.categoryList = result.map((item: any) => {
+                  const subjectCounts = item.subjectCounts ? true : false
+                  const musicCounts = item.musicCounts ? true : false
+                  const ensembleCounts = item.ensembleCounts ? true : false
+                  const list: any = []
+                  if (subjectCounts) {
+                     list.push({
+                        label: "基础云练",
+                        value: "SUBJECT"
+                     })
+                  }
+                  if (musicCounts) {
+                     list.push({
+                        label: "独奏云练",
+                        value: "MUSIC"
+                     })
+                  }
+                  if (ensembleCounts) {
+                     list.push({
+                        label: "合奏云练",
+                        value: "ENSEMBLE"
+                     })
+                  }
+                  return {
+                     value: item.id,
+                     label: item.name,
+                     musicSheetCategoriesList: list
+                  }
+               })
+
+               console.log(state.categoryList, "state.categoryList")
 
                setDefaultData()
             }
@@ -356,7 +383,9 @@ export default defineComponent({
          const params = {
             page: state.page,
             rows: state.rows,
+            albumId: state.categoryId,
             musicSubject: state.subjectId === -1 ? null : state.subjectId,
+            subjectType: state.firstTreeId,
             musicSheetCategoriesId: state.typeId === -1 ? state.levelId : state.typeId,
             keyword: state.queryStr,
             status: 1
@@ -377,7 +406,7 @@ export default defineComponent({
                      item.name = item.musicSheetName
                   })
                   state.list = [...state.list, ...result.rows]
-                  state.finshed = state.page >= result.pages
+                  state.finshed = state.page >= result.totalPage
                } else {
                   state.finshed = true
                }
@@ -385,6 +414,11 @@ export default defineComponent({
          })
       }
 
+      const handle_klx = async () => {
+         // subjectType: params.subjectType,
+         // tenantAlbumId: params.albumId
+      }
+
       /** 条件查询 */
       const handleAllSearchList = async () => {
          //  GYM,GYT,KLX 区分   查询搜索条件数据
@@ -498,7 +532,6 @@ export default defineComponent({
                result = storeData.value[0]?.musicSheetCategoriesList || []
             }
 
-            console.log(result, "result -----")
             state.levelList = result.map((item: any) => {
                return {
                   label: item.name,
@@ -531,42 +564,31 @@ export default defineComponent({
       }
 
       const initCategories_klx = (type?: "first" | "category" | "level" | "type") => {
-         if (state.categoryList.length > 0 && !["level", "type"].includes(type as any)) {
+         if (state.categoryList.length > 0 && !["level", "type", "first"].includes(type as any)) {
             let result: any = []
             if (type === "category" && state.categoryId) {
-               result = state.categoryList.find((item: any) => item.id === state.categoryId)?.musicSheetCategoriesList || []
+               result = state.categoryList.find((item: any) => item.value === state.categoryId)?.musicSheetCategoriesList || []
             } else {
-               state.categoryId = state.categoryList[0]?.id
+               state.categoryId = state.categoryList[0]?.value
+               state.categoryName = state.categoryList[0]?.label
                result = state.categoryList[0]?.musicSheetCategoriesList || []
             }
-            console.log(result, "result -----")
-            state.levelList = result.map((item: any) => {
+            storeData.value = result.map((item: any) => {
                return {
-                  label: item.name,
-                  value: item.id,
-                  musicSheetCategoriesList: item.musicSheetCategoriesList || []
+                  id: item.value,
+                  name: item.label
                }
             })
          }
-         // if (state.levelList.length > 0) {
-         //    let result: any = []
-         //    if (type === "level" && state.levelId) {
-         //       result = state.levelList.find((item: any) => item.value === state.levelId)?.musicSheetCategoriesList
-         //    } else {
-         //       state.levelId = state.levelList[0]?.value
-         //       result = state.levelList[0]?.musicSheetCategoriesList || []
-         //    }
-         //    state.typeList = result.map((item: any) => {
-         //       return {
-         //          label: item.name,
-         //          value: item.id
-         //       }
-         //    })
-         //    state.typeList.unshift({
-         //       label: "全部",
-         //       value: -1
-         //    })
-         // }
+
+         if (storeData.value.length > 0 && !["category", "level", "type"].includes(type as any)) {
+            if (type === "first" && state.firstTreeId) {
+               //
+            } else {
+               //
+               state.firstTreeId = storeData.value[0]?.id
+            }
+         }
       }
 
       const __init = async () => {
@@ -593,6 +615,7 @@ export default defineComponent({
          state.page = 1
          state.finshed = false
          state.reshing = true
+         state.list = []
          await handleAllGetList()
       }
 
@@ -904,7 +927,7 @@ export default defineComponent({
 
                      <NSpin show={staffLoading.value} stroke="#FF531C">
                         <div class={styles.musicName}>{activeItem.value.name}</div>
-                        <div class={[styles.staffImgs, !state.list.length && !loading.value && styles.staffImgsEmpty]}>
+                        <div class={[styles.staffImgs, !loading.value && !activeItem.value?.id && styles.staffImgsEmpty]}>
                            {state.iframeSrc && activeItem.value?.id && (
                               <iframe
                                  id="staffIframeRef"

+ 5 - 5
src/views/coursewarePlay/coursewarePlay.vue

@@ -161,9 +161,9 @@ const songPlaySrc = computed<string>(() => {
    //  GYM,GYT,KLX 区分   云教练
    const urlObj = {
       GYT: `${URL_TEACH_GYT}?id=${activeCourseware.value?.content}&modelType=practice&modeType=json&Authorization=${getToken()}&isYjt=1`,
-      GYM: `${URL_TEACH_GYM}?Authorization=${getToken()}&platform=web&liveConfig=1#/detail/${
+      GYM: `${URL_TEACH_GYM}#/detail/${
          activeCourseware.value?.content
-      }?isHideBack=trueis&Yjt=1`,
+      }?Authorization=${getToken()}&platform=web&liveConfig=1&isHideBack=true&isYjt=1`,
       KLX: `${URL_TEACH_KLX}??Authorization=${getToken()}&id=${activeCourseware.value?.content}&isHideBack=true&limitModel=practice&isYjt=1`
    }
    return urlObj[userStoreHook.roles!]
@@ -407,7 +407,7 @@ function handleGoPracticeBtn(activeCoursewareResourceId: string) {
    //  GYM,GYT,KLX 区分   云教练
    const urlObj = {
       GYT: `${URL_TEACH_GYT}?id=${activeCoursewareResourceId}&modelType=practice&modeType=json&Authorization=${getToken()}&isYjt=1`,
-      GYM: `${URL_TEACH_GYM}?Authorization=${getToken()}&platform=web&liveConfig=1#/detail/${activeCoursewareResourceId}?isYjt=1`,
+      GYM: `${URL_TEACH_GYM}#/detail/${activeCoursewareResourceId}?Authorization=${getToken()}&platform=web&liveConfig=1&isYjt=1`,
       KLX: `${URL_TEACH_KLX}??Authorization=${getToken()}&id=${activeCoursewareResourceId}&limitModel=practice&isYjt=1`
    }
    window.open(urlObj[userStoreHook.roles!], "_blank")
@@ -434,7 +434,7 @@ function handleGoPracticeBtn(activeCoursewareResourceId: string) {
          transform: translateY(-100%);
       }
       .goPracticeBtn {
-         transform: translatex(135px);
+         transform: translatex(-135px);
       }
    }
    &.fileType_song.hideController {
@@ -541,7 +541,7 @@ function handleGoPracticeBtn(activeCoursewareResourceId: string) {
    }
    .goPracticeBtn {
       position: absolute;
-      right: 30px;
+      left: 30px;
       bottom: 124px;
       width: 178px;
       height: 64px;