Przeglądaj źródła

Merge branch 'feature/0429-music' of http://git.dayaedu.com/lex/resource-admin into hqyNewVersion

黄琪勇 1 rok temu
rodzic
commit
824e30b466

+ 185 - 203
src/views/music-library/music-sheet/modal/music-operationV2.tsx

@@ -400,18 +400,6 @@ export default defineComponent({
                 audioPlayType: 'PLAY'
               })
             }
-
-            if (musicSheetType == 'CONCERT' && forms.musicSheetSoundList_YY.length > 0) {
-              audioPlayTypes.push("PLAY")
-              forms.musicSheetSoundList_YY.forEach((musicSheetSound: any) => {
-                if (musicSheetSound.track && musicSheetSound.audioFileUrl) {
-                  musicSheetSoundList.push({
-                    ...musicSheetSound,
-                    musicSheetId: props.data.id,
-                  })
-                }
-              })
-            }
           } else {
             if (musicSheetType == 'SINGLE' && forms.musicSheetSoundList_YZ.length > 0) {
               audioPlayTypes.push("PLAY")
@@ -424,6 +412,7 @@ export default defineComponent({
                 }
               })
             }
+          }
 
             if (musicSheetType == 'CONCERT' && forms.musicSheetSoundList_YY.length > 0) {
               audioPlayTypes.push("PLAY")
@@ -436,7 +425,6 @@ export default defineComponent({
                 }
               })
             }
