From 4f9e3043fa36daa7ce18b358e38bd5d5c42bc0c1 Mon Sep 17 00:00:00 2001 From: gao <gaoleox@163> Date: Tue, 26 May 2020 11:32:06 +0800 Subject: [PATCH] Merge branch 'master' of https://chonggaoxiao:xcg523511090712@gitee.com/chonggaoxiao/new_excoin.git --- src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletAgentInfoVo.java | 25 ++ src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinInfoVo.java | 44 --- src/main/java/com/xcong/excoin/configurations/properties/CustomRabbitProperties.java | 19 + src/main/java/com/xcong/excoin/modules/test/controller/TestUserController.java | 11 src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java | 134 +++++++----- src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java | 63 +++++ src/test/java/com/xcong/excoin/RabbitMqTest.java | 24 ++ src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeInfoVo.java | 39 +++ src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java | 2 src/main/java/com/xcong/excoin/modules/coin/parameter/dto/InOrderCoinDto.java | 2 src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeVo.java | 17 + pom.xml | 11 src/main/java/com/xcong/excoin/common/LoginUserUtils.java | 18 + src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletContractInfoVo.java | 43 +++ src/main/java/com/xcong/excoin/rabbit/producer/TestProducer.java | 42 +++ src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java | 25 + src/main/java/com/xcong/excoin/rabbit/consumer/TestConsumer.java | 21 + src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java | 5 src/main/java/com/xcong/excoin/modules/coin/parameter/dto/SubmitSalesWalletCoinOrderDto.java | 2 src/main/java/com/xcong/excoin/configurations/interceptor/MybatisInterceptor.java | 7 src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java | 21 - src/main/resources/application.yml | 15 + src/test/java/com/xcong/excoin/RSATest.java | 7 src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceFromAgentDto.java | 26 ++ 24 files changed, 484 insertions(+), 139 deletions(-) diff --git a/pom.xml b/pom.xml index 20f2f96..eaea49e 100644 --- a/pom.xml +++ b/pom.xml @@ -27,6 +27,8 @@ <mapstruct.version>1.3.1.Final</mapstruct.version> <hutool.version>5.3.1</hutool.version> <fastjson.version>1.2.61</fastjson.version> + <netty.version>4.1.33.Final</netty.version> + <dom4j.version>1.6.1</dom4j.version> </properties> <dependencies> @@ -43,6 +45,11 @@ <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> + </dependency> + + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <!-- <dependency>--> @@ -166,14 +173,14 @@ <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> - <version>1.6.1</version> + <version>${dom4j.version}</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> - <version>4.1.33.Final</version> + <version>${netty.version}</version> </dependency> </dependencies> diff --git a/src/main/java/com/xcong/excoin/common/LoginUserUtils.java b/src/main/java/com/xcong/excoin/common/LoginUserUtils.java index dbdd9d2..64c0aa2 100644 --- a/src/main/java/com/xcong/excoin/common/LoginUserUtils.java +++ b/src/main/java/com/xcong/excoin/common/LoginUserUtils.java @@ -1,5 +1,6 @@ package com.xcong.excoin.common; +import com.xcong.excoin.common.exception.GlobalException; import com.xcong.excoin.modules.member.entity.MemberEntity; import lombok.extern.slf4j.Slf4j; import org.springframework.security.core.context.SecurityContextHolder; @@ -17,6 +18,23 @@ public static MemberEntity getAppLoginUser() { if (SecurityContextHolder.getContext().getAuthentication().getPrincipal().equals(ANON)) { + throw new GlobalException("无法获取登陆信息"); + } else { + return (MemberEntity) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + } + } + + public static String getAppLoginUserToken() { + return (String) SecurityContextHolder.getContext().getAuthentication().getCredentials(); + } + + /** + * mybatis 拦截器专用 + * + * @return MemberEntity + */ + public static MemberEntity getUser() { + if (SecurityContextHolder.getContext().getAuthentication().getPrincipal().equals(ANON)) { return null; } else { return (MemberEntity) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); diff --git a/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java b/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java new file mode 100644 index 0000000..eec7531 --- /dev/null +++ b/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java @@ -0,0 +1,63 @@ +package com.xcong.excoin.configurations; + +import com.xcong.excoin.configurations.properties.CustomRabbitProperties; +import org.springframework.amqp.core.Binding; +import org.springframework.amqp.core.BindingBuilder; +import org.springframework.amqp.core.DirectExchange; +import org.springframework.amqp.core.Queue; +import org.springframework.amqp.rabbit.connection.ConnectionFactory; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.beans.factory.config.ConfigurableBeanFactory; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Scope; + +import javax.annotation.Resource; + +/** + * @author wzy + * @date 2020-05-25 + **/ +@Configuration +public class RabbitMqConfig { + + public static final String EXCHANGE_ONE = "excoin-exchange-one"; + + public static final String QUEUE_TEST = "test-queue"; + + public static final String ROUTING_KEY_TEST = "test-routingKey"; + + @Resource + private ConnectionFactory connectionFactory; + +// @Bean +// public ConnectionFactory connectionFactory() { +// CachingConnectionFactory connectionFactory = new CachingConnectionFactory(customRabbitProperties.getHost(), customRabbitProperties.getPort()); +// connectionFactory.setUsername(customRabbitProperties.getUsername()); +// connectionFactory.setPassword(customRabbitProperties.getPassword()); +// connectionFactory.setPublisherConfirmType(CachingConnectionFactory.ConfirmType.CORRELATED); +// return connectionFactory; +// } + + @Bean + @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE) + public RabbitTemplate rabbitTemplate() { + return new RabbitTemplate(connectionFactory); + } + + @Bean + public DirectExchange defaultExchange() { + return new DirectExchange(EXCHANGE_ONE); + } + + @Bean + public Queue testQueue() { + return new Queue(QUEUE_TEST, true); + } + + @Bean + public Binding binding() { + return BindingBuilder.bind(testQueue()).to(defaultExchange()).with(ROUTING_KEY_TEST); + } + +} diff --git a/src/main/java/com/xcong/excoin/configurations/interceptor/MybatisInterceptor.java b/src/main/java/com/xcong/excoin/configurations/interceptor/MybatisInterceptor.java index f7b0c87..5e69b7a 100644 --- a/src/main/java/com/xcong/excoin/configurations/interceptor/MybatisInterceptor.java +++ b/src/main/java/com/xcong/excoin/configurations/interceptor/MybatisInterceptor.java @@ -27,10 +27,7 @@ @Override public Object intercept(Invocation invocation) throws Throwable { MappedStatement mappedStatement = (MappedStatement) invocation.getArgs()[0]; - String sqlId = mappedStatement.getId(); - log.info("----sqlId----" + sqlId); SqlCommandType sqlCommandType = mappedStatement.getSqlCommandType(); - log.info("-------------->{}", sqlCommandType); Object parameter = invocation.getArgs()[1]; if (parameter == null) { @@ -75,7 +72,7 @@ } public void injectForInsert(Object o) { - MemberEntity member = LoginUserUtils.getAppLoginUser(); + MemberEntity member = LoginUserUtils.getUser(); if (o instanceof BaseEntity) { BaseEntity baseEntity = (BaseEntity) o; if (member != null) { @@ -92,7 +89,7 @@ } public void injectForUpdate(Object o) { - MemberEntity member = LoginUserUtils.getAppLoginUser(); + MemberEntity member = LoginUserUtils.getUser(); if (o instanceof BaseEntity) { BaseEntity baseEntity = (BaseEntity) o; if (member != null) { diff --git a/src/main/java/com/xcong/excoin/configurations/properties/CustomRabbitProperties.java b/src/main/java/com/xcong/excoin/configurations/properties/CustomRabbitProperties.java new file mode 100644 index 0000000..47ddc4c --- /dev/null +++ b/src/main/java/com/xcong/excoin/configurations/properties/CustomRabbitProperties.java @@ -0,0 +1,19 @@ +package com.xcong.excoin.configurations.properties; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +/** + * @author wzy + * @date 2020-05-25 + **/ +@Data +@Configuration +@ConfigurationProperties(prefix = "custom.rabbitmq") +public class CustomRabbitProperties { + private String host; + private int port; + private String username; + private String password; +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java b/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java index b198904..51f7399 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java +++ b/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java @@ -5,18 +5,22 @@ import javax.annotation.Resource; import javax.validation.Valid; +import com.xcong.excoin.modules.coin.parameter.vo.MemberAccountMoneyChangeVo; +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.TransferOfBalanceDto; +import com.xcong.excoin.modules.coin.parameter.dto.TransferOfBalanceFromAgentDto; import com.xcong.excoin.modules.coin.service.CoinService; import io.swagger.annotations.Api; @@ -61,6 +65,7 @@ * @return */ @ApiOperation(value="获取我的合约账户信息", notes="获取我的合约账户信息") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberWalletContractInfoVo.class)}) @GetMapping(value="/getWalletContractById") public Result getWalletContractById() { return coinService.getWalletContractById(); @@ -90,7 +95,8 @@ * 查询代理账户里面的资产余额 * @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(); @@ -101,6 +107,7 @@ * @return */ @ApiOperation(value="获取币币资产交易记录", notes="获取币币资产交易记录") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeVo.class)}) @GetMapping(value="/getWalletCoinRecords") public Result getWalletCoinRecords() { return coinService.getWalletCoinRecords(); @@ -111,9 +118,10 @@ * @return */ @ApiOperation(value="获取合约资产交易记录", notes="获取合约资产交易记录") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeVo.class)}) @GetMapping(value="/getWalletContractRecords") - public Result getWalletContractRecords(@ApiParam(name="symbol",value="币种",required=true)String symbol) { - return coinService.getWalletContractRecords(symbol); + public Result getWalletContractRecords() { + return coinService.getWalletContractRecords(); } /** @@ -121,6 +129,7 @@ * @return */ @ApiOperation(value="获取代理资产交易记录", notes="获取代理资产交易记录") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberAccountMoneyChangeVo.class)}) @GetMapping(value="/getWalletAgentRecords") public Result getWalletAgentRecords() { return coinService.getWalletAgentRecords(); @@ -154,11 +163,11 @@ * 代理账户划转到USDT账户 * @return */ - @ApiOperation(value="代理账户划转到合约或币币USDT账户()", notes="代理账户划转到合约或币币USDT账户") + @ApiOperation(value="代理账户划转到合约或币币USDT账户", notes="代理账户划转到合约或币币USDT账户") @PostMapping(value="/agentTransferToWalletCoin") - public Result agentTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceDto transferOfBalanceDto) { - BigDecimal balance = transferOfBalanceDto.getBalance(); - Integer transfertype = transferOfBalanceDto.getTransfertype(); + public Result agentTransferToWalletCoin(@RequestBody @Valid TransferOfBalanceFromAgentDto transferOfBalanceFromAgentDto) { + BigDecimal balance = transferOfBalanceFromAgentDto.getBalance(); + Integer transfertype = transferOfBalanceFromAgentDto.getTransfertype(); return coinService.agentTransferToWalletCoin(balance,transfertype); } diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/InOrderCoinDto.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/InOrderCoinDto.java index b69daf2..2a54cf0 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/InOrderCoinDto.java +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/InOrderCoinDto.java @@ -9,7 +9,7 @@ import lombok.Data; @Data -@ApiModel(value = "进入交易页面参数接收类", description = "进入交易页面参数接收类") +@ApiModel(value = "InOrderCoinDto", description = "进入交易页面参数接收类") public class InOrderCoinDto { @NotNull(message = "划转金额不能为空") diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/SubmitSalesWalletCoinOrderDto.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/SubmitSalesWalletCoinOrderDto.java index bdff678..2042a66 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/SubmitSalesWalletCoinOrderDto.java +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/SubmitSalesWalletCoinOrderDto.java @@ -7,7 +7,7 @@ import lombok.Data; @Data -@ApiModel(value = "提交买卖订单接收类", description = "提交买卖订单接收类") +@ApiModel(value = "SubmitSalesWalletCoinOrderDto", description = "提交买卖订单接收类") public class SubmitSalesWalletCoinOrderDto { @ApiModelProperty(value = "币种", example = "BTC") diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java index 3bf19e0..e1f9967 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java @@ -9,7 +9,7 @@ import lombok.Data; @Data -@ApiModel(value = "资金划转参数接收类", description = "资金划转参数接收类") +@ApiModel(value = "TransferOfBalanceDto", description = "资金划转参数接收类") public class TransferOfBalanceDto { @NotNull(message = "划转金额不能为空") @@ -20,7 +20,4 @@ @ApiModelProperty(value = "币种", example = "USDT") private String symbol; - @NotNull(message = "账户类型不能为空") - @ApiModelProperty(value = "账户类型", example = "1") - private Integer transfertype; } diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceFromAgentDto.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceFromAgentDto.java new file mode 100644 index 0000000..bd7f8d4 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceFromAgentDto.java @@ -0,0 +1,26 @@ +package com.xcong.excoin.modules.coin.parameter.dto; + +import java.math.BigDecimal; + +import javax.validation.constraints.NotNull; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +@Data +@ApiModel(value = "TransferOfBalanceFromAgentDto", description = "资金划转参数接收类") +public class TransferOfBalanceFromAgentDto { + + @NotNull(message = "划转金额不能为空") + @ApiModelProperty(value = "划转金额", example = "100") + private BigDecimal balance; + + @NotNull(message = "币种不能为空") + @ApiModelProperty(value = "币种", example = "USDT") + private String symbol; + + @NotNull(message = "账户类型不能为空") + @ApiModelProperty(value = "转账类型1:转币币,2:转合约", example = "1") + private Integer transfertype; + +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeInfoVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeInfoVo.java new file mode 100644 index 0000000..67e7b67 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeInfoVo.java @@ -0,0 +1,39 @@ +package com.xcong.excoin.modules.coin.parameter.vo; + +import java.math.BigDecimal; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "资产交易记录详情信息返回", description = "资产交易记录详情信息返回") +public class MemberAccountMoneyChangeInfoVo { + + /** + * 币种 + */ + @ApiModelProperty(value = "币种") + private String symbol; + /** + * 金额 + */ + @ApiModelProperty(value = "金额") + private BigDecimal amount; + /** + * 记录内容 + */ + @ApiModelProperty(value = "记录内容") + private String content; + /** + * 类型【1:币币资产2:合约资产3:代理资产】 + */ + @ApiModelProperty(value = "类型【1:币币资产2:合约资产3:代理资产】") + private int type; + /** + * 状态【0:待审核 1:成功2:失败】 + */ + @ApiModelProperty(value = "状态【0:待审核 1:成功2:失败】") + private int status; + +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeVo.java new file mode 100644 index 0000000..cd7e4ef --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberAccountMoneyChangeVo.java @@ -0,0 +1,17 @@ +package com.xcong.excoin.modules.coin.parameter.vo; + +import java.math.BigDecimal; +import java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "资产交易记录信息返回", description = "资产交易记录信息返回") +public class MemberAccountMoneyChangeVo { + + @ApiModelProperty(value = "资产交易记录详情信息") + private List<MemberAccountMoneyChangeInfoVo> memberAccountMoneyChangeInfoVo; + +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletAgentInfoVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletAgentInfoVo.java new file mode 100644 index 0000000..3101ab6 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletAgentInfoVo.java @@ -0,0 +1,25 @@ +package com.xcong.excoin.modules.coin.parameter.vo; + +import java.math.BigDecimal; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "代理账户信息返回", description = "代理账户信息返回") +public class MemberWalletAgentInfoVo { + + /** + * 总金额 + */ + @ApiModelProperty(value = "总金额") + private BigDecimal totalBalance; + + /** + * 总人民币金额 + */ + @ApiModelProperty(value = "总人民币金额") + private BigDecimal totalRMBBalance; + +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinInfoVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinInfoVo.java index 3c1884b..2098c61 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinInfoVo.java +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinInfoVo.java @@ -3,7 +3,9 @@ import java.math.BigDecimal; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +@Data public class MemberWalletCoinInfoVo { /** @@ -36,46 +38,4 @@ @ApiModelProperty(value = "冻结金额") private BigDecimal frozenBalance; - public String getWalletCode() { - return walletCode; - } - - public void setWalletCode(String walletCode) { - this.walletCode = walletCode; - } - - public Long getMemberId() { - return memberId; - } - - public void setMemberId(Long memberId) { - this.memberId = memberId; - } - - public BigDecimal getAvailableBalance() { - return availableBalance; - } - - public void setAvailableBalance(BigDecimal availableBalance) { - this.availableBalance = availableBalance; - } - - public BigDecimal getTotalBalance() { - return totalBalance; - } - - public void setTotalBalance(BigDecimal totalBalance) { - this.totalBalance = totalBalance; - } - - public BigDecimal getFrozenBalance() { - return frozenBalance; - } - - public void setFrozenBalance(BigDecimal frozenBalance) { - this.frozenBalance = frozenBalance; - } - - - } diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java index 54f5d65..abdd2de 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java @@ -5,10 +5,12 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; /** * @author xy */ +@Data @ApiModel(value = "币币账户信息返回", description = "币币账户信息返回") public class MemberWalletCoinVo { @@ -22,24 +24,5 @@ @ApiModelProperty(value = "币种详情") private List<MemberWalletCoinInfoVo> memberWalletCoinInfoVo; - - public BigDecimal getTotalUsdt() { - return totalUsdt; - } - public void setTotalUsdt(BigDecimal totalUsdt) { - this.totalUsdt = totalUsdt; - } - public BigDecimal getTotalCny() { - return totalCny; - } - public void setTotalCny(BigDecimal totalCny) { - this.totalCny = totalCny; - } - public List<MemberWalletCoinInfoVo> getMemberWalletCoinInfoVo() { - return memberWalletCoinInfoVo; - } - public void setMemberWalletCoinInfoVo(List<MemberWalletCoinInfoVo> memberWalletCoinInfoVo) { - this.memberWalletCoinInfoVo = memberWalletCoinInfoVo; - } } diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletContractInfoVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletContractInfoVo.java new file mode 100644 index 0000000..a184442 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletContractInfoVo.java @@ -0,0 +1,43 @@ +package com.xcong.excoin.modules.coin.parameter.vo; + +import java.math.BigDecimal; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "合约账户信息返回", description = "合约账户信息返回") +public class MemberWalletContractInfoVo { + + /** + * 用户Id + */ + @ApiModelProperty(value = "用户Id") + private Long memberId; + + /** + * 可用余额 + */ + @ApiModelProperty(value = "可用余额") + private BigDecimal availableBalance; + + /** + * 总金额 + */ + @ApiModelProperty(value = "总金额") + private BigDecimal totalBalance; + + /** + * 总人民币金额 + */ + @ApiModelProperty(value = "总人民币金额") + private BigDecimal totalRMBBalance; + + /** + * 冻结金额 + */ + @ApiModelProperty(value = "冻结金额") + private BigDecimal frozenBalance; + +} diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java b/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java index 82945c8..9c612d8 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java +++ b/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java @@ -22,7 +22,7 @@ public Result getWalletCoinRecords(); - public Result getWalletContractRecords(String symbol); + public Result getWalletContractRecords(); public Result getWalletAgentRecords(); diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java b/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java index 7f8ea9e..a5615d3 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java @@ -2,9 +2,7 @@ import java.math.BigDecimal; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import javax.annotation.Resource; import org.springframework.stereotype.Service; @@ -18,8 +16,11 @@ import com.xcong.excoin.modules.coin.dao.platform.CnyUsdtExchangeDao; import com.xcong.excoin.modules.coin.entity.CnyUsdtExchange; import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange; +import com.xcong.excoin.modules.coin.parameter.vo.MemberAccountMoneyChangeInfoVo; +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 com.xcong.excoin.modules.coin.service.CoinService; import com.xcong.excoin.modules.member.dao.MemberWalletAgentDao; import com.xcong.excoin.modules.member.dao.MemberWalletCoinDao; @@ -51,49 +52,51 @@ @Override public Result getWalletCoin() { - try { - BigDecimal totalUsdt = BigDecimal.ZERO; //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne(); BigDecimal cnyUsdt = cnyUsdtExchange.getValue(); + BigDecimal totalUsdts = BigDecimal.ZERO; if(!StrUtil.isEmpty(memberId.toString())) { List<MemberWalletCoinEntity> memberWalletCoinlist = memberWalletCoinDao.selectMemberWalletCoinsByMemberId(memberId); - List<MemberWalletCoinInfoVo> memberWalletCoinInfoVolist = new ArrayList<MemberWalletCoinInfoVo>(); - MemberWalletCoinInfoVo memberWalletCoinInfoVo = new MemberWalletCoinInfoVo(); - if(ObjectUtil.isNotEmpty(memberWalletCoinlist)) { + + if(CollUtil.isNotEmpty(memberWalletCoinlist)) { for(MemberWalletCoinEntity memberWalletCoinEntity : memberWalletCoinlist) { - memberWalletCoinInfoVo.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance()); - memberWalletCoinInfoVo.setFrozenBalance(memberWalletCoinEntity.getFrozenBalance()); + MemberWalletCoinInfoVo memberWalletCoinInfoVo = new MemberWalletCoinInfoVo(); + memberWalletCoinInfoVo.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinInfoVo.setFrozenBalance(memberWalletCoinEntity.getFrozenBalance().setScale(4, BigDecimal.ROUND_DOWN)); memberWalletCoinInfoVo.setMemberId(memberWalletCoinEntity.getMemberId()); - memberWalletCoinInfoVo.setTotalBalance(memberWalletCoinEntity.getTotalBalance()); + memberWalletCoinInfoVo.setTotalBalance(memberWalletCoinEntity.getTotalBalance().setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinInfoVo.setWalletCode(memberWalletCoinEntity.getWalletCode()); memberWalletCoinInfoVolist.add(memberWalletCoinInfoVo); } } - - if(CollUtil.isNotEmpty(memberWalletCoinlist)) { - for(MemberWalletCoinEntity walletCoin : memberWalletCoinlist) { + if(CollUtil.isNotEmpty(memberWalletCoinInfoVolist)) { + for(MemberWalletCoinInfoVo walletCoin : memberWalletCoinInfoVolist) { if(MemberWalletCoinEnum.WALLETCOINCODE.getValue().equals(walletCoin.getWalletCode())) { + BigDecimal totalUsdt = BigDecimal.ZERO; totalUsdt = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance()); + totalUsdts = totalUsdts.add(totalUsdt); BigDecimal totalCny = totalUsdt.multiply(cnyUsdt); walletCoin.setTotalBalance(totalCny.setScale(4, BigDecimal.ROUND_DOWN)); }else { BigDecimal amount = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance()); BigDecimal closePrice = new BigDecimal("10.0000"); + BigDecimal totalUsdt = BigDecimal.ZERO; //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(walletCoin.getWalletCode()+"/USDT"); totalUsdt = totalUsdt.add(amount.multiply(closePrice)); - walletCoin.setTotalBalance(totalUsdt.multiply(closePrice).multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + totalUsdts = totalUsdts.add(totalUsdt); + walletCoin.setTotalBalance(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); } } } MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo(); - memberWalletCoinVo.setTotalUsdt(totalUsdt.setScale(4, BigDecimal.ROUND_DOWN)); - memberWalletCoinVo.setTotalCny(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalCny(totalUsdts.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); memberWalletCoinVo.setMemberWalletCoinInfoVo(memberWalletCoinInfoVolist); return Result.ok(memberWalletCoinVo); }else { @@ -120,20 +123,15 @@ memberWalletCoinlist.add(coin); MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo(); - memberWalletCoinVo.setTotalUsdt(totalUsdt.setScale(4, BigDecimal.ROUND_DOWN)); - memberWalletCoinVo.setTotalCny(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalCny(totalUsdts.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); memberWalletCoinVo.setMemberWalletCoinInfoVo(memberWalletCoinlist);; return Result.ok(memberWalletCoinVo); } - } catch (Exception e) { - e.printStackTrace(); - return Result.fail(MessageSourceUtils.getString("member_service_0003")); - } } @Override public Result getWalletCoinBySymbol(String symbol) { - try { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId,symbol); @@ -157,10 +155,6 @@ } } return Result.ok(memberWalletCoinInfoVo); - } catch (Exception e) { - e.printStackTrace(); - return Result.fail(MessageSourceUtils.getString("member_service_0003")); - } } @Override @@ -185,9 +179,6 @@ BigDecimal profitAndLoss = new BigDecimal("50.000"); //获取总付款 BigDecimal totalPayment = new BigDecimal("50.000"); - - walletContract.setFrozenBalance(totalPayment.setScale(4, BigDecimal.ROUND_DOWN)); - BigDecimal lastTotalBalance = new BigDecimal("0"); BigDecimal totalBalance = walletContract.getTotalBalance(); lastTotalBalance = totalBalance.add(profitAndLoss); @@ -195,14 +186,13 @@ lastTotalBalance = new BigDecimal("0"); } - walletContract.setAvailableBalance(walletContract.getAvailableBalance()); - walletContract.setTotalBalance(lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN)); + MemberWalletContractInfoVo memberWalletContractInfoVo = new MemberWalletContractInfoVo(); + memberWalletContractInfoVo.setFrozenBalance(totalPayment.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletContractInfoVo.setAvailableBalance(walletContract.getAvailableBalance()); + memberWalletContractInfoVo.setTotalBalance(lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletContractInfoVo.setTotalRMBBalance(lastTotalBalance.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); - Map<String,Object> map = new HashMap<String, Object>(); - map.put(MemberWalletCoinEnum.WALLETCOINUSDT.getValue(), lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN)); - map.put(MemberWalletCoinEnum.WALLETCONTRACT.getValue(), walletContract); - map.put(MemberWalletCoinEnum.WALLETCOINCNY.getValue(), lastTotalBalance.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); - return Result.ok(map); + return Result.ok(memberWalletContractInfoVo); } @Override @@ -331,8 +321,8 @@ Long memberId = LoginUserUtils.getAppLoginUser().getId(); String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue(); MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode); - - return Result.ok(walletContract); + BigDecimal availableBalance = walletContract.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN); + return Result.ok(availableBalance); } @Override @@ -342,26 +332,50 @@ MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, symbol); BigDecimal availableBalance = walletCoin.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN); - walletCoin.setAvailableBalance(availableBalance); - return Result.ok(walletCoin); + return Result.ok(availableBalance); } @Override public Result getWalletCoinRecords() { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - List<MemberAccountMoneyChange> coinRecordList = memberAccountMoneyChangeDao.selectWalletCoinRecordsByMemIdTypeSymbol(memberId); - return Result.ok(coinRecordList); + List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>(); + if(CollUtil.isNotEmpty(coinRecordList)) { + for(MemberAccountMoneyChange memberAccountMoneyChange : coinRecordList) { + MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo(); + memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount()); + memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent()); + memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus()); + memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol()); + memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + return Result.ok(arrayList); } @Override - public Result getWalletContractRecords(String symbol) { + public Result getWalletContractRecords() { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - + String symbol = MemberWalletCoinEnum.WALLETCOINCODE.getValue(); List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletContractRecordsByMemIdTypeSymbol(symbol,memberId); - return Result.ok(contractRecordList); + + List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>(); + if(ObjectUtil.isNotNull(contractRecordList)) { + for(MemberAccountMoneyChange memberAccountMoneyChange : contractRecordList) { + MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo(); + memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount()); + memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent()); + memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus()); + memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol()); + memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + + return Result.ok(arrayList); } @Override @@ -371,7 +385,20 @@ List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletAgentRecordByMemIdTypeSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue(),memberId); - return Result.ok(contractRecordList); + + List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>(); + if(ObjectUtil.isNotNull(contractRecordList)) { + for(MemberAccountMoneyChange memberAccountMoneyChange : contractRecordList) { + MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo(); + memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount()); + memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent()); + memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus()); + memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol()); + memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + return Result.ok(arrayList); } @Override @@ -472,15 +499,12 @@ CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne(); BigDecimal cnyUsdt = cnyUsdtExchange.getValue(); - BigDecimal multiply = availableBalance.multiply(cnyUsdt); - walletAgent.setAvailableBalance(availableBalance); - Map<String,Object> map = new HashMap<String, Object>(); - map.put(MemberWalletCoinEnum.WALLETCOINUSDT.getValue(), availableBalance.setScale(4, BigDecimal.ROUND_DOWN)); - map.put(MemberWalletCoinEnum.WALLETAGENT.getValue(), walletAgent); - map.put(MemberWalletCoinEnum.WALLETCOINCNY.getValue(), multiply.setScale(4, BigDecimal.ROUND_DOWN)); - return Result.ok(map); + MemberWalletAgentInfoVo memberWalletAgentInfoVo = new MemberWalletAgentInfoVo(); + memberWalletAgentInfoVo.setTotalBalance(availableBalance.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletAgentInfoVo.setTotalRMBBalance(multiply.setScale(4, BigDecimal.ROUND_DOWN)); + return Result.ok(memberWalletAgentInfoVo); } } diff --git a/src/main/java/com/xcong/excoin/modules/test/controller/TestUserController.java b/src/main/java/com/xcong/excoin/modules/test/controller/TestUserController.java index 0cc1b7a..0be8a3b 100644 --- a/src/main/java/com/xcong/excoin/modules/test/controller/TestUserController.java +++ b/src/main/java/com/xcong/excoin/modules/test/controller/TestUserController.java @@ -85,9 +85,18 @@ @ApiOperation(value = "根据Id查询用户信息", notes = "根据Id查询用户信息") @GetMapping(value = "/findById/{id}") - public Result findById(@PathVariable(value = "id") Long id) { + public Result findById(@ApiParam(name = "id", value = "用户ID", required = true, example = "1") @PathVariable(value = "id") Long id) { TestUserEntity testUserEntity = testUserService.getById(id); TestUserVo testUserVo = TestUserEntityMapper.INSTANCE.entityToVo(testUserEntity); return Result.ok("success", testUserVo); } + + @ApiOperation(value = "根据Id查询用户信息", notes = "根据Id查询用户信息") + @GetMapping(value = "/findByIdAndName/{id}/{name}") + public Result findByIdAndName(@ApiParam(name = "id", value="用户ID", required = true, example = "1") @PathVariable(value = "id") Long id, + @ApiParam(name = "name", value="用户姓名", required = true, example = "wzy") @PathVariable(value = "name") String name) { + log.info("---->{}", id); + log.info("----<{}", name); + return Result.ok("success"); + } } diff --git a/src/main/java/com/xcong/excoin/rabbit/consumer/TestConsumer.java b/src/main/java/com/xcong/excoin/rabbit/consumer/TestConsumer.java new file mode 100644 index 0000000..aea3c07 --- /dev/null +++ b/src/main/java/com/xcong/excoin/rabbit/consumer/TestConsumer.java @@ -0,0 +1,21 @@ +package com.xcong.excoin.rabbit.consumer; + +import com.xcong.excoin.configurations.RabbitMqConfig; +import lombok.extern.slf4j.Slf4j; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.stereotype.Component; + +/** + * @author wzy + * @date 2020-05-25 + **/ +@Slf4j +@Component +public class TestConsumer { + + + @RabbitListener(queues = RabbitMqConfig.QUEUE_TEST) + public void doSomething(String content) { + log.info("#---->{}#", content); + } +} diff --git a/src/main/java/com/xcong/excoin/rabbit/producer/TestProducer.java b/src/main/java/com/xcong/excoin/rabbit/producer/TestProducer.java new file mode 100644 index 0000000..00ffd52 --- /dev/null +++ b/src/main/java/com/xcong/excoin/rabbit/producer/TestProducer.java @@ -0,0 +1,42 @@ +package com.xcong.excoin.rabbit.producer; + +import cn.hutool.core.util.IdUtil; +import com.xcong.excoin.configurations.RabbitMqConfig; +import lombok.extern.slf4j.Slf4j; +import org.springframework.amqp.rabbit.connection.CorrelationData; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @author wzy + * @date 2020-05-25 + **/ +@Slf4j +@Component +public class TestProducer implements RabbitTemplate.ConfirmCallback { + + private RabbitTemplate rabbitTemplate; + + @Autowired + public TestProducer(RabbitTemplate rabbitTemplate) { + this.rabbitTemplate = rabbitTemplate; + rabbitTemplate.setConfirmCallback(this); + } + + public void sendTestMsg(String content) { + CorrelationData correlationData = new CorrelationData(IdUtil.simpleUUID()); + rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE_ONE, RabbitMqConfig.ROUTING_KEY_TEST, content, correlationData); + } + + + @Override + public void confirm(CorrelationData correlationData, boolean ack, String cause) { + log.info("#----->{}#", correlationData); + if (ack) { + log.info("success"); + } else { + log.info("--->{}", cause); + } + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 820acc1..8a849c0 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -69,6 +69,21 @@ min-idle: 8 ## 连接超时时间(毫秒) timeout: 30000 + rabbitmq: + host: 120.27.238.55 + port: 5672 + username: ct_rabbit + password: 123456 + publisher-confirm-type: correlated + + +#custom: +# rabbitmq: +# host: 120.27.238.55 +# port: 5672 +# username: ct_rabbit +# password: 123456 + mybatis-plus: mapper-locations: classpath:mapper/**/*.xml diff --git a/src/test/java/com/xcong/excoin/RSATest.java b/src/test/java/com/xcong/excoin/RSATest.java index 4d4d3b6..45c6488 100644 --- a/src/test/java/com/xcong/excoin/RSATest.java +++ b/src/test/java/com/xcong/excoin/RSATest.java @@ -13,6 +13,7 @@ import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; +import java.math.BigDecimal; import java.security.KeyPair; /** @@ -101,4 +102,10 @@ String md5str = SecureUtil.md5("123456"); log.info("{}", md5str); } + + @Test + public void bigdecimalTest() { + BigDecimal bigDecimal = new BigDecimal("123.12345678").setScale(4, BigDecimal.ROUND_DOWN); + log.info("--->{}", bigDecimal); + } } diff --git a/src/test/java/com/xcong/excoin/RabbitMqTest.java b/src/test/java/com/xcong/excoin/RabbitMqTest.java new file mode 100644 index 0000000..82b668b --- /dev/null +++ b/src/test/java/com/xcong/excoin/RabbitMqTest.java @@ -0,0 +1,24 @@ +package com.xcong.excoin; + +import com.xcong.excoin.rabbit.producer.TestProducer; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import javax.annotation.Resource; + +/** + * @author wzy + * @date 2020-05-25 + **/ +@SpringBootTest +public class RabbitMqTest { + + @Autowired + private TestProducer testProducer; + + @Test + public void sendTestMsg() { + testProducer.sendTestMsg("this is test msg"); + } +} -- Gitblit v1.9.1