Commit 98e7850f authored by 刘长帅's avatar 刘长帅

优化总资产

parent 7861932d
...@@ -1523,12 +1523,17 @@ public class StockPositionServiceImpl extends ServiceImpl<StockPositionMapper, S ...@@ -1523,12 +1523,17 @@ public class StockPositionServiceImpl extends ServiceImpl<StockPositionMapper, S
public MarketDetailsVO createMarketDetailsVOTask( List<StockPosition> stockPositions, BigDecimal funding, AccountProductRelation accountProductRelation) { public MarketDetailsVO createMarketDetailsVOTask( List<StockPosition> stockPositions, BigDecimal funding, AccountProductRelation accountProductRelation) {
MarketDetailsVO marketDetailsVO = new MarketDetailsVO(); MarketDetailsVO marketDetailsVO = new MarketDetailsVO();
BigDecimal stocksTotalPrice = new BigDecimal("0");
if(!ObjectUtils.isEmpty(stockPositions)){
List<String> codes = stockPositions.stream().map(StockPosition::getCode).collect(Collectors.toList()); List<String> codes = stockPositions.stream().map(StockPosition::getCode).collect(Collectors.toList());
//批量获取股票当前价格 //批量获取股票当前价格
Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes); Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes);
//计算股票总市值(当前) //计算股票总市值(当前)
BigDecimal stocksTotalPrice = financeCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping); stocksTotalPrice = financeCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping);
}
//计算总资产 剩余的钱+总市值 //计算总资产 剩余的钱+总市值
BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice); BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice);
//计算仓位 总市值/总资产 //计算仓位 总市值/总资产
......
...@@ -1530,11 +1530,14 @@ public class HighStockPositionServiceImpl extends ServiceImpl<HighStockPositionM ...@@ -1530,11 +1530,14 @@ public class HighStockPositionServiceImpl extends ServiceImpl<HighStockPositionM
HighMarketDetailsVO marketDetailsVO = new HighMarketDetailsVO(); HighMarketDetailsVO marketDetailsVO = new HighMarketDetailsVO();
BigDecimal stocksTotalPrice = new BigDecimal("0");
if(!ObjectUtils.isEmpty(stockPositions)){
List<String> codes = stockPositions.stream().map(HighStockPosition::getCode).collect(Collectors.toList()); List<String> codes = stockPositions.stream().map(HighStockPosition::getCode).collect(Collectors.toList());
//批量获取股票当前价格 //批量获取股票当前价格
Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes); Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes);
//计算股票总市值(当前) //计算股票总市值(当前)
BigDecimal stocksTotalPrice = financeCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping); stocksTotalPrice = financeCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping);
}
//计算总资产 剩余的钱+总市值 //计算总资产 剩余的钱+总市值
BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice); BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice);
//计算仓位 总市值/总资产 //计算仓位 总市值/总资产
......
...@@ -21,6 +21,7 @@ import com.zfxftech.telmarket.common.pojo.dao.InvestmentStyle; ...@@ -21,6 +21,7 @@ import com.zfxftech.telmarket.common.pojo.dao.InvestmentStyle;
import com.zfxftech.telmarket.common.pojo.dao.MemberBase; import com.zfxftech.telmarket.common.pojo.dao.MemberBase;
import com.zfxftech.telmarket.common.pojo.dao.Quote; import com.zfxftech.telmarket.common.pojo.dao.Quote;
import com.zfxftech.telmarket.common.pojo.dao.StocksCode; import com.zfxftech.telmarket.common.pojo.dao.StocksCode;
import com.zfxftech.telmarket.common.pojo.dao.high.HighStockPosition;
import com.zfxftech.telmarket.common.pojo.dao.permission.UsAdmin; import com.zfxftech.telmarket.common.pojo.dao.permission.UsAdmin;
import com.zfxftech.telmarket.common.pojo.dao.permission.UsTeamUser; import com.zfxftech.telmarket.common.pojo.dao.permission.UsTeamUser;
import com.zfxftech.telmarket.common.pojo.dao.smart.*; import com.zfxftech.telmarket.common.pojo.dao.smart.*;
...@@ -1360,11 +1361,14 @@ public class SmartStockPositionServiceImpl extends ServiceImpl<SmartStockPositio ...@@ -1360,11 +1361,14 @@ public class SmartStockPositionServiceImpl extends ServiceImpl<SmartStockPositio
public SmartMarketDetailsVO createMarketDetailsVOTask( List<SmartStockPosition> stockPositions, BigDecimal funding, SmartAccountProductRelation accountProductRelation) { public SmartMarketDetailsVO createMarketDetailsVOTask( List<SmartStockPosition> stockPositions, BigDecimal funding, SmartAccountProductRelation accountProductRelation) {
SmartMarketDetailsVO marketDetailsVO = new SmartMarketDetailsVO(); SmartMarketDetailsVO marketDetailsVO = new SmartMarketDetailsVO();
BigDecimal stocksTotalPrice = new BigDecimal("0");
if(!ObjectUtils.isEmpty(stockPositions)){
List<String> codes = stockPositions.stream().map(SmartStockPosition::getCode).collect(Collectors.toList()); List<String> codes = stockPositions.stream().map(SmartStockPosition::getCode).collect(Collectors.toList());
//批量获取股票当前价格 //批量获取股票当前价格
Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes); Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes);
//计算股票总市值(当前) //计算股票总市值(当前)
BigDecimal stocksTotalPrice = smartFinanceCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping); stocksTotalPrice = smartFinanceCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping);
}
//计算总值 //计算总值
BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice); BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice);
//计算仓位 //计算仓位
......
...@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
...@@ -51,11 +52,15 @@ public class SurveyStockPositionServiceImpl extends ServiceImpl<SurveyStockPosit ...@@ -51,11 +52,15 @@ public class SurveyStockPositionServiceImpl extends ServiceImpl<SurveyStockPosit
@Override @Override
public SurveyMarketDetailsVO createMarketDetailsVOTask(List<SurveyStockPosition> stockPositions, BigDecimal funding, SurveyAccountProductRelation accountProductRelation) { public SurveyMarketDetailsVO createMarketDetailsVOTask(List<SurveyStockPosition> stockPositions, BigDecimal funding, SurveyAccountProductRelation accountProductRelation) {
SurveyMarketDetailsVO marketDetailsVO = new SurveyMarketDetailsVO(); SurveyMarketDetailsVO marketDetailsVO = new SurveyMarketDetailsVO();
BigDecimal stocksTotalPrice = new BigDecimal("0");
if(!ObjectUtils.isEmpty(stockPositions)){
List<String> codes = stockPositions.stream().map(SurveyStockPosition::getCode).collect(Collectors.toList()); List<String> codes = stockPositions.stream().map(SurveyStockPosition::getCode).collect(Collectors.toList());
//批量获取股票当前价格 //批量获取股票当前价格
Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes); Map<String, Quote> codeAndPriceMapping = stockCodeService.batchQueryStockPrice(codes);
//计算股票总市值(当前) //计算股票总市值(当前)
BigDecimal stocksTotalPrice = surveyFinanceCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping); stocksTotalPrice = surveyFinanceCalculateService.calculateTotalAssets(stockPositions, codeAndPriceMapping);
}
//计算总值 //计算总值
BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice); BigDecimal totalPrice = BigDecimalUtil.add(funding, stocksTotalPrice);
//计算仓位 //计算仓位
......
...@@ -142,7 +142,6 @@ public class AssetStockPriceTask implements ApplicationRunner { ...@@ -142,7 +142,6 @@ public class AssetStockPriceTask implements ApplicationRunner {
//资管 //资管
public AssetAccountProductRelation AccountProductRelationTask(AssetAccountProductRelation accountProductRelation) { public AssetAccountProductRelation AccountProductRelationTask(AssetAccountProductRelation accountProductRelation) {
Date startTime = new Date();
AssetAccountProductRelation productRelation = new AssetAccountProductRelation(); AssetAccountProductRelation productRelation = new AssetAccountProductRelation();
try { try {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment