|
@@ -619,18 +619,18 @@ export default defineComponent({
|
|
|
part = part || 'noPartName'
|
|
|
}
|
|
|
return {
|
|
|
- value: part,
|
|
|
- label: part
|
|
|
+ value: part.trim(),
|
|
|
+ label: part.trim()
|
|
|
}
|
|
|
})
|
|
|
|
|
|
// 处理空数据
|
|
|
- if (partListNames.length === 1 && forms.details.id && !partListNames[0].value) {
|
|
|
- partListNames[0] = {
|
|
|
- value: forms.details.multiTracksSelection,
|
|
|
- label: forms.details.multiTracksSelection
|
|
|
- }
|
|
|
- }
|
|
|
+ // if (partListNames.length === 1 && forms.details.id && !partListNames[0].value) {
|
|
|
+ // partListNames[0] = {
|
|
|
+ // value: forms.details.multiTracksSelection,
|
|
|
+ // label: forms.details.multiTracksSelection
|
|
|
+ // }
|
|
|
+ // }
|
|
|
|
|
|
partListNames = partListNames.filter((n: any) => n.value?.toLocaleUpperCase?.() != 'COMMON')
|
|
|
|
|
@@ -712,7 +712,7 @@ export default defineComponent({
|
|
|
onPositiveClick: async () => {
|
|
|
const sound = forms.musicSheetSoundList_YY[index]
|
|
|
const track = sound.track
|
|
|
- if (track) {
|
|
|
+ if (track != null) {
|
|
|
const selectIndex = forms.multiTracksSelection.indexOf(track)
|
|
|
if (selectIndex > -1) {
|
|
|
forms.multiTracksSelection.splice(selectIndex, 1)
|
|
@@ -776,6 +776,33 @@ export default defineComponent({
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ const changeSubject = async (subjectIdList: []) => {
|
|
|
+ state.instrumentList = []
|
|
|
+ if (!subjectIdList || subjectIdList.length == 0) {
|
|
|
+ forms.musicalInstrumentIdList = []
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let enableFlag = null;
|
|
|
+ if (props.type === 'add') {
|
|
|
+ enableFlag = true;
|
|
|
+ }
|
|
|
+ let tempMusicalInstrumentIdList = [] as any
|
|
|
+ const {data} = await musicalInstrumentPage({page: 1, rows: 999, subjectIds: subjectIdList, enableFlag: enableFlag});
|
|
|
+ data.rows.map((item: any) => {
|
|
|
+ tempMusicalInstrumentIdList.push(item.id + '')
|
|
|
+ state.instrumentList.push(
|
|
|
+ {
|
|
|
+ label: item.name,
|
|
|
+ value: item.id + '',
|
|
|
+ disabled: !item.enableFlag
|
|
|
+ }
|
|
|
+ )
|
|
|
+ })
|
|
|
+ forms.musicalInstrumentIdList = forms.musicalInstrumentIdList.filter((item: any) => {
|
|
|
+ return tempMusicalInstrumentIdList.includes(item)
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
onMounted(async () => {
|
|
|
state.loading = true
|
|
|
if (props.type === 'preview') {
|
|
@@ -876,9 +903,8 @@ export default defineComponent({
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
- forms.musicalInstrumentIdList = data.musicalInstrumentIds
|
|
|
- ? data.musicalInstrumentIds.split(',')
|
|
|
- : []
|
|
|
+ forms.musicalInstrumentIdList = data.musicalInstrumentIds ? data.musicalInstrumentIds.split(',') : []
|
|
|
+ await changeSubject(forms.subjectIds)
|
|
|
forms.musicCategoryId = data.musicCategoryId
|
|
|
forms.audioType = data.audioType
|
|
|
forms.isPlayBeat = data.isPlayBeat
|
|
@@ -939,12 +965,12 @@ export default defineComponent({
|
|
|
state.partListNames = getPartListNames(res?.data as any) as any
|
|
|
|
|
|
// 初始化音轨和原音
|
|
|
- forms.multiTracksSelection = data.multiTracksSelection ? data.multiTracksSelection.split(',') : []
|
|
|
+ forms.multiTracksSelection = data.multiTracksSelection ? data.multiTracksSelection.trim().split(',') : ['']
|
|
|
|
|
|
if (state.musicSheetSoundList.length === 1 && state.musicSheetSoundList[0].track === 'P1') {
|
|
|
forms.musicSheetSoundList_YY.push({
|
|
|
audioFileUrl: state.musicSheetSoundList[0].audioFileUrl, // 原音
|
|
|
- track: state.partListNames[0].value || null, // 轨道
|
|
|
+ track: state.partListNames[0].value || '', // 轨道
|
|
|
audioPlayType: 'PLAY'
|
|
|
})
|
|
|
} else {
|
|
@@ -952,7 +978,8 @@ export default defineComponent({
|
|
|
state.partListNames.forEach((item: any) => {
|
|
|
let audioFileUrl = null
|
|
|
state.musicSheetSoundList.forEach((next: any) => {
|
|
|
- if (next.track && next.track == item.value) {
|
|
|
+ let track = next.track ? next.track : ''
|
|
|
+ if (track.trim() == item.value) {
|
|
|
audioFileUrl = next.audioFileUrl
|
|
|
}
|
|
|
})
|
|
@@ -967,10 +994,10 @@ export default defineComponent({
|
|
|
// 处理没有声轨,但有原音
|
|
|
if (data.musicSheetType == 'CONCERT') {
|
|
|
state.musicSheetSoundList.forEach((next: any) => {
|
|
|
- if (!tracks.includes(next.track) && next.audioPlayType == 'PLAY') {
|
|
|
+ if (next.track && !tracks.includes(next.track.trim()) && next.audioPlayType == 'PLAY') {
|
|
|
forms.musicSheetSoundList_YY.push({
|
|
|
audioFileUrl: next.audioFileUrl, // 原音
|
|
|
- track: next.track ? next.track : null, // 轨道
|
|
|
+ track: next.track ? next.track.trim() : '', // 轨道
|
|
|
audioPlayType: 'PLAY'
|
|
|
})
|
|
|
}
|
|
@@ -1361,30 +1388,7 @@ export default defineComponent({
|
|
|
placeholder="请选择可用声部"
|
|
|
maxTagCount={2}
|
|
|
onUpdateValue={async (val: any) => {
|
|
|
- state.instrumentList = []
|
|
|
- if (val.length == 0) {
|
|
|
- forms.musicalInstrumentIdList = []
|
|
|
- } else {
|
|
|
- let tempMusicalInstrumentIdList = [] as any
|
|
|
- let enableFlag = null;
|
|
|
- if(props.type === 'add'){
|
|
|
- enableFlag = true;
|
|
|
- }
|
|
|
- const {data} = await musicalInstrumentPage({page: 1, rows: 999, subjectIds: val, enableFlag: enableFlag});
|
|
|
- data.rows.map((item: any) => {
|
|
|
- tempMusicalInstrumentIdList.push(item.id + '')
|
|
|
- state.instrumentList.push(
|
|
|
- {
|
|
|
- label: item.name,
|
|
|
- value: item.id + '',
|
|
|
- disabled: !item.enableFlag
|
|
|
- }
|
|
|
- )
|
|
|
- })
|
|
|
- forms.musicalInstrumentIdList = forms.musicalInstrumentIdList.filter((item: any) => {
|
|
|
- return tempMusicalInstrumentIdList.includes(item)
|
|
|
- })
|
|
|
- }
|
|
|
+ await changeSubject(val)
|
|
|
}}
|
|
|
/>
|
|
|
</NFormItemGi>
|
|
@@ -1902,7 +1906,7 @@ export default defineComponent({
|
|
|
path={`musicSheetSoundList_YY[${index}].track`}
|
|
|
rule={[
|
|
|
{
|
|
|
- required: true,
|
|
|
+ required: false,
|
|
|
message: '请选择所属轨道'
|
|
|
}
|
|
|
]}
|