gao
2020-05-22 4c0935d38fc3b8a04cbee29072ce28b8301f73f4
Merge branch 'master' of https://chonggaoxiao:xcg523511090712@gitee.com/chonggaoxiao/new_excoin.git
12 files added
12 files modified
1397 ■■■■■ changed files
src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java 44 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/common/response/Result.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java 163 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/dao/MemberAccountMoneyChangeDao.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/dao/platform/CnyUsdtExchangeDao.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/entity/CnyUsdtExchange.java 27 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/entity/MemberAccountMoneyChange.java 54 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java 26 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java 44 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java 35 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java 434 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletAgentDao.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletCoinDao.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletContractDao.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletAgentEntity.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletCoinEntity.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletContractEntity.java 5 ●●●●● patch | view | raw | blame | history
src/main/resources/i18n/messages_en_US.properties 222 ●●●●● patch | view | raw | blame | history
src/main/resources/i18n/messages_zh_CN.properties 225 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml 19 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberWalletAgentDao.xml 4 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberWalletCoinDao.xml 8 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberWalletContractDao.xml 9 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/platform/CnyUsdtExchangeDao.xml 13 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/common/enumerates/MemberWalletCoinEnum.java
New file
@@ -0,0 +1,44 @@
package com.xcong.excoin.common.enumerates;
public enum MemberWalletCoinEnum {
    WALLETCOINUSDT("walletCoinUsdt", "usdt"),
    WALLETCOINLIST("walletCoinList", "walletList"),
    WALLETCOINCNY("walletCoinCny", "cny"),
    WALLETAGENTCNY("walletCoinCny", "wallet"),
    CONTENTTOCONTRACT("0001","转出至合约账户"),
    CONTENTFROMWALLETCOIN("0002","由币币账户转入"),
    CONTENTTOWALLETCOIN("0003","转出至币币账户"),
    CONTENTFROMCONTRACT("0004","由合约账户转入"),
    CONTENTFROMAGENT("0005","由代理账户转入"),
    WALLETCOINCODE("USDT", "USDT")
    ;
    private String name;
    private String value;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
    private MemberWalletCoinEnum(String name, String value) {
        this.name = name;
        this.value = value;
    }
}
src/main/java/com/xcong/excoin/common/response/Result.java
@@ -18,6 +18,8 @@
    private static final int SUCCESS = 0;
    private static final String SUCCESS_MSG = "success";
    private static final int FAIL = -1;
    private static final int LOGIN_FAIL = -2;
