xiaoyong931011
2020-06-03 f277f8fbba56fe460a1c954926f4699592ecfbca
Merge branch 'master' of https://gitee.com/chonggaoxiao/new_excoin.git
7 files modified
44 ■■■■■ changed files
src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java 1 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/contract/service/impl/OrderWebsocketServiceImpl.java 23 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/dao/MemberLevelRateDao.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/rabbit/init/OrderProducerInit.java 1 ●●●● patch | view | raw | blame | history
src/main/resources/application.yml 4 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberLevelRateDao.xml 4 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/contract/mapper/ContractEntrustOrderEntityMapper.java
@@ -32,6 +32,7 @@
    public abstract List<ContractEntrustVo> entityListToVoList(List<ContractEntrustOrderEntity> list);
    @Mapping(source = "entrustAmount", target = "prePaymentAmount")
    public abstract ContractHoldOrderEntity entrustOrderToHoldOrder(ContractEntrustOrderEntity entrustOrderEntity);
}
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
@@ -22,9 +22,11 @@
import com.xcong.excoin.modules.contract.parameter.vo.ContractMoneyInfoVo;
import com.xcong.excoin.modules.contract.parameter.vo.HoldOrderListVo;
import com.xcong.excoin.modules.contract.service.ContractHoldOrderService;
import com.xcong.excoin.modules.member.dao.MemberLevelRateDao;
import com.xcong.excoin.modules.member.dao.MemberWalletContractDao;
import com.xcong.excoin.modules.member.entity.AgentReturnEntity;
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberLevelRateEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity;
import com.xcong.excoin.modules.platform.dao.TradeSettingDao;
import com.xcong.excoin.modules.platform.entity.PlatformTradeSettingEntity;
@@ -67,6 +69,9 @@
    @Resource
    private MemberWalletContractDao memberWalletContractDao;
    @Resource
    private MemberLevelRateDao memberLevelRateDao;
    @Resource
    private CacheSettingUtils cacheSettingUtils;
@@ -492,6 +497,8 @@
        MemberWalletContractEntity walletContractEntity = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberEntity.getId(), CoinTypeEnum.USDT.name());
        MemberLevelRateEntity rateEntity = memberLevelRateDao.selectLeverRateByMemberIdAndSymbol(memberEntity.getId(), symbol);
        // 权益
        BigDecimal equity = walletContractEntity.getTotalBalance().add(totalProfitOrLess);
