一、项目结构
index.tsx, 设置两个路由主页、PK页; 它们之前有PK预览页作为跳转
1、主页(ReportMain.tsx)
可以选择要查看财报的一家上市。报表类型,报表时间。默认选中第一家。流程如下:
数据来源: 本站必须数据有两个:一是所有上市公司基础数据、三大报表数据库column字段名与中文对应关系表。
(1)打开本站,控制类(ReportLogic.ts)马上下载这两份配置表(配置表由python脚本生成,详情查看《【财报网站(开源)笔记一】Python获取A股上市公司财报并写入数据库》)
(2)下载完数据解析保存到stockInfoStore(mobx),由于主页(ReportMain.tsx)有@observer,当控制类把数据保存到stockInfoStore里时,界面就自动更新并取第一家上市公司平安银行作为默认选中。
(3)默认选中的上市公司只是基础数据,在stockInfoStore中查此家公司详细数据,是没有的,就会请求此只股票详细数据。得到详细数据,才完整地显示了此家股票。
PS: 基础数据、详细数据的定义,参看《【财报网站(开源)笔记二】服务器(springboot)》中获取上市公司详细信息
【获取】按钮即向服务器请求所选数据。【加入对比】可将当前公司加入对比栏。选择两只以上股票,可以进入PK预览页。
获取到报表后,如果获取的是多季度报表,双击任意一行,可展示这些季度报表的曲线图。
2、PK预览页
可以减小所选对比公司或进入PK页。
此页没有服务器接口,点击主页【加入对比】按钮,一轮判断之后,加入pkStore中。mobx触发界面更新。红点提醒、界面会同时更新。点击预览页上"x"按钮,从pkStore中删除,mobx自动刷新界面。
3、PK页
通过预览页进入PK页,选择报表、报表时间,点击【获取】按钮即可得到对应PK数据。
4、拓展功能:
(1)打开PK页,需要登陆。甚至帐户等级。
(2)PK页也可双击展示几家公司的曲线图。