|
@@ -1469,10 +1469,20 @@ const getMusicInfo = async (res: any) => {
|
|
|
state.isScoreRender = res.data?.isScoreRender
|
|
|
|
|
|
state.defaultScoreRender = res.data?.defaultScoreRender
|
|
|
+
|
|
|
+ let xmlString = await fetch(res.data.xmlFileUrl).then((response) => response.text());
|
|
|
+ xmlString = xmlAddPartName(xmlString);
|
|
|
+ downloadXmlStr.value = xmlString
|
|
|
+ const tracks = xmlToTracks(xmlString)
|
|
|
|
|
|
|
|
|
|
|
|
let partIndexs = query["part-index"] ? query["part-index"].split(",") : ["-1"]
|
|
|
+
|
|
|
+ if (query["part-name"]) {
|
|
|
+ let nameIdx = tracks.findIndex((item: any) => item == query["part-name"])
|
|
|
+ partIndexs = [nameIdx]
|
|
|
+ }
|
|
|
partIndexs = partIndexs.map((indexStr:string) => {
|
|
|
return parseInt(indexStr)
|
|
|
}).sort((a, b) => a - b);
|
|
@@ -1491,11 +1501,7 @@ const getMusicInfo = async (res: any) => {
|
|
|
|
|
|
state.canSelectTracks = res.data.multiTracksSelection === "null" || res.data.multiTracksSelection === "" || res.data.multiTracksSelection === null ? [] : res.data.multiTracksSelection?.split(',');
|
|
|
state.canSelectTracks = state.canSelectTracks.map((item: any)=>item.trim())
|
|
|
-
|
|
|
- let xmlString = await fetch(res.data.xmlFileUrl).then((response) => response.text());
|
|
|
- xmlString = xmlAddPartName(xmlString);
|
|
|
- downloadXmlStr.value = xmlString
|
|
|
- const tracks = xmlToTracks(xmlString)
|
|
|
+
|
|
|
|
|
|
if (state.combinePartIndexs.length) {
|
|
|
(window as any).DYFirstTrackName = tracks[state.combinePartIndexs[0]] || '';
|
|
@@ -1530,7 +1536,7 @@ function xmlToTracks(xmlString: string) {
|
|
|
if (textContent?.toLocaleLowerCase() === "common") {
|
|
|
(window as any).HasCommonTrack = true;
|
|
|
}
|
|
|
- if (textContent != "COMMON" && textContent != "common" && textContent) {
|
|
|
+ if (textContent?.trim()?.toLocaleLowerCase() !== "common" && textContent) {
|
|
|
arr.push(textContent)
|
|
|
}
|
|
|
return arr
|