zhou zhou
11 小时以前 05148eeef860d33232874a640dbd67ba43ac5686
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package com.vincent.rsf.server.ai.controller;
 
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.ai.dto.AiPromptPreviewRequest;
import com.vincent.rsf.server.ai.service.AiConfigOpsService;
import com.vincent.rsf.server.system.controller.BaseController;
import lombok.RequiredArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
 
@RestController
@RequiredArgsConstructor
public class AiConfigOpsController extends BaseController {
 
    private final AiConfigOpsService aiConfigOpsService;
 
    @PreAuthorize("hasAnyAuthority('system:aiParam:list','system:aiPrompt:list','system:aiMcpMount:list')")
    @GetMapping("/ai/config/summary")
    public R getSummary(@RequestParam(value = "promptCode", required = false) String promptCode) {
        return R.ok().add(aiConfigOpsService.getSummary(promptCode, getTenantId()));
    }
 
    @PreAuthorize("hasAnyAuthority('system:aiPrompt:list','system:aiPrompt:save','system:aiPrompt:update')")
    @PostMapping("/ai/config/prompt/render-preview")
    public R renderPromptPreview(@RequestBody AiPromptPreviewRequest request) {
        return R.ok().add(aiConfigOpsService.renderPromptPreview(request, getTenantId()));
    }
}