diff --git a/doc/docs/guide/dashboard.md b/doc/docs/guide/dashboard.md index 6cc68f2e..42e35761 100644 --- a/doc/docs/guide/dashboard.md +++ b/doc/docs/guide/dashboard.md @@ -10,10 +10,13 @@ ## 大屏简介 +左侧为工具栏和图层,上方为功能栏,右侧为配置栏,中间为画布。
![img_2.png](../picture/dashboard/img_2.png)
## 工具栏 + ![img24](../picture/dashboard/img_24.png)
## 图层 + ![img25](../picture/dashboard/img_25.png)
diff --git a/doc/docs/guide/dataset.md b/doc/docs/guide/dataset.md index 73fe5031..f4e07d4d 100644 --- a/doc/docs/guide/dataset.md +++ b/doc/docs/guide/dataset.md @@ -1,12 +1,13 @@ ## 介绍 +根据选中的数据源+查询 sql 或请求体完成数据的查询。
![img5](../picture/dateset/img_5.png)
[数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828)
## SQL数据集 -尽量不要使用 “select *”,以及展示很大的数据量,图表不一定能展示、页面可能会卡死
+尽量不要使用 “select *”,以及展示很大的数据量,图表不一定能展示、页面可能会卡死。
### Mysql数据集 @@ -15,7 +16,7 @@ ### ES数据集 -**注**:es是通过调用xpack-sql,注意写法
+**注**:es是通过调用xpack-sql,注意写法,数据源亦有说明。
![es.png](../picture/dateset/img.png)
### Kudu数据集 @@ -24,7 +25,8 @@ ## HTTP数据集 -即原有Http数据源的功能,请注意:Http接口返回类型必须是Json、不能是text,text无法解析
+即原有Http数据源的功能,请注意:Http接口返回类型必须是Json、不能是text,text无法解析。
+支持请求路径和请求头中存在动态数据,采用 ${} 方式进行动态替换,具体看下面查询参数的相关说明。
![http.png](../picture/dateset/img_7.png)
## 功能栏 @@ -35,8 +37,11 @@ [数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828)
+注意参数名要和sql(请求体)中变量名保持一致,sql(请求体)中的变量用 ${} 表示。
![img3](../picture/dateset/img_3.png)
-注意参数名要和sql(请求体)中变量名保持一致,sql(请求体)中的变量用 ${} 表示
+如图所示,查询 sql 中,定义了两个变量,startTime 和 endTime。那需要我们在查询参数中添加对应的两个参数。 参数名保持和查询 sql +中 ${param} 保持一致。
+数据类型可以不填,暂时未用到。 #### 数据类型 @@ -49,21 +54,74 @@ 返回 String,代表通过一段 js 脚本生成你所需要的参数。
返回其他类型报错!!!
+``` +//返回yyyyy-MM-dd类型的当前时间 +function verification(data){ + //自定义脚本内容 + //获取当前时间 + var date = new Date(); + var year = date.getFullYear(); + var month = date.getMonth() + 1; + var day = date.getDate(); + if (month < 10) { + month = "0" + month; + } + if (day < 10) { + day = "0" + day; + } + var nowDate = year + "-" + month + "-" + day; + return nowDate; +} +``` + ### 数据转换 +数据转换是在执行完 sql 之后进行的数据清洗操作。 + #### js脚本 -**注**:这里的JS是java的scriptengine执行的,很多ES6的语法不支持
+**注**:这里的JS是java的scriptengine执行的,很多ES6的语法不支持。
![img4](../picture/dateset/img_4.png)
-入参是data,返回值也必须是data,中间是JS的处理过程,注意入参返回都是List,记得保存。
+入参是data,返回值也必须是data,中间是JS的处理过程,注意入参返回都是``List`` + +``` +// 根据sql查询出的结果进行数据清洗 +function dataTransform(data){ + //自定义脚本内容 + + //1.遍历测试预览中的java.util.ArrayList + for(j = 0, len = data.length; j < len; j++){ + //获取一行数据 + var row = data[j] + //比如对brand字段进行拆分,例如A-100,B-50 + var brand = row['brand'] + var split = brand.split('-') + //新增两个字段 + var model = split[0] + var series = split[1] + + //对原始对象赋值 + data[j]['model'] = model + data[j]['series'] = series + + } + return data; +} +``` #### java脚本 -通过Groovy来进行实现的
-[Groovy用法参考](https://my.oschina.net/u/4517014/blog/5526324)
+通过Groovy来进行实现的,[Groovy用法参考](https://my.oschina.net/u/4517014/blog/5526324)
+如下图所示:
+建议在 idea 写好复制整个类到此处,位置 report-core/src/test/java/com/DemoGroovyHandler.java
+出入参皆为 ``List`` data +![img8](../picture/dateset/img_8.png)
#### 字典项 +针对查询结果某一项 key 值,做一个翻译。
![img6.png](../picture/dateset/img_6.png)
-记得保存 +### 数据预览 + +针对此次数据集,进行数据预览,尽量不要使用 select * from table,可能数据量过大,超过数据库字段长度限制,保存不了。
diff --git a/doc/docs/guide/datasource.md b/doc/docs/guide/datasource.md index 5b4e00dc..e63493d3 100644 --- a/doc/docs/guide/datasource.md +++ b/doc/docs/guide/datasource.md @@ -3,12 +3,12 @@ [数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828)
- 支持多数据源,内置mysql、elasticsearch、kudu等多种驱动
-- 可动态扩展 +- 可动态扩展(见下文) ![source.png](../picture/datasource/img_1.png) ## 类型 -查看已有的数据源类型
+查看已有的数据源类型。
![img2](../picture/datasource/img_2.png)
![img3](../picture/datasource/img_3.png)
@@ -18,12 +18,37 @@ 表aj_report.gaea_dict_item, item_extend字段是下拉选择后动态表单渲染的json数据 ``` -**注:** Http数据源功能已经移动到Http数据集中,原功能不变,有Http接口数据请直接使用Http数据集,请注意Http接口数据返回格式必须是Json - ## 操作 -- 只有测试通过的数据源才可以保存 - ![An image](../picture/datasource/img.png) +- 只有测试通过的数据源才可以保存。
+ ![An image](../picture/datasource/img.png)
+ +## 内置数据源 + +### JDBC数据源 + +适用于JDBC驱动类数据库,驱动类、连接串、用户名、密码必须填写正确。
+![img6](../picture/datasource/img_6.png)
+ +### elasticsearch_sql数据源 + +目前只支持 elasticsearch 的 x-pack sql。
+固定写法:
+ +- 请求路径:http://127.0.0.1:9200/_xpack/sql?format=json +- 请求方式:POST +- 请求头:{"Content-Type":"application/json"} +- 请求体:{"query":"select 1"} + +![img7](../picture/datasource/img_7.png)
+ +### HTTP数据源 + +针对http,最好得返回结果是``List``,目前而言,http 数据源操作上可能过于繁琐了些。
+支持请求路径和请求头中存在动态数据,采用 ${} 方式进行动态替换,具体操作看数据集的相关说明。
+![img8](../picture/datasource/img_8.png)
+ +**注:** Http数据源功能已经移动到Http数据集中,原功能不变,有Http接口数据请直接使用Http数据集,请注意Http接口数据返回格式必须是Json。 ## 扩展 @@ -39,7 +64,7 @@ ![img4](../picture/datasource/img_4.png)
![img5](../picture/datasource/img_5.png)
- + **源码** 源码推荐使用第二种方式。
diff --git a/doc/docs/guide/excel.md b/doc/docs/guide/excel.md index ef68d86f..6f6c71f1 100644 --- a/doc/docs/guide/excel.md +++ b/doc/docs/guide/excel.md @@ -1,16 +1,16 @@ # 介绍 -Excel报表基于Luckysheet开发,[Luckysheet](https://gitee.com/mengshukeji/Luckysheet) 一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源。 +Excel报表基于Luckysheet开发,[Luckysheet](https://gitee.com/mengshukeji/Luckysheet) 一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源。
**注意:** Excel报表目前只是简单集成,如果你遇到了一些问题请在此[Issue](https://gitee.com/anji-plus/report/issues/I4CEWV) 下面进行回复。
## 表格报表设计 进入表格设计方法1:
-从报表管理模块选择需要设计的大屏,按图示进入大屏设计界面
+从报表管理模块选择需要设计的大屏,按图示进入大屏设计界面。
![img](../picture/excel/img.png)
进入大屏设计方法2:
-从大屏报表模块选择需要设计的大屏,按图示进入大屏设计界面
+从大屏报表模块选择需要设计的大屏,按图示进入大屏设计界面。
![img2](../picture/excel/img_1.png)
## 简介 @@ -19,7 +19,7 @@ Excel报表基于Luckysheet开发,[Luckysheet](https://gitee.com/mengshukeji/L ## 使用 -**注**:不建议一列中同时存在俩个字段数据,同时一列值也建议不要存到超大数据量,肯定无法显示的
+**注**:不建议一列中同时存在两个字段数据,同时一列值也建议不要存到超大数据量,肯定无法显示的。
![img4](../picture/excel/img_3.png)
## 预览/保存 diff --git a/doc/docs/guide/importexport.md b/doc/docs/guide/importexport.md index b2bc6fac..62df5335 100644 --- a/doc/docs/guide/importexport.md +++ b/doc/docs/guide/importexport.md @@ -1,5 +1,7 @@ -**注:导入导出目前是初始版本,报错没有细化,如果导入导出过程中页面无反应,请F12** -**注:“导入成功/失败”的提示不一定对应当前真实导入导出情况,请根据实际导入导出的结果进行判断** +## 说明 + +导入导出快慢都是很正常的,不需要重复点击,没那么快就能处理完导入导出操作。
+使用导入导出,需要确定好自己是否在 bootstrap.yml 配置文件里面配置好了上传下载的地址,否则当有图片导入时会无法正常显示。
## 导出 @@ -8,7 +10,9 @@ ### 导出数据集 -适用于同一系统内部使用 +适用于同一系统内部使用。
+**注:** +作为导入的新系统必须也要有相同的数据集才可以正常显示,导出数据集并不是说将你当前大屏用到的数据集也一并导出了,仅是导出包含了动态数据等相关配置而已。
### 导出不含有数据集 @@ -17,9 +21,9 @@ ## 导入 ![img1](../picture/imexport/img_1.png)
-选择一个导出的zip文件导入即可。注意,导入会覆盖当前大屏,请新建一张空白的大屏进行导入。
-**注:如果你导入的大屏中含有你当前系统不存在的图表,整个大屏是不会显示的。**
+选择一个导出的zip文件导入即可。注意,导入会覆盖当前大屏,请新建一个空白的大屏进行导入。
+**注:** 如果你导入的大屏中含有你当前系统不存在的图表,整个大屏是不会显示的。
## 导入导出权限 -请查看权限控制模块中关于导入导出权限的说明。
\ No newline at end of file +请查看权限控制模块中关于导入导出权限的说明。
diff --git a/doc/docs/guide/releases/1.0.0.md b/doc/docs/guide/releases/1.0.0.md new file mode 100644 index 00000000..7784d6e3 --- /dev/null +++ b/doc/docs/guide/releases/1.0.0.md @@ -0,0 +1,28 @@ +## 注意事项 + +- 1.0版本调整了底层sql,具体位置是:report-core/src/main/resource/db.migration, + 删除了过往所有的sql,现在此目录下sql仅包含aj_report基础信息库的相关sql,sql文件的命名也会和版本号保持一致, + 之前版本提供的示例数据(aj_report_init数据库的sql),aj_report_init.sql 文件放置在 doc/example目录下。 + +- 如果需要将之前版本的示例数据删除,delete_aj_report_init.sql 文件放置在 doc/example目录下。 + +- 对于从之前版本升级到1.0.0版本,为避免sql重复执行覆盖等问题,1.0.0版本的配置项bootstrap.yml将默认禁用flyway, + 从0.9.9版本更新到1.0.0版本的更新sql,V0.9.9_U_V1.0.0.sql 文件放置在 doc/update1.0目录下,请参照下面的步骤内容进行操作, + 如果从更低的版本升级到V1.0.0,请先升级到V0.9.9版本,可参考之前版本的[releases](https://gitee.com/anji-plus/report/releases)。 + +**如果从V0.9.9版本更新至V1.0.0版本后需要继续使用flyway功能,必需解决新旧sql的冲突问题** + +- 0.将自己系统的数据库数据进行备份 +- 1.手动执行V0.9.9_U_V1.0.0.sql(doc/update1.0 目录下) +- 2.插入一条数据到flyway_schema_history表中,sql如下 + +``` + INSERT INTO `aj_report`.`flyway_schema_history`(`installed_rank`, `version`, `description`, `type`, `script`, `checksum`, `installed_by`, `installed_on`, `execution_time`, `success`) + VALUES (25, '1.0.0', 'init', 'SQL', 'V1.0.0__init.sql', 166872711, 'root', '2023-01-10 07:31:07', 70, 1); +``` + +- 3.将配置项bootstrap.yml中的flyway改为true + +**如果是直接使用1.0.0版本,只需要将配置项bootstrap.yml中的flyway改为true即可** + +## 新增/修复 diff --git a/doc/docs/picture/datasource/img_6.png b/doc/docs/picture/datasource/img_6.png new file mode 100644 index 00000000..c490c580 Binary files /dev/null and b/doc/docs/picture/datasource/img_6.png differ diff --git a/doc/docs/picture/datasource/img_7.png b/doc/docs/picture/datasource/img_7.png new file mode 100644 index 00000000..6d2ea1b7 Binary files /dev/null and b/doc/docs/picture/datasource/img_7.png differ diff --git a/doc/docs/picture/datasource/img_8.png b/doc/docs/picture/datasource/img_8.png new file mode 100644 index 00000000..8d5ca5f2 Binary files /dev/null and b/doc/docs/picture/datasource/img_8.png differ diff --git a/doc/docs/picture/dateset/img_8.png b/doc/docs/picture/dateset/img_8.png new file mode 100644 index 00000000..24e5952d Binary files /dev/null and b/doc/docs/picture/dateset/img_8.png differ