@@ -504,6 +511,7 @@
        contractMoneyInfoVo.setLeverAgeRatio(tradeSetting.getLeverageRatio());
        contractMoneyInfoVo.setNewPrice(newPrice);
        contractMoneyInfoVo.setSymbolSku(cacheSettingUtils.getSymbolSku(symbol));
        contractMoneyInfoVo.setLeverRate(rateEntity.getLevelRateUp());
        return Result.ok(contractMoneyInfoVo);
    }
}
src/main/java/com/xcong/excoin/modules/contract/service/impl/OrderWebsocketServiceImpl.java
@@ -6,6 +6,7 @@
import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity;
import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
import com.xcong.excoin.modules.contract.mapper.ContractEntrustOrderEntityMapper;
import com.xcong.excoin.modules.contract.mapper.ContractHoldOrderEntityMapper;
import com.xcong.excoin.modules.contract.service.ContractEntrustOrderService;
import com.xcong.excoin.modules.contract.service.ContractHoldOrderService;
@@ -486,7 +487,6 @@
     * @param
     */
    public void dealLimitBuyOrder(List<ContractEntrustOrderEntity> orderList) {
        //List<CoinsCoinsOrder> orderList = orderMapper.selectOrderByBatchNo(batchno);
        if (CollectionUtils.isNotEmpty(orderList)) {
            ContractHoldOrderEntity contractHoldOrderEntity = null;
@@ -496,23 +496,21 @@
                    continue;
                }
                contractHoldOrderEntity = new ContractHoldOrderEntity();
                // 委托单bean转换为持仓单bean
                contractHoldOrderEntity = ContractEntrustOrderEntityMapper.INSTANCE.entrustOrderToHoldOrder(coinsCoinsOrder);
                contractHoldOrderEntity.setId(null);
                Long memId = coinsCoinsOrder.getMemberId();
                MemberEntity memberEntity = memberService.getById(memId);
                BigDecimal entrustPrice = coinsCoinsOrder.getEntrustPrice();
                int symbolCnt = coinsCoinsOrder.getSymbolCnt();
                int type = coinsCoinsOrder.getEntrustType();
                //开仓价
                // Double openPrice = coinsCoinsOrder.getOpenPrice().doubleValue();
                //委托价
                // Double markPrice = coinsCoinsOrder.getMarkPrice();
                if (type == 1) {
                    // 开多
                    contractHoldOrderEntity.setOpeningType(ContractHoldOrderEntity.OPENING_TYPE_MORE);
                } else {
                    // 开空
                    contractHoldOrderEntity.setOpeningType(ContractHoldOrderEntity.OPENING_TYPE_LESS);
                }
                //持仓单赋值
@@ -552,18 +550,11 @@
                    producer.sendPriceOperate(JSONObject.toJSONString(model));
                }
                // 扣除手续费
                //double totalBalance = wallet.getTotalBalance() - coinsCoinsOrder.getClosingPrice();
                BigDecimal totalBalance = openFeePrice.negate();
                /** TradeSetting tradeSetting = tradeSettingCache.getTradeSetting();
                 Double totalPayPrice = new BigDecimal(coinsCoinsOrder.getPrePrice()).add(new BigDecimal(coinsCoinsOrder.getClosingPrice())).add(new BigDecimal(coinsCoinsOrder.getClosingPrice()))
                 .setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
                 totalBalance =  totalBalance+(-totalPayPrice*(Double.valueOf(tradeSetting.getSpread())/10000));*/
                BigDecimal totalBalance = wallet.getTotalBalance().subtract(openFeePrice);
                memberWalletContractService.increaseWalletContractBalanceById(null, totalBalance, null, wallet.getId());
                // TODO 531 待写
                calYj(memId, contractOrderEntity.getClosingFeeAmount(), contractOrderEntity, 1);
                calYj(memId, openFeePrice, contractOrderEntity, 1);
            }
        }
    }
src/main/java/com/xcong/excoin/modules/member/dao/MemberLevelRateDao.java
@@ -2,6 +2,9 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.member.entity.MemberLevelRateEntity;
import org.apache.ibatis.annotations.Param;
public interface MemberLevelRateDao extends BaseMapper<MemberLevelRateEntity> {
    public MemberLevelRateEntity selectLeverRateByMemberIdAndSymbol(@Param("memberId") Long memberId, @Param("symbol") String symbol);
}
src/main/java/com/xcong/excoin/rabbit/init/OrderProducerInit.java
@@ -50,6 +50,7 @@
        if (CollectionUtils.isNotEmpty(holdOrderEntities)) {
            for (ContractHoldOrderEntity order : holdOrderEntities) {
                log.info("---->>>{}", order.getSymbol());
                // 开多1,开空 2
                int openingType = order.getOpeningType();
                // 1:买入委托2:开多3:开空4:平多5:平空6:爆仓平多7:爆仓平空
src/main/resources/application.yml
@@ -96,10 +96,10 @@
  # k线更新任务控制
  kline-update-job: false
  #最新价任务控制
  newest-price-update-job: false
  newest-price-update-job: true
  #其他任务控制
  other-job: false
  rabbit-consumer: false
  rabbit-consumer: true
aliyun:
  oss:
src/main/resources/mapper/member/MemberLevelRateDao.xml
@@ -2,4 +2,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.MemberLevelRateDao">
    <select id="selectLeverRateByMemberIdAndSymbol" resultType="com.xcong.excoin.modules.member.entity.MemberLevelRateEntity">
        select * from member_level_rate where member_id=#{memberId} and symbol=#{symbol}
    </select>
</mapper>