Helius
2020-07-07 d344e2b6d98c9942bdb9febf5d36886f6acadb0c
src/main/java/com/xcong/excoin/modules/symbols/controller/SymbolsController.java
@@ -1,11 +1,14 @@
package com.xcong.excoin.modules.symbols.controller;
import com.huobi.client.model.Candlestick;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.symbols.parameter.dto.KlineDetailDto;
import com.xcong.excoin.modules.symbols.parameter.vo.HomeSymbolsVo;
import com.xcong.excoin.modules.symbols.parameter.vo.KlineDataVo;
import com.xcong.excoin.modules.symbols.service.SymbolsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.xcong.excoin.utils.RedisUtils;
import com.xcong.excoin.utils.TypeJudgeUtils;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
@@ -25,22 +28,44 @@
    @Resource
    private SymbolsService symbolsService;
    @Resource
    private RedisUtils redisUtils;
    @ApiOperation(value = "轮询获取app首页币种交易信息", notes = "轮询获取app首页币种交易信息")
    @ApiResponses({
            @ApiResponse(code = 0, message = "success", response = HomeSymbolsVo.class)
    })
    @GetMapping(value = "/homeSymbols")
    public Result homeSymbols(@ApiParam(name = "type", value = "类型1-币币2-合约3-自选", required = true, example = "1") Integer type) {
    public Result homeSymbols(@ApiParam(name = "type", value = "类型1-币币2-合约3-自选", required = true, example = "1") @RequestParam(value = "type") Integer type) {
        return symbolsService.homeSymbols(type);
    }
    @ApiOperation(value = "根据币种查询币种当前各种数据", notes = "根据币种查询币种当前各种数据")
    @ApiResponses({
            @ApiResponse(code = 0, message = "success", response = HomeSymbolsVo.class)
    })
    @GetMapping(value = "/findSymbolData")
    public Result findSymbolData(@ApiParam(name = "symbol", value="币种", required = true, example = "BTC/USDT") String symbol) {
    public Result findSymbolData(@ApiParam(name = "symbol", value = "币种", required = true, example = "BTC/USDT") @RequestParam(value = "symbol") String symbol) {
        return symbolsService.findSymbolData(symbol);
    }
    @ApiOperation(value = "查询历史K线数据", notes = "查询历史K线数据")
    @ApiResponses({
            @ApiResponse(code = 0, message = "success", response = KlineDataVo.class)
    })
    @PostMapping(value = "/klineDetail")
    public Result klineDetail(@RequestBody @Valid KlineDetailDto klineDetailDto) {
        return null;
        if (!TypeJudgeUtils.klinePeriod(klineDetailDto.getPeriod())) {
            return Result.fail("非法参数");
        }
        return symbolsService.findKlineDetails(klineDetailDto);
    }
    @ApiOperation(value = "查询当日最高最低价")
    @GetMapping(value = "/getDayHighAndLow")
    public Result getDayHighAndLow(@ApiParam(name = "symbol", value = "币种", required = true, example = "BTC/USDT") @RequestParam(value = "symbol") String symbol) {
        Candlestick object = (Candlestick) redisUtils.get(symbol);
        return Result.ok(object);
    }
}