Browse Source

曲目修改

yuanliang 9 months ago
parent
commit
62a8b1e47c

+ 2 - 2
src/utils/constant.ts

@@ -233,8 +233,8 @@ export const heardLevelType = {
 
 // 曲目类型
 export const musicSheetType = {
-  SINGLE: '',
-  CONCERT: ''
+  SINGLE: '多声轨',
+  CONCERT: '单声轨'
 } as any
 
 // 作者属性

+ 3 - 3
src/views/music-library/music-sheet/component/music-list.tsx

@@ -127,7 +127,7 @@ export default defineComponent({
             return (
               <NDescriptions labelPlacement="left" column={1}>
                 <NDescriptionsItem label="音乐人">{row.composer}</NDescriptionsItem>
-                <NDescriptionsItem label="多声轨渲染">
+                <NDescriptionsItem label="谱面渲染">
                   {getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}
                 </NDescriptionsItem>
                 <NDescriptionsItem label="分类">
@@ -528,9 +528,9 @@ export default defineComponent({
               clearable
             />
           </NFormItem>
-          <NFormItem label="多声轨渲染" path="musicSheetType">
+          <NFormItem label="谱面渲染" path="musicSheetType">
             <NSelect
-              placeholder="请选择多声轨渲染"
+              placeholder="请选择谱面渲染"
               v-model:value={state.searchForm.musicSheetType}
               options={getSelectDataFromObj(musicSheetType)}
               clearable

+ 2 - 2
src/views/music-library/music-sheet/modal/music-operation.tsx

@@ -1325,12 +1325,12 @@ export default defineComponent({
             </NGrid>
             <NGrid cols={2}>
               <NFormItemGi
-                label="多声轨渲染"
+                label="谱面渲染"
                 path="musicSheetType"
                 rule={[
                   {
                     required: true,
-                    message: '请选择多声轨渲染',
+                    message: '请选择谱面渲染',
                     trigger: 'change'
                   }
                 ]}

+ 65 - 24
src/views/music-library/music-sheet/modal/music-operationV2.tsx

@@ -314,13 +314,13 @@ export default defineComponent({
       repeatedBeats: false, // 是否重复节拍时长
       evaluationStandard: 'FREQUENCY', // 评分标准 节奏 AMPLITUDE 音准 FREQUENCY 分贝 DECIBELS
       multiTracksSelection: [] as any, // 声轨
-      multiInstrumentSelection: [] as any, // 乐器
       musicSheetExtend: {} as any, //所属人信息
       musicImg: '', // 五线谱图片
       musicFirstImg: '', //首调图片
       musicJianImg: '', // 简谱固定调
       isEvxml: false, // 是否是evxml
       isShowFingering: true, // 是否显示指法
+      solmizationFileUrl:null, // 唱名文件
     })
     const state = reactive({
       loading: false,
@@ -380,7 +380,8 @@ export default defineComponent({
             musicSheetSoundList.push({
               musicSheetId: props.data.id,
               audioFileUrl: state.fSongFile,
-              audioPlayType: 'SING'
+              audioPlayType: 'SING',
+              solmizationFileUrl:forms.solmizationFileUrl
             })
             audioPlayTypes.push("SING")
           }
@@ -423,21 +424,39 @@ export default defineComponent({
 
 
           const obj = {
-            ...forms,
+            musicCategoryId: forms.musicCategoryId,
+            musicCover: forms.musicCover,
+            name: forms.name,
+            appAuditFlag: forms.appAuditFlag,
+            subjectIds: forms.subjectIds.join(','),
+            remark: forms.remark,
             audioPlayTypes: audioPlayTypes.join(','),
-            musicTag: '-1',
-            multiTracksSelection: forms.multiTracksSelection.join(','),
-            // musicSheetSoundList: forms.musicSheetSoundList.filter((next: any) => {
-            //   return !!next.audioFileUrl && forms.multiTracksSelection.includes(next.track)
-            // }),
-            musicSheetSoundList: musicSheetSoundList,
             musicalInstrumentIds: forms.musicalInstrumentIdList.join(','),
+            composer: forms.composer,
+            musicSheetType: forms.musicSheetType,
+            isUseSystemBeat: forms.isUseSystemBeat,
+            isShowFingering: forms.isShowFingering,
+            isPlayBeat: forms.isPlayBeat,
+            multiTracksSelection: forms.multiTracksSelection.join(','),
+            playSpeed: forms.playSpeed,
+            playMode: forms.playMode,
+            xmlFileUrl: forms.xmlFileUrl,
+            musicImg: forms.musicImg,
+            musicFirstImg: forms.musicFirstImg,
+            musicJianImg: forms.musicJianImg,
             extConfigJson: JSON.stringify({
               repeatedBeats: forms.repeatedBeats ? 1 : 0,
               gradualTimes: forms.graduals,
               isEvxml: forms.isEvxml ? 1 : 0,
             }),
-            subjectIds: forms.subjectIds.join(',')
+            // availableType: forms.availableType,
+            sourceType: forms.sourceType,
+            audioType: forms.audioType,
+            status: forms.status,
+            evaluationStandard: forms.evaluationStandard,
+            musicSheetAccompanimentList:forms.musicSheetAccompanimentList,
+            musicSheetSoundList: musicSheetSoundList,
+            musicTag: '-1',
           }
           if (forms.audioType == 'MIDI') {
             obj.musicSheetSoundList = []
@@ -855,13 +874,6 @@ export default defineComponent({
           forms.musicSheetExtend = data.musicSheetExtend
 
           state.musicSheetSoundList = data.musicSheetSoundList ? data.musicSheetSoundList : []
-          // 范唱
-          for (let i = 0; i < state.musicSheetSoundList.length; i++) {
-            if (state.musicSheetSoundList[i].audioPlayType == 'SING') {
-              state.fSongFile = state.musicSheetSoundList[i].audioFileUrl
-              break
-            }
-          }
 
           let musicSheetAccompanimentList = data.musicSheetAccompanimentList ? data.musicSheetAccompanimentList : []
           musicSheetAccompanimentList.forEach((next: any) => {
@@ -876,6 +888,13 @@ export default defineComponent({
 
           // 初始化演奏
           for (let i = 0; i < state.musicSheetSoundList.length; i++) {
+            if (state.musicSheetSoundList[i].audioPlayType == 'SING') {
+              // 范唱 唱名
+              state.fSongFile = state.musicSheetSoundList[i].audioFileUrl
+              forms.solmizationFileUrl = state.musicSheetSoundList[i].solmizationFileUrl
+            }
+
+            // 乐器演奏原音
             for (let j = 0; j < forms.musicSheetSoundList_YZ.length; j++) {
               let musicalInstrumentId = state.musicSheetSoundList[i].musicalInstrumentId;
               if (musicalInstrumentId && musicalInstrumentId == forms.musicSheetSoundList_YZ[j].musicalInstrumentId) {
@@ -884,12 +903,6 @@ export default defineComponent({
             }
           }
 
-          for (let i = 0; i < state.musicSheetSoundList.length; i++) {
-            if (state.musicSheetSoundList[i].musicalInstrumentId) {
-              forms.multiInstrumentSelection.push(state.musicSheetSoundList[i].musicalInstrumentId)
-            }
-          }
-
 
           setOwnerName()
           axios.get(data.xmlFileUrl).then((res: any) => {
@@ -1046,7 +1059,7 @@ export default defineComponent({
                     rule={[
                       {
                         required: true,
-                        message: '请选择多声轨渲染',
+                        message: '请选择谱面渲染',
                         trigger: 'change'
                       }
                     ]}
@@ -1426,6 +1439,34 @@ export default defineComponent({
                         />
                       </NFormItemGi>
                     </NGrid>
+                    <NGrid cols={2}>
+                      <NFormItemGi
+                          label="上传唱名"
+                          path="solmizationFileUrl"
+                          rule={[
+                            {
+                              required: false,
+                              message: '请选择上传唱名',
+                              trigger: ['change', 'input']
+                            }
+                          ]}
+                      >
+                        <UploadFile
+                            desc={'上传范唱'}
+                            disabled={state.previewMode}
+                            size={10}
+                            key={'xmlFileUrl'}
+                            v-model:fileList={forms.solmizationFileUrl}
+                            tips="仅支持上传.mp3格式文件"
+                            listType="image"
+                            accept=".mp3"
+                            bucketName="cloud-coach"
+                            text="点击上传范唱文件"
+                            onRemove={() => {
+                            }}
+                        />
+                      </NFormItemGi>
+                    </NGrid>
                   </>
               )}
               <NAlert showIcon={false} style={{marginBottom: '12px'}}>

+ 3 - 3
src/views/music-library/project-music-sheet/module/gym/addMusic.tsx

@@ -248,7 +248,7 @@ export default defineComponent({
         key: 'composer'
       },
       {
-        title: '多声轨渲染',
+        title: '谱面渲染',
         key: 'musicSheetType',
         render: (row: any) => {
           return (
@@ -620,9 +620,9 @@ export default defineComponent({
                     clearable
                   />
                 </NFormItem>
-                <NFormItem label="多声轨渲染" path="musicSheetType">
+                <NFormItem label="谱面渲染" path="musicSheetType">
                   <NSelect
-                    placeholder="请选择多声轨渲染"
+                    placeholder="请选择谱面渲染"
                     v-model:value={state.searchForm.musicSheetType}
                     options={getSelectDataFromObj(musicSheetType)}
                     clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/gym/music-sheet-gym.tsx

@@ -330,7 +330,7 @@ export default defineComponent({
                 <NDescriptionsItem label="曲目来源">
                   {getMapValueByKey(row.sourceType, new Map(Object.entries(musicSheetSourceType)))}
                 </NDescriptionsItem>
-                <NDescriptionsItem label="多声轨渲染">
+                <NDescriptionsItem label="谱面渲染">
                   {getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}
                 </NDescriptionsItem>
                 <NDescriptionsItem label="所属人">
@@ -513,9 +513,9 @@ export default defineComponent({
                 clearable
               ></NSelect>
             </NFormItem>
-            <NFormItem label="多声轨渲染" path="subjectType">
+            <NFormItem label="谱面渲染" path="subjectType">
               <NSelect
-                placeholder="请选择多声轨渲染"
+                placeholder="请选择谱面渲染"
                 v-model:value={state.searchForm.musicSheetType}
                 options={getSelectDataFromObj(musicSheetType)}
                 clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/gyt/addMusic.tsx

@@ -245,7 +245,7 @@ export default defineComponent({
         key: 'composer'
       },
       {
-        title: '多声轨渲染',
+        title: '谱面渲染',
         key: 'musicSheetType',
         render: (row: any) => {
           return (
@@ -530,9 +530,9 @@ export default defineComponent({
                     clearable
                   />
                 </NFormItem>
-                <NFormItem label="多声轨渲染" path="musicSheetType">
+                <NFormItem label="谱面渲染" path="musicSheetType">
                   <NSelect
-                    placeholder="请选择多声轨渲染"
+                    placeholder="请选择谱面渲染"
                     v-model:value={state.searchForm.musicSheetType}
                     options={getSelectDataFromObj(musicSheetType)}
                     clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/gyt/music-sheet-gyt.tsx

@@ -324,7 +324,7 @@ export default defineComponent({
                 <NDescriptionsItem label="曲目来源">
                   {getMapValueByKey(row.sourceType, new Map(Object.entries(musicSheetSourceType)))}
                 </NDescriptionsItem>
-                <NDescriptionsItem label="多声轨渲染">{getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}</NDescriptionsItem>
+                <NDescriptionsItem label="谱面渲染">{getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}</NDescriptionsItem>
                 <NDescriptionsItem label="所属人">
                   <TheTooltip content={getOwnerName(row.musicSheetExtend, row.sourceType)}/>
                 </NDescriptionsItem>
@@ -512,9 +512,9 @@ export default defineComponent({
                 clearable
               ></NSelect>
             </NFormItem>
-            <NFormItem label="多声轨渲染" path="subjectType">
+            <NFormItem label="谱面渲染" path="subjectType">
               <NSelect
-                placeholder="请选多声轨渲染"
+                placeholder="请选谱面渲染"
                 v-model:value={state.searchForm.musicSheetType}
                 options={getSelectDataFromObj(musicSheetType)}
                 clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/klx/addMusic.tsx

@@ -290,7 +290,7 @@ export default defineComponent({
         key: 'composer'
       },
       {
-        title: '多声轨渲染',
+        title: '谱面渲染',
         key: 'musicSheetType',
         render: (row: any) => {
           return (
@@ -990,9 +990,9 @@ export default defineComponent({
                     clearable
                   />
                 </NFormItem>
-                <NFormItem label="多声轨渲染" path="musicSheetType">
+                <NFormItem label="谱面渲染" path="musicSheetType">
                   <NSelect
-                    placeholder="请选择多声轨渲染"
+                    placeholder="请选择谱面渲染"
                     v-model:value={state.searchForm.musicSheetType}
                     options={getSelectDataFromObj(musicSheetType)}
                     clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/klx/music-sheet-klx.tsx

@@ -344,7 +344,7 @@ export default defineComponent({
                 <NDescriptionsItem label="曲目来源">
                   {getMapValueByKey(row.sourceType, new Map(Object.entries(musicSheetSourceType)))}
                 </NDescriptionsItem>
-                <NDescriptionsItem label="多声轨渲染">
+                <NDescriptionsItem label="谱面渲染">
                   {getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}
                 </NDescriptionsItem>
                 <NDescriptionsItem label="所属人">
@@ -562,9 +562,9 @@ export default defineComponent({
                 clearable
               ></NSelect>
             </NFormItem>
-            <NFormItem label="多声轨渲染" path="subjectType">
+            <NFormItem label="谱面渲染" path="subjectType">
               <NSelect
-                placeholder="请选择多声轨渲染"
+                placeholder="请选择谱面渲染"
                 v-model:value={state.searchForm.musicSheetType}
                 options={getSelectDataFromObj(musicSheetType)}
                 clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/kt/addMusic.tsx

@@ -227,7 +227,7 @@ export default defineComponent({
         key: 'composer'
       },
       {
-        title: '多声轨渲染',
+        title: '谱面渲染',
         key: 'musicSheetType',
         render: (row: any) => {
           return (
@@ -537,9 +537,9 @@ export default defineComponent({
                     clearable
                   />
                 </NFormItem>
-                <NFormItem label="多声轨渲染" path="musicSheetType">
+                <NFormItem label="谱面渲染" path="musicSheetType">
                   <NSelect
-                    placeholder="请选择多声轨渲染"
+                    placeholder="请选择谱面渲染"
                     v-model:value={state.searchForm.musicSheetType}
                     options={getSelectDataFromObj(musicSheetType)}
                     clearable

+ 3 - 3
src/views/music-library/project-music-sheet/module/kt/music-sheet-kt.tsx

@@ -313,7 +313,7 @@ export default defineComponent({
                 <NDescriptionsItem label="曲目来源">
                   {getMapValueByKey(row.sourceType, new Map(Object.entries(musicSheetSourceType)))}
                 </NDescriptionsItem>
-                <NDescriptionsItem label="多声轨渲染">
+                <NDescriptionsItem label="谱面渲染">
                   {getMapValueByKey(row.musicSheetType, new Map(Object.entries(musicSheetType)))}
                 </NDescriptionsItem>
                 <NDescriptionsItem label="所属人">
@@ -506,9 +506,9 @@ export default defineComponent({
                 clearable
               ></NSelect>
             </NFormItem>
-            <NFormItem label="多声轨渲染" path="subjectType">
+            <NFormItem label="谱面渲染" path="subjectType">
               <NSelect
-                placeholder="请选择多声轨渲染"
+                placeholder="请选择谱面渲染"
                 v-model:value={state.searchForm.musicSheetType}
                 options={getSelectDataFromObj(musicSheetType)}
                 clearable