1
zj
2024-10-24 b537f97886c51d59818a788f641a9b16b510d62e
1
4 files modified
28 ■■■■■ changed files
src/main/java/com/nq/pojo/reponse/RUserAssets.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/UserAssetsServices.java 4 ●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/UserRechargeServiceImpl.java 1 ●●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/UserServiceImpl.java 20 ●●●●● patch | view | raw | blame | history
src/main/java/com/nq/pojo/reponse/RUserAssets.java
@@ -53,6 +53,9 @@
    private String symbolCode;
    // 手续费欠款
    private BigDecimal handlingChargeWritten;
    //累计盈亏 0 正 1 负
    private Integer isZf;
}
src/main/java/com/nq/service/impl/UserAssetsServices.java
@@ -10,6 +10,7 @@
import com.nq.pojo.*;
import com.nq.service.IUserAssetsServices;
import com.nq.utils.KeyUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -23,6 +24,7 @@
/**
 * 用户资产
 */
@Slf4j
@Service
public class UserAssetsServices implements IUserAssetsServices {
@@ -239,7 +241,7 @@
       }
        if(null != userPosition){
            userPosition.setAmountToBeCovered(userAssets.getAmountToBeCovered());
            userPosition.setAmountToBeCovered(userAssets.getAmountToBeCovered().add(userAssets.getHandlingChargeWritten()));
            userPositionMapper.updateById(userPosition);
        }
        String  after =  userAssets.getAvailableBalance().toString();
src/main/java/com/nq/service/impl/UserRechargeServiceImpl.java
@@ -20,6 +20,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
src/main/java/com/nq/service/impl/UserServiceImpl.java
@@ -508,9 +508,10 @@
            RUserAssets rUserAssets  = new RUserAssets();
            UserAssets userAssets = userAssetsList.get(i);
            // 浮动盈亏
            BigDecimal profitAndLose = userAssets.getProfitAndLoss();
            String profitAndLose = getProfitAndLose(userId).toString();
            BigDecimal amt = userAssets.getAvailableBalance();
            BigDecimal totalAssets = userAssets.getAvailableBalance().add(userAssets.getFreezeMoney());
            BigDecimal totalAssets = userAssets.getAvailableBalance().add(userAssets.getFreezeMoney()).add(new BigDecimal(profitAndLose)).subtract(userAssets.getHandlingChargeWritten());
//            BigDecimal totalAssets = userAssets.getAvailableBalance().add(userAssets.getFreezeMoney()).subtract(userAssets.getCumulativeProfitAndLoss()).add(profitAndLose);
            BigDecimal freeMoney = userAssets.getFreezeMoney();
            BigDecimal hMoney = userAssets.getHandlingCharge();
            BigDecimal hProfitAndLose = userAssets.getCumulativeProfitAndLoss();
@@ -524,6 +525,7 @@
            rUserAssets.setProfitAndLoss(profitAndLose.toString());
            rUserAssets.setIsZf(userAssets.getIsZf());
            rUserAssets.setAmountToBeCovered((userAssets.getAmountToBeCovered().add(userAssets.getHandlingChargeWritten()).toString()));
            rUserAssets.setHandlingChargeWritten(userAssets.getHandlingChargeWritten());
            BigDecimal rate = rateServices.currencyRate(
                    EStockType.getEStockTypeByCode(userAssets.getAccectType()),EStockType.US);
@@ -539,7 +541,7 @@
            BigDecimal  totleMoneyUSD = totalAssets;
            if(totalAssets.compareTo(BigDecimal.ZERO)>0){
                totleMoneyUSD  = totleMoneyUSD.multiply(rate).subtract(new BigDecimal(rUserAssets.getHandlingCharge()));
                totleMoneyUSD  = totleMoneyUSD.multiply(rate);
            }
            BigDecimal  cumulativeProfitAndLossUSD = hProfitAndLose;
@@ -551,9 +553,9 @@
            if(hMoney.compareTo(BigDecimal.ZERO)>0){
                handlingChargeUSD  =hMoney.multiply(rate);
            }
            BigDecimal  profitAndLossUSD = profitAndLose;
            if(profitAndLose.compareTo(BigDecimal.ZERO)>0){
                profitAndLossUSD  =profitAndLose.multiply(rate);
            BigDecimal  profitAndLossUSD = new BigDecimal(profitAndLose);
            if(new BigDecimal(profitAndLose).compareTo(BigDecimal.ZERO)>0){
                profitAndLossUSD  =new BigDecimal(profitAndLose).multiply(rate);
            }
@@ -566,9 +568,9 @@
            rUserAssets.setCumulativeProfitAndLossUSD(cumulativeProfitAndLossUSD.setScale(s,BigDecimal.ROUND_UP).toString());
            rUserAssets.setHandlingChargeUSD(handlingChargeUSD.setScale(s,BigDecimal.ROUND_UP).toString());
            rUserAssets.setProfitAndLossUSD(profitAndLossUSD.setScale(s,BigDecimal.ROUND_UP).toString());
            rUserAssets.setProfitAndLoss(getProfitAndLose(userId).toString());
            BigDecimal decimal = new BigDecimal(rUserAssets.getTotalMoney()).add(new BigDecimal(rUserAssets.getProfitAndLoss()));
            rUserAssets.setTotalMoney(decimal.toString());
            rUserAssets.setProfitAndLoss(profitAndLose);
//            BigDecimal decimal = new BigDecimal(rUserAssets.getTotalMoney()).add(new BigDecimal(rUserAssets.getProfitAndLoss()));
//            rUserAssets.setTotalMoney(decimal.toString());
            AllProfitAndLose = AllProfitAndLose.add(profitAndLossUSD);
            allTotalAssets = allTotalAssets.add(totleMoneyUSD);
            allAmt = allAmt.add(availableBalanceUSD);