|  | @@ -303,19 +303,13 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        isPlayBeat: true, // 是否播放节拍器
 | 
	
		
			
				|  |  |        isUseSystemBeat: true, // 是否使用系统节拍器(0:否;1:是)
 | 
	
		
			
				|  |  |        repeatedBeats: false, // 是否重复节拍时长
 | 
	
		
			
				|  |  | -      evaluationStandard: 'AMPLITUDE', // 评分标准 节奏 AMPLITUDE 音准 FREQUENCY 分贝 DECIBELS
 | 
	
		
			
				|  |  | +      evaluationStandard: 'FREQUENCY', // 评分标准 节奏 AMPLITUDE 音准 FREQUENCY 分贝 DECIBELS
 | 
	
		
			
				|  |  |        multiTracksSelection: [] as any, // 声轨
 | 
	
		
			
				|  |  | -      musicSheetExtend: { // 所属人信息
 | 
	
		
			
				|  |  | -        userId: 1,
 | 
	
		
			
				|  |  | -        userName: '小王',
 | 
	
		
			
				|  |  | -        musicSheetId: 1,
 | 
	
		
			
				|  |  | -        applicationId: 1,
 | 
	
		
			
				|  |  | -        organizationRoleId: 1,
 | 
	
		
			
				|  |  | -        useApplicationIds: 1,
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | +      musicSheetExtend: {} as any,//所属人信息
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |      const state = reactive({
 | 
	
		
			
				|  |  |        loading: false,
 | 
	
		
			
				|  |  | +      previewMode: false,//是否是预览模式
 | 
	
		
			
				|  |  |        tagList: [...props.tagList] as any, // 标签列表
 | 
	
		
			
				|  |  |        xmlFirstSpeed: null as any, // 第一个音轨速度
 | 
	
		
			
				|  |  |        partListNames: [] as any, // 所有音轨声部列表
 | 
	
	
		
			
				|  | @@ -326,7 +320,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        instrumentList: [],
 | 
	
		
			
				|  |  |        subjectList: [],
 | 
	
		
			
				|  |  |        showMusicSheetOwnerDialog: false, //所属人弹框
 | 
	
		
			
				|  |  | -      musicSheetOwnerData: {}, //所属人信息
 | 
	
		
			
				|  |  | +      // musicSheetOwnerData: {}, //所属人信息
 | 
	
		
			
				|  |  |        multiTracks: null,
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |      const gradualData = reactive({
 | 
	
	
		
			
				|  | @@ -568,6 +562,10 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        if (props.type === 'edit' || props.type === 'preview') {
 | 
	
		
			
				|  |  |          const detail = props.data
 | 
	
		
			
				|  |  |          try {
 | 
	
		
			
				|  |  | +          state.loading = true
 | 
	
		
			
				|  |  | +          if (props.type === 'preview') {
 | 
	
		
			
				|  |  | +            state.previewMode = true
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  |            const {data} = await musicSheetDetail({id: detail.id})
 | 
	
		
			
				|  |  |            forms.audioType = data.audioType
 | 
	
		
			
				|  |  |            forms.playMode = data.playMode
 | 
	
	
		
			
				|  | @@ -586,10 +584,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |            forms.remark = data.remark
 | 
	
		
			
				|  |  |            forms.status = data.status
 | 
	
		
			
				|  |  |            forms.musicCategoryId = data.musicCategoryId
 | 
	
		
			
				|  |  | -          forms.musicSheetSoundList = data.musicSheetSoundList || []
 | 
	
		
			
				|  |  | -          forms.musicSheetSoundList.forEach((next: any) => {
 | 
	
		
			
				|  |  | -            forms.multiTracksSelection.push(next.track)
 | 
	
		
			
				|  |  | -          })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |            forms.musicSheetType = data.musicSheetType || "SINGLE"
 | 
	
		
			
				|  |  |            forms.musicSheetAccompanimentList = data.musicSheetAccompanimentList
 | 
	
	
		
			
				|  | @@ -615,11 +609,24 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                    (item: any) => item.length === 2
 | 
	
		
			
				|  |  |                )
 | 
	
		
			
				|  |  |                state.partListNames = getPartListNames(res?.data as any) as any
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              // 初始化音轨和原音
 | 
	
		
			
				|  |  | +              forms.musicSheetSoundList = data.musicSheetSoundList || []
 | 
	
		
			
				|  |  | +              forms.musicSheetSoundList.forEach((next: any) => {
 | 
	
		
			
				|  |  | +                forms.multiTracksSelection.push(next.track)
 | 
	
		
			
				|  |  | +              })
 | 
	
		
			
				|  |  | +              state.partListNames.forEach((item: any) => {
 | 
	
		
			
				|  |  | +                const tracks = forms.musicSheetSoundList.map((item: any) => item.track);
 | 
	
		
			
				|  |  | +                if (tracks.indexOf(item.label) <= -1) {
 | 
	
		
			
				|  |  | +                  forms.musicSheetSoundList.push({audioFileUrl: '', track: item.label})
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +              })
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            })
 | 
	
		
			
				|  |  |          } catch (error) {
 | 
	
		
			
				|  |  |            console.log(error)
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +        state.loading = false
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -631,6 +638,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                ref={formsRef}
 | 
	
		
			
				|  |  |                label-placement="left"
 | 
	
		
			
				|  |  |                label-width="130"
 | 
	
		
			
				|  |  | +              disabled={state.previewMode}
 | 
	
		
			
				|  |  |            >
 | 
	
		
			
				|  |  |              <NAlert showIcon={false} style={{marginBottom: "12px"}}>曲目信息</NAlert>
 | 
	
		
			
				|  |  |              <NGrid cols={2}>
 | 
	
	
		
			
				|  | @@ -686,6 +694,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                               }
 | 
	
		
			
				|  |  |                             ]}>
 | 
	
		
			
				|  |  |                  <UploadFile
 | 
	
		
			
				|  |  | +                    disabled={state.previewMode}
 | 
	
		
			
				|  |  |                      accept=".jpg,.jpeg,.png"
 | 
	
		
			
				|  |  |                      tips="请上传大小1M以内的JPG、PNG图片"
 | 
	
		
			
				|  |  |                      size={1}
 | 
	
	
		
			
				|  | @@ -719,7 +728,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                      placeholder="请选择曲目类型"
 | 
	
		
			
				|  |  |                      v-model:value={forms.musicSheetType}
 | 
	
		
			
				|  |  |                      options={getSelectDataFromObj(musicSheetType)}
 | 
	
		
			
				|  |  | -                    clearable
 | 
	
		
			
				|  |  |                  />
 | 
	
		
			
				|  |  |                </NFormItemGi>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -736,8 +744,15 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  <NSelect
 | 
	
		
			
				|  |  |                      v-model:value={forms.sourceType}
 | 
	
		
			
				|  |  |                      options={getSelectDataFromObj(musicSheetSourceType)}
 | 
	
		
			
				|  |  | -                    clearable
 | 
	
		
			
				|  |  |                      placeholder="请选择作者属性"
 | 
	
		
			
				|  |  | +                    onUpdateValue={() => {
 | 
	
		
			
				|  |  | +                      // 发送变化,清理选择的所属人信息
 | 
	
		
			
				|  |  | +                      forms.musicSheetExtend = {}
 | 
	
		
			
				|  |  | +                      // forms.musicSheetExtend.userId = null
 | 
	
		
			
				|  |  | +                      // forms.musicSheetExtend.userName = null
 | 
	
		
			
				|  |  | +                      // forms.musicSheetExtend.applicationId = null
 | 
	
		
			
				|  |  | +                      // forms.musicSheetExtend.organizationRoleId = null
 | 
	
		
			
				|  |  | +                    }}
 | 
	
		
			
				|  |  |                  />
 | 
	
		
			
				|  |  |                </NFormItemGi>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -753,21 +768,8 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                    ]}
 | 
	
		
			
				|  |  |                >
 | 
	
		
			
				|  |  | -                {/*<NButton*/}
 | 
	
		
			
				|  |  | -                {/*    v-model:value={forms.musicSheetExtend.userId}*/}
 | 
	
		
			
				|  |  | -                {/*    options={*/}
 | 
	
		
			
				|  |  | -                {/*      [*/}
 | 
	
		
			
				|  |  | -                {/*        {*/}
 | 
	
		
			
				|  |  | -                {/*          label: '小A',*/}
 | 
	
		
			
				|  |  | -                {/*          value: '1'*/}
 | 
	
		
			
				|  |  | -                {/*        }*/}
 | 
	
		
			
				|  |  | -                {/*      ] as any*/}
 | 
	
		
			
				|  |  | -                {/*    }*/}
 | 
	
		
			
				|  |  | -                {/*    filterable*/}
 | 
	
		
			
				|  |  | -                {/*    clearable*/}
 | 
	
		
			
				|  |  | -                {/*    placeholder="请选择曲目所属人"*/}
 | 
	
		
			
				|  |  | -                {/*/>*/}
 | 
	
		
			
				|  |  |                  <NButton
 | 
	
		
			
				|  |  | +                    disabled={state.previewMode || !forms.sourceType}
 | 
	
		
			
				|  |  |                      type="primary"
 | 
	
		
			
				|  |  |                      size="small"
 | 
	
		
			
				|  |  |                      text
 | 
	
	
		
			
				|  | @@ -842,13 +844,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                >
 | 
	
		
			
				|  |  |                  <NRadioGroup
 | 
	
		
			
				|  |  |                      v-model:value={forms.repeatedBeats}
 | 
	
		
			
				|  |  | -                    // onUpdateValue={(value: string | number | boolean) => {
 | 
	
		
			
				|  |  | -                    //   if (value === 'MP3') {
 | 
	
		
			
				|  |  | -                    //     forms.repeatedBeats = 'MP3'
 | 
	
		
			
				|  |  | -                    //   } else {
 | 
	
		
			
				|  |  | -                    //     forms.repeatedBeats = 'MIDI'
 | 
	
		
			
				|  |  | -                    //   }
 | 
	
		
			
				|  |  | -                    // }}
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  |                    <NRadio value={true}>是</NRadio>
 | 
	
		
			
				|  |  |                    <NRadio value={false}>否</NRadio>
 | 
	
	
		
			
				|  | @@ -866,9 +861,9 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  <NRadioGroup
 | 
	
		
			
				|  |  |                      v-model:value={forms.evaluationStandard}
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  | -                  <NRadio value={'AMPLITUDE'}>节奏评分</NRadio>
 | 
	
		
			
				|  |  | -                  <NRadio value={'FREQUENCY'}>音准评分</NRadio>
 | 
	
		
			
				|  |  | -                  <NRadio value={'DECIBELS'}>分贝评分</NRadio>
 | 
	
		
			
				|  |  | +                  <NRadio value={'FREQUENCY'}>标准评测</NRadio>
 | 
	
		
			
				|  |  | +                  <NRadio value={'AMPLITUDE'}>打击乐(振幅)</NRadio>
 | 
	
		
			
				|  |  | +                  <NRadio value={'DECIBELS'}>节奏(分贝)</NRadio>
 | 
	
		
			
				|  |  |                  </NRadioGroup>
 | 
	
		
			
				|  |  |                </NFormItemGi>
 | 
	
		
			
				|  |  |              </NGrid>
 | 
	
	
		
			
				|  | @@ -928,6 +923,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                        ]}
 | 
	
		
			
				|  |  |                    >
 | 
	
		
			
				|  |  |                      <UploadFile
 | 
	
		
			
				|  |  | +                        disabled={state.previewMode}
 | 
	
		
			
				|  |  |                          size={10}
 | 
	
		
			
				|  |  |                          v-model:imageList={state.musicSheetAccompanimentUrlList}
 | 
	
		
			
				|  |  |                          tips="仅支持上传.mp3格式文件"
 | 
	
	
		
			
				|  | @@ -969,6 +965,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                        ]}
 | 
	
		
			
				|  |  |                    >
 | 
	
		
			
				|  |  |                      <UploadFile
 | 
	
		
			
				|  |  | +                        disabled={state.previewMode}
 | 
	
		
			
				|  |  |                          size={10}
 | 
	
		
			
				|  |  |                          v-model:fileList={forms.midiFileUrl}
 | 
	
		
			
				|  |  |                          tips="仅支持上传.MIDI格式文件"
 | 
	
	
		
			
				|  | @@ -991,6 +988,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                    ]}
 | 
	
		
			
				|  |  |                >
 | 
	
		
			
				|  |  |                  <UploadFile
 | 
	
		
			
				|  |  | +                    disabled={state.previewMode}
 | 
	
		
			
				|  |  |                      size={10}
 | 
	
		
			
				|  |  |                      v-model:fileList={forms.xmlFileUrl}
 | 
	
		
			
				|  |  |                      tips="仅支持上传.xml格式文件"
 | 
	
	
		
			
				|  | @@ -1041,7 +1039,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                      v-model:value={forms.musicalInstrumentIdList}
 | 
	
		
			
				|  |  |                      clearable
 | 
	
		
			
				|  |  |                      multiple
 | 
	
		
			
				|  |  | -                    maxTagCount={3}
 | 
	
		
			
				|  |  | +                    maxTagCount={2}
 | 
	
		
			
				|  |  |                  />
 | 
	
		
			
				|  |  |                </NFormItemGi>
 | 
	
		
			
				|  |  |              </NGrid>
 | 
	
	
		
			
				|  | @@ -1087,7 +1085,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                            >
 | 
	
		
			
				|  |  |                              {state.partListNames.map((item: any, index: number) => (
 | 
	
		
			
				|  |  |                                  <NGi>
 | 
	
		
			
				|  |  | -                                  <NCheckbox value={item.value} label={item.label} onChange={() => {
 | 
	
		
			
				|  |  | +                                  <NCheckbox value={item.value} label={item.label} onUpdateChecked={() => {
 | 
	
		
			
				|  |  |                                      console.log("forms.multiTracksSelection", forms.multiTracksSelection)
 | 
	
		
			
				|  |  |                                      console.log("forms.musicSheetSoundList", forms.musicSheetSoundList)
 | 
	
		
			
				|  |  |                                    }}/>
 | 
	
	
		
			
				|  | @@ -1140,9 +1138,9 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  <>
 | 
	
		
			
				|  |  |                    {forms.musicSheetSoundList.map((item: any, index: number) => (
 | 
	
		
			
				|  |  |                        <>
 | 
	
		
			
				|  |  | -                        {item.track?.toLocaleUpperCase?.() != 'COMMON' &&
 | 
	
		
			
				|  |  | +                        {item.track?.toLocaleUpperCase?.() != 'COMMON' && forms.multiTracksSelection.indexOf(item.track) > -1 &&
 | 
	
		
			
				|  |  |                              <NGrid class={styles.audioSection}
 | 
	
		
			
				|  |  | -                                   v-show={forms.multiTracksSelection.indexOf(item.track) > -1}
 | 
	
		
			
				|  |  | +                                // v-show={forms.multiTracksSelection.indexOf(item.track) > -1}
 | 
	
		
			
				|  |  |                              >
 | 
	
		
			
				|  |  |                                  <NFormItemGi
 | 
	
		
			
				|  |  |                                      span={12}
 | 
	
	
		
			
				|  | @@ -1151,7 +1149,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                                      rule={[
 | 
	
		
			
				|  |  |                                        {
 | 
	
		
			
				|  |  |                                          // required: forms.multiTracksSelection.indexOf(forms.musicSheetSoundList[index].audioFileUrl) > -1,
 | 
	
		
			
				|  |  | -                                        required: false,
 | 
	
		
			
				|  |  | +                                        required: true,
 | 
	
		
			
				|  |  |                                          message: `请上传${
 | 
	
		
			
				|  |  |                                              item.track ? item.track + '的' : '第' + (index + 1) + '个'
 | 
	
		
			
				|  |  |                                          }原音`
 | 
	
	
		
			
				|  | @@ -1159,6 +1157,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                                      ]}
 | 
	
		
			
				|  |  |                                  >
 | 
	
		
			
				|  |  |                                      <UploadFile
 | 
	
		
			
				|  |  | +                                        disabled={state.previewMode}
 | 
	
		
			
				|  |  |                                          size={10}
 | 
	
		
			
				|  |  |                                          v-model:fileList={item.audioFileUrl}
 | 
	
		
			
				|  |  |                                          tips="仅支持上传.mp3/.aac格式文件"
 | 
	
	
		
			
				|  | @@ -1186,16 +1185,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                                      />
 | 
	
		
			
				|  |  |                                    </NFormItemGi>
 | 
	
		
			
				|  |  |                                )}
 | 
	
		
			
				|  |  | -                              {/*<NGi class={styles.btnRemove}>*/}
 | 
	
		
			
				|  |  | -                              {/*    <NButton*/}
 | 
	
		
			
				|  |  | -                              {/*        type="primary"*/}
 | 
	
		
			
				|  |  | -                              {/*        text*/}
 | 
	
		
			
				|  |  | -                              {/*        disabled={forms.musicSheetSoundList.length === 1}*/}
 | 
	
		
			
				|  |  | -                              {/*        onClick={() => removeSys(index)}*/}
 | 
	
		
			
				|  |  | -                              {/*    >*/}
 | 
	
		
			
				|  |  | -                              {/*        删除*/}
 | 
	
		
			
				|  |  | -                              {/*    </NButton>*/}
 | 
	
		
			
				|  |  | -                              {/*</NGi>*/}
 | 
	
		
			
				|  |  |                              </NGrid>}
 | 
	
		
			
				|  |  |                        </>
 | 
	
		
			
				|  |  |                    ))}
 | 
	
	
		
			
				|  | @@ -1241,11 +1230,17 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                title="所属人"
 | 
	
		
			
				|  |  |                style={{width: '800px'}}
 | 
	
		
			
				|  |  |            >
 | 
	
		
			
				|  |  | -            <MusicSheetOwnerDialog onClose={() => {
 | 
	
		
			
				|  |  | -              state.showMusicSheetOwnerDialog = false
 | 
	
		
			
				|  |  | -            }} onChoseMusicSheetOwnerData={(musicSheetOwnerData) => {
 | 
	
		
			
				|  |  | -              state.musicSheetOwnerData = musicSheetOwnerData
 | 
	
		
			
				|  |  | -            }}
 | 
	
		
			
				|  |  | +            <MusicSheetOwnerDialog
 | 
	
		
			
				|  |  | +                sourceType={forms.sourceType}
 | 
	
		
			
				|  |  | +                onClose={() => {
 | 
	
		
			
				|  |  | +                  state.showMusicSheetOwnerDialog = false
 | 
	
		
			
				|  |  | +                }}
 | 
	
		
			
				|  |  | +                onChoseMusicSheetOwnerData={(musicSheetOwnerData) => {
 | 
	
		
			
				|  |  | +                  forms.musicSheetExtend = {
 | 
	
		
			
				|  |  | +                    ...musicSheetOwnerData
 | 
	
		
			
				|  |  | +                  }
 | 
	
		
			
				|  |  | +                  console.log(forms.musicSheetExtend)
 | 
	
		
			
				|  |  | +                }}
 | 
	
		
			
				|  |  |              />
 | 
	
		
			
				|  |  |            </NModal>
 | 
	
		
			
				|  |  |          </div>
 |