| | |
| | | return ServerResponse.createBySuccessMsg("操作成功"); |
| | | } |
| | | BigDecimal stockQuantity = new BigDecimal(intradayOrder.getStockQuantity());//股票数量 |
| | | BigDecimal totalPrice = intradayOrder.getStockPrice().multiply(stockQuantity);//订单总价 |
| | | BigDecimal orderTotalPrice = intradayOrder.getStockPrice().multiply(stockQuantity);//订单总价 |
| | | |
| | | //手续费 |
| | | BigDecimal orderFree = siteSettingBuyFee.multiply(totalPrice); |
| | | totalPrice = orderFree.add(totalPrice); |
| | | BigDecimal orderFree = siteSettingBuyFee.multiply(orderTotalPrice); |
| | | BigDecimal totalPrice = orderFree.add(orderTotalPrice); |
| | | |
| | | if(intradayOrder.getOrderAmount().compareTo(totalPrice) < 0){ |
| | | return ServerResponse.createByErrorMsg("股票总价超过订单金额!"); |
| | |
| | | } |
| | | userPosition.setIsLock(intradayOrder.getIsLocked()); |
| | | userPosition.setOrderLever(1); |
| | | userPosition.setOrderTotalPrice(totalPrice); |
| | | userPosition.setOrderTotalPrice(orderTotalPrice); |
| | | // 手续费 |
| | | userPosition.setOrderFee(orderFree); |
| | | userPosition.setOrderSpread(BigDecimal.ZERO); |
| | |
| | | userPosition.setOrderStayFee(BigDecimal.ZERO); |
| | | userPositionMapper.insert(userPosition); |
| | | |
| | | //结余资金返还账户 |
| | | UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.JP.getCode(), intradayOrder.getUserId()); |
| | | userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(surplusAmount)); |
| | | userAssets.setFreezeMoney(userPosition.getOrderTotalPrice()); |
| | | userAssetsMapper.updateById(userAssets); |
| | | intradayOrder.setPositionOrder(userPosition.getId()); |
| | | intradayOrder.setPurchaseAmount(totalPrice); |