如有需要和建议请致信[email protected]
开发原因
公司最近有报表系统的需求,展开调查,并没发现有合适的开源的系统,一些开源的系统如ureport等也是开源了一个很简单的版本,如果使用也需要进行开发,由于该系统不是很着急,最近自己也也不是很忙,就想尝试一下自己开发一个报表系统。
技术架构
由于自己本身就是java出身,肯定使用java来开发了,spring也是主流的选择,为了扩展性还是使用了微服务,最后后台选择采用SpringBoot+Dubbo的微服务架构。前端采用了vue,数据库肯定是mysql了,oracle用不起0.0。
基本架构:Vue+SpringBoot+Dubbo+Mybaits+Mysql。
成果
初版已经完成,虽然功能不多,但是可以满足基本的需求。不多说,上图为敬
1、基本的用户角色权限管理,可以控制到按钮。
以上部分是用户角色权限管理。
重点来了,核心报表部分
1、报表类型管理,为了方便报表的查看,将报表进行分类管理
2、数据库维护,将需要生成报表的数据库维护一下,但是目前只支持mysql数据库
3、报表管理,新建报表,关联数据库,可以将报表跟角色进行关联,控制用户访问的权限,进行报表设计
4、设计报表,可以设计excel报表,也可以设计图形报表,目前图形报表支持柱状图,饼状图和折线图。
添加数据集和参数,支持多数据集,参数可以支持字符串,数字,日期,下拉单选和下拉多选,其中下单单选和下拉多选支持自定义或者sql语句查询。
聚合方式目前支持列表和分组两种方式
5、图表设计:
charts支持拖拽和缩放,支持自定义位置和大小。
6、查看报表,根据登陆用户查看有权限的报表
最后的样式:
导出的excel样式
如有需要和建议请致信[email protected]