diff --git a/src/main/java/cn/stock/market/web/RefinitivApiController.java b/src/main/java/cn/stock/market/web/RefinitivApiController.java index 6437e8e..e4cd9a4 100644 --- a/src/main/java/cn/stock/market/web/RefinitivApiController.java +++ b/src/main/java/cn/stock/market/web/RefinitivApiController.java @@ -1,5 +1,7 @@ package cn.stock.market.web; +import cn.stock.market.domain.basic.entity.RetifiveStock; +import cn.stock.market.domain.basic.service.RetifiveStockService; import cn.stock.market.dto.RetifiveStockInfo; import cn.stock.market.listener.AppClient; import cn.stock.market.utils.RefinitivUtil; @@ -13,6 +15,7 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -34,19 +37,25 @@ public class RefinitivApiController { @Resource private AppClient appClient; + @Autowired + private RetifiveStockService retifiveStockService; @ApiOperation(value = "股票详情信息", httpMethod = "GET", response = RetifiveStockInfo.class) @ApiImplicitParams({@ApiImplicitParam(name = "symbol", value = "symbol值")}) @GetMapping("/getStockDetail") @EncryptFilter(decryptRequest = false) public ServerResponse getStockDetail(String symbol) { - // 计算每个线程应处理的元素数量 try { appClient.subscribe(symbol); // 等待消息, 设置超时时间,例如10秒 RefreshMsg refreshMsg = appClient.getMessageFuture().get(10, TimeUnit.SECONDS); if (DataType.DataTypes.FIELD_LIST == refreshMsg.payload().dataType()) { RetifiveStockInfo retifiveStockInfo = RefinitivUtil.decodeData(refreshMsg.payload().fieldList(), refreshMsg.name()); + //获取股票id + RetifiveStock stock = retifiveStockService.repository().findBtStockByCoCode(symbol); + if(stock != null){ + retifiveStockInfo.setId(stock.getId()); + } return ServerResponse.createBySuccess("操作成功", retifiveStockInfo); } } catch (Exception e) {