| | |
| | | return ServerResponse.createByErrorMsg("客户资金账户不存在"); |
| | | } |
| | | int applyNumber = userStockSubscribe.getApplyNums() - model.getApplyNumber(); |
| | | BigDecimal refundPrice = BigDecimal.ZERO; |
| | | String before = userAssets.getAvailableBalance().toString(); |
| | | if(userAssets.getAmountToBeCovered().compareTo(BigDecimal.ZERO) <= 0){ |
| | | if(applyNumber > 0){ |
| | | //需要退回的资金 |
| | | BigDecimal refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber)); |
| | | refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber)); |
| | | //如果不是墨西哥币需要转换金额 |
| | | if (!stockSubscribe.getStockType().equals(EStockType.MX.getCode())) { |
| | | refundPrice = iUserAssetsServices.exchangeAmountByRate(stockSubscribe.getStockType(), refundPrice); |
| | |
| | | } |
| | | }else{ |
| | | if(applyNumber > 0){ |
| | | BigDecimal refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber)); |
| | | refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber)); |
| | | //如果不是墨西哥币需要转换金额 |
| | | if (!stockSubscribe.getStockType().equals(EStockType.MX.getCode())) { |
| | | refundPrice = iUserAssetsServices.exchangeAmountByRate(stockSubscribe.getStockType(), refundPrice); |
| | |
| | | } |
| | | } |
| | | } |
| | | //退回资金 交易记录MEX |
| | | MoneyLog moneyLog = new MoneyLog(); |
| | | EUserAssets eUserAssets = EUserAssets.BUY_RT; |
| | | moneyLog.setDescs(eUserAssets.getDesc()); |
| | | moneyLog.setBeFore(before); |
| | | moneyLog.setAfter(userAssets.getAvailableBalance().toString()); |
| | | moneyLog.setAmount(refundPrice.toString()); |
| | | moneyLog.setAccectType(EStockType.MX.getCode()); |
| | | moneyLog.setType(eUserAssets.getCode()); |
| | | moneyLog.setUserId(userAssets.getUserId()+""); |
| | | moneyLog.setSymbol(EStockType.MX.getSymbol()); |
| | | moneyLog.setCreateTime(new Date()); |
| | | moneyLogMapper.insert(moneyLog); |
| | | ret = userStockSubscribeMapper.update1(model); |
| | | userAssetsMapper.updateById(userAssets); |
| | | iUserPositionService.newStockToPosition(model.getId(),userAssets.getAmountToBeCovered());//转持仓 |