-          }
 
           if (state.bSongFile) {
             forms.musicSheetAccompanimentList.push({
@@ -1366,142 +1354,138 @@ export default defineComponent({
                 </NFormItemGi>
               </NGrid>
 
-              {forms.musicSheetType == 'SINGLE' && (
-                  <>
-                    <NAlert showIcon={false} style={{marginBottom: '12px'}}>
-                      演唱文件
-                    </NAlert>
-                    <NGrid cols={2}>
-                      <NFormItemGi
-                          label="是否播放节拍器"
-                          path="isPlaySingBeat"
-                          rule={[
-                            {
-                              required: true,
-                              message: '请选择是否播放节拍器'
-                            }
-                          ]}
-                      >
-                        <NRadioGroup v-model:value={forms.isPlaySingBeat}>
-                          <NRadio value={true}>是</NRadio>
-                          <NRadio value={false}>否</NRadio>
-                        </NRadioGroup>
-                      </NFormItemGi>
-                      {forms.isPlaySingBeat && (
-                          <NFormItemGi
-                              label="播放方式"
-                              path="isUseSingSystemBeat"
-                              rule={[
-                                {
-                                  required: true,
-                                  message: '请选择播放方式'
-                                }
-                              ]}
-                          >
-                            <NRadioGroup v-model:value={forms.isUseSingSystemBeat}>
-                              <NRadio value={true}>系统节拍器</NRadio>
-                              <NRadio value={false}>MP3节拍器</NRadio>
-                            </NRadioGroup>
-                          </NFormItemGi>
-                      )}
-                    </NGrid>
-                    <NGrid cols={2}>
-                      <NFormItemGi
-                          label="重复节拍时长"
-                          path="repeatedBeatsToSing"
-                          rule={[
-                            {
-                              required: false,
-                              message: '请选择是否重复节拍时长'
-                            }
-                          ]}
-                      >
-                        <NRadioGroup v-model:value={forms.repeatedBeatsToSing}>
-                          <NRadio value={true}>是</NRadio>
-                          <NRadio value={false}>否</NRadio>
-                        </NRadioGroup>
-                      </NFormItemGi>
-                    </NGrid>
-                    <NGrid cols={2}>
-                      <NFormItemGi
-                          label="上传范唱"
-                          path="fSongFile"
-                          rule={[
-                            {
-                              required: false,
-                              message: '请选择上传范唱',
-                              trigger: ['change', 'input']
-                            }
-                          ]}
-                      >
-                        <UploadFile
-                            desc={'上传范唱'}
-                            disabled={state.previewMode}
-                            size={10}
-                            key={'xmlFileUrl'}
-                            v-model:fileList={state.fSongFile}
-                            tips="仅支持上传.mp3格式文件"
-                            listType="image"
-                            accept=".mp3"
-                            bucketName="cloud-coach"
-                            text="点击上传范唱文件"
-                            onRemove={() => {
-                            }}
-                        />
-                      </NFormItemGi>
-                      <NFormItemGi
-                          label="上传伴唱"
-                          path="bSongFile"
-                          rule={[
-                            {
-                              required: false,
-                              message: '请选择上传.MID格式文件'
-                            }
-                          ]}
-                      >
-                        <UploadFile
-                            desc={'上传伴唱'}
-                            disabled={state.previewMode}
-                            size={10}
-                            v-model:fileList={state.bSongFile}
-                            tips="仅支持上传.mp3格式文件"
-                            listType="image"
-                            accept=".mp3"
-                            bucketName="cloud-coach"
-                            text="点击上传伴唱文件"
-                        />
-                      </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'}}>
+                演唱文件
+              </NAlert>
+              <NGrid cols={2}>
+                <NFormItemGi
+                    label="是否播放节拍器"
+                    path="isPlaySingBeat"
+                    rule={[
+                      {
+                        required: true,
+                        message: '请选择是否播放节拍器'
+                      }
+                    ]}
+                >
+                  <NRadioGroup v-model:value={forms.isPlaySingBeat}>
+                    <NRadio value={true}>是</NRadio>
+                    <NRadio value={false}>否</NRadio>
+                  </NRadioGroup>
+                </NFormItemGi>
+                {forms.isPlaySingBeat && (
+                    <NFormItemGi
+                        label="播放方式"
+                        path="isUseSingSystemBeat"
+                        rule={[
+                          {
+                            required: true,
+                            message: '请选择播放方式'
+                          }
+                        ]}
+                    >
+                      <NRadioGroup v-model:value={forms.isUseSingSystemBeat}>
+                        <NRadio value={true}>系统节拍器</NRadio>
+                        <NRadio value={false}>MP3节拍器</NRadio>
+                      </NRadioGroup>
+                    </NFormItemGi>
+                )}
+              </NGrid>
+              <NGrid cols={2}>
+                <NFormItemGi
+                    label="重复节拍时长"
+                    path="repeatedBeatsToSing"
+                    rule={[
+                      {
+                        required: false,
+                        message: '请选择是否重复节拍时长'
+                      }
+                    ]}
+                >
+                  <NRadioGroup v-model:value={forms.repeatedBeatsToSing}>
+                    <NRadio value={true}>是</NRadio>
+                    <NRadio value={false}>否</NRadio>
+                  </NRadioGroup>
+                </NFormItemGi>
+              </NGrid>
+              <NGrid cols={2}>
+                <NFormItemGi
+                    label="上传范唱"
+                    path="fSongFile"
+                    rule={[
+                      {
+                        required: false,
+                        message: '请选择上传范唱',
+                        trigger: ['change', 'input']
+                      }
+                    ]}
+                >
+                  <UploadFile
+                      desc={'上传范唱'}
+                      disabled={state.previewMode}
+                      size={10}
+                      key={'xmlFileUrl'}
+                      v-model:fileList={state.fSongFile}
+                      tips="仅支持上传.mp3格式文件"
+                      listType="image"
+                      accept=".mp3"
+                      bucketName="cloud-coach"
+                      text="点击上传范唱文件"
+                      onRemove={() => {
+                      }}
+                  />
+                </NFormItemGi>
+                <NFormItemGi
+                    label="上传伴唱"
+                    path="bSongFile"
+                    rule={[
+                      {
+                        required: false,
+                        message: '请选择上传.MID格式文件'
+                      }
+                    ]}
+                >
+                  <UploadFile
+                      desc={'上传伴唱'}
+                      disabled={state.previewMode}
+                      size={10}
+                      v-model:fileList={state.bSongFile}
+                      tips="仅支持上传.mp3格式文件"
+                      listType="image"
+                      accept=".mp3"
+                      bucketName="cloud-coach"
+                      text="点击上传伴唱文件"
+                  />
+                </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'}}>
                 演奏文件
               </NAlert>
@@ -1669,7 +1653,7 @@ export default defineComponent({
                       />
                     </NFormItemGi>
                 )}
-                {forms.isAllSubject && (
+                {forms.isAllSubject && forms.musicSheetType == 'SINGLE' && (
                     <NFormItemGi
                         label="上传原音"
                         path="musicSheetSoundList_all_subject"
@@ -1754,62 +1738,60 @@ export default defineComponent({
                     </NFormItem>
                   </>
               )}
-              {!forms.isAllSubject && (
-                  <NGrid cols={1}>
-                    <NFormItemGi
-                        label={`${forms.musicSheetType === 'SINGLE' ? '页面渲染声轨' : '用户可切换声轨'}`}
-                        path="multiTracksSelection"
-                        rule={[
-                          {
-                            required: true,
-                            message: `请选择${
-                                forms.musicSheetType === 'SINGLE' ? '页面渲染声轨' : '用户可切换声轨'
-                            }`,
-                            trigger: 'change',
-                            type: 'array'
-                          }
-                        ]}
-                    >
-                      <NGrid style="padding-top: 4px;">
-                        <NGi span={24}>
-                          <NRadioGroup
-                              v-model:value={state.multiTracks}
-                              onUpdateValue={(value) => {
-                                checkMultiTracks(value)
-                              }}
+              <NGrid cols={1}>
+                <NFormItemGi
+                    label={`${forms.musicSheetType === 'SINGLE' ? '页面渲染声轨' : '用户可切换声轨'}`}
+                    path="multiTracksSelection"
+                    rule={[
+                      {
+                        required: true,
+                        message: `请选择${
+                            forms.musicSheetType === 'SINGLE' ? '页面渲染声轨' : '用户可切换声轨'
+                        }`,
+                        trigger: 'change',
+                        type: 'array'
+                      }
+                    ]}
+                >
+                  <NGrid style="padding-top: 4px;">
+                    <NGi span={24}>
+                      <NRadioGroup
+                          v-model:value={state.multiTracks}
+                          onUpdateValue={(value) => {
+                            checkMultiTracks(value)
+                          }}
+                      >
+                        <NRadio value={'all'}>全选</NRadio>
+                        <NRadio value={'allUncheck'}>重置</NRadio>
+                        <NRadio value={'invert'}>反选</NRadio>
+                      </NRadioGroup>
+                    </NGi>
+                    {state.partListNames && state.partListNames.length > 0 && (
+                        <NGi span={24} style={'margin-top:5px'}>
+                          <NFormItemGi
+                              label=""
+                              path="multiTracksSelection"
+                              rule={[
+                                {
+                                  required: false
+                                }
+                              ]}
                           >
-                            <NRadio value={'all'}>全选</NRadio>
-                            <NRadio value={'allUncheck'}>重置</NRadio>
-                            <NRadio value={'invert'}>反选</NRadio>
-                          </NRadioGroup>
+                            <NCheckboxGroup v-model:value={forms.multiTracksSelection}>
+                              <NGrid yGap={2} cols={4}>
+                                {state.partListNames.map((item: any) => (
+                                    <NGi>
+                                      <NCheckbox value={item.value} label={item.label}/>
+                                    </NGi>
+                                ))}
+                              </NGrid>
+                            </NCheckboxGroup>
+                          </NFormItemGi>
                         </NGi>
-                        {state.partListNames && state.partListNames.length > 0 && (
-                            <NGi span={24} style={'margin-top:5px'}>
-                              <NFormItemGi
-                                  label=""
-                                  path="multiTracksSelection"
-                                  rule={[
-                                    {
-                                      required: false
-                                    }
-                                  ]}
-                              >
-                                <NCheckboxGroup v-model:value={forms.multiTracksSelection}>
-                                  <NGrid yGap={2} cols={4}>
-                                    {state.partListNames.map((item: any) => (
-                                        <NGi>
-                                          <NCheckbox value={item.value} label={item.label}/>
-                                        </NGi>
-                                    ))}
-                                  </NGrid>
-                                </NCheckboxGroup>
-                              </NFormItemGi>
-                            </NGi>
-                        )}
-                      </NGrid>
-                    </NFormItemGi>
+                    )}
                   </NGrid>
-              )}
+                </NFormItemGi>
+              </NGrid>
 
               {/*独奏*/}
               {forms.musicSheetType == 'SINGLE' && forms.playMode === 'MP3' && !forms.isAllSubject && forms.musicSheetSoundList_YZ.map((item: any, index: any) => {

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

@@ -290,6 +290,7 @@ export default defineComponent({
                             labelField: 'name',
                             childrenField: 'children',
                             placeholderField: '请选择乐谱教材',
+                            checkStrategy:'child',
                             options: state.musicSheetCategories
                           })
                         ]
@@ -330,6 +331,7 @@ export default defineComponent({
               labelField="name"
               children-field="children"
               placeholder="请选择曲目分类"
+              checkStrategy={"child"}
               value={row.projectMusicCategoryId}
               options={state.musicSheetCategories}
               onUpdateValue={(value: any) => {

+ 1 - 0
src/views/music-library/project-music-sheet/module/kt/updateMusic.tsx

@@ -95,6 +95,7 @@ export default defineComponent({
                     placeholder="请选择乐谱教材"
                     value={forms.musicSheetCategoryId}
                     options={state.musicSheetCategories}
+                    checkStrategy={"child"}
                     onUpdateValue={(value: any) => {
                       forms.musicSheetCategoryId = value
                     }}