| | |
| | | import com.yami.trading.bean.data.domain.Realtime; |
| | | import com.yami.trading.bean.item.domain.Item; |
| | | import com.yami.trading.bean.item.dto.ItemLeverageDTO; |
| | | import com.yami.trading.bean.model.FollowWallet; |
| | | import com.yami.trading.bean.model.User; |
| | | import com.yami.trading.bean.model.Wallet; |
| | | import com.yami.trading.bean.syspara.domain.Syspara; |
| | |
| | | import com.yami.trading.common.util.RandomUtil; |
| | | import com.yami.trading.common.util.StringUtils; |
| | | import com.yami.trading.dao.contract.ContractApplyOrderMapper; |
| | | import com.yami.trading.service.FollowWalletService; |
| | | import com.yami.trading.service.MoneyLogService; |
| | | import com.yami.trading.service.RechargeBonusService; |
| | | import com.yami.trading.service.WalletService; |
| | |
| | | private MoneyLogService moneyLogService; |
| | | @Autowired |
| | | private WalletService walletService; |
| | | @Autowired |
| | | private FollowWalletService followWalletService; |
| | | @Autowired |
| | | private ContractOrderService contractOrderService; |
| | | @Autowired |
| | |
| | | |
| | | order.setVolumeOpen(order.getVolume()); |
| | | |
| | | if(ContractApplyOrder.ORDER_FOLLOW == order.getFollow()) { // 跟单订单 |
| | | FollowWallet followWallet = followWalletService.findByUserId(order.getPartyId()); |
| | | BigDecimal amountBefore = followWallet.getMoney(); |
| | | // fee = exchangeRateService.getUsdtByType(order.getFee(), type); |
| | | // deposit = exchangeRateService.getUsdtByType(deposit, type); |
| | | BigDecimal totalAmountCost = deposit.add(order.getFee()); |
| | | if (amountBefore.compareTo(totalAmountCost) < 0) { |
| | | throw new YamiShopBindException("余额不足"); |
| | | } |
| | | |
| | | followWalletService.updateMoney(order.getSymbol(), order.getPartyId(), BigDecimal.ZERO.subtract(deposit), BigDecimal.ZERO |
| | | , Constants.MONEYLOG_CATEGORY_CONTRACT, Constants.WALLET_USDT, Constants.MONEYLOG_CONTENT_CONTRACT_OPEN, "委托单,订单号[" + order.getOrderNo() + "]" |
| | | ); |
| | | followWalletService.updateMoney(order.getSymbol(), order.getPartyId(), BigDecimal.ZERO.subtract(fee), BigDecimal.ZERO |
| | | , Constants.MONEYLOG_CATEGORY_CONTRACT, Constants.WALLET_USDT, Constants.MONEYLOG_CONTENT_FEE, "委托单手续费,订单号[" + order.getOrderNo() + "]" |
| | | ); |
| | | } else { |
| | | Wallet wallet = this.walletService.findByUserId(order.getPartyId()); |
| | | BigDecimal amountBefore = wallet.getMoney(); |
| | | // fee = exchangeRateService.getUsdtByType(order.getFee(), type); |
| | |
| | | |
| | | //ICE盘定制交易手续费返佣 |
| | | rechargeBonusService.saveTradeBounsHandle(order.getPartyId(),1, fee.doubleValue(),order.getOrderNo(),order.getSymbol()); |
| | | } |
| | | save(order); |
| | | User party = this.userService.getById(order.getPartyId()); |
| | | if (Constants.SECURITY_ROLE_MEMBER.equals(party.getRoleName())) { |