调整音色的前端页面,提供更方便的试听

This commit is contained in:
LiJinHui
2025-11-15 09:51:58 +08:00
parent ff3e308ce8
commit 94a43432fc
3 changed files with 491 additions and 176 deletions
@@ -19,4 +19,30 @@ public class VoiceDTO implements Serializable {
@Schema(description = "音色名称")
private String name;
@Schema(description = "音频播放地址")
private String voiceDemo;
// 添加双参数构造函数,保持向后兼容
public VoiceDTO(String id, String name) {
this.id = id;
this.name = name;
this.voiceDemo = null;
}
// 为了兼容性,添加其他可能的音频字段别名
@Schema(hidden = true)
public String getDemoUrl() {
return voiceDemo;
}
@Schema(hidden = true)
public String getAudioUrl() {
return voiceDemo;
}
@Schema(hidden = true)
public String getReferenceAudio() {
return voiceDemo;
}
}
@@ -133,7 +133,11 @@ public class TimbreServiceImpl extends BaseServiceImpl<TimbreDao, TimbreEntity>
timbreEntities = new ArrayList<>();
}
List<VoiceDTO> voiceDTOs = timbreEntities.stream()
.map(entity -> new VoiceDTO(entity.getId(), entity.getName()))
.map(entity -> {
VoiceDTO dto = new VoiceDTO(entity.getId(), entity.getName());
dto.setVoiceDemo(entity.getVoiceDemo());
return dto;
})
.collect(Collectors.toList());
// 获取当前登录用户ID
@@ -205,6 +209,9 @@ public class TimbreServiceImpl extends BaseServiceImpl<TimbreDao, TimbreEntity>
if (list.isEmpty()) {
return null;
}
return new VoiceDTO(list.get(0).getId(), list.get(0).getName());
TimbreEntity entity = list.get(0);
VoiceDTO dto = new VoiceDTO(entity.getId(), entity.getName());
dto.setVoiceDemo(entity.getVoiceDemo());
return dto;
}
}