yuanliang 1 سال پیش
والد
کامیت
5db5534c7a
1فایلهای تغییر یافته به همراه186 افزوده شده و 183 حذف شده
  1. 186 183
      src/views/music-library/music-sheet/modal/music-operationV2.tsx

+ 186 - 183
src/views/music-library/music-sheet/modal/music-operationV2.tsx

@@ -1078,52 +1078,24 @@ export default defineComponent({
                   />
                 </NFormItemGi>
                 <NFormItemGi
-                    label="谱面渲染"
-                    path="musicSheetType"
-                    rule={[
-                      {
-                        required: true,
-                        message: '请选择谱面渲染',
-                        trigger: 'change'
-                      }
-                    ]}
-                >
-                  <NRadioGroup v-model:value={forms.musicSheetType}>
-                    <NRadio value={'SINGLE'}>多声轨</NRadio>
-                    <NRadio value={'CONCERT'}>单声轨</NRadio>
-                  </NRadioGroup>
-                </NFormItemGi>
-              </NGrid>
-              <NGrid cols={2}>
-                <NFormItemGi
-                    label="适用声部"
-                    path="isAllSubject"
+                    label="曲目分类"
+                    path="musicCategoryId"
                     rule={[
                       {
                         required: true,
-                        message: '请选择适用声部',
-                      }
-                    ]}
-                >
-                  <NRadioGroup v-model:value={forms.isAllSubject}>
-                    <NRadio value={false}>部分声部</NRadio>
-                    <NRadio value={true}>全部声部</NRadio>
-                  </NRadioGroup>
-                </NFormItemGi>
-                <NFormItemGi
-                    label="速度"
-                    path="playSpeed"
-                    rule={[
-                      {
-                        required: false,
-                        message: '请输入速度'
+                        message: '请选择曲目分类',
+                        trigger: ['change']
                       }
                     ]}
                 >
-                  <NInputNumber
-                      placeholder="请输入速度"
-                      v-model:value={forms.playSpeed}
-                      style="width:100%"
+                  <NCascader
+                      valueField="id"
+                      labelField="name"
+                      children-field="musicSheetCategoriesList"
+                      placeholder="请选择分类"
+                      v-model:value={forms.musicCategoryId}
+                      options={state.musicSheetCategories}
+                      clearable
                   />
                 </NFormItemGi>
               </NGrid>
@@ -1236,27 +1208,6 @@ export default defineComponent({
                       v-model:value={forms.appAuditFlag}
                   />
                 </NFormItemGi>
-                <NFormItemGi
-                    label="曲目分类"
-                    path="musicCategoryId"
-                    rule={[
-                      {
-                        required: true,
-                        message: '请选择曲目分类',
-                        trigger: ['change']
-                      }
-                    ]}
-                >
-                  <NCascader
-                      valueField="id"
-                      labelField="name"
-                      children-field="musicSheetCategoriesList"
-                      placeholder="请选择分类"
-                      v-model:value={forms.musicCategoryId}
-                      options={state.musicSheetCategories}
-                      clearable
-                  />
-                </NFormItemGi>
               </NGrid>
               <NAlert showIcon={false} style={{marginBottom: '12px'}}>
                 曲目设置
@@ -1354,6 +1305,180 @@ export default defineComponent({
                 </NFormItemGi>
               </NGrid>
 
+              <NGrid cols={2}>
+                <NFormItemGi
+                    label="谱面渲染"
+                    path="musicSheetType"
+                    rule={[
+                      {
+                        required: true,
+                        message: '请选择谱面渲染',
+                        trigger: 'change'
+                      }
+                    ]}
+                >
+                  <NRadioGroup v-model:value={forms.musicSheetType}>
+                    <NRadio value={'SINGLE'}>多声轨</NRadio>
+                    <NRadio value={'CONCERT'}>单声轨</NRadio>
+                  </NRadioGroup>
+                </NFormItemGi>
+                <NFormItemGi
+                    label="适用声部"
+                    path="isAllSubject"
+                    rule={[
+                      {
+                        required: true,
+                        message: '请选择适用声部',
+                      }
+                    ]}
+                >
+                  <NRadioGroup v-model:value={forms.isAllSubject}>
+                    <NRadio value={false}>部分声部</NRadio>
+                    <NRadio value={true}>全部声部</NRadio>
+                  </NRadioGroup>
+                </NFormItemGi>
+              </NGrid>
+              {!forms.isAllSubject && (
+                  <NGrid cols={2}>
+                    <NFormItemGi
+                        label="可用声部"
+                        path="subjectIds"
+                        rule={[
+                          {
+                            required: true,
+                            message: '请选择可用声部',
+                            trigger: 'change',
+                            type: 'array'
+                          }
+                        ]}
+                    >
+                      <NSelect
+                          v-model:value={forms.subjectIds}
+                          options={state.subjectList}
+                          multiple
+                          filterable
+                          clearable
+                          placeholder="请选择可用声部"
+                          maxTagCount={2}
+                          onUpdateValue={async (val: any) => {
+                            state.instrumentList = []
+                            let tempMusicalInstrumentIdList = [] as any
+                            const {data} = await musicalInstrumentPage({page: 1, rows: 999, subjectIds: val});
+                            data.rows.map((item: any) => {
+                              tempMusicalInstrumentIdList.push(item.id + '')
+                              state.instrumentList.push(
+                                  {
+                                    label: item.name,
+                                    value: item.id + '',
+                                    disabled: !item.enableFlag
+                                  }
+                              )
+                            })
+                            forms.musicalInstrumentIdList = forms.musicalInstrumentIdList.filter((item: any) => {
+                              return tempMusicalInstrumentIdList.includes(item)
+                            })
+                          }}
+                      />
+                    </NFormItemGi>
+                    <NFormItemGi
+                        label="可用乐器"
+                        path="musicalInstrumentIdList"
+                        rule={[
+                          {
+                            required: true,
+                            message: '请选择可用乐器',
+                            trigger: 'change',
+                            type: 'array'
+                          }
+                        ]}
+                    >
+                      <NSelect
+                          placeholder="请选择可用乐器"
+                          options={state.instrumentList}
+                          v-model:value={forms.musicalInstrumentIdList}
+                          clearable
+                          multiple
+                          maxTagCount={2}
+                          onUpdateValue={async (value: any) => {
+                          }}
+                      />
+                    </NFormItemGi>
+                  </NGrid>
+              )}
+              <NGrid cols={2}>
+                <NFormItemGi
+                    label="速度"
+                    path="playSpeed"
+                    rule={[
+                      {
+                        required: false,
+                        message: '请输入速度'
+                      }
+                    ]}
+                >
+                  <NInputNumber
+                      placeholder="请输入速度"
+                      v-model:value={forms.playSpeed}
+                      style="width:100%"
+                  />
+                </NFormItemGi>
+              </NGrid>
+              <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
+                                }
+                              ]}
+                          >
+                            <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>
+
+
               <NAlert showIcon={false} style={{marginBottom: '12px'}}>
                 演唱文件
               </NAlert>
@@ -1555,73 +1680,6 @@ export default defineComponent({
                   </NRadioGroup>
                 </NFormItemGi>
               </NGrid>
-              {!forms.isAllSubject && (
-                  <NGrid cols={2}>
-                    <NFormItemGi
-                        label="可用声部"
-                        path="subjectIds"
-                        rule={[
-                          {
-                            required: true,
-                            message: '请选择可用声部',
-                            trigger: 'change',
-                            type: 'array'
-                          }
-                        ]}
-                    >
-                      <NSelect
-                          v-model:value={forms.subjectIds}
-                          options={state.subjectList}
-                          multiple
-                          filterable
-                          clearable
-                          placeholder="请选择可用声部"
-                          maxTagCount={2}
-                          onUpdateValue={async (val: any) => {
-                            state.instrumentList = []
-                            let tempMusicalInstrumentIdList = [] as any
-                            const {data} = await musicalInstrumentPage({page: 1, rows: 999, subjectIds: val});
-                            data.rows.map((item: any) => {
-                              tempMusicalInstrumentIdList.push(item.id + '')
-                              state.instrumentList.push(
-                                  {
-                                    label: item.name,
-                                    value: item.id + '',
-                                    disabled: !item.enableFlag
-                                  }
-                              )
-                            })
-                            forms.musicalInstrumentIdList = forms.musicalInstrumentIdList.filter((item: any) => {
-                              return tempMusicalInstrumentIdList.includes(item)
-                            })
-                          }}
-                      />
-                    </NFormItemGi>
-                    <NFormItemGi
-                        label="可用乐器"
-                        path="musicalInstrumentIdList"
-                        rule={[
-                          {
-                            required: true,
-                            message: '请选择可用乐器',
-                            trigger: 'change',
-                            type: 'array'
-                          }
-                        ]}
-                    >
-                      <NSelect
-                          placeholder="请选择可用乐器"
-                          options={state.instrumentList}
-                          v-model:value={forms.musicalInstrumentIdList}
-                          clearable
-                          multiple
-                          maxTagCount={2}
-                          onUpdateValue={async (value: any) => {
-                          }}
-                      />
-                    </NFormItemGi>
-                  </NGrid>
-              )}
               <NGrid cols={2}>
                 {forms.playMode === 'MP3' && (
                     <NFormItemGi
@@ -1756,61 +1814,6 @@ export default defineComponent({
                     </NFormItem>
                   </>
               )}
-              <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
-                                }
-                              ]}
-                          >
-                            <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>
-
               {/*独奏*/}
               {forms.musicSheetType == 'SINGLE' && forms.playMode === 'MP3' && !forms.isAllSubject && forms.musicSheetSoundList_YZ.map((item: any, index: any) => {
                 return (