From 9503c1ebb3fbb68fb8259bea87097d010846e2d5 Mon Sep 17 00:00:00 2001 From: houzhongjian <houzhongyi@126.com> Date: 星期三, 18 六月 2025 08:59:16 +0800 Subject: [PATCH] Merge remote-tracking branch 'refs/remotes/origin/dev-test' into feature/ai --- iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/controller/admin/schedulesuggest/ScheduleSuggestController.java | 94 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 94 insertions(+), 0 deletions(-) diff --git a/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/controller/admin/schedulesuggest/ScheduleSuggestController.java b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/controller/admin/schedulesuggest/ScheduleSuggestController.java new file mode 100644 index 0000000..321398e --- /dev/null +++ b/iailab-module-ai/iailab-module-ai-biz/src/main/java/com/iailab/module/ai/controller/admin/schedulesuggest/ScheduleSuggestController.java @@ -0,0 +1,94 @@ +package com.iailab.module.ai.controller.admin.schedulesuggest; + +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.*; + +import com.iailab.framework.common.pojo.PageResult; +import com.iailab.framework.common.pojo.CommonResult; +import com.iailab.framework.common.util.object.BeanUtils; +import static com.iailab.framework.common.pojo.CommonResult.success; + +import com.iailab.module.ai.controller.admin.schedulesuggest.vo.*; +import com.iailab.module.ai.dal.dataobject.schedulesuggest.ScheduleSuggestDO; +import com.iailab.module.ai.service.schedulesuggest.ScheduleSuggestService; + +import java.util.List; + +@Tag(name = "管理后台 - 大模型调度建议") +@RestController +@RequestMapping("/ai/schedule-suggest") +@Validated +public class ScheduleSuggestController { + + @Resource + private ScheduleSuggestService scheduleSuggestService; + + @PostMapping("/create") + @Operation(summary = "创建大模型调度建议") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:create')") + public CommonResult<Long> createScheduleSuggest(@Valid @RequestBody ScheduleSuggestSaveReqVO createReqVO) { + return success(scheduleSuggestService.createScheduleSuggest(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新大模型调度建议") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:update')") + public CommonResult<Boolean> updateScheduleSuggest(@Valid @RequestBody ScheduleSuggestSaveReqVO updateReqVO) { + scheduleSuggestService.updateScheduleSuggest(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除大模型调度建议") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:delete')") + public CommonResult<Boolean> deleteScheduleSuggest(@RequestParam("id") Long id) { + scheduleSuggestService.deleteScheduleSuggest(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得大模型调度建议") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:query')") + public CommonResult<ScheduleSuggestRespVO> getScheduleSuggest(@RequestParam("id") Long id) { + ScheduleSuggestDO scheduleSuggest = scheduleSuggestService.getScheduleSuggest(id); + return success(BeanUtils.toBean(scheduleSuggest, ScheduleSuggestRespVO.class)); + } + + @PutMapping("/operate-suggest") + @Operation(summary = "采纳忽略取消采纳") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:update')") + public CommonResult<Boolean> operateScheduleSuggest(@RequestBody ScheduleSuggestSaveReqVO updateReqVO) { + ScheduleSuggestDO scheduleSuggest = scheduleSuggestService.getScheduleSuggest(updateReqVO.getId()); + scheduleSuggest.setStatus(updateReqVO.getStatus()); + scheduleSuggestService.operateScheduleSuggest(scheduleSuggest); + return success(true); + } + + @GetMapping("/simple-list") + @Operation(summary = "获得n条大模型调度建议") + @Parameter(name = "top", description = "编号", required = true, example = "5") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:query')") + public CommonResult<List<ScheduleSuggestRespVO>> getTopScheduleSuggests(@RequestParam("top") Long top) { + List<ScheduleSuggestDO> scheduleSuggests = scheduleSuggestService.getTopScheduleSuggests(top); + return success(BeanUtils.toBean(scheduleSuggests, ScheduleSuggestRespVO.class)); + } + + + @GetMapping("/page") + @Operation(summary = "获得大模型调度建议分页") + @PreAuthorize("@ss.hasPermission('ai:schedule-suggest:query')") + public CommonResult<PageResult<ScheduleSuggestRespVO>> getScheduleSuggestPage(@Valid ScheduleSuggestPageReqVO pageReqVO) { + PageResult<ScheduleSuggestDO> pageResult = scheduleSuggestService.getScheduleSuggestPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, ScheduleSuggestRespVO.class)); + } + +} \ No newline at end of file -- Gitblit v1.9.3