package cc.mrbird.febs.dapp.controller; import cc.mrbird.febs.common.annotation.EncryptEnable; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.dapp.dto.ConnectDto; import cc.mrbird.febs.dapp.dto.NewsListDto; import cc.mrbird.febs.dapp.entity.DappMemberEntity; import cc.mrbird.febs.dapp.entity.MallNewsInfo; import cc.mrbird.febs.dapp.service.DappMemberService; import cc.mrbird.febs.dapp.service.DappSystemService; import cc.mrbird.febs.dapp.service.IApiMallNewsService; import cc.mrbird.febs.dapp.vo.NewsListVo; 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.web.bind.annotation.*; /** * @author * @date 2022-03-17 **/ @Slf4j @EncryptEnable @RequiredArgsConstructor @CrossOrigin("*") @RestController @Api(value = "dapp公共接口", tags = "dapp公共接口") @RequestMapping(value = "/dapi/common") public class ApiCommonController { private final DappMemberService dappMemberService; private final DappSystemService dappSystemService; private final IApiMallNewsService newsService; @ApiOperation(value = "地址是否存在", notes = "地址是否存在") @GetMapping(value = "/exist/{address}") public FebsResponse exist(@PathVariable("address") String address) { DappMemberEntity member = dappMemberService.findByAddress(address, "BSC"); int result = member == null ? 2 : 1; return new FebsResponse().success().data(result); } @ApiOperation(value = "链接接口", notes = "链接接口") @PostMapping(value = "/connect") public FebsResponse connect(@RequestBody ConnectDto connectDto) { dappMemberService.connect(connectDto); return new FebsResponse().success(); } @ApiOperation(value = "新闻分类", notes = "新闻分类") @GetMapping(value = "/findNewsInfoCategory") public FebsResponse findNewsInfoCategory() { return new FebsResponse().success().data(newsService.findNewsCategoryList()); } @ApiOperation(value ="获取新闻列表-分页", notes = "获取新闻列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = NewsListVo.class) }) @PostMapping(value = "/findNewsInPage") public FebsResponse findNewsInPage(@RequestBody NewsListDto newsListDto) { return new FebsResponse().success().data(newsService.findNewsInPage(newsListDto)); } @ApiOperation(value = "新闻列表", notes = "新闻列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = NewsListVo.class) }) @GetMapping(value = "/findNews") public FebsResponse findNews() { return new FebsResponse().success().data(newsService.findTopNews()); } @ApiOperation(value = "新闻详情", notes = "新闻详情") @GetMapping(value = "/newsDetails/{id}") public FebsResponse newsDetails(@PathVariable("id") Long id) { MallNewsInfo news = newsService.getById(id); if (news == null) { return new FebsResponse().fail().message("新闻不存在"); } return new FebsResponse().success().data(news); } }