zyy
2025-08-07 05c70aec6fb13c9df2c90f84d9411cafe63570a8
src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
@@ -144,8 +144,8 @@
                }else{
                    bound =  new BigDecimal(model.getApplyNums()).multiply(stockSubscribe.getPrice());
                }
                //如果不是墨西哥币需要转换金额
                if (!stockSubscribe.getStockType().equals(EStockType.MX.getCode())) {
                //如果不是默认货币需要转换金额
                if (!stockSubscribe.getStockType().equals(EStockType.getDefault().getCode())) {
                    bound = iUserAssetsServices.exchangeAmountByRate(stockSubscribe.getStockType(), bound);
                }
                if(userAssets.getAvailableBalance().compareTo(bound) < 0){
@@ -186,10 +186,10 @@
                    moneyLog.setBeFore(before);
                    moneyLog.setAfter(userAssets.getAvailableBalance().toString());
                    moneyLog.setAmount(bound.negate().toString());
                    moneyLog.setAccectType(EStockType.MX.getCode());
                    moneyLog.setAccectType(EStockType.getDefault().getCode());
                    moneyLog.setType(eUserAssets.getCode());
                    moneyLog.setUserId(user.getId()+"");
                    moneyLog.setSymbol(EStockType.MX.getSymbol());
                    moneyLog.setSymbol(EStockType.getDefault().getSymbol());
                    moneyLog.setCreateTime(new Date());
                    moneyLogMapper.insert(moneyLog);
                    if (ret > 0) {
@@ -287,8 +287,8 @@
                            if(applyNumber > 0){
                                //需要退回的资金
                                refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber));
                                //如果不是墨西哥币需要转换金额
                                if (!stockSubscribe.getStockType().equals(EStockType.MX.getCode())) {
                                //如果不是默认货币需要转换金额
                                if (!stockSubscribe.getStockType().equals(EStockType.getDefault().getCode())) {
                                    refundPrice = iUserAssetsServices.exchangeAmountByRate(stockSubscribe.getStockType(), refundPrice);
                                }
                                userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(refundPrice));
@@ -297,8 +297,8 @@
                        }else{
                            if(applyNumber > 0){
                                refundPrice = userStockSubscribe.getBuyPrice().multiply(new BigDecimal(applyNumber));
                                //如果不是墨西哥币需要转换金额
                                if (!stockSubscribe.getStockType().equals(EStockType.MX.getCode())) {
                                //如果不是默认货币需要转换金额
                                if (!stockSubscribe.getStockType().equals(EStockType.getDefault().getCode())) {
                                    refundPrice = iUserAssetsServices.exchangeAmountByRate(stockSubscribe.getStockType(), refundPrice);
                                }
                                BigDecimal subtract = refundPrice.subtract(userAssets.getAmountToBeCovered());
@@ -319,10 +319,10 @@
                            moneyLog.setBeFore(before);
                            moneyLog.setAfter(userAssets.getAvailableBalance().toString());
                            moneyLog.setAmount(refundPrice.toString());
                            moneyLog.setAccectType(EStockType.MX.getCode());
                            moneyLog.setAccectType(EStockType.getDefault().getCode());
                            moneyLog.setType(eUserAssets.getCode());
                            moneyLog.setUserId(userAssets.getUserId()+"");
                            moneyLog.setSymbol(EStockType.MX.getSymbol());
                            moneyLog.setSymbol(EStockType.getDefault().getSymbol());
                            moneyLog.setCreateTime(new Date());
                            moneyLogMapper.insert(moneyLog);
                        }