|
@@ -393,23 +393,21 @@ export default defineComponent({
|
|
|
data.rows.map((row: any) => {
|
|
|
if (row.code) {
|
|
|
row.code.split(',').forEach((code: string) => {
|
|
|
- set.push(code.trim().toLocaleLowerCase())
|
|
|
+ set.push(code.replaceAll(' ','').toLocaleLowerCase())
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
let unDefinedTrack = [] as any
|
|
|
forms.multiTracksSelection.forEach((item: any) => {
|
|
|
- if (item) {
|
|
|
+ if (item && !isPtrack(item)) {
|
|
|
let contain = false;
|
|
|
- if (set.includes(item.trim().toLocaleLowerCase())) {
|
|
|
- contain = true
|
|
|
+ let code = item.replace(' ', '').toLocaleLowerCase()
|
|
|
+ for (let i = 0; i < set.length; i++) {
|
|
|
+ if (code.startsWith(set[i])) {
|
|
|
+ contain = true
|
|
|
+ break
|
|
|
+ }
|
|
|
}
|
|
|
- // for (let i = 0; i < set.length; i++) {
|
|
|
- // if (set[i].startsWith(code) || set[i].endsWith(code)) {
|
|
|
- // contain = true
|
|
|
- // break
|
|
|
- // }
|
|
|
- // }
|
|
|
if (!contain) {
|
|
|
unDefinedTrack.push(item)
|
|
|
}
|
|
@@ -584,6 +582,13 @@ export default defineComponent({
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+ const isPtrack = async (track: string) => {
|
|
|
+ if (track && (track == 'P1' || track == 'P2' || track == 'P3' || track == 'P4')) {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ return false
|
|
|
+ }
|
|
|
+
|
|
|
const initFSongList = async () => {
|
|
|
forms.fSongList.forEach((fSong: any) => {
|
|
|
state.initFSongMap.set(fSong.track, fSong)
|
|
@@ -745,7 +750,7 @@ export default defineComponent({
|
|
|
if (!data.disabled) {
|
|
|
const codes = data.code.split(/[,,]/)
|
|
|
codes.forEach((code: string) => {
|
|
|
- let codeTemp = code.trim().toLowerCase()
|
|
|
+ let codeTemp = code.replaceAll(' ','').toLowerCase()
|
|
|
if (codeIdMap.has(codeTemp)) {
|
|
|
codeIdMap.get(codeTemp).push(data.id + '')
|
|
|
} else {
|
|
@@ -757,7 +762,7 @@ export default defineComponent({
|
|
|
}
|
|
|
})
|
|
|
for (let i = 0; i < codes.length; i++) {
|
|
|
- let code = codes[i].trim().toLowerCase()
|
|
|
+ let code = codes[i].replaceAll(' ','').toLowerCase()
|
|
|
if (codeIdMap.has(code)) {
|
|
|
codeIdMap.get(code).forEach((c: any) => {
|
|
|
if (!forms.musicalInstrumentIdList.includes(c)) {
|
|
@@ -1308,7 +1313,7 @@ export default defineComponent({
|
|
|
path="composer"
|
|
|
rule={[
|
|
|
{
|
|
|
- required: true,
|
|
|
+ required: false,
|
|
|
message: '请输入音乐人',
|
|
|
trigger: ['input', 'blur']
|
|
|
}
|
|
@@ -1600,12 +1605,12 @@ export default defineComponent({
|
|
|
{/* </NRadioGroup>*/}
|
|
|
{/*</NFormItemGi>*/}
|
|
|
<NFormItemGi
|
|
|
- label="是否节奏练习"
|
|
|
+ label="是否全声部"
|
|
|
path="isAllSubject"
|
|
|
rule={[
|
|
|
{
|
|
|
required: true,
|
|
|
- message: '请选择是否节奏练习',
|
|
|
+ message: '是否全声部',
|
|
|
}
|
|
|
]}
|
|
|
>
|
|
@@ -1635,54 +1640,54 @@ export default defineComponent({
|
|
|
{!forms.isAllSubject && (
|
|
|
<NGrid cols={2}>
|
|
|
<NFormItemGi
|
|
|
- label="可用声部"
|
|
|
- path="subjectIds"
|
|
|
+ label="可用乐器"
|
|
|
+ path="musicalInstrumentIdList"
|
|
|
rule={[
|
|
|
{
|
|
|
required: true,
|
|
|
- message: '请选择可用声部',
|
|
|
+ message: '请选择可用乐器',
|
|
|
trigger: 'change',
|
|
|
type: 'array'
|
|
|
}
|
|
|
]}
|
|
|
>
|
|
|
<NSelect
|
|
|
- v-model:value={forms.subjectIds}
|
|
|
- options={state.subjectList}
|
|
|
- disabled={true}
|
|
|
+ placeholder="请选择可用乐器"
|
|
|
+ options={state.instrumentList}
|
|
|
+ v-model:value={forms.musicalInstrumentIdList}
|
|
|
+ // disabled = {state.instrumentDisabled}
|
|
|
+ clearable
|
|
|
multiple
|
|
|
filterable
|
|
|
- clearable
|
|
|
- placeholder="请选择可用声部"
|
|
|
maxTagCount={10}
|
|
|
- onUpdateValue={async (val: any) => {
|
|
|
- // await changeSubject(val)
|
|
|
+ onUpdateValue={async (value: any) => {
|
|
|
+ await showBackSubject(value)
|
|
|
}}
|
|
|
/>
|
|
|
</NFormItemGi>
|
|
|
<NFormItemGi
|
|
|
- label="可用乐器"
|
|
|
- path="musicalInstrumentIdList"
|
|
|
+ label="可用声部"
|
|
|
+ path="subjectIds"
|
|
|
rule={[
|
|
|
{
|
|
|
required: true,
|
|
|
- message: '请选择可用乐器',
|
|
|
+ message: '请选择可用声部',
|
|
|
trigger: 'change',
|
|
|
type: 'array'
|
|
|
}
|
|
|
]}
|
|
|
>
|
|
|
<NSelect
|
|
|
- placeholder="请选择可用乐器"
|
|
|
- options={state.instrumentList}
|
|
|
- v-model:value={forms.musicalInstrumentIdList}
|
|
|
- disabled = {state.instrumentDisabled}
|
|
|
- clearable
|
|
|
+ v-model:value={forms.subjectIds}
|
|
|
+ options={state.subjectList}
|
|
|
+ // disabled={true}
|
|
|
multiple
|
|
|
filterable
|
|
|
+ clearable
|
|
|
+ placeholder="请选择可用声部"
|
|
|
maxTagCount={10}
|
|
|
- onUpdateValue={async (value: any) => {
|
|
|
- await showBackSubject(value)
|
|
|
+ onUpdateValue={async (val: any) => {
|
|
|
+ // await changeSubject(val)
|
|
|
}}
|
|
|
/>
|
|
|
</NFormItemGi>
|