Browse Source

update doc

qianming 2 năm trước cách đây
mục cha
commit
932fa31622

+ 3 - 0
doc/docs/guide/dashboard.md

@@ -10,10 +10,13 @@
 
 ## 大屏简介
 
+左侧为工具栏和图层,上方为功能栏,右侧为配置栏,中间为画布。<br>
 ![img_2.png](../picture/dashboard/img_2.png) <br>
 
 ## 工具栏
+
 ![img24](../picture/dashboard/img_24.png) <br>
 
 ## 图层
+
 ![img25](../picture/dashboard/img_25.png) <br>

+ 67 - 9
doc/docs/guide/dataset.md

@@ -1,12 +1,13 @@
 ## 介绍
 
+根据选中的数据源+查询 sql 或请求体完成数据的查询。<br>
 ![img5](../picture/dateset/img_5.png) <br>
 
 [数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828) <br>
 
 ## SQL数据集
 
-尽量不要使用 “select *”,以及展示很大的数据量,图表不一定能展示、页面可能会卡死 <br>
+尽量不要使用 “select *”,以及展示很大的数据量,图表不一定能展示、页面可能会卡死 <br>
 
 ### Mysql数据集
 
@@ -15,7 +16,7 @@
 
 ### ES数据集
 
-**注**:es是通过调用xpack-sql,注意写法 <br>
+**注**:es是通过调用xpack-sql,注意写法,数据源亦有说明。 <br>
 ![es.png](../picture/dateset/img.png) <br>
 
 ### Kudu数据集
@@ -24,7 +25,8 @@
 
 ## HTTP数据集
 
-即原有Http数据源的功能,请注意:Http接口返回类型必须是Json、不能是text,text无法解析 <br>
+即原有Http数据源的功能,请注意:Http接口返回类型必须是Json、不能是text,text无法解析。 <br>
+支持请求路径和请求头中存在动态数据,采用 ${} 方式进行动态替换,具体看下面查询参数的相关说明。 <br>
 ![http.png](../picture/dateset/img_7.png) <br>
 
 ## 功能栏
@@ -35,8 +37,11 @@
 
 [数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828) <br>
 
+注意参数名要和sql(请求体)中变量名保持一致,sql(请求体)中的变量用 ${} 表示。 <br>
 ![img3](../picture/dateset/img_3.png) <br>
-注意参数名要和sql(请求体)中变量名保持一致,sql(请求体)中的变量用 ${} 表示 <br>
+如图所示,查询 sql 中,定义了两个变量,startTime 和 endTime。那需要我们在查询参数中添加对应的两个参数。 参数名保持和查询 sql
+中 ${param} 保持一致。<br>
+数据类型可以不填,暂时未用到。
 
 #### 数据类型
 
@@ -49,21 +54,74 @@
 返回 String,代表通过一段 js 脚本生成你所需要的参数。<br>
 返回其他类型报错!!!<br>
 