@@ -45,6 +47,13 @@
        result.data = data;
        return result;
    }
    public static Result ok(Object data) {
        Result result = new Result();
        result.code = SUCCESS;
        result.msg = SUCCESS_MSG;
        result.data = data;
        return result;
    }
    public static Result fail(String msg) {
        Result result = new Result();
src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java
New file
@@ -0,0 +1,163 @@
package com.xcong.excoin.modules.coin.controller;
import java.math.BigDecimal;
import javax.annotation.Resource;
import javax.validation.Valid;
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;
import com.xcong.excoin.modules.coin.parameter.dto.TransferOfBalanceDto;
import com.xcong.excoin.modules.coin.service.CoinService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Api(value = "会员资产接口", tags = "会员资产接口")
@RestController
@RequestMapping(value = "/api/coin")
public class CoinController {
    @Resource
    private CoinService coinService;
    /**
     *  获取我的币币资产信息
     * @return
     */
    @ApiOperation(value = "获取我的币币账户信息", notes = "获取我的币币账户信息")
    @GetMapping(value = "/getWalletCoin")
    public Result getWalletCoin() {
        return coinService.getWalletCoin();
    }
    /**
     *  获取币币账户某个币种信息
     * @return
     */
    @ApiOperation(value="获取币币账户某个币种信息", notes="获取币币账户某个币种信息")
    @GetMapping(value = "/getWalletCoinById")
    public Result getWalletCoinById(@RequestParam("id") Long id) {
        return coinService.getWalletCoinById(id);
    }
    /**
     * --todo
     *  获取我的合约资产信息
     * @return
     */
    @ApiOperation(value="获取我的合约账户信息", notes="获取我的合约账户信息")
    @GetMapping(value="/getWalletContractById")
    public Result getWalletContractById() {
        return coinService.getWalletContractById();
    }
    /**
     * 查询合约账户里面的资产余额
     * @return
     */
    @ApiOperation(value="查询合约账户里面的资产余额", notes="查询合约账户里面的资产余额")
    @GetMapping(value="/findWalletContractBySymbol")
    public Result findWalletContractBySymbol(String symbol) {
        return coinService.findWalletContractBySymbol(symbol);
    }
    /**
     * 查询币币账户里面的可用资产余额
     * @return
     */
    @ApiOperation(value="查询币币账户里面的可用资产余额", notes="查询币币账户里面的可用资产余额")
    @GetMapping(value="/findWalletCoinBySymbol")
    public Result findWalletCoinBysymbol(String symbol) {
        return coinService.findWalletCoinBySymbol(symbol);
    }
    /**
     * 查询代理账户里面的资产余额
     * @return
     */
    @ApiOperation(value="查询代理账户里面的资产余额", notes="查询代理账户里面的资产余额")
    @GetMapping(value="/findWalletAgentBySymbol")
    public Result findWalletAgentBySymbol() {
        return coinService.findWalletAgentBySymbol();
    }
    /**
     *  获取币币资产交易记录
     * @return
     */
    @ApiOperation(value="获取币币资产交易记录", notes="获取币币资产交易记录")
    @GetMapping(value="/getWalletCoinRecords")
    public Result  getWalletCoinRecords() {
        return coinService.getWalletCoinRecords();
    }
    /**
     *  获取合约资产交易记录
     * @return
     */
    @ApiOperation(value="获取合约资产交易记录", notes="获取合约资产交易记录")
    @GetMapping(value="/getWalletContractRecords")
    public Result getWalletContractRecords(String symbol) {
        return coinService.getWalletContractRecords(symbol);
    }
    /**
     *  获取代理资产交易记录
     * @return
     */
    @ApiOperation(value="获取代理资产交易记录", notes="获取代理资产交易记录")
    @GetMapping(value="/getWalletAgentRecords")
    public Result  getWalletAgentRecords() {
        return coinService.getWalletAgentRecords();
    }
    /**
     * 币币账户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);
    }
    /**
     * 合约账户划转到币币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.contractTransferToWalletCoin(balance,symbol);
    }
    /**
     * 代理账户划转到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();
        return coinService.agentTransferToWalletCoin(balance,transfertype);
    }
}
src/main/java/com/xcong/excoin/modules/coin/dao/MemberAccountMoneyChangeDao.java
New file
@@ -0,0 +1,18 @@
package com.xcong.excoin.modules.coin.dao;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
public interface MemberAccountMoneyChangeDao extends BaseMapper<MemberAccountMoneyChange>{
    List<MemberAccountMoneyChange> selectWalletCoinRecordsByMemIdTypeSymbol(Long memberId);
    List<MemberAccountMoneyChange> selectWalletContractRecordsByMemIdTypeSymbol(@Param("symbol")String symbol, @Param("memberId")Long memberId);
    List<MemberAccountMoneyChange> selectWalletAgentRecordByMemIdTypeSymbol(@Param("symbol")String symbol, @Param("memberId")Long memberId);
}
src/main/java/com/xcong/excoin/modules/coin/dao/platform/CnyUsdtExchangeDao.java
New file
@@ -0,0 +1,12 @@
package com.xcong.excoin.modules.coin.dao.platform;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.coin.entity.CnyUsdtExchange;
public interface CnyUsdtExchangeDao extends BaseMapper<CnyUsdtExchange> {
    CnyUsdtExchange getCNYAndUSDTOne();
    void updateUsdt(double value);
}
src/main/java/com/xcong/excoin/modules/coin/entity/CnyUsdtExchange.java
New file
@@ -0,0 +1,27 @@
package com.xcong.excoin.modules.coin.entity;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xcong.excoin.common.system.base.BaseEntity;
import lombok.Data;
/**
 * 行情人民币与usdt兑现价格表
 */
@Data
@TableName("platform_cny_usdt_exchange")
public class CnyUsdtExchange extends BaseEntity{
    private static final long serialVersionUID = 1L;
    /**
     * CNY/USDT
     */
    private BigDecimal value;
    private BigDecimal diff;
}
src/main/java/com/xcong/excoin/modules/coin/entity/MemberAccountMoneyChange.java
New file
@@ -0,0 +1,54 @@
package com.xcong.excoin.modules.coin.entity;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xcong.excoin.common.system.base.BaseEntity;
import lombok.Data;
@Data
@TableName("member_account_money_change")
public class MemberAccountMoneyChange extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     *  类型【1:币币资产2:合约资产3:代理资产】
     */
    public static final Integer TYPE_WALLET_COIN = 1;
    public static final Integer TYPE_WALLET_CONTRACT = 2;
    public static final Integer TYPE_WALLET_AGENT = 3;
    /**
     *  状态【0:待审核 1:成功2:失败】
     */
    public static final Integer STATUS_WAIT_INTEGER = 0;
    public static final Integer STATUS_SUCCESS_INTEGER = 1;
    public static final Integer STATUS_FAIL_INTEGER = 2;
    private Long memberId;
    /**
     * 币种
     */
    private String symbol;
    /**
     * 金额
     */
    private BigDecimal amount;
    /**
     * 记录内容
     */
    private String content;
    /**
     * 类型【1:币币资产2:合约资产3:代理资产】
     */
    private int type;
    /**
     * 状态【0:待审核 1:成功2:失败】
     */
    private int status;
}
src/main/java/com/xcong/excoin/modules/coin/parameter/dto/TransferOfBalanceDto.java
New file
@@ -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 = "资金划转参数接收类", description = "资金划转参数接收类")
public class TransferOfBalanceDto {
    @NotNull(message = "划转金额不能为空")
    @ApiModelProperty(value = "划转金额", example = "100")
    private BigDecimal balance;
    @NotNull(message = "币种不能为空")
    @ApiModelProperty(value = "币种", example = "USDT")
    private String symbol;
    @NotNull(message = "账户类型不能为空")
    @ApiModelProperty(value = "账户类型", example = "1")
    private Integer transfertype;
}
src/main/java/com/xcong/excoin/modules/coin/parameter/vo/MemberWalletCoinVo.java
New file
@@ -0,0 +1,44 @@
package com.xcong.excoin.modules.coin.parameter.vo;
import java.math.BigDecimal;
import java.util.List;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ApiModel(value = "币币账户信息返回", description = "币币账户信息返回")
public class MemberWalletCoinVo extends MemberWalletCoinEntity{
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "账户总USDT")
    private BigDecimal totalUsdt;
    @ApiModelProperty(value = "账户总RMB")
    private BigDecimal totalCny;
    @ApiModelProperty(value = "币种详情")
    private List<MemberWalletCoinEntity> walletCoinEntities;
    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<MemberWalletCoinEntity> getWalletCoinEntities() {
        return walletCoinEntities;
    }
    public void setWalletCoinEntities(List<MemberWalletCoinEntity> walletCoinEntities) {
        this.walletCoinEntities = walletCoinEntities;
    }
}
src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java
New file
@@ -0,0 +1,35 @@
package com.xcong.excoin.modules.coin.service;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
public interface CoinService extends IService<MemberWalletCoinEntity>{
    public Result getWalletCoin();
    public Result getWalletCoinById(Long id);
    public Result getWalletContractById();
    public Result coinWalletTransferToContract(BigDecimal balance, String symbol);
    public Result contractTransferToWalletCoin(BigDecimal balance, String symbol);
    public Result findWalletContractBySymbol(String symbol);
    public Result findWalletCoinBySymbol(String symbol);
    public Result getWalletCoinRecords();
    public Result getWalletContractRecords(String symbol);
    public Result getWalletAgentRecords();
    public Result agentTransferToWalletCoin(BigDecimal balance, Integer transfertype);
    public Result findWalletAgentBySymbol();
}
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
New file
@@ -0,0 +1,434 @@
package com.xcong.excoin.modules.coin.service.impl;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.excoin.common.LoginUserUtils;
import com.xcong.excoin.common.enumerates.CoinTypeEnum;
import com.xcong.excoin.common.enumerates.MemberWalletCoinEnum;
import com.xcong.excoin.common.exception.GlobalException;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
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.MemberWalletCoinVo;
import com.xcong.excoin.modules.coin.service.CoinService;
import com.xcong.excoin.modules.member.dao.MemberWalletAgentDao;
import com.xcong.excoin.modules.member.dao.MemberWalletCoinDao;
import com.xcong.excoin.modules.member.dao.MemberWalletContractDao;
import com.xcong.excoin.modules.member.entity.MemberWalletAgentEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity;
import com.xcong.excoin.utils.MessageSourceUtils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
@Service
public class CoinServiceImpl extends ServiceImpl<MemberWalletCoinDao, MemberWalletCoinEntity> implements CoinService{
    //@Resource
    //SymbolsService symbolsService;
    @Resource
    CnyUsdtExchangeDao cnyUsdtExchangeDao;
    @Resource
    MemberWalletCoinDao memberWalletCoinDao;
    @Resource
    MemberWalletContractDao memberWalletContractDao;
    @Resource
    MemberAccountMoneyChangeDao memberAccountMoneyChangeDao;
    @Resource
    MemberWalletAgentDao memberWalletAgentDao;
    @Override
    public Result getWalletCoin() {
        try {
            BigDecimal totalUsdt = BigDecimal.ZERO;
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne();
            BigDecimal cnyUsdt = cnyUsdtExchange.getValue();
            if(!StrUtil.isEmpty(memberId.toString())) {
                List<MemberWalletCoinEntity> MemberWalletCoinlist = memberWalletCoinDao.selectMemberWalletCoinsByMemberId(memberId);
                if(CollUtil.isNotEmpty(MemberWalletCoinlist)) {
                    for(MemberWalletCoinEntity walletCoin : MemberWalletCoinlist) {
                        if(MemberWalletCoinEnum.WALLETCOINCODE.getValue().equals(walletCoin.getWalletCode())) {
                            totalUsdt = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
                            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");
                            //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));
                        }
                    }
                }
                MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo();
                memberWalletCoinVo.setTotalUsdt(totalUsdt.setScale(4, BigDecimal.ROUND_DOWN));
                memberWalletCoinVo.setTotalCny(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
                memberWalletCoinVo.setWalletCoinEntities(MemberWalletCoinlist);
                return Result.ok(memberWalletCoinVo);
            }else {
                List<MemberWalletCoinEntity> MemberWalletCoinlist = new ArrayList<MemberWalletCoinEntity>();
                MemberWalletCoinEntity coin = new MemberWalletCoinEntity();
                coin.setAvailableBalance(BigDecimal.ZERO);
                coin.setTotalBalance(BigDecimal.ZERO);
                coin.setFrozenBalance(BigDecimal.ZERO);
                coin.setWalletCode(CoinTypeEnum.BTC.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.ETH.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.LTC.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.BCH.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.USDT.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.EOS.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.XRP.toString());
                MemberWalletCoinlist.add(coin);
                coin.setWalletCode(CoinTypeEnum.ETC.toString());
                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.setWalletCoinEntities(MemberWalletCoinlist);
                return Result.ok(memberWalletCoinVo);
            }
        } catch (Exception e) {
            e.printStackTrace();
            return Result.fail(MessageSourceUtils.getString("member_service_0003"));
        }
    }
    @Override
    public Result getWalletCoinById(Long id) {
        try {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectById(id);
            if(!StrUtil.isEmpty(memberId.toString())) {
                CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne();
                BigDecimal cnyUsdt = cnyUsdtExchange.getValue();
                BigDecimal total = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
                if(MemberWalletCoinEnum.WALLETCOINCODE.getValue().equals(walletCoin.getWalletCode())) {
                    walletCoin.setTotalBalance(total.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
                }else {
                    BigDecimal closePrice = new BigDecimal("10.0000");
                    //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(wallet.getCode()+"/USDT");
                    walletCoin.setTotalBalance(total.multiply(closePrice).multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
                }
            }
            return Result.ok(walletCoin);
        } catch (Exception e) {
            e.printStackTrace();
            return Result.fail(MessageSourceUtils.getString("member_service_0003"));
        }
    }
    @Override
    public Result getWalletContractById() {
            return Result.fail(MessageSourceUtils.getString("member_service_0002"));
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result coinWalletTransferToContract(BigDecimal balance, String symbol) {
            if(balance.compareTo(BigDecimal.ZERO) <= 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0004"));
            }
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            if(!StrUtil.isEmpty(memberId.toString())) {
                String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
                MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId,walletCode);
                BigDecimal available = walletCoin.getAvailableBalance();
                // 扣币
                BigDecimal total = available.subtract(balance);
                if(total.compareTo(BigDecimal.ZERO)<0) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0005"));
                }
                BigDecimal subtract = walletCoin.getTotalBalance().subtract(balance);
                if(subtract.compareTo(BigDecimal.ZERO)<0) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0005"));
                }
                walletCoin.setAvailableBalance(total.setScale(4, BigDecimal.ROUND_DOWN));
                walletCoin.setTotalBalance(subtract.setScale(4, BigDecimal.ROUND_DOWN));
                int updateWalletCoinById = memberWalletCoinDao.updateById(walletCoin);
                if(updateWalletCoinById < 1) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0096"));
                }
                // 加币
                // 查询合约账户
                MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode);
                BigDecimal availableBalance = walletContract.getAvailableBalance();
                BigDecimal add = availableBalance.add(balance);
                walletContract.setAvailableBalance(add.setScale(4, BigDecimal.ROUND_DOWN));
                BigDecimal totalBalance = walletContract.getTotalBalance();
                BigDecimal totalBigDecimal = totalBalance.add(balance);
                walletContract.setTotalBalance(totalBigDecimal.setScale(4, BigDecimal.ROUND_DOWN));
                int updateWalletContractById = memberWalletContractDao.updateById(walletContract);
                if(updateWalletContractById < 1) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0096"));
                }
                //添加币币资金划转历史记录
                MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOCONTRACT.getValue());
                memberAccountRecord.setMemberId(memberId);
                memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
                memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
                memberAccountRecord.setSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue());
                memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
                memberAccountMoneyChangeDao.insert(memberAccountRecord);
                //添加合约资金划转历史记录
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMWALLETCOIN.getValue());
                memberAccountRecord.setSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue());
                memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
                memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
                memberAccountMoneyChangeDao.insert(memberAccountRecord);
            }
        return Result.ok(MessageSourceUtils.getString("member_service_0006"));
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result contractTransferToWalletCoin(BigDecimal balance, String symbol) {
            if(balance.compareTo(BigDecimal.ZERO)<=0){
                return Result.fail(MessageSourceUtils.getString("member_service_0004"));
            }
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
            MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode);
            BigDecimal availableBalance = walletContract.getAvailableBalance();
            // 扣币
            BigDecimal availableSubtract = availableBalance.subtract(balance);
            if(availableSubtract.compareTo(BigDecimal.ZERO) < 0 ) {
                return Result.fail(MessageSourceUtils.getString("member_service_0007"));
            }
            BigDecimal totalBalance = walletContract.getTotalBalance();
            BigDecimal totalSubtract = totalBalance.subtract(balance);
            walletContract.setAvailableBalance(availableSubtract.setScale(4, BigDecimal.ROUND_DOWN));
            walletContract.setTotalBalance(totalSubtract.setScale(4, BigDecimal.ROUND_DOWN));
            int updateWalletCoinById = memberWalletContractDao.updateById(walletContract);
            if(updateWalletCoinById < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            // 加币
            MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, walletCode);
            BigDecimal walletCoinAvailableBalance = walletCoin.getAvailableBalance();
            BigDecimal CoinAvailableBalance = walletCoinAvailableBalance.add(balance);
            BigDecimal walletCoinTotalBalance = walletCoin.getTotalBalance();
            BigDecimal CoinTotalBalance = walletCoinTotalBalance.add(balance);
            walletCoin.setAvailableBalance(CoinAvailableBalance.setScale(4, BigDecimal.ROUND_DOWN));
            walletCoin.setTotalBalance(CoinTotalBalance.setScale(4, BigDecimal.ROUND_DOWN));
            int updateById = memberWalletCoinDao.updateById(walletCoin);
            if(updateById < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //添加资金划转历史记录
            MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
            memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOWALLETCOIN.getValue());
            memberAccountRecord.setMemberId(memberId);
            memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
            memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
            memberAccountRecord.setSymbol(walletCode);
            memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
            memberAccountMoneyChangeDao.insert(memberAccountRecord);
            //添加资金划转历史记录
            memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMCONTRACT.getValue());
            memberAccountRecord.setSymbol(walletCode);
            memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
            memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
            memberAccountMoneyChangeDao.insert(memberAccountRecord);
        return Result.ok(MessageSourceUtils.getString("member_service_0006"));
    }
    @Override
    public Result findWalletContractBySymbol(String symbol) {
        /**
         * ---todo
         */
        return null;
    }
    @Override
    public Result findWalletCoinBySymbol(String symbol) {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, symbol);
        BigDecimal availableBalance = walletCoin.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN);
        walletCoin.setAvailableBalance(availableBalance);
        return Result.ok(walletCoin);
    }
    @Override
    public Result getWalletCoinRecords() {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        List<MemberAccountMoneyChange> coinRecordList = memberAccountMoneyChangeDao.selectWalletCoinRecordsByMemIdTypeSymbol(memberId);
        return Result.ok(coinRecordList);
    }
    @Override
    public Result getWalletContractRecords(String symbol) {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletContractRecordsByMemIdTypeSymbol(symbol,memberId);
        return Result.ok(contractRecordList);
    }
    @Override
    public Result getWalletAgentRecords() {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        List<MemberAccountMoneyChange> contractRecordList =
                memberAccountMoneyChangeDao.selectWalletAgentRecordByMemIdTypeSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue(),memberId);
        return Result.ok(contractRecordList);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result agentTransferToWalletCoin(BigDecimal balance, Integer transfertype) {
            if(balance.compareTo(BigDecimal.ZERO) <= 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0004"));
            }
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            // 扣币
            String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
            MemberWalletAgentEntity walletAgent = memberWalletAgentDao.selectWalletAgentBymIdAndCode(memberId, walletCode);
            BigDecimal availableBalance = walletAgent.getAvailableBalance();
            BigDecimal totalBalance = walletAgent.getTotalBalance();
            BigDecimal available = availableBalance.subtract(balance);
            if(available.compareTo(BigDecimal.ZERO)<0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0008"));
            }
            BigDecimal total = totalBalance.subtract(balance);
            if(total.compareTo(BigDecimal.ZERO)<0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0008"));
            }
            walletAgent.setAvailableBalance(available.setScale(4, BigDecimal.ROUND_DOWN));
            walletAgent.setTotalBalance(total.setScale(4, BigDecimal.ROUND_DOWN));
            int i = memberWalletAgentDao.updateById(walletAgent);
            if(i< 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0095"));
            }
            //添加资金划转历史记录
            MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
            //代理账户转币币
            if(MemberAccountMoneyChange.TYPE_WALLET_COIN.equals(transfertype)) {
                MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, walletCode);
                BigDecimal walletCoinAvailableBalance = walletCoin.getAvailableBalance();
                BigDecimal walletCoinTotalBalance = walletCoin.getTotalBalance();
                walletCoin.setAvailableBalance(walletCoinAvailableBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
                walletCoin.setTotalBalance(walletCoinTotalBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
                int updateById = memberWalletCoinDao.updateById(walletCoin);
                if(updateById< 1) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0095"));
                }
                //添加资金划转历史记录
                memberAccountRecord.setMemberId(memberId);
                memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
                memberAccountRecord.setSymbol(walletCode);
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMAGENT.getValue());
                memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
                memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
                memberAccountMoneyChangeDao.insert(memberAccountRecord);
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOWALLETCOIN.getValue());
            }else if(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT.equals(transfertype)) {
                //代理账户转合约
                MemberWalletContractEntity walletContract =  memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode);
                BigDecimal walletContractAvailableBalance = walletContract.getAvailableBalance();
                BigDecimal walletContractTotalBalance = walletContract.getTotalBalance();
                walletContract.setAvailableBalance(walletContractAvailableBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
                walletContract.setTotalBalance(walletContractTotalBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
                int updateById = memberWalletContractDao.updateById(walletContract);
                if(updateById< 1) {
                    return Result.fail(MessageSourceUtils.getString("member_service_0095"));
                }
                //添加资金划转历史记录
                memberAccountRecord.setMemberId(memberId);
                memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
                memberAccountRecord.setSymbol(walletCode);
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMAGENT.getValue());
                memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
                memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
                memberAccountMoneyChangeDao.insert(memberAccountRecord);
                memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOCONTRACT.getValue());
            }
            memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
            memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_AGENT);
            memberAccountMoneyChangeDao.insert(memberAccountRecord);
        return Result.ok(MessageSourceUtils.getString("member_service_0006"));
    }
    @Override
    public Result findWalletAgentBySymbol() {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
        MemberWalletAgentEntity walletAgent = memberWalletAgentDao.selectWalletAgentBymIdAndCode(memberId, walletCode);
        BigDecimal availableBalance = walletAgent.getAvailableBalance();
        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.WALLETAGENTCNY.getValue(), walletAgent);
        map.put(MemberWalletCoinEnum.WALLETCOINCNY.getValue(),  multiply.setScale(4, BigDecimal.ROUND_DOWN));
        return Result.ok(map);
    }
}
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletAgentDao.java
@@ -1,7 +1,12 @@
package com.xcong.excoin.modules.member.dao;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.member.entity.MemberWalletAgentEntity;
public interface MemberWalletAgentDao extends BaseMapper<MemberWalletAgentEntity> {
    MemberWalletAgentEntity selectWalletAgentBymIdAndCode(@Param("memberId")Long memberId,@Param("walletCode")String walletCode);
}
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletCoinDao.java
@@ -1,5 +1,9 @@
package com.xcong.excoin.modules.member.dao;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
@@ -7,4 +11,9 @@
 * @author wzy
 */
