1
zj
6 days ago 7166584366406c107c3e46560580765f2db4cd5c
src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -116,33 +116,48 @@
    PageHelper.startPage(pageNum, pageSize);
    User user = iUserService.getCurrentUser(request);
    List<Stock> stockList = this.stockMapper.findStockListByKeyWords(keyWords, stockPlate, stockType, Integer.valueOf(0));
    boolean quickSearch = org.apache.commons.lang3.StringUtils.isNotBlank(keyWords);
    List<StockListVO> stockListVOS = Lists.newArrayList();
    if (stockList.size() > 0)
      for (Stock stock : stockList) {
        StockListVO stockListVO = new StockListVO();
        stockListVO=SinaStockApi.assembleLideStockListVO(LiDeDataUtils.getStock(stock.getStockCode()));
        if(ObjectUtils.isEmpty(stockListVO)){
          stockListVO = SinaStockApi.assembleStockListVO(SinaStockApi.getSinaStock(stock.getStockGid()));
        }
        stockListVO.setCode(stock.getStockCode());
        stockListVO.setSpell(stock.getStockSpell());
        stockListVO.setGid(stock.getStockGid());
        BigDecimal day3Rate = (BigDecimal)selectRateByDaysAndStockCode(stock.getStockCode(), 3).getData();
        stockListVO.setDay3Rate(day3Rate);
        stockListVO.setStock_plate(stock.getStockPlate());
        stockListVO.setStock_type(stock.getStockType());
        //是否添加自选
        if(user == null){
          stockListVO.setIsOption("0");
        } else {
          stockListVO.setIsOption(iStockOptionService.isMyOption(user.getId(), stock.getStockCode()));
        }
        stockListVOS.add(stockListVO);
      }
    if (stockList.size() > 0) {
      Integer userId = user != null ? user.getId() : null;
      stockListVOS = stockList.parallelStream().map(stock -> assembleStockListItem(stock, userId, quickSearch))
              .collect(java.util.stream.Collectors.toList());
    }
    PageInfo pageInfo = new PageInfo(stockList);
    pageInfo.setList(stockListVOS);
    return ServerResponse.createBySuccess(pageInfo);
  }
  /** 搜索列表组装行情:关键词搜索走轻量路径,跳过三日涨幅等慢查询 */
  private StockListVO assembleStockListItem(Stock stock, Integer userId, boolean quickSearch) {
    StockListVO stockListVO = SinaStockApi.assembleLideStockListVO(LiDeDataUtils.getStock(stock.getStockCode()));
    if (ObjectUtils.isEmpty(stockListVO)) {
      stockListVO = SinaStockApi.assembleStockListVO(SinaStockApi.getSinaStock(stock.getStockGid()));
    }
    if (stockListVO == null) {
      stockListVO = new StockListVO();
      stockListVO.setName(stock.getStockName());
      stockListVO.setNowPrice("0");
      stockListVO.setHcrate(java.math.BigDecimal.ZERO);
    }
    stockListVO.setCode(stock.getStockCode());
    stockListVO.setSpell(stock.getStockSpell());
    stockListVO.setGid(stock.getStockGid());
    if (!quickSearch) {
      BigDecimal day3Rate = (BigDecimal) selectRateByDaysAndStockCode(stock.getStockCode(), 3).getData();
      stockListVO.setDay3Rate(day3Rate);
    }
    stockListVO.setStock_plate(stock.getStockPlate());
    stockListVO.setStock_type(stock.getStockType());
    if (userId == null) {
      stockListVO.setIsOption("0");
    } else if (quickSearch) {
      stockListVO.setIsOption("0");
    } else {
      stockListVO.setIsOption(iStockOptionService.isMyOption(userId, stock.getStockCode()));
    }
    return stockListVO;
  }
  public void z1() {
    this.stockPoll.z1();
@@ -799,7 +814,7 @@
//    String url=market_url+param;
//    result = HttpClientRequest.doGet(url);
//
    result = HttpClientRequest.doGet("http://36.138.182.213:7001/crypto/getStockSort.do?" + param);
    result = HttpClientRequest.doGet(PropertiesUtil.getProperty("sina.single.stock.sort.proxy.url") + param);
    com.alibaba.fastjson.JSONArray jsonArray = JSON.parseArray(result);
    return ServerResponse.createBySuccess(jsonArray);
  }