1
zj
2024-09-04 e0256316b31ded9be3bc0f978391dc9aaee21a45
src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -149,9 +149,14 @@
        //判断股票是否在可交易时间段
        Boolean b = tradingHourService.timeCheck(stock.getStockCode());
        if (!b) {
            return ServerResponse.createByErrorMsg("订单失败,不在交易时间之内", request);
            String lang = request.getHeader("lang");
            if(lang.equals("ja")){
                String msg = "注文失敗、取引時間外です。";
                return ServerResponse.createByErrorMsg(msg);
            }else{
                return ServerResponse.createByErrorMsg("订单失败,不在交易时间之内", request);
            }
        }
       StockConfig mainBuyConfig =  iStockConfigServices.queryByKey(EConfigKey.MIN_BUY.getCode());
@@ -185,10 +190,8 @@
        BigDecimal buyAmt = nowPrice.multiply(new BigDecimal(buyNum)).divide(new BigDecimal(lever));
        BigDecimal orderFree = siteSettingBuyFee.multiply(buyAmt);
        BigDecimal   fundratio = new BigDecimal(user.getFundRatio()).divide(new BigDecimal(100));
        BigDecimal availableBalance =  fundratio.multiply(userAssets.getAvailableBalance());
        if (availableBalance.compareTo(buyAmt.add(orderFree)) < 0) {
            return ServerResponse.createByErrorMsg("订单失败,配资不足", request);
        if (userAssets.getAvailableBalance().compareTo(buyAmt.add(orderFree)) < 0) {
            return ServerResponse.createByErrorMsg("订单失败,余额不足", request);
        }
        UserPosition userPosition = new UserPosition();
        if (profitTarget != null && profitTarget.compareTo(new BigDecimal("0")) > 0) {
@@ -1583,11 +1586,11 @@
            return ServerResponse.createByErrorMsg("最小购买数据" + stockDz.getStockNum(), request);
        }
        BigDecimal buyAmt = nowPrice.multiply(new BigDecimal(num.intValue()));
        BigDecimal fundratio = new BigDecimal(user.getFundRatio()).divide(new BigDecimal(100));
        BigDecimal availableBalance = fundratio.multiply(userAssets.getAvailableBalance());
        if (buyAmt.compareTo(availableBalance) > 0) {
            return ServerResponse.createByErrorMsg("订单失败,配资不足", request);
        }
//        BigDecimal fundratio = new BigDecimal(user.getFundRatio()).divide(new BigDecimal(100));
//        BigDecimal availableBalance = fundratio.multiply(userAssets.getAvailableBalance());
//        if (buyAmt.compareTo(availableBalance) > 0) {
//            return ServerResponse.createByErrorMsg("订单失败,配资不足", request);
//        }
        // 创建UserPosition对象
        UserPosition userPosition = new UserPosition();