|
@@ -22,7 +22,8 @@ import {
|
|
|
querySubjectIds_klx,
|
|
|
queryTree_gym,
|
|
|
queryTree_gyt,
|
|
|
- queryTree_klx
|
|
|
+ queryTree_klx,
|
|
|
+ selectCondition_klx
|
|
|
} from "@/api/cloudPractice.api"
|
|
|
// import { getToken } from "@/libs/auth"
|
|
|
// import { URL_TEACH_GYM } from "@/config"
|
|
@@ -102,6 +103,16 @@ export default defineComponent({
|
|
|
musicSheetType: list?.musicSheetType,
|
|
|
audioFileUrl: list?.audioFileUrl
|
|
|
}
|
|
|
+ } else if (userStoreHook.roles === "KLX") {
|
|
|
+ const item: any = list.background?.[0]
|
|
|
+ tempList = {
|
|
|
+ id: list?.id,
|
|
|
+ name: list?.musicSheetName,
|
|
|
+ background: list?.background,
|
|
|
+ xmlUrl: list?.xmlFileUrl,
|
|
|
+ musicSheetType: list?.musicSheetType,
|
|
|
+ audioFileUrl: item?.audioFileUrl
|
|
|
+ }
|
|
|
}
|
|
|
return tempList
|
|
|
})
|
|
@@ -181,7 +192,7 @@ export default defineComponent({
|
|
|
categoriesId: state.typeId === -1 ? state.levelId : state.typeId,
|
|
|
search: state.queryStr
|
|
|
}
|
|
|
- console.log(state.typeId, state.levelId, "level")
|
|
|
+
|
|
|
await httpAjaxErrMsg(queryPage2_gym, params).then(res => {
|
|
|
loading.value = false
|
|
|
if (res.code === 200) {
|
|
@@ -299,46 +310,52 @@ export default defineComponent({
|
|
|
page: 1,
|
|
|
parentId: 0,
|
|
|
rows: 10
|
|
|
- }).then(res => {
|
|
|
- loading.value = false
|
|
|
- if (res.code === 200) {
|
|
|
- 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()
|
|
|
- }
|
|
|
})
|
|
|
+ .then(res => {
|
|
|
+ loading.value = false
|
|
|
+ if (res.code === 200) {
|
|
|
+ const result = res.data || []
|
|
|
+
|
|
|
+ const tempList: any = []
|
|
|
+ result.forEach((item: any) => {
|
|
|
+ if (item.musicNum > 0) {
|
|
|
+ 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"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ tempList.push({
|
|
|
+ value: item.id,
|
|
|
+ label: item.name,
|
|
|
+ musicSheetCategoriesList: list
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ state.categoryList = tempList
|
|
|
+
|
|
|
+ setDefaultData()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ state.finshed = true
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
const handleGetSubject_klx = async () => {
|
|
@@ -351,7 +368,6 @@ export default defineComponent({
|
|
|
loading.value = false
|
|
|
if (res.code === 200) {
|
|
|
const result = res.data?.rows || []
|
|
|
- console.log(res, "res")
|
|
|
state.subjectList = result.map((item: any) => {
|
|
|
return {
|
|
|
label: item.name,
|
|
@@ -379,18 +395,18 @@ export default defineComponent({
|
|
|
}
|
|
|
|
|
|
const handleGetList_klx = async () => {
|
|
|
+ if (!state.categoryId) return
|
|
|
loading.value = true
|
|
|
const params = {
|
|
|
page: state.page,
|
|
|
rows: state.rows,
|
|
|
albumId: state.categoryId,
|
|
|
- musicSubject: state.subjectId === -1 ? null : state.subjectId,
|
|
|
+ subjectId: state.subjectId === -1 ? null : state.subjectId,
|
|
|
subjectType: state.firstTreeId,
|
|
|
- musicSheetCategoriesId: state.typeId === -1 ? state.levelId : state.typeId,
|
|
|
- keyword: state.queryStr,
|
|
|
- status: 1
|
|
|
+ level: state.levelId === -1 ? null : state.levelId,
|
|
|
+ type: state.typeId === -1 ? null : state.typeId,
|
|
|
+ keyword: state.queryStr
|
|
|
}
|
|
|
- console.log(state.typeId, state.levelId, "level")
|
|
|
await httpAjaxErrMsg(queryPage2_klx, params).then(res => {
|
|
|
loading.value = false
|
|
|
if (res.code === 200) {
|
|
@@ -414,9 +430,49 @@ export default defineComponent({
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- const handle_klx = async () => {
|
|
|
- // subjectType: params.subjectType,
|
|
|
- // tenantAlbumId: params.albumId
|
|
|
+ const handleSelectCondition_klx = async () => {
|
|
|
+ if (!state.categoryId || !state.firstTreeId) return
|
|
|
+ loading.value = true
|
|
|
+ const params = {
|
|
|
+ tenantAlbumId: state.categoryId,
|
|
|
+ subjectType: state.firstTreeId
|
|
|
+ }
|
|
|
+ await httpAjaxErrMsg(selectCondition_klx, params).then(res => {
|
|
|
+ loading.value = false
|
|
|
+ if (res.code === 200) {
|
|
|
+ const result = res.data || {}
|
|
|
+
|
|
|
+ if (result.levelList && result.levelList.length > 0) {
|
|
|
+ state.levelList = result.levelList.map((item: any) => {
|
|
|
+ return {
|
|
|
+ label: item.value,
|
|
|
+ value: item.id
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ state.levelList.unshift({
|
|
|
+ label: "全部级别",
|
|
|
+ value: -1
|
|
|
+ })
|
|
|
+ state.levelId = -1
|
|
|
+ }
|
|
|
+
|
|
|
+ if (result.typeList && result.typeList.length > 0) {
|
|
|
+ state.typeList = result.typeList.map((item: any) => {
|
|
|
+ return {
|
|
|
+ label: item.value,
|
|
|
+ value: item.id
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ state.typeList.unshift({
|
|
|
+ label: "全部类型",
|
|
|
+ value: -1
|
|
|
+ })
|
|
|
+ state.typeId = -1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
/** 条件查询 */
|
|
@@ -454,13 +510,13 @@ export default defineComponent({
|
|
|
}
|
|
|
|
|
|
/** 初始化数据 */
|
|
|
- const setDefaultData = (type?: "first" | "category" | "level" | "type") => {
|
|
|
+ const setDefaultData = async (type?: "first" | "category" | "level" | "type") => {
|
|
|
if (userStoreHook.roles === "GYM") {
|
|
|
initCategories_gym(type)
|
|
|
} else if (userStoreHook.roles === "GYT") {
|
|
|
initCategories_gyt(type)
|
|
|
} else if (userStoreHook.roles === "KLX") {
|
|
|
- initCategories_klx(type)
|
|
|
+ await initCategories_klx(type)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -490,7 +546,6 @@ export default defineComponent({
|
|
|
state.categoryName = state.categoryList[0]?.label
|
|
|
result = state.categoryList[0]?.sysMusicScoreCategoriesList || []
|
|
|
}
|
|
|
- console.log(result, "result", type)
|
|
|
state.levelList = result.map((item: any) => {
|
|
|
return {
|
|
|
label: item.name,
|
|
@@ -563,7 +618,7 @@ export default defineComponent({
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- const initCategories_klx = (type?: "first" | "category" | "level" | "type") => {
|
|
|
+ const initCategories_klx = async (type?: "first" | "category" | "level" | "type") => {
|
|
|
if (state.categoryList.length > 0 && !["level", "type", "first"].includes(type as any)) {
|
|
|
let result: any = []
|
|
|
if (type === "category" && state.categoryId) {
|
|
@@ -581,12 +636,14 @@ export default defineComponent({
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- if (storeData.value.length > 0 && !["category", "level", "type"].includes(type as any)) {
|
|
|
+ if (storeData.value.length > 0 && !["level", "type"].includes(type as any)) {
|
|
|
+ console.log(storeData.value.length, "storeData.value.length", type)
|
|
|
if (type === "first" && state.firstTreeId) {
|
|
|
- //
|
|
|
+ await handleSelectCondition_klx()
|
|
|
} else {
|
|
|
//
|
|
|
state.firstTreeId = storeData.value[0]?.id
|
|
|
+ await handleSelectCondition_klx()
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -755,9 +812,9 @@ export default defineComponent({
|
|
|
{storeData.value.map((item: any) => (
|
|
|
<div
|
|
|
class={[styles.leftSection_item, item.id === state.firstTreeId && styles.leftSection_item__active]}
|
|
|
- onClick={() => {
|
|
|
+ onClick={async () => {
|
|
|
state.firstTreeId = item.id
|
|
|
- setDefaultData("first")
|
|
|
+ await setDefaultData("first")
|
|
|
handleGetList()
|
|
|
}}
|
|
|
>
|
|
@@ -774,13 +831,12 @@ export default defineComponent({
|
|
|
<NPopselect
|
|
|
options={state.categoryList}
|
|
|
v-model:value={state.categoryId}
|
|
|
- onUpdate:value={(val: any) => {
|
|
|
+ onUpdate:value={async (val: any) => {
|
|
|
const item = state.categoryList.find((item: any) => item.value === val)
|
|
|
- console.log(item, "item")
|
|
|
if (item) {
|
|
|
state.categoryName = item.label
|
|
|
state.categoryId = item.value
|
|
|
- setDefaultData("category")
|
|
|
+ await setDefaultData("category")
|
|
|
handleGetList()
|
|
|
}
|
|
|
}}
|
|
@@ -802,29 +858,33 @@ export default defineComponent({
|
|
|
placeholder="全部声部"
|
|
|
onChange={handleGetList}
|
|
|
/>
|
|
|
- <Dictionary
|
|
|
- popperClass="classTypePopper"
|
|
|
- v-model={state.levelId}
|
|
|
- height={42}
|
|
|
- options={state.levelList}
|
|
|
- placeholder="级别"
|
|
|
- onChange={() => {
|
|
|
- setDefaultData("level")
|
|
|
- handleGetList()
|
|
|
- }}
|
|
|
- />
|
|
|
- <Dictionary
|
|
|
- popperClass="classTypePopper"
|
|
|
- v-model={state.typeId}
|
|
|
- height={42}
|
|
|
- options={state.typeList}
|
|
|
- propsOpt={{
|
|
|
- labelField: "name",
|
|
|
- valueField: "id"
|
|
|
- }}
|
|
|
- placeholder="分类"
|
|
|
- onChange={handleGetList}
|
|
|
- />
|
|
|
+ {state.levelList.length ? (
|
|
|
+ <Dictionary
|
|
|
+ popperClass="classTypePopper"
|
|
|
+ v-model={state.levelId}
|
|
|
+ height={42}
|
|
|
+ options={state.levelList}
|
|
|
+ placeholder="级别"
|
|
|
+ onChange={() => {
|
|
|
+ setDefaultData("level")
|
|
|
+ handleGetList()
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ ) : null}
|
|
|
+ {state.typeList.length > 0 ? (
|
|
|
+ <Dictionary
|
|
|
+ popperClass="classTypePopper"
|
|
|
+ v-model={state.typeId}
|
|
|
+ height={42}
|
|
|
+ options={state.typeList}
|
|
|
+ propsOpt={{
|
|
|
+ labelField: "name",
|
|
|
+ valueField: "id"
|
|
|
+ }}
|
|
|
+ placeholder="分类"
|
|
|
+ onChange={handleGetList}
|
|
|
+ />
|
|
|
+ ) : null}
|
|
|
</div>
|
|
|
<div
|
|
|
class={[styles.btnSearch, state.searchStatus && styles.btnSearchActive]}
|