|  | @@ -114,11 +114,10 @@ export default defineComponent({
 | 
	
		
			
				|  |  |      const showGuide = ref(false);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      const _actions = computed(() => {
 | 
	
		
			
				|  |  | -      return [
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -          value: 'staff',
 | 
	
		
			
				|  |  | -          text: '五线谱'
 | 
	
		
			
				|  |  | -        },
 | 
	
		
			
				|  |  | +      const details = data.musics[data.musicIndex];
 | 
	
		
			
				|  |  | +      let { scoreType, isConvertibleScore } = details || {};
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      let action: any[] = [
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |            value: 'first',
 | 
	
		
			
				|  |  |            text: '首调'
 | 
	
	
		
			
				|  | @@ -127,7 +126,17 @@ export default defineComponent({
 | 
	
		
			
				|  |  |            value: 'fixed',
 | 
	
		
			
				|  |  |            text: '固定调'
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -      ].map((item, index) => {
 | 
	
		
			
				|  |  | +      ];
 | 
	
		
			
				|  |  | +      // 首调 固定调 并且 不显示可转谱 则不显示五线谱
 | 
	
		
			
				|  |  | +      if (
 | 
	
		
			
				|  |  | +        !(['JIAN', 'FIRST'].includes(scoreType) && isConvertibleScore === false)
 | 
	
		
			
				|  |  | +      ) {
 | 
	
		
			
				|  |  | +        action.unshift({
 | 
	
		
			
				|  |  | +          value: 'staff',
 | 
	
		
			
				|  |  | +          text: '五线谱'
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      return action.map((item, index) => {
 | 
	
		
			
				|  |  |          return {
 | 
	
		
			
				|  |  |            ...item,
 | 
	
		
			
				|  |  |            color:
 | 
	
	
		
			
				|  | @@ -323,18 +332,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      // 根据musicSheetType返回的值,判断是否显示切换声轨按钮
 | 
	
		
			
				|  |  |      const isEnsemble = computed(() => {
 | 
	
		
			
				|  |  | -      // const musics = data.musics[data.musicIndex]?.musicalInstruments;
 | 
	
		
			
				|  |  | -      // if (musics && musics.length) {
 | 
	
		
			
				|  |  | -      //   let list: any = [];
 | 
	
		
			
				|  |  | -      //   const arr = musics.forEach((item: any) => {
 | 
	
		
			
				|  |  | -      //     list.push({ name: item.name, code: item.code });
 | 
	
		
			
				|  |  | -      //   });
 | 
	
		
			
				|  |  | -      // }
 | 
	
		
			
				|  |  | -      // if (musics && musics.length > 1) {
 | 
	
		
			
				|  |  | -      //   return true;
 | 
	
		
			
				|  |  | -      // } else {
 | 
	
		
			
				|  |  | -      //   return false;
 | 
	
		
			
				|  |  | -      // }
 | 
	
		
			
				|  |  |        if (data.musics.length) {
 | 
	
		
			
				|  |  |          const musicSheetType = data.musics[data.musicIndex]?.musicSheetType;
 | 
	
		
			
				|  |  |          if (musicSheetType === 'SINGLE') {
 | 
	
	
		
			
				|  | @@ -347,6 +344,20 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    // 判断是否可转谱 - 为空也可以转谱
 | 
	
		
			
				|  |  | +    const checkConverTible = (isConvertibleScore: any) => {
 | 
	
		
			
				|  |  | +      if (
 | 
	
		
			
				|  |  | +        isConvertibleScore ||
 | 
	
		
			
				|  |  | +        isConvertibleScore === '' ||
 | 
	
		
			
				|  |  | +        isConvertibleScore === undefined ||
 | 
	
		
			
				|  |  | +        isConvertibleScore === null
 | 
	
		
			
				|  |  | +      ) {
 | 
	
		
			
				|  |  | +        return true;
 | 
	
		
			
				|  |  | +      } else {
 | 
	
		
			
				|  |  | +        return false;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      const getSubjecList = async () => {
 | 
	
		
			
				|  |  |        try {
 | 
	
		
			
				|  |  |          let subjectIds = state.user.data?.subjectId || '';
 | 
	
	
		
			
				|  | @@ -397,19 +408,18 @@ export default defineComponent({
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        } else {
 | 
	
		
			
				|  |  |          // showMusicImg: 'first' as 'staff' | 'first' | 'fixed',
 | 
	
		
			
				|  |  | -        const { defaultScore, transferFlag } =
 | 
	
		
			
				|  |  | -          details.musicalInstruments[0] || {};
 | 
	
		
			
				|  |  | -        let musicImgType: 'staff' | 'first' | 'fixed' = 'staff';
 | 
	
		
			
				|  |  | +        const { scoreType, isConvertibleScore } = details || {};
 | 
	
		
			
				|  |  | +        let musicImgType: 'staff' | 'first' | 'fixed' = 'first';
 | 
	
		
			
				|  |  |          musicImgType =
 | 
	
		
			
				|  |  | -          defaultScore === 'STAVE'
 | 
	
		
			
				|  |  | +          scoreType === 'STAVE'
 | 
	
		
			
				|  |  |              ? 'staff'
 | 
	
		
			
				|  |  | -            : defaultScore === 'JIAN'
 | 
	
		
			
				|  |  | +            : scoreType === 'JIAN'
 | 
	
		
			
				|  |  |              ? 'fixed'
 | 
	
		
			
				|  |  | -            : defaultScore === 'FIRST'
 | 
	
		
			
				|  |  | +            : scoreType === 'FIRST'
 | 
	
		
			
				|  |  |              ? 'first'
 | 
	
		
			
				|  |  | -            : 'staff';
 | 
	
		
			
				|  |  | +            : 'first';
 | 
	
		
			
				|  |  |          data.showMusicImg = musicImgType;
 | 
	
		
			
				|  |  | -        data.showTransBtn = transferFlag;
 | 
	
		
			
				|  |  | +        data.showTransBtn = checkConverTible(isConvertibleScore);
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -461,29 +471,38 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        let track = arr.find(
 | 
	
		
			
				|  |  |          (item: any) => item.value === data.selectMusicInstrumentIndex
 | 
	
		
			
				|  |  |        )?.track;
 | 
	
		
			
				|  |  | -      // track = track
 | 
	
		
			
				|  |  | -      //   .replace(/[0-9]+/g, '')
 | 
	
		
			
				|  |  | -      //   .replace(/\s/g, '')
 | 
	
		
			
				|  |  | -      //   .toLocaleLowerCase();
 | 
	
		
			
				|  |  |        track = trackToCode(track);
 | 
	
		
			
				|  |  | -      // console.log(123,track)
 | 
	
		
			
				|  |  | -      let musicRenderType: 'staff' | 'first' | 'fixed' = 'staff';
 | 
	
		
			
				|  |  | -      let canTrans = true;
 | 
	
		
			
				|  |  | -      data.musics[data.musicIndex]?.musicalInstruments.forEach((item: any) => {
 | 
	
		
			
				|  |  | -        if (item.code.toLocaleLowerCase() === track.toLocaleLowerCase()) {
 | 
	
		
			
				|  |  | -          musicRenderType =
 | 
	
		
			
				|  |  | -            item.defaultScore === 'STAVE'
 | 
	
		
			
				|  |  | -              ? 'staff'
 | 
	
		
			
				|  |  | -              : item.defaultScore === 'JIAN'
 | 
	
		
			
				|  |  | -              ? 'fixed'
 | 
	
		
			
				|  |  | -              : item.defaultScore === 'FIRST'
 | 
	
		
			
				|  |  | -              ? 'first'
 | 
	
		
			
				|  |  | -              : 'staff';
 | 
	
		
			
				|  |  | -          canTrans = item.transferFlag;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -      data.showTransBtn = canTrans;
 | 
	
		
			
				|  |  | -      data.showMusicImg = musicRenderType;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // let musicRenderType: 'staff' | 'first' | 'fixed' = 'staff';
 | 
	
		
			
				|  |  | +      // let canTrans = true;
 | 
	
		
			
				|  |  | +      // data.musics[data.musicIndex]?.musicalInstruments.forEach((item: any) => {
 | 
	
		
			
				|  |  | +      //   if (item.code.toLocaleLowerCase() === track.toLocaleLowerCase()) {
 | 
	
		
			
				|  |  | +      //     musicRenderType =
 | 
	
		
			
				|  |  | +      //       item.defaultScore === 'STAVE'
 | 
	
		
			
				|  |  | +      //         ? 'staff'
 | 
	
		
			
				|  |  | +      //         : item.defaultScore === 'JIAN'
 | 
	
		
			
				|  |  | +      //         ? 'fixed'
 | 
	
		
			
				|  |  | +      //         : item.defaultScore === 'FIRST'
 | 
	
		
			
				|  |  | +      //         ? 'first'
 | 
	
		
			
				|  |  | +      //         : 'staff';
 | 
	
		
			
				|  |  | +      //     canTrans = item.transferFlag;
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      // });
 | 
	
		
			
				|  |  | +      // data.showTransBtn = canTrans;
 | 
	
		
			
				|  |  | +      // data.showMusicImg = musicRenderType;
 | 
	
		
			
				|  |  | +      const details = data.musics[data.musicIndex];
 | 
	
		
			
				|  |  | +      const { scoreType, isConvertibleScore } = details || {};
 | 
	
		
			
				|  |  | +      let musicImgType: 'staff' | 'first' | 'fixed' = 'first';
 | 
	
		
			
				|  |  | +      musicImgType =
 | 
	
		
			
				|  |  | +        scoreType === 'STAVE'
 | 
	
		
			
				|  |  | +          ? 'staff'
 | 
	
		
			
				|  |  | +          : scoreType === 'JIAN'
 | 
	
		
			
				|  |  | +          ? 'fixed'
 | 
	
		
			
				|  |  | +          : scoreType === 'FIRST'
 | 
	
		
			
				|  |  | +          ? 'first'
 | 
	
		
			
				|  |  | +          : 'first';
 | 
	
		
			
				|  |  | +      data.showMusicImg = musicImgType;
 | 
	
		
			
				|  |  | +      data.showTransBtn = checkConverTible(isConvertibleScore);
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |      watch(
 | 
	
		
			
				|  |  |        () => data.musicIndex,
 |