98 lines
4.9 KiB
Java
98 lines
4.9 KiB
Java
package com.diagnose.controller;
|
|
|
|
import com.diagnose.common.result.CommonResult;
|
|
import com.diagnose.service.SearchService;
|
|
import com.diagnose.service.StockService;
|
|
import com.diagnose.vo.*;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiParam;
|
|
import org.springframework.validation.annotation.Validated;
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.validation.constraints.Max;
|
|
import javax.validation.constraints.Min;
|
|
import javax.validation.constraints.NotBlank;
|
|
import javax.validation.constraints.NotNull;
|
|
import java.util.List;
|
|
|
|
@Api(tags = "投顾")
|
|
@RestController
|
|
public class DiagnoseController {
|
|
|
|
@Resource
|
|
private SearchService searchService;
|
|
|
|
@Resource
|
|
private StockService stockService;
|
|
|
|
@ApiOperation("综合搜索")
|
|
@GetMapping("/diagnose/search")
|
|
public CommonResult<List<StockVO>> search(@RequestParam("keyword") @Validated @NotBlank @ApiParam(required = true, value = "关键词") String keyword) {
|
|
List<StockVO> list = searchService.search(keyword);
|
|
return CommonResult.success(list);
|
|
}
|
|
|
|
@ApiOperation("聚合数据")
|
|
@GetMapping("/diagnose/union")
|
|
public CommonResult<UnionVO> union(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
UnionVO vo = stockService.unionWithCache(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("综合评分")
|
|
@GetMapping("/diagnose/comprehensiveEvaluation")
|
|
public CommonResult<ComprehensiveEvaluationVO> comprehensiveEvaluation(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
ComprehensiveEvaluationVO vo = stockService.comprehensiveEvaluation(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("财务估值")
|
|
@GetMapping("/diagnose/financialValuation")
|
|
public CommonResult<FinancialValuationVO> financialValuation(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
FinancialValuationVO vo = stockService.financialValuation(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("财务估值-更多")
|
|
@GetMapping("/diagnose/financialValuationExtend")
|
|
public CommonResult<FinancialValuationExtendVO> financialValuationExtend(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
FinancialValuationExtendVO vo = stockService.financialValuationExtend(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("财务估值-估值分析")
|
|
@GetMapping("/diagnose/financialValuationAnalysis")
|
|
public CommonResult<List<ValuationAnalysisVO>> financialValuationAnalysis(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode,
|
|
@RequestParam("timeSpan") @Validated @NotNull @Min(1) @Max(10) @ApiParam(required = true, value = "周期 1、3、5、10年") Integer timeSpan,
|
|
@RequestParam("type") @Validated @NotNull @Min(2) @Max(3) @ApiParam(required = true, value = "类型 2:市盈率 3:市净率") Integer type) {
|
|
List<ValuationAnalysisVO> list = stockService.financialValuationAnalysis(stkUniCode, timeSpan, type);
|
|
return CommonResult.success(list);
|
|
}
|
|
|
|
@ApiOperation("量化分析")
|
|
@GetMapping("/diagnose/quantitativeAnalysis")
|
|
public CommonResult<QuantitativeAnalysisVO> quantitativeAnalysis(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
QuantitativeAnalysisVO vo = stockService.quantitativeAnalysis(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("市场热度")
|
|
@GetMapping("/diagnose/marketSentiment")
|
|
public CommonResult<MarketSentimentVO> marketSentiment(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
MarketSentimentVO vo = stockService.marketSentiment(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
@ApiOperation("主力动向")
|
|
@GetMapping("/diagnose/institutionalActivity")
|
|
public CommonResult<InstitutionalActivityVO> institutionalActivity(@RequestParam("stkUniCode") @Validated @NotNull @ApiParam(required = true, value = "证券统一编码") Long stkUniCode) {
|
|
InstitutionalActivityVO vo = stockService.institutionalActivity(stkUniCode);
|
|
return CommonResult.success(vo);
|
|
}
|
|
|
|
}
|