public interface MemberWalletCoinDao extends BaseMapper<MemberWalletCoinEntity> {
    List<MemberWalletCoinEntity> selectMemberWalletCoinsByMemberId(Long memberId);
    MemberWalletCoinEntity selectWalletCoinBymIdAndCode(@Param("memberId")Long memberId,@Param("walletCode")String walletCode);
}
src/main/java/com/xcong/excoin/modules/member/dao/MemberWalletContractDao.java
@@ -1,7 +1,12 @@
package com.xcong.excoin.modules.member.dao;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity;
public interface MemberWalletContractDao extends BaseMapper<MemberWalletContractEntity> {
    MemberWalletContractEntity findWalletContractByMemberIdAndSymbol(@Param("memberId")Long memberId, @Param("symbol")String symbol);
}
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletAgentEntity.java
@@ -18,6 +18,11 @@
public class MemberWalletAgentEntity extends BaseEntity {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    /**
     * 用户Id
     */
    private Long memberId;
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletCoinEntity.java
@@ -14,6 +14,8 @@
@TableName("member_wallet_coin")
public class MemberWalletCoinEntity extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * 用户Id
     */
src/main/java/com/xcong/excoin/modules/member/entity/MemberWalletContractEntity.java
@@ -13,6 +13,11 @@
@Data
@TableName("member_wallet_contract")
public class MemberWalletContractEntity extends BaseEntity {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private Long memberId;
    private BigDecimal availableBalance;
src/main/resources/i18n/messages_en_US.properties
@@ -1,2 +1,222 @@
test=test
111=this is test msg
blockchain_service_0001=Invalid login information
blockchain_service_0002=User does not exist
member_controller_0001=Please conduct real name authentication
member_controller_0002=Please configure the transaction password first
member_controller_0003=Please enter the transaction password
member_controller_0004=Please enter the correct transaction password
member_controller_0005=The system is busy. Please try again later
member_controller_0006=Please pay in time if the purchase is successful
member_controller_0007=Confirm success
member_controller_0008=Login information has expired
member_controller_0009=Please go to the Security Center for real name authentication
member_controller_0010=Please go to the security center to configure the transaction password
member_controller_0011=Please enter the transaction password
member_controller_0012=Please enter the correct transaction password
member_controller_0013=Your current available usdt quota is not enough
member_controller_0014=Please enter the withdrawal amount
member_controller_0015=Your current available usdt quota is not enough
member_controller_0016=Please configure the collection method
member_controller_0017=Insufficient available usdt balance
member_controller_0018=checkout success
member_controller_0019=Login user is invalid
member_controller_0020=Undo successful
member_controller_0021=Confirm success
member_controller_0022=This type of collection is not supported
member_controller_0023=Login user is invalid
member_controller_0024=Undo successful
member_service_0001=Wallet address does not exist
member_service_0002=Invalid login information
member_service_0003=User does not exist
member_service_0004=Transfer amount cannot be less than 0
member_service_0005=Insufficient available balance of currency account
member_service_0006=Transfer succeeded
member_service_0007=The available balance of contract account usdt is insufficient
member_service_0008=Insufficient available balance of agent account usdt
member_service_0009=Mobile number cannot be empty
member_service_0010=Sent successfully
member_service_0011=Fail in send
member_service_0012=The verification code has expired, please request again
member_service_0013=Wrong verification code
member_service_0014=Phone number binding succeeded
member_service_0015=Submit failed
member_service_0016=Mailbox cannot be empty
member_service_0017=Verification code cannot be empty
member_service_0018=Binding succeeded
member_service_0019=Binding failed
member_service_0020=Get failed
member_service_0021=Please enter the address of withdrawal
member_service_0022=Please enter notes
member_service_0023=Please select currency
member_service_0024=Submitted successfully
member_service_0025=Get failed
member_service_0026=Set successfully
member_service_0027=Setting failed
member_service_0028=Set successfully
member_service_0029=Setting failed
member_service_0030=Delete succeeded
member_service_0031=Delete failed
member_service_0032=User failure
member_service_0033=Successfully added
member_service_0034=Delete succeeded
member_service_0035=Delete failed
member_service_0036=Update successful
member_service_0037=Update failed
member_service_0038=Verification code is invalid
member_service_0039=Verification code error
member_service_0040=Modification succeeded
member_service_0041=Modification failed
member_service_0042=Please enter your mobile number
member_service_0043=Please enter the verification code
member_service_0044=Please input a password
member_service_0045=Verification code is invalid, please resend
member_service_0046=The verification code entered is wrong, please re-enter
member_service_0047=The mobile number does not exist, please register and log in
member_service_0048=Modification succeeded, please log in
member_service_0049=Verification code is invalid
member_service_0050=Verification code error
member_service_0051=Reset successful
member_service_0052=Modification failed
member_service_0053=Sent successfully
member_service_0054=fail in send
member_service_0055=Submitted, pending review
member_service_0056=Audit passed
member_service_0057=Please enter country
member_service_0058=Last name cannot be blank, please enter
member_service_0059=The name cannot be empty. Please enter
member_service_0060=ID card has been used
member_service_0061=Image missing, please upload
member_service_0062=Submitted successfully
member_service_0063=Failed to submit, please resubmit
member_service_0064=The transaction password is wrong, please check and re-enter
member_service_0065=Verification code is invalid
member_service_0066=Wrong verification code
member_service_0067=Submit failed
member_service_0068=Transaction password set successfully
member_service_0069=Transaction password modified successfully
member_service_0070=User does not exist
member_service_0071=Exit successful
member_service_0072=Exit failed
member_service_0073=Get failed
member_service_0074=Failure of user login information
member_service_0075=User does not exist
member_service_0076=Get failed
member_service_0077=No real name authentication
member_service_0078=Submitted successfully
member_service_0079=Submit failed
member_service_0080=No real name authentication
member_service_0081=Transaction password not set
member_service_0082=Wrong transaction password entered
member_service_0083=Cell phone number is empty
member_service_0084=Verification code error
member_service_0085=Insufficient available balance
member_service_0086=Submitted successfully, waiting for approval
member_service_0087=Wallet does not exist
member_service_0088=User login is invalid
member_service_0089=Network exception
member_service_0090=Already logged in
member_service_0091=Not logged in
member_service_0092=The account has been restricted
member_service_0093=The user does not exist. Please register and log in again
member_service_0094=Insufficient available balance of contract usdt account
member_service_0095=Insufficient available balance of agent usdt account
member_service_0096=Transfer fail
order_service_0001=Wrong parameter value
order_service_0002=Not logged in
order_service_0003=Submit failed
order_service_0004=Parameter error
order_service_0005=Invalid login information
order_service_0006=User does not exist
order_service_0007=No real name authentication, please go to the Security Center for real name authentication
order_service_0008=Wrong parameter
order_service_0009=Server exception
order_service_0010=Insufficient amount available
order_service_0011=Submitted successfully
order_service_0012=Do not repeat cancellation
order_service_0013=Cancellation successful
order_service_0014=Please log in
order_service_0015=Add self selection succeeded
order_service_0016=Delete self selection succeeded
order_service_0017=No wallet account
order_service_0018=User does not exist
order_service_0019=Wrong parameter
order_service_0020=User wallet does not exist
order_service_0021=Parameter error
order_service_0022=The entrusted open price cannot be higher than the market price
order_service_0023=The entrusted open price cannot be lower than the market price
order_service_0024=The available amount is insufficient, please recharge before purchasing
order_service_0025=Submitted successfully
order_service_0026=User not logged in
order_service_0027=Order does not exist
order_service_0028=The order has been closed
order_service_0029=Margin adjustment failed
order_service_0030=Margin adjusted
order_service_0031=User login failed
order_service_0032=Do not repeat cancellation
order_service_0033=Cancellation successful
order_service_0034=Closed position
order_service_0035=Get failed
order_service_0036=Failure of user login information
order_service_0037=Operation successful
order_service_0038=Server exception
order_service_0039=Frequent operation, please try again later
order_service_0040=Insufficient available balance
order_service_0041=Set successfully
order_service_0042=Setting failed
order_service_0043=Cancellation failed
order_service_0044=Successful closing
order_service_0045=This order cannot be closed temporarily
order_service_0046=No open order
symbols_controller_0001=Success
symbols_service_0001=Details obtained successfully
symbols_service_0002=Failed to get data
symbols_service_0003=Load failed
home_controller_0001=Number registered
home_controller_0002=Number registration available
home_controller_0003=Correct number
home_controller_0004=Number not registered
home_controller_0005=Sent successfully
home_controller_0006=Failed to send, please resend
home_controller_0007=The verification code is invalid, please resend!
home_controller_0008=Verification code error
home_controller_0009=Verification code succeeded
home_service_0001=Please enter your mobile number
home_service_0002=Please input a password
home_service_0003=The user does not exist. Please register and log in again
home_service_0004=The account has been restricted
home_service_0005=Wrong password
home_service_0006=Wrong format of mobile number entered
home_service_0007=The mobile number has been registered. Please log in
home_service_0008=login has failed
home_service_0009=Registration succeeded, please log in
home_service_0010=Verification code is invalid, please resend
home_service_0011=The verification code entered is wrong, please re-enter
home_service_0012=Please enter the verification code
home_service_0013=Modification succeeded, please log in
home_service_0014=The mobile number does not exist, please register and log in
uploadFile_controller_0001=Upload failed
src/main/resources/i18n/messages_zh_CN.properties
@@ -1,2 +1,223 @@
test=测试
111=这是测试消息
test=测�
blockchain_service_0001=登录信息失效
blockchain_service_0002=用户不存在
member_controller_0001=请先实名认证
member_controller_0002=请先配置交易密码
member_controller_0003=请输入交易密码
member_controller_0004=请输入正确的交易密码
member_controller_0005=系统繁忙,请稍后再试
member_controller_0006=购买成功,请及时付款
member_controller_0007=确认成功
member_controller_0008=登录信息已失效
member_controller_0009=请前往安全中心进行实名认证
member_controller_0010=请前往安全中心配置交易密码
member_controller_0011=请输入交易密码
member_controller_0012=请输入正确的交易密码
member_controller_0013=您当前可用USDT额度不够
member_controller_0014=请输入提币量
member_controller_0015=您当前可用USDT额度不够
member_controller_0016=请配置收款方式
member_controller_0017=可用USDT余额不足
member_controller_0018=下单成功
member_controller_0019=登录用户已失效
member_controller_0020=撤销成功
member_controller_0021=确认成功
member_controller_0022=不支持此类收款
member_controller_0023=登录用户已失效
member_controller_0024=撤销成功
member_service_0001=钱包地址不存在
member_service_0002=用户登录信息失效
member_service_0003=用户不存在
member_service_0004=转账金额不能小于0
member_service_0005=币币账户可用余额不足
member_service_0006=划转成功
member_service_0007=合约账户USDT可用余额不足
member_service_0008=代理账户USDT可用余额不足
member_service_0009=手机号不能为空
member_service_0010=发送成功
member_service_0011=发送失败
member_service_0012=验证码已失效,请重新请求
member_service_0013=验证码有误
member_service_0014=手机号绑定成功
member_service_0015=提交失败
member_service_0016=邮箱不能为空
member_service_0017=验证码不能为空
member_service_0018=绑定成功
member_service_0019=绑定失败
member_service_0020=获取失败
member_service_0021=请输入提币地址
member_service_0022=请输入备注信息
member_service_0023=请选择币种
member_service_0024=提交成功
member_service_0025=获取失败
member_service_0026=设置成功
member_service_0027=设置失败
member_service_0028=获取成功
member_service_0029=获取失败
member_service_0030=删除成功
member_service_0031=删除失败
member_service_0032=用户失效
member_service_0033=添加成功
member_service_0034=删除成功
member_service_0035=删除失败
member_service_0036=更新成功
member_service_0037=更新失败
member_service_0038=验证码已失效
member_service_0039=验证码错误
member_service_0040=修改成功
member_service_0041=修改失败
member_service_0042=请输入手机号码
member_service_0043=请输入验证码
member_service_0044=请输入密码
member_service_0045=验证码已失效,请重新发送
member_service_0046=输入的验证码有误,请重新输入
member_service_0047=不存在该手机号码,请进行注册登录
member_service_0048=修改成功,请登录
member_service_0049=验证码已失效
member_service_0050=验证码错误
member_service_0051=重置成功
member_service_0052=修改失败
member_service_0053=发送成功
member_service_0054=发送失败
member_service_0055=已提交,等待审核
member_service_0056=审核已通过
member_service_0057=请输入国家
member_service_0058=姓不能为空,请输入
member_service_0059=名不能为空,请输入
member_service_0060=身份证已被使用
member_service_0061=缺少图片,请上传
member_service_0062=提交成功
member_service_0063=提交失败,请重新提交
member_service_0064=输入交易密码有误,请检查重新输入
member_service_0065=验证码已失效
member_service_0066=验证码有误
member_service_0067=提交失败
member_service_0068=交易密码设置成功
member_service_0069=交易密码修改成功
member_service_0070=用户不存在
member_service_0071=退出成功
member_service_0072=退出失败
member_service_0073=获取失败
member_service_0074=用户登录信息失效
member_service_0075=用户不存在
member_service_0076=获取失败
member_service_0077=未实名认证
member_service_0078=提交成功
member_service_0079=提交失败
member_service_0080=未实名认证
member_service_0081=未设置交易密码
member_service_0082=输入的交易密码有误
member_service_0083=手机号为空
member_service_0084=验证码错误
member_service_0085=可用余额不足
member_service_0086=提交成功,等待审核
member_service_0087=钱包不存在
member_service_0088=用户登陆已失效
member_service_0089=网络异常
member_service_0090=已经登陆
member_service_0091=未登录
member_service_0092=该账户已限制登录
member_service_0093=用户不存在,请注册后再登录
member_service_0094=合约USDT账户可用余额不足
member_service_0095=代理USDT账户可用余额不足
member_service_0096=划转失败
order_service_0001=参值有误
order_service_0002=未登录
order_service_0003=提交失败
order_service_0004=参数错误
order_service_0005=登录信息失效
order_service_0006=用户不存在
order_service_0007=未实名认证,请去安全中心里进行实名认证
order_service_0008=参数有误
order_service_0009=服务器异常
order_service_0010=可用金额不足
order_service_0011=提交成功
order_service_0012=请勿重复撤单
order_service_0013=撤单成功
order_service_0014=请登录
order_service_0015=添加自选成功
order_service_0016=删除自选成功
order_service_0017=无钱包账号
order_service_0018=用户不存在
order_service_0019=参数有误
order_service_0020=用户钱包不存在
order_service_0021=参数错误
order_service_0022=委托开多价不能高于市场价
order_service_0023=委托开多价不能低于市场价
order_service_0024=可用金额不足,请充值后再购买
order_service_0025=提交成功
order_service_0026=用户未登录
order_service_0027=订单不存在
order_service_0028=该订单已平仓
order_service_0029=保证金调整失败
order_service_0030=保证金已调整
order_service_0031=用户登录已失效
order_service_0032=请勿重复撤单
order_service_0033=撤单成功
order_service_0034=已平仓
order_service_0035=获取失败
order_service_0036=用户登录信息失效
order_service_0037=操作成功
order_service_0038=服务器异常
order_service_0039=操作频繁,请稍后再试
order_service_0040=可用余额不足
order_service_0041=设置成功
order_service_0042=设置失败
order_service_0043=撤单失败
order_service_0044=平仓成功
order_service_0045=该订单暂不能平仓
order_service_0046=没有可平仓的订单
symbols_controller_0001=成功
symbols_service_0001=获取详情成功
symbols_service_0002=获取数据失败
symbols_service_0003=加载失败
home_controller_0001=号码已注册
home_controller_0002=号码可用注册
home_controller_0003=号码正确
home_controller_0004=号码没注册
home_controller_0005=发送成功
home_controller_0006=发送失败,请重新发送
home_controller_0007=验证码已失效,请重新发送!
home_controller_0008=验证码错误
home_controller_0009=验证码成功
home_service_0001=请输入手机号码
home_service_0002=请输入密码
home_service_0003=用户不存在,请注册后再登录
home_service_0004=该账户已限制登录
home_service_0005=密码有误
home_service_0006=输入的手机号码格式有误
home_service_0007=该手机号码已被注册,请去登录
home_service_0008=注册失败
home_service_0009=注册成功,请去登录
home_service_0010=验证码已失效,请重新发送
home_service_0011=输入的验证码有误,请重新输入
home_service_0012=请输入验证码
home_service_0013=修改成功,请登录
home_service_0014=不存在该手机号码,请进行注册登录
uploadFile_controller_0001=上传失败
src/main/resources/mapper/member/MemberAccountMoneyChangeDao.xml
New file
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao">
    <select id="selectWalletCoinRecordsByMemIdTypeSymbol" resultType="com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange">
        select * from member_account_money_change where type = 1 and member_id = #{memberId} order by id desc
    </select>
    <select id="selectWalletContractRecordsByMemIdTypeSymbol" resultType="com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange">
        select * from member_account_money_change where type = 2 and member_id = #{memberId}  order by id desc
    </select>
    <select id="selectWalletAgentRecordByMemIdTypeSymbol" resultType="com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange">
        select * from member_account_money_change where type = 3 and member_id = #{memberId}  order by id desc
    </select>
</mapper>
src/main/resources/mapper/member/MemberWalletAgentDao.xml
@@ -2,5 +2,9 @@
<!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.MemberWalletAgentDao">
    <select id="selectWalletAgentBymIdAndCode" resultType="com.xcong.excoin.modules.member.entity.MemberWalletAgentEntity">
        select * from member_wallet_agent where member_id = #{memberId} and wallet_code = #{walletCode}
    </select>
</mapper>
src/main/resources/mapper/member/MemberWalletCoinDao.xml
@@ -2,6 +2,14 @@
<!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.MemberWalletCoinDao">
    <select id="selectMemberWalletCoinsByMemberId" resultType="com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity">
        select * from member_wallet_coin where member_id = #{memberId}
    </select>
    <select id="selectWalletCoinBymIdAndCode" resultType="com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity">
        select * from member_wallet_coin where member_id = #{memberId} and wallet_code = #{walletCode}
    </select>
</mapper>
src/main/resources/mapper/member/MemberWalletContractDao.xml
@@ -1,6 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!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.MemberWalletContractDao">
    <select id="findWalletContractByMemberIdAndSymbol" resultType="com.xcong.excoin.modules.member.entity.MemberWalletContractEntity">
            select *
            from member_wallet_contract
            where member_id = #{memberId}
            <if test = "symbol != null and symbol !=''">
                and wallet_code = #{symbol}
            </if>
    </select>
</mapper>
src/main/resources/mapper/platform/CnyUsdtExchangeDao.xml
New file
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xcong.excoin.modules.coin.dao.platform.CnyUsdtExchangeDao">
    <select id="getCNYAndUSDTOne" resultType="com.xcong.excoin.modules.coin.entity.CnyUsdtExchange">
        select  * from platform_cny_usdt_exchange limit 1
    </select>
    <update id="updateUsdt">
        update platform_cny_usdt_exchange set value = #{value}
    </update>
</mapper>