From f0a47946682b93a4fb6c9246d8573ee2bc98d60e Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 24 May 2021 11:41:26 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcEntrustOrderServiceImpl.java | 25 +++++++++++++++++++++++-- 1 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcEntrustOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcEntrustOrderServiceImpl.java index 753715e..35e9229 100644 --- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcEntrustOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcEntrustOrderServiceImpl.java @@ -42,6 +42,7 @@ private final MemberDao memberDao; private final MemberPaymentMethodDao memberPaymentMethodDao; + private final OtcMarketBussinessDao otcMarketBussinessDao; private final MemberWalletCoinDao memberWalletCoinDao; private final OtcOrderDao otcOrderDao; private final CommonService commonService; @@ -65,16 +66,33 @@ BigDecimal totalAmount = addDto.getUnitPrice().multiply(addDto.getAmount()); otcEntrustOrder.setTotalAmount(totalAmount); + + if (addDto.getMax().compareTo(totalAmount) < 0) { + throw new GlobalException("最大限额应小于总金额"); + } + if (OtcEntrustOrder.ORDER_TYPE_S.equals(addDto.getType())) { MemberWalletCoinEntity coinWallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(member.getId(), "USDT"); if(coinWallet.getAvailableBalance().compareTo(totalAmount) < 0) { throw new GlobalException("可用金额不足"); } - memberWalletCoinDao.updateFrozenBalance(member.getId(), coinWallet.getId(), totalAmount); + memberWalletCoinDao.updateFrozenBalance(member.getId(), coinWallet.getId(), addDto.getAmount()); } -// OtcMarketBussiness mb = otcMarketBussinessDao.selectMarketBussinessByMemberId(member.getId()); + OtcMarketBussiness mb = otcMarketBussinessDao.selectMarketBussinessByMemberId(member.getId()); + if (mb == null) { + OtcMarketBussiness otcMb = new OtcMarketBussiness(); + otcMb.setMemberId(member.getId()); + otcMb.setAvgCoinTime(0); + otcMb.setAvgPayTime(0); + otcMb.setTotalOrderCnt(0); + otcMb.setBuyCnt(0); + otcMb.setFinishRatio(BigDecimal.ZERO); + otcMb.setStatus(OtcMarketBussiness.CHECK_PASS); + otcMarketBussinessDao.insert(otcMb); + } + if (member.getIsTrader() == 2) { otcEntrustOrder.setIsMb(OtcEntrustOrder.IS_MB_N); } else { @@ -191,8 +209,11 @@ } MemberEntity member = memberDao.selectById(otcEntrustOrder.getMemberId()); + OtcMarketBussiness mb = otcMarketBussinessDao.selectMarketBussinessByMemberId(member.getId()); EntrustOrderDetailVo detail = OtcEntrustOrderMapper.INSTANCE.entityToOrderDetail(otcEntrustOrder); detail.setName(member.getName()); + detail.setOrderCnt(mb.getBuyCnt()); + detail.setFinishRatio(mb.getFinishRatio()); return Result.ok(detail); } } -- Gitblit v1.9.1