+```
+//返回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的语法不支持 <br>
+**注**:这里的JS是java的scriptengine执行的,很多ES6的语法不支持 <br>
 ![img4](../picture/dateset/img_4.png) <br>
-入参是data,返回值也必须是data,中间是JS的处理过程,注意入参返回都是List<JSONObject>,记得保存。 <br>
+入参是data,返回值也必须是data,中间是JS的处理过程,注意入参返回都是``List<JSONObject>``
+
+```
+// 根据sql查询出的结果进行数据清洗
+function dataTransform(data){
+	//自定义脚本内容
+	
+	//1.遍历测试预览中的java.util.ArrayList<java.lang.Object>
+	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来进行实现的 <br>
-[Groovy用法参考](https://my.oschina.net/u/4517014/blog/5526324) <br>
+通过Groovy来进行实现的,[Groovy用法参考](https://my.oschina.net/u/4517014/blog/5526324) <br>
+如下图所示: <br>
+建议在 idea 写好复制整个类到此处,位置 report-core/src/test/java/com/DemoGroovyHandler.java <br>
+出入参皆为 ``List<JSONObject>`` data
+![img8](../picture/dateset/img_8.png) <br>
 
 #### 字典项
 
+针对查询结果某一项 key 值,做一个翻译。<br>
 ![img6.png](../picture/dateset/img_6.png) <br>
-记得保存
 
+### 数据预览
+
+针对此次数据集,进行数据预览,尽量不要使用 select * from table,可能数据量过大,超过数据库字段长度限制,保存不了。<br>

+ 32 - 7
doc/docs/guide/datasource.md

@@ -3,12 +3,12 @@
 [数据源数据集用法总结](https://my.oschina.net/u/4517014/blog/5270828) <br>
 
 - 支持多数据源,内置mysql、elasticsearch、kudu等多种驱动 <br>
-- 可动态扩展
+- 可动态扩展(见下文)
   ![source.png](../picture/datasource/img_1.png)
 
 ## 类型
 
-查看已有的数据源类型 <br>
+查看已有的数据源类型 <br>
 ![img2](../picture/datasource/img_2.png)  <br>
 ![img3](../picture/datasource/img_3.png)  <br>
 
@@ -18,12 +18,37 @@
 表aj_report.gaea_dict_item, item_extend字段是下拉选择后动态表单渲染的json数据
 ```
 
-**注:** Http数据源功能已经移动到Http数据集中,原功能不变,有Http接口数据请直接使用Http数据集,请注意Http接口数据返回格式必须是Json
-
 ## 操作
 
-- 只有测试通过的数据源才可以保存
-  ![An image](../picture/datasource/img.png)
+- 只有测试通过的数据源才可以保存。<br>
+  ![An image](../picture/datasource/img.png) <br>
+
+## 内置数据源
+
+### JDBC数据源
+
+适用于JDBC驱动类数据库,驱动类、连接串、用户名、密码必须填写正确。<br>
+![img6](../picture/datasource/img_6.png) <br>
+
+### elasticsearch_sql数据源
+
+目前只支持 elasticsearch 的 x-pack sql。<br>
+固定写法:<br>
+
+- 请求路径:http://127.0.0.1:9200/_xpack/sql?format=json
+- 请求方式:POST
+- 请求头:{"Content-Type":"application/json"}
+- 请求体:{"query":"select 1"}
+
+![img7](../picture/datasource/img_7.png) <br>
+
+### HTTP数据源
+
+针对http,最好得返回结果是``List<JSONObject>``,目前而言,http 数据源操作上可能过于繁琐了些。<br>
+支持请求路径和请求头中存在动态数据,采用 ${} 方式进行动态替换,具体操作看数据集的相关说明。<br>
+![img8](../picture/datasource/img_8.png) <br>
+
+**注:** Http数据源功能已经移动到Http数据集中,原功能不变,有Http接口数据请直接使用Http数据集,请注意Http接口数据返回格式必须是Json。
 
 ## 扩展
 
@@ -39,7 +64,7 @@
 
 ![img4](../picture/datasource/img_4.png) <br>
 ![img5](../picture/datasource/img_5.png) <br>
- 
+
 **源码**
 
 源码推荐使用第二种方式。<br>

+ 4 - 4
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的在线表格,功能强大、配置简单、完全开源。<br>
 **注意:** Excel报表目前只是简单集成,如果你遇到了一些问题请在此[Issue](https://gitee.com/anji-plus/report/issues/I4CEWV) 下面进行回复。<br>
 
 ## 表格报表设计
 
 进入表格设计方法1: <br>
-从报表管理模块选择需要设计的大屏,按图示进入大屏设计界面 <br>
+从报表管理模块选择需要设计的大屏,按图示进入大屏设计界面 <br>
 ![img](../picture/excel/img.png) <br>
 
 进入大屏设计方法2: <br>
-从大屏报表模块选择需要设计的大屏,按图示进入大屏设计界面 <br>
+从大屏报表模块选择需要设计的大屏,按图示进入大屏设计界面 <br>
 ![img2](../picture/excel/img_1.png) <br>
 
 ## 简介
@@ -19,7 +19,7 @@ Excel报表基于Luckysheet开发,[Luckysheet](https://gitee.com/mengshukeji/L
 
 ## 使用
 
-**注**:不建议一列中同时存在个字段数据,同时一列值也建议不要存到超大数据量,肯定无法显示的<br>
+**注**:不建议一列中同时存在个字段数据,同时一列值也建议不要存到超大数据量,肯定无法显示的<br>
 ![img4](../picture/excel/img_3.png) <br>
 
 ## 预览/保存

+ 10 - 6
doc/docs/guide/importexport.md

@@ -1,5 +1,7 @@
-**注:导入导出目前是初始版本,报错没有细化,如果导入导出过程中页面无反应,请F12**
-**注:“导入成功/失败”的提示不一定对应当前真实导入导出情况,请根据实际导入导出的结果进行判断**
+## 说明
+
+导入导出快慢都是很正常的,不需要重复点击,没那么快就能处理完导入导出操作。<br>
+使用导入导出,需要确定好自己是否在 bootstrap.yml 配置文件里面配置好了上传下载的地址,否则当有图片导入时会无法正常显示。<br>
 
 ## 导出
 
@@ -8,7 +10,9 @@
 
 ### 导出数据集
 
-适用于同一系统内部使用
+适用于同一系统内部使用。<br>
+**注:**
+作为导入的新系统必须也要有相同的数据集才可以正常显示,导出数据集并不是说将你当前大屏用到的数据集也一并导出了,仅是导出包含了动态数据等相关配置而已。<br>
 
 ### 导出不含有数据集
 
@@ -17,9 +21,9 @@
 ## 导入
 
 ![img1](../picture/imexport/img_1.png) <br>
-选择一个导出的zip文件导入即可。注意,导入会覆盖当前大屏,请新建一空白的大屏进行导入。<br>
-**注:如果你导入的大屏中含有你当前系统不存在的图表,整个大屏是不会显示的。** <br>
+选择一个导出的zip文件导入即可。注意,导入会覆盖当前大屏,请新建一空白的大屏进行导入。<br>
+**注:** 如果你导入的大屏中含有你当前系统不存在的图表,整个大屏是不会显示的。<br>
 
 ## 导入导出权限
 
-请查看权限控制模块中关于导入导出权限的说明。 <br>
+请查看权限控制模块中关于导入导出权限的说明。 <br>

+ 28 - 0
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即可**
+
+## 新增/修复

BIN
doc/docs/picture/datasource/img_6.png


BIN
doc/docs/picture/datasource/img_7.png


BIN
doc/docs/picture/datasource/img_8.png


BIN
doc/docs/picture/dateset/img_8.png