|  | @@ -23,19 +23,21 @@ import TheTooltip from '@components/TheTooltip'
 | 
	
		
			
				|  |  |  import AddMusic from '@views/music-library/project-music-sheet/module/kt/addMusic'
 | 
	
		
			
				|  |  |  import UpdateMusic from '@views/music-library/project-music-sheet/module/kt/updateMusic'
 | 
	
		
			
				|  |  |  import {
 | 
	
		
			
				|  |  | -  musicSheetApplicationExtendCategoryList, musicSheetApplicationExtendDel,
 | 
	
		
			
				|  |  | +  musicSheetApplicationExtendCategoryList,
 | 
	
		
			
				|  |  | +  musicSheetApplicationExtendDel,
 | 
	
		
			
				|  |  |    musicSheetApplicationExtendStatus,
 | 
	
		
			
				|  |  |    musicSheetApplicationOwnerList,
 | 
	
		
			
				|  |  | -  musicSheetPageByApplication, musicSheetRemove
 | 
	
		
			
				|  |  | +  musicSheetPageByApplication,
 | 
	
		
			
				|  |  | +  musicSheetRemove
 | 
	
		
			
				|  |  |  } from '@views/music-library/api'
 | 
	
		
			
				|  |  |  import { getMapValueByKey, getSelectDataFromObj } from '@/utils/objectUtil'
 | 
	
		
			
				|  |  | -import {appKey, musicSheetAudioType, musicSheetSourceType, musicSheetType} from '@/utils/constant'
 | 
	
		
			
				|  |  | +import { appKey, musicSheetAudioType, musicSheetSourceType, musicSheetType } from '@/utils/constant'
 | 
	
		
			
				|  |  |  import { sysApplicationPage } from '@views/menu-manage/api'
 | 
	
		
			
				|  |  |  import { musicSheetApplicationExtendSubjectList } from '@views/system-manage/api'
 | 
	
		
			
				|  |  |  import { filterTimes } from '@/utils/dateUtil'
 | 
	
		
			
				|  |  |  import deepClone from '@/utils/deep.clone'
 | 
	
		
			
				|  |  |  import { getOwnerName } from '@views/music-library/musicUtil'
 | 
	
		
			
				|  |  | -import MusicPreView from "@views/music-library/music-sheet/modal/musicPreView";
 | 
	
		
			
				|  |  | +import MusicPreView from '@views/music-library/music-sheet/modal/musicPreView'
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default defineComponent({
 | 
	
		
			
				|  |  |    name: 'project-music-sheet-KT',
 | 
	
	
		
			
				|  | @@ -78,7 +80,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |          appAuditFlag: null, //是否审核版本
 | 
	
		
			
				|  |  |          detailFlag: null, //是否查询详情
 | 
	
		
			
				|  |  |          applicationId: null, //所属人项目ID
 | 
	
		
			
				|  |  | -        extendApplicationId: null, //所属人项目ID
 | 
	
		
			
				|  |  | +        extendApplicationId: null //所属人项目ID
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        subjectList: [],
 | 
	
		
			
				|  |  |        dataList: [] as any[],
 | 
	
	
		
			
				|  | @@ -91,7 +93,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        applicationId: null, //应用ID
 | 
	
		
			
				|  |  |        musicPreview: false,
 | 
	
		
			
				|  |  |        musicScore: null as any,
 | 
	
		
			
				|  |  | -      useProjectData: [] as any, // 适用项目行数据
 | 
	
		
			
				|  |  | +      useProjectData: [] as any // 适用项目行数据
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      onMounted(async () => {
 | 
	
	
		
			
				|  | @@ -153,7 +155,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        } catch {}
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      const saveForm = ref()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      const onSearch = () => {
 | 
	
	
		
			
				|  | @@ -180,8 +181,8 @@ export default defineComponent({
 | 
	
		
			
				|  |  |          const { data } = await musicSheetPageByApplication({
 | 
	
		
			
				|  |  |            ...state.pagination,
 | 
	
		
			
				|  |  |            ...state.searchForm,
 | 
	
		
			
				|  |  | -          userId: (sourceType && sourceType === 'PERSON') ? state.searchForm.userId : null,
 | 
	
		
			
				|  |  | -          organizationRoleId: (sourceType && sourceType === 'ORG') ? state.searchForm.userId : null,
 | 
	
		
			
				|  |  | +          userId: sourceType && sourceType === 'PERSON' ? state.searchForm.userId : null,
 | 
	
		
			
				|  |  | +          organizationRoleId: sourceType && sourceType === 'ORG' ? state.searchForm.userId : null,
 | 
	
		
			
				|  |  |            ...filterTimes(state.searchForm.times, ['startTime', 'endTime']),
 | 
	
		
			
				|  |  |            applicationId: state.applicationId
 | 
	
		
			
				|  |  |          })
 | 
	
	
		
			
				|  | @@ -275,7 +276,6 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      const columns = (): any => {
 | 
	
		
			
				|  |  |        return [
 | 
	
		
			
				|  |  |          {
 | 
	
	
		
			
				|  | @@ -290,7 +290,9 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  <NDescriptionsItem label="曲目名称">
 | 
	
		
			
				|  |  |                    <TheTooltip content={row.name} />{' '}
 | 
	
		
			
				|  |  |                  </NDescriptionsItem>
 | 
	
		
			
				|  |  | -                <NDescriptionsItem label="曲目编号"><TheTooltip content={row.id} />{' '}</NDescriptionsItem>
 | 
	
		
			
				|  |  | +                <NDescriptionsItem label="曲目编号">
 | 
	
		
			
				|  |  | +                  <TheTooltip content={row.id} />{' '}
 | 
	
		
			
				|  |  | +                </NDescriptionsItem>
 | 
	
		
			
				|  |  |                </NDescriptions>
 | 
	
		
			
				|  |  |              </>
 | 
	
		
			
				|  |  |            )
 | 
	
	
		
			
				|  | @@ -311,12 +313,14 @@ 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>
 | 
	
		
			
				|  |  |                  <NDescriptionsItem label="可用声部">
 | 
	
		
			
				|  |  | -                  <TheTooltip content={row.subjectNames}/>
 | 
	
		
			
				|  |  | +                  <TheTooltip content={row.subjectNames} />
 | 
	
		
			
				|  |  |                  </NDescriptionsItem>
 | 
	
		
			
				|  |  |                </NDescriptions>
 | 
	
		
			
				|  |  |              </>
 | 
	
	
		
			
				|  | @@ -364,10 +368,10 @@ export default defineComponent({
 | 
	
		
			
				|  |  |            key: 'composer',
 | 
	
		
			
				|  |  |            render(row: any) {
 | 
	
		
			
				|  |  |              return (
 | 
	
		
			
				|  |  | -                <NDescriptions labelPlacement="left" column={1}>
 | 
	
		
			
				|  |  | -                  <NDescriptionsItem label="上传人">{row.createByName}</NDescriptionsItem>
 | 
	
		
			
				|  |  | -                  <NDescriptionsItem label="上传时间">{row.createTime}</NDescriptionsItem>
 | 
	
		
			
				|  |  | -                </NDescriptions>
 | 
	
		
			
				|  |  | +              <NDescriptions labelPlacement="left" column={1}>
 | 
	
		
			
				|  |  | +                <NDescriptionsItem label="上传人">{row.createByName}</NDescriptionsItem>
 | 
	
		
			
				|  |  | +                <NDescriptionsItem label="上传时间">{row.createTime}</NDescriptionsItem>
 | 
	
		
			
				|  |  | +              </NDescriptions>
 | 
	
		
			
				|  |  |              )
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |          },
 | 
	
	
		
			
				|  | @@ -388,13 +392,13 @@ export default defineComponent({
 | 
	
		
			
				|  |  |              return (
 | 
	
		
			
				|  |  |                <NSpace>
 | 
	
		
			
				|  |  |                  <NButton
 | 
	
		
			
				|  |  | -                    type="primary"
 | 
	
		
			
				|  |  | -                    size="small"
 | 
	
		
			
				|  |  | -                    text
 | 
	
		
			
				|  |  | -                    onClick={() => {
 | 
	
		
			
				|  |  | -                      state.musicPreview = true
 | 
	
		
			
				|  |  | -                      state.musicScore = row
 | 
	
		
			
				|  |  | -                    }}
 | 
	
		
			
				|  |  | +                  type="primary"
 | 
	
		
			
				|  |  | +                  size="small"
 | 
	
		
			
				|  |  | +                  text
 | 
	
		
			
				|  |  | +                  onClick={() => {
 | 
	
		
			
				|  |  | +                    state.musicPreview = true
 | 
	
		
			
				|  |  | +                    state.musicScore = row
 | 
	
		
			
				|  |  | +                  }}
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  |                    预览
 | 
	
		
			
				|  |  |                  </NButton>
 | 
	
	
		
			
				|  | @@ -402,7 +406,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                    type="primary"
 | 
	
		
			
				|  |  |                    size="small"
 | 
	
		
			
				|  |  |                    text
 | 
	
		
			
				|  |  | -                  v-auth="musicSheetApplicationExtend/status1751229794627878914"
 | 
	
		
			
				|  |  | +                  v-auth="musicSheetApplicationExtend/status1751235210464198657"
 | 
	
		
			
				|  |  |                    onClick={() => onChangeStatus(row)}
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  |                    {row.status ? '停用' : '启用'}
 | 
	
	
		
			
				|  | @@ -420,12 +424,12 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                    修改
 | 
	
		
			
				|  |  |                  </NButton>
 | 
	
		
			
				|  |  |                  <NButton
 | 
	
		
			
				|  |  | -                    type="primary"
 | 
	
		
			
				|  |  | -                    size="small"
 | 
	
		
			
				|  |  | -                    text
 | 
	
		
			
				|  |  | -                    disabled={!!row.status}
 | 
	
		
			
				|  |  | -                    onClick={() => onRmove(row)}
 | 
	
		
			
				|  |  | -                    v-auth="musicSheetApplicationExtend/del1770696070576254977"
 | 
	
		
			
				|  |  | +                  type="primary"
 | 
	
		
			
				|  |  | +                  size="small"
 | 
	
		
			
				|  |  | +                  text
 | 
	
		
			
				|  |  | +                  disabled={!!row.status}
 | 
	
		
			
				|  |  | +                  onClick={() => onRmove(row)}
 | 
	
		
			
				|  |  | +                  v-auth="musicSheetApplicationExtend/del1770696070576254977"
 | 
	
		
			
				|  |  |                  >
 | 
	
		
			
				|  |  |                    删除
 | 
	
		
			
				|  |  |                  </NButton>
 | 
	
	
		
			
				|  | @@ -455,41 +459,41 @@ export default defineComponent({
 | 
	
		
			
				|  |  |              </NFormItem>
 | 
	
		
			
				|  |  |              <NFormItem label="曲目来源" path="sourceType">
 | 
	
		
			
				|  |  |                <NSelect
 | 
	
		
			
				|  |  | -                  placeholder="请选择曲目来源"
 | 
	
		
			
				|  |  | -                  v-model:value={state.searchForm.sourceType}
 | 
	
		
			
				|  |  | -                  options={getSelectDataFromObj(musicSheetSourceType)}
 | 
	
		
			
				|  |  | -                  onUpdateValue={async (value: any) => {
 | 
	
		
			
				|  |  | -                    state.userIdData = []
 | 
	
		
			
				|  |  | -                    state.searchForm.userId = null
 | 
	
		
			
				|  |  | -                    if (value && value !== 'PLATFORM') {
 | 
	
		
			
				|  |  | -                      await updateUserIdData(value)
 | 
	
		
			
				|  |  | -                      state.userIdDisable = !state.searchForm.extendApplicationId
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                      state.userIdDisable = true
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                  }}
 | 
	
		
			
				|  |  | -                  clearable
 | 
	
		
			
				|  |  | +                placeholder="请选择曲目来源"
 | 
	
		
			
				|  |  | +                v-model:value={state.searchForm.sourceType}
 | 
	
		
			
				|  |  | +                options={getSelectDataFromObj(musicSheetSourceType)}
 | 
	
		
			
				|  |  | +                onUpdateValue={async (value: any) => {
 | 
	
		
			
				|  |  | +                  state.userIdData = []
 | 
	
		
			
				|  |  | +                  state.searchForm.userId = null
 | 
	
		
			
				|  |  | +                  if (value && value !== 'PLATFORM') {
 | 
	
		
			
				|  |  | +                    await updateUserIdData(value)
 | 
	
		
			
				|  |  | +                    state.userIdDisable = !state.searchForm.extendApplicationId
 | 
	
		
			
				|  |  | +                  } else {
 | 
	
		
			
				|  |  | +                    state.userIdDisable = true
 | 
	
		
			
				|  |  | +                  }
 | 
	
		
			
				|  |  | +                }}
 | 
	
		
			
				|  |  | +                clearable
 | 
	
		
			
				|  |  |                />
 | 
	
		
			
				|  |  |              </NFormItem>
 | 
	
		
			
				|  |  |              <NFormItem label="所属项目" path="applicationId">
 | 
	
		
			
				|  |  |                <NSelect
 | 
	
		
			
				|  |  | -                  placeholder="请选择所属项目"
 | 
	
		
			
				|  |  | -                  v-model:value={state.searchForm.extendApplicationId}
 | 
	
		
			
				|  |  | -                  options={state.useProjectData}
 | 
	
		
			
				|  |  | -                  clearable
 | 
	
		
			
				|  |  | -                  onUpdateValue={async (value: any) => {
 | 
	
		
			
				|  |  | -                    state.searchForm.extendApplicationId = value
 | 
	
		
			
				|  |  | -                    if (value) {
 | 
	
		
			
				|  |  | -                      await updateUserIdData(state.searchForm.sourceType)
 | 
	
		
			
				|  |  | -                      state.userIdDisable = !(
 | 
	
		
			
				|  |  | -                          state.searchForm.sourceType && state.searchForm.sourceType !== 'PLATFORM'
 | 
	
		
			
				|  |  | -                      )
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                      state.searchForm.userId = null
 | 
	
		
			
				|  |  | -                      state.userIdDisable = true
 | 
	
		
			
				|  |  | -                      state.userIdData = []
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                  }}
 | 
	
		
			
				|  |  | +                placeholder="请选择所属项目"
 | 
	
		
			
				|  |  | +                v-model:value={state.searchForm.extendApplicationId}
 | 
	
		
			
				|  |  | +                options={state.useProjectData}
 | 
	
		
			
				|  |  | +                clearable
 | 
	
		
			
				|  |  | +                onUpdateValue={async (value: any) => {
 | 
	
		
			
				|  |  | +                  state.searchForm.extendApplicationId = value
 | 
	
		
			
				|  |  | +                  if (value) {
 | 
	
		
			
				|  |  | +                    await updateUserIdData(state.searchForm.sourceType)
 | 
	
		
			
				|  |  | +                    state.userIdDisable = !(
 | 
	
		
			
				|  |  | +                      state.searchForm.sourceType && state.searchForm.sourceType !== 'PLATFORM'
 | 
	
		
			
				|  |  | +                    )
 | 
	
		
			
				|  |  | +                  } else {
 | 
	
		
			
				|  |  | +                    state.searchForm.userId = null
 | 
	
		
			
				|  |  | +                    state.userIdDisable = true
 | 
	
		
			
				|  |  | +                    state.userIdData = []
 | 
	
		
			
				|  |  | +                  }
 | 
	
		
			
				|  |  | +                }}
 | 
	
		
			
				|  |  |                />
 | 
	
		
			
				|  |  |              </NFormItem>
 | 
	
		
			
				|  |  |              <NFormItem label="所属人" path="userId">
 | 
	
	
		
			
				|  | @@ -594,7 +598,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |              <NSpace style={{ paddingBottom: '12px' }}>
 | 
	
		
			
				|  |  |                <NButton
 | 
	
		
			
				|  |  |                  type="primary"
 | 
	
		
			
				|  |  | -                v-auth="musicSheetApplicationExtend/saveBatch1751227277370195969"
 | 
	
		
			
				|  |  | +                v-auth="musicSheetApplicationExtend/saveBatch1751234344277508097"
 | 
	
		
			
				|  |  |                  onClick={() => {
 | 
	
		
			
				|  |  |                    state.showAddDialog = true
 | 
	
		
			
				|  |  |                  }}
 | 
	
	
		
			
				|  | @@ -603,7 +607,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                </NButton>
 | 
	
		
			
				|  |  |                <NButton
 | 
	
		
			
				|  |  |                  disabled={checkedRowKeysRef.value.length == 0}
 | 
	
		
			
				|  |  | -                v-auth="musicSheetApplicationExtend/status1751229794627878914"
 | 
	
		
			
				|  |  | +                v-auth="musicSheetApplicationExtend/status1751235210464198657"
 | 
	
		
			
				|  |  |                  onClick={() => {
 | 
	
		
			
				|  |  |                    onBatchChangeStatus(false)
 | 
	
		
			
				|  |  |                  }}
 | 
	
	
		
			
				|  | @@ -612,7 +616,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                </NButton>
 | 
	
		
			
				|  |  |                <NButton
 | 
	
		
			
				|  |  |                  disabled={checkedRowKeysRef.value.length == 0}
 | 
	
		
			
				|  |  | -                v-auth="musicSheetApplicationExtend/status1751229794627878914"
 | 
	
		
			
				|  |  | +                v-auth="musicSheetApplicationExtend/status1751235210464198657"
 | 
	
		
			
				|  |  |                  onClick={() => {
 | 
	
		
			
				|  |  |                    onBatchChangeStatus(true)
 | 
	
		
			
				|  |  |                  }}
 | 
	
	
		
			
				|  | @@ -677,12 +681,12 @@ export default defineComponent({
 | 
	
		
			
				|  |  |              />
 | 
	
		
			
				|  |  |            </NModal>
 | 
	
		
			
				|  |  |            <NModal
 | 
	
		
			
				|  |  | -              blockScroll={true}
 | 
	
		
			
				|  |  | -              v-model:show={state.musicPreview}
 | 
	
		
			
				|  |  | -              preset="dialog"
 | 
	
		
			
				|  |  | -              showIcon={false}
 | 
	
		
			
				|  |  | -              title={'曲目预览'}
 | 
	
		
			
				|  |  | -              style={{ width: 'auto' }}
 | 
	
		
			
				|  |  | +            blockScroll={true}
 | 
	
		
			
				|  |  | +            v-model:show={state.musicPreview}
 | 
	
		
			
				|  |  | +            preset="dialog"
 | 
	
		
			
				|  |  | +            showIcon={false}
 | 
	
		
			
				|  |  | +            title={'曲目预览'}
 | 
	
		
			
				|  |  | +            style={{ width: 'auto' }}
 | 
	
		
			
				|  |  |            >
 | 
	
		
			
				|  |  |              <MusicPreView item={state.musicScore} />
 | 
	
		
			
				|  |  |            </NModal>
 |