package cc.mrbird.febs.ai.controller.product; import cc.mrbird.febs.ai.req.product.ApiProductInfoDto; import cc.mrbird.febs.ai.req.product.ApiProductPageDto; import cc.mrbird.febs.ai.res.product.ApiProductInfoVo; import cc.mrbird.febs.ai.res.product.ApiProductVo; import cc.mrbird.febs.ai.res.productPoint.ApiProductPointVo; import cc.mrbird.febs.ai.service.AiProductService; import cc.mrbird.febs.common.entity.FebsResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @author Administrator */ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "/api/ai/product") @Api(value = "ApiProductController", tags = "AI-产品(培训)") public class ApiProductController { private final AiProductService aiProductService; @ApiOperation(value = "产品列表", notes = "产品列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiProductVo.class) }) @PostMapping(value = "/list") public FebsResponse list(@RequestBody @Validated ApiProductPageDto dto) { return aiProductService.productList(dto); } @ApiOperation(value = "产品详情", notes = "产品详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiProductInfoVo.class) }) @PostMapping(value = "/info") public FebsResponse info(@RequestBody @Validated ApiProductInfoDto dto) { return aiProductService.productInfo(dto); } @ApiOperation(value = "知识点列表", notes = "知识点列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiProductPointVo.class) }) @PostMapping(value = "/pointInfoList") public FebsResponse pointInfoList(@RequestBody @Validated ApiProductInfoDto dto) { return aiProductService.pointInfoList(dto); } }