package com.xcong.excoin.modules.yunding.controller; import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.yunding.dto.*; import com.xcong.excoin.modules.yunding.service.YunDingService; import com.xcong.excoin.modules.yunding.vo.*; import io.swagger.annotations.*; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @RestController @RequestMapping(value = "api/yd") @Slf4j @Api(value = "YunDingController", tags = "云顶算力") public class YunDingController { @Resource YunDingService yunDingService; /** * 全网数据 */ @ApiOperation(value = "全网数据") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = YdBasicSettingVo.class) }) @GetMapping(value = "/findAllInfo") public Result findAllInfo() { return yunDingService.findAllInfo(); } /** * 算力产品列表 */ @ApiOperation(value = "产品列表") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = YdProductVo.class) }) @PostMapping(value = "/getProductList") public Result getProductList(@RequestBody @Validated YdProductListDto ydProductListDto) { return yunDingService.getProductList(ydProductListDto); } /** * 获取算力产品详情 */ @ApiOperation(value = "获取产品详情") @GetMapping(value = "/findProductInfo") public Result findProductInfoById(@ApiParam(name = "id", value = "产品ID", required = true, example = "1") @RequestParam(value = "id") Long id) { return yunDingService.findProductInfoById(id); } /** * 获取XCH当前价 */ @ApiOperation(value = "获取XCH当前价") @GetMapping(value = "/getXchPrice") public Result getXchPrice() { return yunDingService.getXchPrice(); } /** * 获取USDT余额 */ @ApiOperation(value = "获取USDT余额") @GetMapping(value = "/getBalance") public Result getBalance() { return yunDingService.getBalance(); } /** * 支付 */ @ApiOperation(value = "购买,点击支付") @PostMapping(value = "/payProduct") public Result payProduct(@RequestBody @Validated PayProductDto payProductDto) { return yunDingService.payProduct(payProductDto); } /** * 订单列表 */ @ApiOperation(value = "订单列表") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = YdOrderVo.class) }) @PostMapping(value = "/getOrderList") public Result getOrderList(@RequestBody @Validated YdOrderListDto ydOrderListDto) { return yunDingService.getOrderList(ydOrderListDto); } /** * 订单详情 */ @ApiOperation(value = "订单详情") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = YdOrderVo.class) }) @GetMapping(value = "/getOrderInfo") public Result getOrderInfo(@ApiParam(name = "id", value = "订单ID", required = true, example = "1") @RequestParam(value = "id") Long id) { return yunDingService.getOrderInfo(id); } /** *订单头部数据 */ @ApiOperation(value = "订单头部数据") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = OrderAllInfoVo.class) }) @GetMapping(value = "/findOrderAllInfo") public Result findOrderAllInfo() { return yunDingService.findOrderAllInfo(); } /** * 转换成USDT */ @ApiOperation(value = "获取转换成USDT信息") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = ChangeVo.class) }) @GetMapping(value = "/changeUsdt") public Result changeUsdt() { return yunDingService.changeUsdt(); } /** * 确认转换成USDT */ @ApiOperation(value = "确认转换成USDT") @PostMapping(value = "/insureChangeUsdt") public Result insureChangeUsdt(@RequestBody @Validated InsureChangeUsdtDto insureChangeUsdtdto){ return yunDingService.insureChangeUsdt(insureChangeUsdtdto); } /** * 获取代理级别列表 */ @ApiOperation(value = "获取代理级别列表") @ApiResponses({ @ApiResponse(code = 0, message = "success", response = AgentVo.class) }) @PostMapping(value = "/getAgentList") public Result getAgentList(@RequestBody @Validated YdAgentDto ydAgentDto) { return yunDingService.getAgentList(ydAgentDto); } /** * 购买代理级别 */ @ApiOperation(value = "购买代理级别") @PostMapping(value = "/bugAgentLevel") public Result bugAgentLevel(@RequestBody @Validated BugAgentLeveldto bugAgentLeveldto){ return yunDingService.bugAgentLevel(bugAgentLeveldto); } }