src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
@@ -28,7 +28,10 @@ import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity; import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity; import com.xcong.excoin.modules.platform.dao.PlatformCnyUsdtExchangeDao; import com.xcong.excoin.utils.CoinTypeConvert; import com.xcong.excoin.utils.MessageSourceUtils; import com.xcong.excoin.utils.RedisUtils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; @@ -48,6 +51,8 @@ MemberAccountMoneyChangeDao memberAccountMoneyChangeDao; @Resource MemberWalletAgentDao memberWalletAgentDao; @Resource RedisUtils redisUtils; @Override @@ -85,7 +90,8 @@ walletCoin.setTotalBalance(totalCny.setScale(4, BigDecimal.ROUND_DOWN)); } else { BigDecimal amount = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance()); BigDecimal closePrice = new BigDecimal("10.0000"); // 获取最新价 BigDecimal closePrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(walletCoin.getWalletCode()+"/USDT"))); BigDecimal totalUsdt = BigDecimal.ZERO; //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(walletCoin.getWalletCode()+"/USDT"); totalUsdt = totalUsdt.add(amount.multiply(closePrice)); @@ -150,7 +156,7 @@ memberWalletCoinInfoVo.setTotalBalance(total.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); } else { BigDecimal closePrice = new BigDecimal("10.0000"); BigDecimal closePrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(symbol+"/USDT"))); //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(wallet.getCode()+"/USDT"); memberWalletCoinInfoVo.setTotalBalance(total.multiply(closePrice).multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); } src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java
@@ -43,7 +43,9 @@ import com.xcong.excoin.modules.platform.dao.PlatformCnyUsdtExchangeDao; import com.xcong.excoin.modules.platform.dao.TradeSettingDao; import com.xcong.excoin.modules.platform.entity.PlatformTradeSettingEntity; import com.xcong.excoin.utils.CoinTypeConvert; import com.xcong.excoin.utils.MessageSourceUtils; import com.xcong.excoin.utils.RedisUtils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; @@ -67,6 +69,8 @@ OrderCoinDealDao orderCoinDealDao; @Resource MemberAccountFlowEntityDao memberAccountFlowEntityDao; @Resource RedisUtils redisUtils; @Override public String generateSimpleSerialno(String userId) { @@ -110,12 +114,8 @@ //获取USDT的币币账户信息 MemberWalletCoinEntity walletCoinUsdt = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, MemberWalletCoinEnum.WALLETCOINCODE.getValue()); /** * todo */ //获取某个币种的收盘价 //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(symbol+"/USDT"); BigDecimal closePrice = new BigDecimal("100.0000"); BigDecimal closePrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(symbol+"/USDT"))); List<MemberSelectSymbolsEntity> memSymbols = memberSelectSymbolsDao.selectSymbolByMemIdAndSymbol(memberId, symbol); @@ -158,13 +158,9 @@ //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); /** * todo */ //查询当前价 //BigDecimal nowPrice = new BigDecimal(redisUtil.getString(CoinTypeConConvert.convertToKey(symbol+"/USDT"))); BigDecimal nowPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(symbol+"/USDT"))); BigDecimal nowPrice = new BigDecimal("10.0000"); // 获取交易管理的杠杠倍率,手续费率等信息,由平台进行设置 symbol = symbol.toUpperCase(); MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, symbol); src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
@@ -6,7 +6,10 @@ 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.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.xcong.excoin.common.response.Result; @@ -14,6 +17,7 @@ import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; @@ -217,8 +221,6 @@ /** * 添加提币地址 * * @param token * @return */ @ApiOperation(value = "添加提币地址", notes = "添加提币地址") @@ -226,6 +228,16 @@ public Result memberAddCoinAddress(@RequestBody @Valid MemberAddCoinAddressDto memberAddCoinAddressDto) { return memberService.memberAddCoinAddress(memberAddCoinAddressDto); } /** * 删除提币地址 * @return */ @ApiOperation(value="删除提币地址", notes="删除提币地址") @PostMapping(value="/memberDelCoinAddress") public Result memberDelCoinAddress(@RequestBody @Valid MemberDelCoinAddressDto memberDelCoinAddressDto) { return memberService.memberDelCoinAddress(memberDelCoinAddressDto); } /** * 获取发送验证码途径 @@ -237,7 +249,8 @@ public Result memberSendCodeWay() { return memberService.memberSendCodeWay(); } src/main/java/com/xcong/excoin/modules/member/dao/MemberCoinAddressDao.java
@@ -5,5 +5,9 @@ public interface MemberCoinAddressDao extends BaseMapper<MemberCoinAddressEntity> { MemberCoinAddressEntity selectAddressByMemberIdAndSymbol(Long memberId, String symbol); MemberCoinAddressEntity selectBlockAddress(Long memberId, String string); } src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberDelCoinAddressDto.java
New file @@ -0,0 +1,17 @@ package com.xcong.excoin.modules.member.parameter.dto; import javax.validation.constraints.NotNull; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "MemberDelCoinAddressDto", description = "删除提币地址参数接收类") public class MemberDelCoinAddressDto { @NotNull(message = "提币地址ID不能为空") @ApiModelProperty(value = "提币地址ID", example = "1") private Long id; } src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberCoinAddressListVo.java
@@ -7,7 +7,7 @@ import lombok.Data; @Data @ApiModel(value = "MemberCoinAddressCountListVo", description = "币种地址信息") @ApiModel(value = "MemberCoinAddressListVo", description = "币种地址信息") public class MemberCoinAddressListVo { @ApiModelProperty(value = "币种地址") src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberPaymethodDetailVo.java
@@ -7,6 +7,12 @@ @Data @ApiModel(value = "MemberPaymethodDetailVo", description = "收款方式信息") public class MemberPaymethodDetailVo { /** * Id */ @ApiModelProperty(value = "Id") private Long id; /** * 用户Id */ src/main/java/com/xcong/excoin/modules/member/service/MemberService.java
@@ -10,6 +10,7 @@ import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; @@ -57,5 +58,7 @@ public Result memberSendCodeWay(); public Result memberDelCoinAddress(@Valid MemberDelCoinAddressDto memberDelCoinAddressDto); } src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -19,6 +19,7 @@ import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto; import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto; import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto; import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto; import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto; @@ -40,7 +41,6 @@ import com.xcong.excoin.utils.ShareCodeUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -498,6 +498,7 @@ if(CollUtil.isNotEmpty(selectByMap)) { for(MemberPaymentMethodEntity memberPaymentMethodEntity : selectByMap) { MemberPaymethodDetailVo memberPaymethodDetailVo = new MemberPaymethodDetailVo(); memberPaymethodDetailVo.setId(memberPaymentMethodEntity.getId()); memberPaymethodDetailVo.setAccount(memberPaymentMethodEntity.getAccount()); memberPaymethodDetailVo.setBank(memberPaymentMethodEntity.getBank()); memberPaymethodDetailVo.setMemberId(memberId); @@ -642,4 +643,17 @@ return Result.ok(memberSendCodeWayVo); } @Override @Transactional public Result memberDelCoinAddress(@Valid MemberDelCoinAddressDto memberDelCoinAddressDto) { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); MemberEntity member = memberDao.selectById(memberId); if(ObjectUtil.isNotEmpty(member)) { Long id = memberDelCoinAddressDto.getId(); memberCoinAddressDao.deleteById(id); } return Result.ok("success"); } } src/main/resources/mapper/member/MemberCoinAddressDao.xml
@@ -2,4 +2,22 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.xcong.excoin.modules.member.dao.MemberCoinAddressDao"> <select id="selectAddressByMemberIdAndSymbol" resultType="com.xcong.excoin.modules.member.entity.MemberCoinAddressEntity"> select * from member_coin_address where member_id=#{memberId} and symbol = #{symbol} </select> <select id="selectBlockAddress" resultType="com.xcong.excoin.modules.member.entity.MemberCoinAddressEntity"> select * from member_coin_address <where> is_biyict = 1 <if test="memberId != null and memberId != ''"> and member_id = #{memberId} </if> <if test="symbol != null and symbol != ''"> and symbol = #{symbol} </if> </where> </select> </mapper>