RefinitivApiController股票详情信息添加id
This commit is contained in:
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user