优化代码
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package cn.stock.market.infrastructure.job;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.stock.market.domain.basic.entity.BtodayStock;
|
||||
import cn.stock.market.domain.basic.entity.StockIpo;
|
||||
import cn.stock.market.domain.basic.repository.BtodayStockRepository;
|
||||
@@ -151,7 +152,7 @@ public class Scraper {
|
||||
stockIpo.setApply(entry.getString("total_subs"));
|
||||
stockIpo.setCreateDate(new Date());
|
||||
stockIpo.setUpdateDate(new Date());
|
||||
stockIpo.setSourceType("2");
|
||||
stockIpo.setSourceType("3");
|
||||
listStockIpoList.add(stockIpo);
|
||||
}
|
||||
|
||||
@@ -173,17 +174,20 @@ public class Scraper {
|
||||
|
||||
// stockIpoRepository.saveAll(listStockIpoList);
|
||||
|
||||
List<String> nameList = Lists.transform(listStockIpoList, StockIpo::getStockName);
|
||||
List<StockIpo> existStockIpoList = stockIpoRepository.findAll(QStockIpoPO.stockIpoPO.stockName.in(nameList));
|
||||
List<String> existingStockNames = existStockIpoList.stream()
|
||||
.map(StockIpo::getStockName)
|
||||
List<String> scIdList = Lists.transform(listStockIpoList, StockIpo::getStockCode);
|
||||
List<StockIpo> existStockIpoList = stockIpoRepository.findAll(QStockIpoPO.stockIpoPO.stockCode.in(scIdList));
|
||||
List<String> existingStockScIds = existStockIpoList.stream()
|
||||
.map(StockIpo::getStockCode)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
listStockIpoList = listStockIpoList.stream()
|
||||
.filter(stockIpos -> !existingStockNames.contains(stockIpos.getStockName()))
|
||||
.filter(stockIpos -> !existingStockScIds.contains(stockIpos.getStockCode()))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
//保存全部的新股
|
||||
if(CollectionUtil.isNotEmpty(listStockIpoList)){
|
||||
stockIpoRepository.saveAll(listStockIpoList);
|
||||
}
|
||||
|
||||
// 输出整个 JSON 数据
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user