package vip.mate.channel.controller; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import vip.mate.channel.ChannelManager; import vip.mate.channel.model.ChannelEntity; import vip.mate.channel.service.ChannelService; import vip.mate.common.result.R; import java.util.List; import java.util.Map; /** * 渠道管理接口 *
* 提供渠道的 CRUD、启用/禁用(联动 ChannelManager 生命周期)、状态查询等能力。
* 对应前端 Channel 管理页面。
*
* @author MateClaw Team
*/
@Tag(name = "渠道管理")
@RestController
@RequestMapping("/api/v1/channels")
@RequiredArgsConstructor
public class ChannelController {
private final ChannelService channelService;
private final ChannelManager channelManager;
@Operation(summary = "获取渠道列表")
@GetMapping
public R> list() {
return R.ok(channelService.listChannels());
}
@Operation(summary = "按类型获取渠道列表")
@GetMapping("/type/{channelType}")
public R
> listByType(@PathVariable String channelType) {
return R.ok(channelService.listChannelsByType(channelType));
}
@Operation(summary = "获取渠道详情")
@GetMapping("/{id}")
public R