Helius
2021-03-04 36d59c12794849c1b6fbbcbd41f97ea2fe71b09c
src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java
@@ -5,22 +5,31 @@
import javax.annotation.Resource;
import javax.validation.Valid;
import com.xcong.excoin.modules.coin.parameter.vo.AllWalletCoinVo;
import com.xcong.excoin.modules.coin.parameter.vo.CoinInListVo;
import com.xcong.excoin.modules.coin.parameter.vo.ContractSymbolListVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberAccountMoneyChangeInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberAgentIntoInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletAgentInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletCoinInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletCoinVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletContractInfoVo;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.GetMapping;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.parameter.dto.CoinInListDto;
import com.xcong.excoin.modules.coin.parameter.dto.ContractInTransferDto;
import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.coin.parameter.dto.TransferOfBalanceDto;
import com.xcong.excoin.modules.coin.parameter.dto.TransferOfBalanceFromAgentDto;
import com.xcong.excoin.modules.coin.service.CoinService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@@ -32,6 +41,16 @@
   @Resource
   private CoinService coinService;
   
   /**
    *  获取我的总资产
    * @return
    */
   @ApiOperation(value = "获取我的总资产", notes = "获取我的总资产")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = AllWalletCoinVo.class)})
   @GetMapping(value = "/getAllWalletCoin")
   public Result getAllWalletCoin() {
      return coinService.getAllWalletCoin();
   }
   /**
    *  获取我的币币资产信息
    * @return
@@ -48,17 +67,21 @@
    * @return
    */
   @ApiOperation(value="获取币币账户某个币种信息", notes="获取币币账户某个币种信息")
   @GetMapping(value = "/getWalletCoinById")
   public Result getWalletCoinById(@RequestParam("id") Long id) {
      return coinService.getWalletCoinById(id);
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberWalletCoinInfoVo.class)})
   @ApiImplicitParams({
      @ApiImplicitParam(name = "symbol", value = "币种", required = true, dataType = "String", paramType="query")
   })
   @GetMapping(value = "/getWalletCoinBySymbol")
   public Result getWalletCoinBySymbol(String symbol) {
      return coinService.getWalletCoinBySymbol(symbol);
   }
   
   /**
    * --todo
    *  获取我的合约资产信息
    * @return
    */
   @ApiOperation(value="获取我的合约账户信息", notes="获取我的合约账户信息")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberWalletContractInfoVo.class)})
   @GetMapping(value="/getWalletContractById")
   public Result getWalletContractById() {
      return coinService.getWalletContractById();
@@ -69,9 +92,12 @@
    * @return
    */
   @ApiOperation(value="查询合约账户里面的可用资产余额", notes="查询合约账户里面的可用资产余额")
   @ApiImplicitParams({
      @ApiImplicitParam(name = "symbol", value = "币种", required = true, dataType = "String", paramType="query")
   })
   @GetMapping(value="/findWalletContractBySymbol")
   public Result findWalletContractBySymbol() {
      return coinService.findWalletContractBySymbol();
   public Result findWalletContractBySymbol(String symbol) {
      return coinService.findWalletContractBySymbol(symbol);
   }
   
   /**
@@ -79,8 +105,11 @@
    * @return
    */
   @ApiOperation(value="查询币币账户里面的可用资产余额", notes="查询币币账户里面的可用资产余额")
   @ApiImplicitParams({
      @ApiImplicitParam(name = "symbol", value = "币种", required = true, dataType = "String", paramType="query")
   })
   @GetMapping(value="/findWalletCoinBySymbol")
   public Result findWalletCoinBysymbol(@ApiParam(name="symbol",value="币种",required=true)String symbol) {
   public Result findWalletCoinBysymbol(String symbol) {
      return coinService.findWalletCoinBySymbol(symbol);
   }
   
@@ -88,10 +117,22 @@
    * 查询代理账户里面的资产余额
    * @return
    */
   @ApiOperation(value="查询代理账户里面的可用资产余额", notes="查询代理账户里面的可用资产余额")
   @ApiOperation(value="查询代理账户信息", notes="查询代理账户信息")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberWalletAgentInfoVo.class)})
   @GetMapping(value="/findWalletAgentBySymbol")
   public Result findWalletAgentBySymbol() {
      return coinService.findWalletAgentBySymbol();
   }
   /**
    *  记录
    * @return
    */
   @ApiOperation(value="记录", notes="记录")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = CoinInListVo.class)})
   @PostMapping(value="/coinInList")
   public Result coinInList(@RequestBody @Valid CoinInListDto coinInListDto) {
      return coinService.coinInList(coinInListDto);
   }
   
   /**
@@ -99,9 +140,10 @@
    * @return
    */
   @ApiOperation(value="获取币币资产交易记录", notes="获取币币资产交易记录")
   @GetMapping(value="/getWalletCoinRecords")
   public Result  getWalletCoinRecords() {
      return coinService.getWalletCoinRecords();
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeInfoVo.class)})
   @PostMapping(value="/getWalletCoinRecords")
   public Result  getWalletCoinRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
      return coinService.getWalletCoinRecords(recordsPageDto);
   }
   
   /**
@@ -109,9 +151,10 @@
    * @return
    */
   @ApiOperation(value="获取合约资产交易记录", notes="获取合约资产交易记录")
   @GetMapping(value="/getWalletContractRecords")
   public Result getWalletContractRecords(@ApiParam(name="symbol",value="币种",required=true)String symbol) {
      return coinService.getWalletContractRecords(symbol);
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeInfoVo.class)})
   @PostMapping(value="/getWalletContractRecords")
   public Result getWalletContractRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
      return coinService.getWalletContractRecords(recordsPageDto);
   }
   
   /**
@@ -119,9 +162,21 @@
    * @return
    */
   @ApiOperation(value="获取代理资产交易记录", notes="获取代理资产交易记录")
   @GetMapping(value="/getWalletAgentRecords")
   public Result  getWalletAgentRecords() {
      return coinService.getWalletAgentRecords();
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeInfoVo.class)})
   @PostMapping(value="/getWalletAgentRecords")
   public Result  getWalletAgentRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
      return coinService.getWalletAgentRecords(recordsPageDto);
   }
   /**
    *  获取代理资产佣金入账
    * @return
    */
   @ApiOperation(value="获取代理资产佣金入账", notes="获取代理资产佣金入账")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAgentIntoInfoVo.class)})
   @PostMapping(value="/getWalletAgentIntoRecords")
   public Result  getWalletAgentIntoRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
      return coinService.getWalletAgentIntoRecords(recordsPageDto);
   }
   
   /**
@@ -129,11 +184,23 @@
    * @return
    */
   @ApiOperation(value="币币账户USDT划转到合约账户", notes="币币账户USDT划转到合约账户")
   @PostMapping(value="/coinWalletTransferToContracts")
   public Result coinWalletTransferToContracts(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
      BigDecimal balance = transferOfBalanceDto.getBalance();
      String symbol = transferOfBalanceDto.getSymbol();
      return coinService.coinWalletTransferToContract(balance,symbol);
   }
   /**
    * 币币账户USDT划转到合约账户(合约多账户)
    * @return
    */
   @ApiOperation(value="币币账户USDT划转到合约账户(合约多账户)", notes="币币账户USDT划转到合约账户(合约多账户)")
   @PostMapping(value="/coinWalletTransferToContract")
   public Result coinWalletTransferToContract(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
      BigDecimal balance = transferOfBalanceDto.getBalance();
      String symbol = transferOfBalanceDto.getSymbol();
      return coinService.coinWalletTransferToContract(balance,symbol);
      return coinService.coinWalletTransferToContracts(balance,symbol);
   }
   
   /**
@@ -141,24 +208,73 @@
    * @return
    */
   @ApiOperation(value="合约账户划转到币币USDT账户", notes="合约账户划转到币币USDT账户")
   @PostMapping(value="/contractTransferToWalletCoin")
   public Result contractTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
   @PostMapping(value="/contractTransferToWalletCoins")
   public Result contractTransferToWalletCoins(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
      BigDecimal balance = transferOfBalanceDto.getBalance();
      String symbol = transferOfBalanceDto.getSymbol();
      return coinService.contractTransferToWalletCoin(balance,symbol);
   }
   
   /**
    * 合约账户划转到币币USDT账户(合约多账户)
    * @return
    */
   @ApiOperation(value="合约账户划转到币币USDT账户(合约多账户)", notes="合约账户划转到币币USDT账户(合约多账户)")
   @PostMapping(value="/contractTransferToWalletCoin")
   public Result contractTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
      BigDecimal balance = transferOfBalanceDto.getBalance();
      String symbol = transferOfBalanceDto.getSymbol();
      return coinService.contractTransferToWalletCoins(balance,symbol);
   }
   /**
    * 合约账户内部划转(合约多账户)
    * @return
    */
   @ApiOperation(value="合约账户内部划转(合约多账户)", notes="合约账户内部划转(合约多账户)")
   @PostMapping(value="/contractInTransfer")
   public Result contractInTransfer(@RequestBody @Valid ContractInTransferDto contractInTransferDto) {
      BigDecimal balance = contractInTransferDto.getBalance();
      String symbolIn = contractInTransferDto.getSymbolIn();
      String symbolOut = contractInTransferDto.getSymbolOut();
      return coinService.contractInTransfer(balance,symbolIn,symbolOut);
   }
   /**
    * 代理账户划转到USDT账户
    * @return
    */
   @ApiOperation(value="代理账户划转到合约或币币USDT账户()", notes="代理账户划转到合约或币币USDT账户")
   @PostMapping(value="/agentTransferToWalletCoin")
   public Result  agentTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) {
      BigDecimal balance = transferOfBalanceDto.getBalance();
      Integer transfertype = transferOfBalanceDto.getTransfertype();
   @ApiOperation(value="代理账户划转到合约或币币USDT账户", notes="代理账户划转到合约或币币USDT账户")
   @PostMapping(value="/agentTransferToWalletCoins")
   public Result  agentTransferToWalletCoins(@RequestBody @Valid TransferOfBalanceFromAgentDto transferOfBalanceFromAgentDto) {
      BigDecimal balance = transferOfBalanceFromAgentDto.getBalance();
      Integer transfertype = transferOfBalanceFromAgentDto.getTransfertype();
      return coinService.agentTransferToWalletCoin(balance,transfertype);
   }
   
   /**
    * 代理账户划转到USDT账户
    * @return
    */
   @ApiOperation(value="代理账户划转到合约或币币USDT账户(合约多账户)", notes="代理账户划转到合约或币币USDT账户(合约多账户)")
   @PostMapping(value="/agentTransferToWalletCoin")
   public Result  agentTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceFromAgentDto transferOfBalanceFromAgentDto) {
      BigDecimal balance = transferOfBalanceFromAgentDto.getBalance();
      Integer transfertype = transferOfBalanceFromAgentDto.getTransfertype();
      String symbol = transferOfBalanceFromAgentDto.getSymbol();
      return coinService.agentTransferToWalletCoins(balance,transfertype,symbol);
   }
   /**
    * 合约账户列表
    * @return
    */
   @ApiOperation(value="合约账户列表", notes="合约账户列表")
   @ApiResponses({@ApiResponse( code = 200, message = "success", response = ContractSymbolListVo.class)})
   @GetMapping(value="/getContractSymbolList")
   public Result  getContractSymbolList() {
      return coinService.getContractSymbolList();
   }
}