diff --git a/continew-admin-business/src/main/java/top/continew/admin/business/service/SubtitleItemService.java b/continew-admin-business/src/main/java/top/continew/admin/business/service/SubtitleItemService.java index 776addb..791c662 100644 --- a/continew-admin-business/src/main/java/top/continew/admin/business/service/SubtitleItemService.java +++ b/continew-admin-business/src/main/java/top/continew/admin/business/service/SubtitleItemService.java @@ -1,6 +1,7 @@ package top.continew.admin.business.service; import top.continew.admin.business.model.query.SubtitleItemQuery; +import java.util.List; import top.continew.admin.business.model.req.SubtitleItemReq; import top.continew.admin.business.model.resp.SubtitleItemDetailResp; import top.continew.admin.business.model.resp.SubtitleItemResp; @@ -18,5 +19,13 @@ public interface SubtitleItemService extends BaseService pageList(SubtitleItemQuery query, top.continew.admin.business.model.query.SubtitleItemPageQuery pageQuery); + /** + * 批量添加字幕项 + * + * @param reqList 字幕项请求列表 + * @return 成功添加的数量 + */ + Integer batchAdd(List reqList); + // 可根据需要添加额外的业务方法 } \ No newline at end of file diff --git a/continew-admin-business/src/main/java/top/continew/admin/business/service/impl/SubtitleItemServiceImpl.java b/continew-admin-business/src/main/java/top/continew/admin/business/service/impl/SubtitleItemServiceImpl.java index 5b26097..3be170b 100644 --- a/continew-admin-business/src/main/java/top/continew/admin/business/service/impl/SubtitleItemServiceImpl.java +++ b/continew-admin-business/src/main/java/top/continew/admin/business/service/impl/SubtitleItemServiceImpl.java @@ -16,6 +16,8 @@ import top.continew.admin.business.service.SubtitleItemService; import top.continew.starter.extension.crud.model.resp.PageResp; import top.continew.starter.extension.crud.service.impl.BaseServiceImpl; +import java.util.List; + /** * 数字人-字幕项服务实现类 * @@ -79,4 +81,22 @@ public class SubtitleItemServiceImpl extends BaseServiceImpl reqList) { + if (reqList == null || reqList.isEmpty()) { + return 0; + } + // 转换为实体列表 + List subtitleItems = reqList.stream().map(req -> { + SubtitleItem subtitleItem = new SubtitleItem(); + BeanUtils.copyProperties(req, subtitleItem); + subtitleItem.setCreateTime(java.time.LocalDateTime.now()); + subtitleItem.setUpdateTime(java.time.LocalDateTime.now()); + return subtitleItem; + }).collect(java.util.stream.Collectors.toList()); + // 批量插入 + saveBatch(subtitleItems); + return subtitleItems.size(); + } } \ No newline at end of file diff --git a/continew-admin-webapi/src/main/java/top/continew/admin/controller/business/SubtitleItemController.java b/continew-admin-webapi/src/main/java/top/continew/admin/controller/business/SubtitleItemController.java index 05ee107..af28584 100644 --- a/continew-admin-webapi/src/main/java/top/continew/admin/controller/business/SubtitleItemController.java +++ b/continew-admin-webapi/src/main/java/top/continew/admin/controller/business/SubtitleItemController.java @@ -81,4 +81,11 @@ public class SubtitleItemController extends BaseController idList = Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList()); baseService.delete(idList); } + + @Log + @Operation(summary = "批量添加字幕项", description = "批量添加字幕项") + @PostMapping("/batchAdd") + public Integer batchAddSubtitleItem(@RequestBody List reqList) { + return baseService.batchAdd(reqList); + } } \ No newline at end of file