瀏覽代碼

完成AI成片的音色接口重构

tsurumure 4 月之前
父節點
當前提交
ed69493abc

+ 2 - 2
db/ai_media_ttv_timbre.sql

@@ -11,10 +11,10 @@ CREATE TABLE `ai_media_ttv_timbre` (
     `timbre_key` VARCHAR(255) NOT NULL COMMENT 'key',
     `name` VARCHAR(255) NOT NULL COMMENT '名称',
     `category_id` VARCHAR(255) COMMENT '分类 (1男声, 2女声, 3童男声, 4童女声)',
-    `tag` VARCHAR(255) NOT NULL COMMENT '标',
+    `tag` VARCHAR(255) NOT NULL COMMENT '标',
     `avatar` VARCHAR(1000) NOT NULL COMMENT '头像',
     `description` VARCHAR(255) NOT NULL COMMENT '描述',
-    `audio_url` VARCHAR(1000) NOT NULL COMMENT '音'
+    `audio_url` VARCHAR(1000) NOT NULL COMMENT '音色示例'
 ) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='AI图文语音音色表 (百度)';
 
 

+ 10 - 17
src/main/java/com/backendsys/modules/ai/media/controller/MediaTtvTimbreController.java

@@ -2,6 +2,7 @@ package com.backendsys.modules.ai.media.controller;
 
 import com.backendsys.modules.ai.media.entity.MediaTtv;
 import com.backendsys.modules.ai.media.service.MediaTtvService;
+import com.backendsys.modules.ai.media.service.MediaTtvTimbreService;
 import com.backendsys.modules.common.config.security.utils.SecurityUtil;
 import com.backendsys.modules.common.utils.Result;
 import io.swagger.v3.oas.annotations.Operation;
@@ -19,22 +20,14 @@ import org.springframework.web.bind.annotation.RestController;
 @Tag(name = "AI成片-音色")
 public class MediaTtvTimbreController {
 
-//    @Autowired
-//    private MediaTtvService mediaTtvService;
-//
-//    @Operation(summary = "生成图文语音视频")
-//    @PreAuthorize("@sr.hasPermission('34')")
-//    @PostMapping("/api/ai/media/ttv/generate")
-//    public Result generateMediaTtv(@Validated(MediaTtv.Generate.class) @RequestBody MediaTtv mediaTtv) {
-//        mediaTtv.setUser_id(SecurityUtil.getUserId());
-//        return Result.success().put("data", mediaTtvService.generateMediaTtv(mediaTtv));
-//    }
-//
-//    @Operation(summary = "查询图文语音视频")
-//    @PreAuthorize("@sr.hasPermission('34')")
-//    @GetMapping("/api/ai/media/ttv/query")
-//    public Result queryMediaTtv(@Validated(MediaTtv.Query.class) MediaTtv mediaTtv) {
-//        return Result.success().put("data", mediaTtvService.queryMediaTtv(mediaTtv));
-//    }
+    @Autowired
+    private MediaTtvTimbreService mediaTtvTimbreService;
+
+    @Operation(summary = "获取音色列表")
+    @PreAuthorize("@sr.hasPermission('34')")
+    @GetMapping("/api/ai/media/ttv/getTimbreList")
+    public Result queryMediaTtv() {
+        return Result.success().put("data", mediaTtvTimbreService.selectMediaTtvTimbre());
+    }
 
 }

+ 9 - 0
src/main/java/com/backendsys/modules/ai/media/dao/MediaTtvTimbreDao.java

@@ -0,0 +1,9 @@
+package com.backendsys.modules.ai.media.dao;
+
+import com.backendsys.modules.ai.media.entity.MediaTtvTimbre;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface MediaTtvTimbreDao extends BaseMapper<MediaTtvTimbre> {
+}

+ 22 - 0
src/main/java/com/backendsys/modules/ai/media/entity/MediaTtvTimbre.java

@@ -0,0 +1,22 @@
+package com.backendsys.modules.ai.media.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("ai_media_ttv_timbre")
+public class MediaTtvTimbre {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    private Integer timbre_key;
+    private String name;
+    private Integer category_id;
+    private String tag;
+    private String avatar;
+    private String description;
+    private String audio_url;
+
+}

+ 12 - 0
src/main/java/com/backendsys/modules/ai/media/service/MediaTtvTimbreService.java

@@ -0,0 +1,12 @@
+package com.backendsys.modules.ai.media.service;
+
+import com.backendsys.modules.ai.media.entity.MediaTtvTimbre;
+
+import java.util.List;
+
+public interface MediaTtvTimbreService {
+
+    // 获取音色列表
+    List<MediaTtvTimbre> selectMediaTtvTimbre();
+
+}

+ 25 - 0
src/main/java/com/backendsys/modules/ai/media/service/impl/MediaTtvTimbreServiceImpl.java

@@ -0,0 +1,25 @@
+package com.backendsys.modules.ai.media.service.impl;
+
+import com.backendsys.modules.ai.media.dao.MediaTtvTimbreDao;
+import com.backendsys.modules.ai.media.entity.MediaTtvTimbre;
+import com.backendsys.modules.ai.media.service.MediaTtvTimbreService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class MediaTtvTimbreServiceImpl implements MediaTtvTimbreService {
+
+    @Autowired
+    private MediaTtvTimbreDao mediaTtvTimbreDao;
+
+    // 获取音色列表
+    @Override
+    @Cacheable(value = "catch::media-ttv-timbre", unless = "#result == null")
+    public List<MediaTtvTimbre> selectMediaTtvTimbre() {
+        return mediaTtvTimbreDao.selectList(null);
+    }
+
+}