package com.nova.sankuai.controller.v1; import com.baomidou.mybatisplus.core.metadata.IPage; import com.nova.sankuai.domain.dto.AddHotIssuesDto; import com.nova.sankuai.domain.dto.QueryHotIssuesPageDto; import com.nova.sankuai.domain.dto.UpdateHotIssuesDto; import com.nova.sankuai.domain.vo.HotIssuesListVo; import com.nova.sankuai.infra.utils.ResultJson; import com.nova.sankuai.service.HotIssuesService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @Api(tags = "热门问题") @RestController @RequestMapping(value = "/api/v1/hotIssues") @AllArgsConstructor public class HotIssuesController { private final HotIssuesService hotIssuesService; @PostMapping(value = "/addHotIssues") @ApiOperation(value = "新增热门问题") @PreAuthorize("hasAuthority('hotIssues.addHotIssues')") public ResultJson addHotIssues(@RequestBody AddHotIssuesDto addHotIssuesDto){ hotIssuesService.addHotIssues(addHotIssuesDto); return ResultJson.success(); } @PostMapping(value = "/updateHotIssues") @ApiOperation(value = "修改热门问题") @PreAuthorize("hasAuthority('hotIssues.updateHotIssues')") public ResultJson updateHotIssues(@RequestBody UpdateHotIssuesDto updateHotIssuesDto){ hotIssuesService.updateHotIssues(updateHotIssuesDto); return ResultJson.success(); } @GetMapping(value = "/deleteHotIssues") @ApiOperation(value = "删除热门问题") @PreAuthorize("hasAuthority('hotIssues.deleteHotIssues')") public ResultJson deleteHotIssues(@RequestParam Long id){ hotIssuesService.deleteHotIssues(id); return ResultJson.success(); } @PostMapping(value = "/getHotIssues") @ApiOperation(value = "查看热门问题") public ResultJson> getHotIssues(@RequestBody QueryHotIssuesPageDto queryHotIssuesPageDto){ IPage hotIssues = hotIssuesService.getHotIssues(queryHotIssuesPageDto); return ResultJson.ok(hotIssues); } }