|
|
@@ -30,7 +30,6 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
import java.io.BufferedInputStream;
|
|
|
import java.io.InputStream;
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.math.RoundingMode;
|
|
|
import java.nio.charset.Charset;
|
|
|
import java.time.LocalDate;
|
|
|
import java.util.ArrayList;
|
|
|
@@ -672,36 +671,6 @@ public class StockPoolHistoryServiceImpl implements IStockPoolHistoryService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 计算行情涨跌(最高涨幅)
|
|
|
- * 公式:(十日之内最高价 - 当天收盘价) / 当天收盘价 * 100
|
|
|
- * 如果找不到数据则返回0
|
|
|
- *
|
|
|
- * @param stockCode 股票代码
|
|
|
- * @param recordDate 当前记录日期
|
|
|
- * @param dayClosePrice 当天收盘价
|
|
|
- * @return 最高涨幅百分比,保留2位小数
|
|
|
- */
|
|
|
- private BigDecimal calculateHighTrend(String stockCode, LocalDate recordDate, BigDecimal dayClosePrice) {
|
|
|
- if (dayClosePrice == null || dayClosePrice.compareTo(BigDecimal.ZERO) == 0) {
|
|
|
- return BigDecimal.ZERO;
|
|
|
- }
|
|
|
-
|
|
|
- // 查询十日内最高价
|
|
|
- BigDecimal tenDaysHighestPrice = baseMapper.selectTenDaysHighestPrice(stockCode, recordDate);
|
|
|
-
|
|
|
- if (tenDaysHighestPrice == null) {
|
|
|
- // 找不到十日内数据,返回0
|
|
|
- return BigDecimal.ZERO;
|
|
|
- }
|
|
|
-
|
|
|
- // 计算最高涨幅:(十日之内最高价 - 当天收盘价) / 当天收盘价 * 100
|
|
|
- return tenDaysHighestPrice.subtract(dayClosePrice)
|
|
|
- .divide(dayClosePrice, 4, RoundingMode.HALF_UP)
|
|
|
- .multiply(new BigDecimal("100"))
|
|
|
- .setScale(2, RoundingMode.HALF_UP);
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 构建查询条件
|
|
|
*/
|
|
|
@@ -719,4 +688,4 @@ public class StockPoolHistoryServiceImpl implements IStockPoolHistoryService {
|
|
|
lqw.orderByAsc(StockPoolHistory::getId);
|
|
|
return lqw;
|
|
|
}
|
|
|
-}
|
|
|
+}
|