Flex
2025-06-09 8f488cf5dc006ea583c4f33b9348f5e588552a82
修改登录页以及声音模型显示
已修改2个文件
123 ■■■■ 文件已修改
easegen-front/src/views/Login/Login.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
easegen-front/src/views/chooseTemplate/index.vue 109 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
easegen-front/src/views/Login/Login.vue
@@ -58,15 +58,16 @@
}
.bei{
  width: 100%;
  height: 100%;
  min-height: 100%;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-y: scroll;
}
.bei .BeiArea{
  width: 86%;
  height: 95%;
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
@@ -129,4 +130,11 @@
  }
}
@media (max-height:500px){
  .bei .BeiArea{
    align-items: flex-start;
  }
}
</style>
easegen-front/src/views/chooseTemplate/index.vue
@@ -586,13 +586,19 @@
            </div>
          </div>
          <div class="SoundModelArea" v-loading="soundLoading">
            <div class="SoundModelAreaBox" v-for="(value, key, index) in audioList" :key="index">
              <div class="SoundClassTit">
                <el-divider content-position="center"> {{ languageClass(key) }} </el-divider>
                <!-- <el-divider content-position="center"> 123 </el-divider> -->
              </div>
              <div class="SoundClassContent">
            <div
              class="ModealBox"
              v-for="(item, index) in audioList"
                  v-for="(item, index) in value"
              :key="index"
              @click="handleSelect(item)"
              @mouseenter="handleMouseenter(item)"
              @mouseleave="handleMouseleave(item)"
                  @click="handleSelect(key, item)"
                  @mouseenter="handleMouseenter(key, item)"
                  @mouseleave="handleMouseleave(key, item)"
              :class="item.isSelect ? 'slectModel' : ''"
            >
              <div class="ImgBox">
@@ -616,6 +622,8 @@
                alt=""
                @click.stop="SoundpauseAudio(item)"
              />
                </div>
              </div>
            </div>
          </div>
          <div class="ButtonArea">
@@ -740,7 +748,6 @@
import { useEditorHtml } from '@/hooks/web/useEditorHtml'
import { ElMessage, ElMessageBox } from 'element-plus'
import { DICT_TYPE, getIntDictOptions, getStrDictOptions } from '@/utils/dict'
import { measureMemory } from 'vm'
import { any } from 'vue-types'
const editorHtml = useEditorHtml()
@@ -773,7 +780,6 @@
  hostValue.value = item
  chooseHost1(2)
  // dialogVisible2.value = true
}
const chooseHost1 = (index) => {
  if (index == 1) {
@@ -1088,10 +1094,11 @@
    soundLoading.value = true
    // 语言类型
    soundQueryParams.language = selectLanguage?.value.value ?? ''
    soundQueryParams.language = soundQueryParams.language === "all_Language"?"":soundQueryParams.language
    soundQueryParams.language =
      soundQueryParams.language === 'all_Language' ? '' : soundQueryParams.language
    // 性别
    soundQueryParams.gender = changeAudio?.value ?? ''
    soundQueryParams.gender = Number(soundQueryParams.gender) === 3?"":soundQueryParams.gender
    soundQueryParams.gender = Number(soundQueryParams.gender) === 3 ? '' : soundQueryParams.gender
    // 声音类型
    soundQueryParams.voiceType = activeSoundType?.value.value ?? ''
    const data = await pptTemplateApi.videlPageList(soundQueryParams)
@@ -1100,11 +1107,45 @@
      item.isPlay = false
      item.isSelect = false
    })
    audioList.value = data.list
    let LanguageArr = {}
    data.list.forEach((item) => {
      if (LanguageArr?.[item.language] !== undefined) {
        LanguageArr[item.language].push(item)
      } else {
        LanguageArr = { ...LanguageArr, [item.language]: [{ ...item }] }
      }
    })
    console.log(LanguageArr)
    audioList.value = LanguageArr
    total.value = data.total
    if (selectList.value !== undefined && selectList.value !== null) {
      selectList.value = null //初始化
    }
    // 停止当前播放的音频
    if (SoundcurrentAudio.value) {
      SoundcurrentAudio.value.pause()
      SoundcurrentAudio.value = null
    }
    // 重置当前播放状态
    if (SoundcurrentlyPlaying.value) {
      SoundcurrentlyPlaying.value.isPlay = false
      SoundcurrentlyPlaying.value = null
    }
  } finally {
    soundLoading.value = false
  }
}
// 当前语种显示
const languageClass = (language) => {
  let text = ''
  languageList.value.forEach((element) => {
    if (element.value === language) {
      text = element.label
    }
  })
  return text
}
// 语种选择
const LanguageChange = (event) => {
@@ -1124,15 +1165,30 @@
  SoundTypeList.value.forEach((element) => {
    if (element.value === event) {
      ChangeSoundTypeList.value = { ...element }
      if (selectList.value !== undefined && selectList.value !== null) {
        selectList.value = null //初始化
      }
      // 停止当前播放的音频
      if (SoundcurrentAudio.value) {
        SoundcurrentAudio.value.pause()
        SoundcurrentAudio.value = null
      }
      // 重置当前播放状态
      if (SoundcurrentlyPlaying.value) {
        SoundcurrentlyPlaying.value.isPlay = false
        SoundcurrentlyPlaying.value = null
      }
    }
  })
  getSoundModelList()
}
//选择声音模型
const selectList = ref()
const handleSelect = (item) => {
const handleSelect = (key, item) => {
  selectList.value = [item]
  audioList.value.forEach((child) => {
  audioList.value[key].forEach((child) => {
    if (child.id == item.id) {
      child.isSelect = true
    } else {
@@ -1150,15 +1206,13 @@
// 确定按钮点击处理函数
const submitForm = () => {
  console.log( selectLanguage.value )
  if( selectLanguage.value.value === "all_Language" ){
  if (selectLanguage.value.value === 'all_Language') {
    message.warning('请将语种按钮由全部语种修改为您需要生成的声音的文本的语种类型')
    return false
  }
  console.log(ChangeSoundTypeList.value.value)
    if (ChangeSoundTypeList.value.value === 2) {
    //此时为通用
    console.log(selectList.value)
    if (selectList.value === undefined) {
    if (selectList.value === undefined || selectList.value === null) {
      message.warning('请选择声音模型')
      return false
    }
@@ -1205,15 +1259,15 @@
  // })
}
// 鼠标移入与移出
const handleMouseenter = (item) => {
  audioList.value.forEach((child) => {
const handleMouseenter = (key, item) => {
  audioList.value[key].forEach((child) => {
    if (child.id == item.id) {
      child.isHover = true
    }
  })
}
const handleMouseleave = (item) => {
  audioList.value.forEach((child) => {
const handleMouseleave = (key, item) => {
  audioList.value[key].forEach((child) => {
    if (child.id == item.id) {
      child.isHover = false
    }
@@ -1439,7 +1493,7 @@
}
const chooseTemplate = (currTemplate) => {
  console.log( "currTemplate", currTemplate)
  console.log('currTemplate', currTemplate)
  selectTemplate.value = cloneDeep(currTemplate)
  templates.value.forEach((item) => {
    item.isActive = false
@@ -2086,7 +2140,8 @@
    language: selectLanguage.value?.value
  }
  if( ChangeSoundTypeList.value.value === 2 ){ //此时选取了声音模型
  if (ChangeSoundTypeList.value.value === 2) {
    //此时选取了声音模型
    params.humanId = null
  }else if( ChangeSoundTypeList.value.value === 1 ){
    params.voiceId = null
@@ -2163,7 +2218,6 @@
  }else {
    router.go(-1)
  }
}
const editorRef = shallowRef()
@@ -2892,6 +2946,15 @@
    height: 86%;
    margin: 10px 0;
    overflow-y: scroll;
    .SoundModelAreaBox {
      width: 100%;
      .SoundClassTit {
        width: 80%;
        margin: 0 auto;
      }
      .SoundClassContent {
        width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
@@ -2948,6 +3011,8 @@
      border-radius: 6px;
    }
  }
    }
  }
  .ButtonArea {
    width: 90%;
    margin: 0 auto;