Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
dataease
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
zhu
dataease
Commits
75e9537a
提交
75e9537a
authored
2月 22, 2021
作者:
junjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: 数据集 分组 场景
上级
2b909be5
隐藏空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
557 行增加
和
964 行删除
+557
-964
DatasetGroup.java
...d/src/main/java/io/dataease/base/domain/DatasetGroup.java
+2
-0
DatasetGroupExample.java
...ain/java/io/dataease/base/domain/DatasetGroupExample.java
+70
-0
DatasetScene.java
...d/src/main/java/io/dataease/base/domain/DatasetScene.java
+0
-20
DatasetSceneExample.java
...ain/java/io/dataease/base/domain/DatasetSceneExample.java
+0
-541
DatasetGroupMapper.xml
.../main/java/io/dataease/base/mapper/DatasetGroupMapper.xml
+20
-5
DatasetSceneMapper.java
...main/java/io/dataease/base/mapper/DatasetSceneMapper.java
+0
-31
DatasetSceneMapper.xml
.../main/java/io/dataease/base/mapper/DatasetSceneMapper.xml
+0
-212
DataSetGroupController.java
...o/dataease/controller/dataset/DataSetGroupController.java
+13
-4
DataSetGroupRequest.java
...aease/controller/request/dataset/DataSetGroupRequest.java
+13
-0
DataSetGroupDTO.java
...rc/main/java/io/dataease/dto/dataset/DataSetGroupDTO.java
+3
-0
DataSetGroupService.java
...java/io/dataease/service/dataset/DataSetGroupService.java
+79
-0
V2__metersphere_ddl.sql
...d/src/main/resources/db/migration/V2__metersphere_ddl.sql
+1
-9
DataSet.vue
frontend/src/business/components/dataset/DataSet.vue
+2
-2
Group.vue
frontend/src/business/components/dataset/group/Group.vue
+309
-137
en-US.js
frontend/src/i18n/en-US.js
+15
-1
zh-CN.js
frontend/src/i18n/zh-CN.js
+15
-1
zh-TW.js
frontend/src/i18n/zh-TW.js
+15
-1
没有找到文件。
backend/src/main/java/io/dataease/base/domain/DatasetGroup.java
浏览文件 @
75e9537a
...
...
@@ -13,6 +13,8 @@ public class DatasetGroup implements Serializable {
private
Integer
level
;
private
String
type
;
private
String
createBy
;
private
Long
createTime
;
...
...
backend/src/main/java/io/dataease/base/domain/DatasetGroupExample.java
浏览文件 @
75e9537a
...
...
@@ -374,6 +374,76 @@ public class DatasetGroupExample {
return
(
Criteria
)
this
;
}
public
Criteria
andTypeIsNull
()
{
addCriterion
(
"`type` is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeIsNotNull
()
{
addCriterion
(
"`type` is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeEqualTo
(
String
value
)
{
addCriterion
(
"`type` ="
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeNotEqualTo
(
String
value
)
{
addCriterion
(
"`type` <>"
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeGreaterThan
(
String
value
)
{
addCriterion
(
"`type` >"
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"`type` >="
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeLessThan
(
String
value
)
{
addCriterion
(
"`type` <"
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"`type` <="
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeLike
(
String
value
)
{
addCriterion
(
"`type` like"
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeNotLike
(
String
value
)
{
addCriterion
(
"`type` not like"
,
value
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeIn
(
List
<
String
>
values
)
{
addCriterion
(
"`type` in"
,
values
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"`type` not in"
,
values
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"`type` between"
,
value1
,
value2
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andTypeNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"`type` not between"
,
value1
,
value2
,
"type"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByIsNull
()
{
addCriterion
(
"create_by is null"
);
return
(
Criteria
)
this
;
...
...
backend/src/main/java/io/dataease/base/domain/DatasetScene.java
deleted
100644 → 0
浏览文件 @
2b909be5
package
io
.
dataease
.
base
.
domain
;
import
java.io.Serializable
;
import
lombok.Data
;
@Data
public
class
DatasetScene
implements
Serializable
{
private
String
id
;
private
String
name
;
private
String
groupId
;
private
String
createBy
;
private
Long
createTime
;
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
backend/src/main/java/io/dataease/base/domain/DatasetSceneExample.java
deleted
100644 → 0
浏览文件 @
2b909be5
package
io
.
dataease
.
base
.
domain
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
DatasetSceneExample
{
protected
String
orderByClause
;
protected
boolean
distinct
;
protected
List
<
Criteria
>
oredCriteria
;
public
DatasetSceneExample
()
{
oredCriteria
=
new
ArrayList
<
Criteria
>();
}
public
void
setOrderByClause
(
String
orderByClause
)
{
this
.
orderByClause
=
orderByClause
;
}
public
String
getOrderByClause
()
{
return
orderByClause
;
}
public
void
setDistinct
(
boolean
distinct
)
{
this
.
distinct
=
distinct
;
}
public
boolean
isDistinct
()
{
return
distinct
;
}
public
List
<
Criteria
>
getOredCriteria
()
{
return
oredCriteria
;
}
public
void
or
(
Criteria
criteria
)
{
oredCriteria
.
add
(
criteria
);
}
public
Criteria
or
()
{
Criteria
criteria
=
createCriteriaInternal
();
oredCriteria
.
add
(
criteria
);
return
criteria
;
}
public
Criteria
createCriteria
()
{
Criteria
criteria
=
createCriteriaInternal
();
if
(
oredCriteria
.
size
()
==
0
)
{
oredCriteria
.
add
(
criteria
);
}
return
criteria
;
}
protected
Criteria
createCriteriaInternal
()
{
Criteria
criteria
=
new
Criteria
();
return
criteria
;
}
public
void
clear
()
{
oredCriteria
.
clear
();
orderByClause
=
null
;
distinct
=
false
;
}
protected
abstract
static
class
GeneratedCriteria
{
protected
List
<
Criterion
>
criteria
;
protected
GeneratedCriteria
()
{
super
();
criteria
=
new
ArrayList
<
Criterion
>();
}
public
boolean
isValid
()
{
return
criteria
.
size
()
>
0
;
}
public
List
<
Criterion
>
getAllCriteria
()
{
return
criteria
;
}
public
List
<
Criterion
>
getCriteria
()
{
return
criteria
;
}
protected
void
addCriterion
(
String
condition
)
{
if
(
condition
==
null
)
{
throw
new
RuntimeException
(
"Value for condition cannot be null"
);
}
criteria
.
add
(
new
Criterion
(
condition
));
}
protected
void
addCriterion
(
String
condition
,
Object
value
,
String
property
)
{
if
(
value
==
null
)
{
throw
new
RuntimeException
(
"Value for "
+
property
+
" cannot be null"
);
}
criteria
.
add
(
new
Criterion
(
condition
,
value
));
}
protected
void
addCriterion
(
String
condition
,
Object
value1
,
Object
value2
,
String
property
)
{
if
(
value1
==
null
||
value2
==
null
)
{
throw
new
RuntimeException
(
"Between values for "
+
property
+
" cannot be null"
);
}
criteria
.
add
(
new
Criterion
(
condition
,
value1
,
value2
));
}
public
Criteria
andIdIsNull
()
{
addCriterion
(
"id is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdIsNotNull
()
{
addCriterion
(
"id is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdEqualTo
(
String
value
)
{
addCriterion
(
"id ="
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdNotEqualTo
(
String
value
)
{
addCriterion
(
"id <>"
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdGreaterThan
(
String
value
)
{
addCriterion
(
"id >"
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"id >="
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdLessThan
(
String
value
)
{
addCriterion
(
"id <"
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"id <="
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdLike
(
String
value
)
{
addCriterion
(
"id like"
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdNotLike
(
String
value
)
{
addCriterion
(
"id not like"
,
value
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdIn
(
List
<
String
>
values
)
{
addCriterion
(
"id in"
,
values
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"id not in"
,
values
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"id between"
,
value1
,
value2
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andIdNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"id not between"
,
value1
,
value2
,
"id"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameIsNull
()
{
addCriterion
(
"`name` is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameIsNotNull
()
{
addCriterion
(
"`name` is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameEqualTo
(
String
value
)
{
addCriterion
(
"`name` ="
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameNotEqualTo
(
String
value
)
{
addCriterion
(
"`name` <>"
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameGreaterThan
(
String
value
)
{
addCriterion
(
"`name` >"
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"`name` >="
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameLessThan
(
String
value
)
{
addCriterion
(
"`name` <"
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"`name` <="
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameLike
(
String
value
)
{
addCriterion
(
"`name` like"
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameNotLike
(
String
value
)
{
addCriterion
(
"`name` not like"
,
value
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameIn
(
List
<
String
>
values
)
{
addCriterion
(
"`name` in"
,
values
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"`name` not in"
,
values
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"`name` between"
,
value1
,
value2
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andNameNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"`name` not between"
,
value1
,
value2
,
"name"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdIsNull
()
{
addCriterion
(
"group_id is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdIsNotNull
()
{
addCriterion
(
"group_id is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdEqualTo
(
String
value
)
{
addCriterion
(
"group_id ="
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdNotEqualTo
(
String
value
)
{
addCriterion
(
"group_id <>"
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdGreaterThan
(
String
value
)
{
addCriterion
(
"group_id >"
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"group_id >="
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdLessThan
(
String
value
)
{
addCriterion
(
"group_id <"
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"group_id <="
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdLike
(
String
value
)
{
addCriterion
(
"group_id like"
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdNotLike
(
String
value
)
{
addCriterion
(
"group_id not like"
,
value
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdIn
(
List
<
String
>
values
)
{
addCriterion
(
"group_id in"
,
values
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"group_id not in"
,
values
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"group_id between"
,
value1
,
value2
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andGroupIdNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"group_id not between"
,
value1
,
value2
,
"groupId"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByIsNull
()
{
addCriterion
(
"create_by is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByIsNotNull
()
{
addCriterion
(
"create_by is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByEqualTo
(
String
value
)
{
addCriterion
(
"create_by ="
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByNotEqualTo
(
String
value
)
{
addCriterion
(
"create_by <>"
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByGreaterThan
(
String
value
)
{
addCriterion
(
"create_by >"
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"create_by >="
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByLessThan
(
String
value
)
{
addCriterion
(
"create_by <"
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"create_by <="
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByLike
(
String
value
)
{
addCriterion
(
"create_by like"
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByNotLike
(
String
value
)
{
addCriterion
(
"create_by not like"
,
value
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByIn
(
List
<
String
>
values
)
{
addCriterion
(
"create_by in"
,
values
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"create_by not in"
,
values
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"create_by between"
,
value1
,
value2
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateByNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"create_by not between"
,
value1
,
value2
,
"createBy"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeIsNull
()
{
addCriterion
(
"create_time is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeIsNotNull
()
{
addCriterion
(
"create_time is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeEqualTo
(
Long
value
)
{
addCriterion
(
"create_time ="
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeNotEqualTo
(
Long
value
)
{
addCriterion
(
"create_time <>"
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeGreaterThan
(
Long
value
)
{
addCriterion
(
"create_time >"
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeGreaterThanOrEqualTo
(
Long
value
)
{
addCriterion
(
"create_time >="
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeLessThan
(
Long
value
)
{
addCriterion
(
"create_time <"
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeLessThanOrEqualTo
(
Long
value
)
{
addCriterion
(
"create_time <="
,
value
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeIn
(
List
<
Long
>
values
)
{
addCriterion
(
"create_time in"
,
values
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeNotIn
(
List
<
Long
>
values
)
{
addCriterion
(
"create_time not in"
,
values
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeBetween
(
Long
value1
,
Long
value2
)
{
addCriterion
(
"create_time between"
,
value1
,
value2
,
"createTime"
);
return
(
Criteria
)
this
;
}
public
Criteria
andCreateTimeNotBetween
(
Long
value1
,
Long
value2
)
{
addCriterion
(
"create_time not between"
,
value1
,
value2
,
"createTime"
);
return
(
Criteria
)
this
;
}
}
public
static
class
Criteria
extends
GeneratedCriteria
{
protected
Criteria
()
{
super
();
}
}
public
static
class
Criterion
{
private
String
condition
;
private
Object
value
;
private
Object
secondValue
;
private
boolean
noValue
;
private
boolean
singleValue
;
private
boolean
betweenValue
;
private
boolean
listValue
;
private
String
typeHandler
;
public
String
getCondition
()
{
return
condition
;
}
public
Object
getValue
()
{
return
value
;
}
public
Object
getSecondValue
()
{
return
secondValue
;
}
public
boolean
isNoValue
()
{
return
noValue
;
}
public
boolean
isSingleValue
()
{
return
singleValue
;
}
public
boolean
isBetweenValue
()
{
return
betweenValue
;
}
public
boolean
isListValue
()
{
return
listValue
;
}
public
String
getTypeHandler
()
{
return
typeHandler
;
}
protected
Criterion
(
String
condition
)
{
super
();
this
.
condition
=
condition
;
this
.
typeHandler
=
null
;
this
.
noValue
=
true
;
}
protected
Criterion
(
String
condition
,
Object
value
,
String
typeHandler
)
{
super
();
this
.
condition
=
condition
;
this
.
value
=
value
;
this
.
typeHandler
=
typeHandler
;
if
(
value
instanceof
List
<?>)
{
this
.
listValue
=
true
;
}
else
{
this
.
singleValue
=
true
;
}
}
protected
Criterion
(
String
condition
,
Object
value
)
{
this
(
condition
,
value
,
null
);
}
protected
Criterion
(
String
condition
,
Object
value
,
Object
secondValue
,
String
typeHandler
)
{
super
();
this
.
condition
=
condition
;
this
.
value
=
value
;
this
.
secondValue
=
secondValue
;
this
.
typeHandler
=
typeHandler
;
this
.
betweenValue
=
true
;
}
protected
Criterion
(
String
condition
,
Object
value
,
Object
secondValue
)
{
this
(
condition
,
value
,
secondValue
,
null
);
}
}
}
\ No newline at end of file
backend/src/main/java/io/dataease/base/mapper/DatasetGroupMapper.xml
浏览文件 @
75e9537a
...
...
@@ -6,6 +6,7 @@
<result
column=
"name"
jdbcType=
"VARCHAR"
property=
"name"
/>
<result
column=
"pid"
jdbcType=
"VARCHAR"
property=
"pid"
/>
<result
column=
"level"
jdbcType=
"INTEGER"
property=
"level"
/>
<result
column=
"type"
jdbcType=
"VARCHAR"
property=
"type"
/>
<result
column=
"create_by"
jdbcType=
"VARCHAR"
property=
"createBy"
/>
<result
column=
"create_time"
jdbcType=
"BIGINT"
property=
"createTime"
/>
</resultMap>
...
...
@@ -68,7 +69,7 @@
</where>
</sql>
<sql
id=
"Base_Column_List"
>
id, `name`, pid, `level`, create_by, create_time
id, `name`, pid, `level`,
`type`,
create_by, create_time
</sql>
<select
id=
"selectByExample"
parameterType=
"io.dataease.base.domain.DatasetGroupExample"
resultMap=
"BaseResultMap"
>
select
...
...
@@ -102,11 +103,11 @@
</delete>
<insert
id=
"insert"
parameterType=
"io.dataease.base.domain.DatasetGroup"
>
insert into dataset_group (id, `name`, pid,
`level`,
create_by, create_time
)
`level`,
`type`, create_by,
create_time
)
values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{pid,jdbcType=VARCHAR},
#{level,jdbcType=INTEGER}, #{
createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=BIGINT}
)
#{level,jdbcType=INTEGER}, #{
type,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR},
#{createTime,jdbcType=BIGINT}
)
</insert>
<insert
id=
"insertSelective"
parameterType=
"io.dataease.base.domain.DatasetGroup"
>
insert into dataset_group
...
...
@@ -123,6 +124,9 @@
<if
test=
"level != null"
>
`level`,
</if>
<if
test=
"type != null"
>
`type`,
</if>
<if
test=
"createBy != null"
>
create_by,
</if>
...
...
@@ -143,6 +147,9 @@
<if
test=
"level != null"
>
#{level,jdbcType=INTEGER},
</if>
<if
test=
"type != null"
>
#{type,jdbcType=VARCHAR},
</if>
<if
test=
"createBy != null"
>
#{createBy,jdbcType=VARCHAR},
</if>
...
...
@@ -172,6 +179,9 @@
<if
test=
"record.level != null"
>
`level` = #{record.level,jdbcType=INTEGER},
</if>
<if
test=
"record.type != null"
>
`type` = #{record.type,jdbcType=VARCHAR},
</if>
<if
test=
"record.createBy != null"
>
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
...
...
@@ -189,6 +199,7 @@
`name` = #{record.name,jdbcType=VARCHAR},
pid = #{record.pid,jdbcType=VARCHAR},
`level` = #{record.level,jdbcType=INTEGER},
`type` = #{record.type,jdbcType=VARCHAR},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=BIGINT}
<if
test=
"_parameter != null"
>
...
...
@@ -207,6 +218,9 @@
<if
test=
"level != null"
>
`level` = #{level,jdbcType=INTEGER},
</if>
<if
test=
"type != null"
>
`type` = #{type,jdbcType=VARCHAR},
</if>
<if
test=
"createBy != null"
>
create_by = #{createBy,jdbcType=VARCHAR},
</if>
...
...
@@ -221,6 +235,7 @@
set `name` = #{name,jdbcType=VARCHAR},
pid = #{pid,jdbcType=VARCHAR},
`level` = #{level,jdbcType=INTEGER},
`type` = #{type,jdbcType=VARCHAR},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=BIGINT}
where id = #{id,jdbcType=VARCHAR}
...
...
backend/src/main/java/io/dataease/base/mapper/DatasetSceneMapper.java
deleted
100644 → 0
浏览文件 @
2b909be5
package
io
.
dataease
.
base
.
mapper
;
import
io.dataease.base.domain.DatasetScene
;
import
io.dataease.base.domain.DatasetSceneExample
;
import
java.util.List
;
import
org.apache.ibatis.annotations.Param
;
public
interface
DatasetSceneMapper
{
long
countByExample
(
DatasetSceneExample
example
);
int
deleteByExample
(
DatasetSceneExample
example
);
int
deleteByPrimaryKey
(
String
id
);
int
insert
(
DatasetScene
record
);
int
insertSelective
(
DatasetScene
record
);
List
<
DatasetScene
>
selectByExample
(
DatasetSceneExample
example
);
DatasetScene
selectByPrimaryKey
(
String
id
);
int
updateByExampleSelective
(
@Param
(
"record"
)
DatasetScene
record
,
@Param
(
"example"
)
DatasetSceneExample
example
);
int
updateByExample
(
@Param
(
"record"
)
DatasetScene
record
,
@Param
(
"example"
)
DatasetSceneExample
example
);
int
updateByPrimaryKeySelective
(
DatasetScene
record
);
int
updateByPrimaryKey
(
DatasetScene
record
);
}
\ No newline at end of file
backend/src/main/java/io/dataease/base/mapper/DatasetSceneMapper.xml
deleted
100644 → 0
浏览文件 @
2b909be5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"io.dataease.base.mapper.DatasetSceneMapper"
>
<resultMap
id=
"BaseResultMap"
type=
"io.dataease.base.domain.DatasetScene"
>
<id
column=
"id"
jdbcType=
"VARCHAR"
property=
"id"
/>
<result
column=
"name"
jdbcType=
"VARCHAR"
property=
"name"
/>
<result
column=
"group_id"
jdbcType=
"VARCHAR"
property=
"groupId"
/>
<result
column=
"create_by"
jdbcType=
"VARCHAR"
property=
"createBy"
/>
<result
column=
"create_time"
jdbcType=
"BIGINT"
property=
"createTime"
/>
</resultMap>
<sql
id=
"Example_Where_Clause"
>
<where>
<foreach
collection=
"oredCriteria"
item=
"criteria"
separator=
"or"
>
<if
test=
"criteria.valid"
>
<trim
prefix=
"("
prefixOverrides=
"and"
suffix=
")"
>
<foreach
collection=
"criteria.criteria"
item=
"criterion"
>
<choose>
<when
test=
"criterion.noValue"
>
and ${criterion.condition}
</when>
<when
test=
"criterion.singleValue"
>
and ${criterion.condition} #{criterion.value}
</when>
<when
test=
"criterion.betweenValue"
>
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when
test=
"criterion.listValue"
>
and ${criterion.condition}
<foreach
close=
")"
collection=
"criterion.value"
item=
"listItem"
open=
"("
separator=
","
>
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql
id=
"Update_By_Example_Where_Clause"
>
<where>
<foreach
collection=
"example.oredCriteria"
item=
"criteria"
separator=
"or"
>
<if
test=
"criteria.valid"
>
<trim
prefix=
"("
prefixOverrides=
"and"
suffix=
")"
>
<foreach
collection=
"criteria.criteria"
item=
"criterion"
>
<choose>
<when
test=
"criterion.noValue"
>
and ${criterion.condition}
</when>
<when
test=
"criterion.singleValue"
>
and ${criterion.condition} #{criterion.value}
</when>
<when
test=
"criterion.betweenValue"
>
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when
test=
"criterion.listValue"
>
and ${criterion.condition}
<foreach
close=
")"
collection=
"criterion.value"
item=
"listItem"
open=
"("
separator=
","
>
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql
id=
"Base_Column_List"
>
id, `name`, group_id, create_by, create_time
</sql>
<select
id=
"selectByExample"
parameterType=
"io.dataease.base.domain.DatasetSceneExample"
resultMap=
"BaseResultMap"
>
select
<if
test=
"distinct"
>
distinct
</if>
<include
refid=
"Base_Column_List"
/>
from dataset_scene
<if
test=
"_parameter != null"
>
<include
refid=
"Example_Where_Clause"
/>
</if>
<if
test=
"orderByClause != null"
>
order by ${orderByClause}
</if>
</select>
<select
id=
"selectByPrimaryKey"
parameterType=
"java.lang.String"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from dataset_scene
where id = #{id,jdbcType=VARCHAR}
</select>
<delete
id=
"deleteByPrimaryKey"
parameterType=
"java.lang.String"
>
delete from dataset_scene
where id = #{id,jdbcType=VARCHAR}
</delete>
<delete
id=
"deleteByExample"
parameterType=
"io.dataease.base.domain.DatasetSceneExample"
>
delete from dataset_scene
<if
test=
"_parameter != null"
>
<include
refid=
"Example_Where_Clause"
/>
</if>
</delete>
<insert
id=
"insert"
parameterType=
"io.dataease.base.domain.DatasetScene"
>
insert into dataset_scene (id, `name`, group_id,
create_by, create_time)
values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{groupId,jdbcType=VARCHAR},
#{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=BIGINT})
</insert>
<insert
id=
"insertSelective"
parameterType=
"io.dataease.base.domain.DatasetScene"
>
insert into dataset_scene
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"name != null"
>
`name`,
</if>
<if
test=
"groupId != null"
>
group_id,
</if>
<if
test=
"createBy != null"
>
create_by,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id,jdbcType=VARCHAR},
</if>
<if
test=
"name != null"
>
#{name,jdbcType=VARCHAR},
</if>
<if
test=
"groupId != null"
>
#{groupId,jdbcType=VARCHAR},
</if>
<if
test=
"createBy != null"
>
#{createBy,jdbcType=VARCHAR},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select
id=
"countByExample"
parameterType=
"io.dataease.base.domain.DatasetSceneExample"
resultType=
"java.lang.Long"
>
select count(*) from dataset_scene
<if
test=
"_parameter != null"
>
<include
refid=
"Example_Where_Clause"
/>
</if>
</select>
<update
id=
"updateByExampleSelective"
parameterType=
"map"
>
update dataset_scene
<set>
<if
test=
"record.id != null"
>
id = #{record.id,jdbcType=VARCHAR},
</if>
<if
test=
"record.name != null"
>
`name` = #{record.name,jdbcType=VARCHAR},
</if>
<if
test=
"record.groupId != null"
>
group_id = #{record.groupId,jdbcType=VARCHAR},
</if>
<if
test=
"record.createBy != null"
>
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
<if
test=
"record.createTime != null"
>
create_time = #{record.createTime,jdbcType=BIGINT},
</if>
</set>
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
</if>
</update>
<update
id=
"updateByExample"
parameterType=
"map"
>
update dataset_scene
set id = #{record.id,jdbcType=VARCHAR},
`name` = #{record.name,jdbcType=VARCHAR},
group_id = #{record.groupId,jdbcType=VARCHAR},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=BIGINT}
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
</if>
</update>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"io.dataease.base.domain.DatasetScene"
>
update dataset_scene
<set>
<if
test=
"name != null"
>
`name` = #{name,jdbcType=VARCHAR},
</if>
<if
test=
"groupId != null"
>
group_id = #{groupId,jdbcType=VARCHAR},
</if>
<if
test=
"createBy != null"
>
create_by = #{createBy,jdbcType=VARCHAR},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=VARCHAR}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"io.dataease.base.domain.DatasetScene"
>
update dataset_scene
set `name` = #{name,jdbcType=VARCHAR},
group_id = #{groupId,jdbcType=VARCHAR},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=BIGINT}
where id = #{id,jdbcType=VARCHAR}
</update>
</mapper>
\ No newline at end of file
backend/src/main/java/io/dataease/controller/dataset/DataSetGroupController.java
浏览文件 @
75e9537a
package
io
.
dataease
.
controller
.
dataset
;
import
io.dataease.base.domain.DatasetGroup
;
import
io.dataease.controller.request.dataset.DataSetGroupRequest
;
import
io.dataease.dto.dataset.DataSetGroupDTO
;
import
io.dataease.service.dataset.DataSetGroupService
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
* @Author gin
...
...
@@ -24,4 +23,14 @@ public class DataSetGroupController {
public
DataSetGroupDTO
save
(
@RequestBody
DatasetGroup
datasetGroup
)
{
return
dataSetGroupService
.
save
(
datasetGroup
);
}
@PostMapping
(
"/tree"
)
public
List
<
DataSetGroupDTO
>
tree
(
@RequestBody
DataSetGroupRequest
datasetGroup
)
{
return
dataSetGroupService
.
tree
(
datasetGroup
);
}
@PostMapping
(
"/delete/{id}"
)
public
void
tree
(
@PathVariable
String
id
)
{
dataSetGroupService
.
delete
(
id
);
}
}
backend/src/main/java/io/dataease/controller/request/dataset/DataSetGroupRequest.java
0 → 100644
浏览文件 @
75e9537a
package
io
.
dataease
.
controller
.
request
.
dataset
;
import
io.dataease.base.domain.DatasetGroup
;
import
lombok.Data
;
/**
* @Author gin
* @Date 2021/2/22 1:30 下午
*/
@Data
public
class
DataSetGroupRequest
extends
DatasetGroup
{
private
String
sort
;
}
backend/src/main/java/io/dataease/dto/dataset/DataSetGroupDTO.java
浏览文件 @
75e9537a
...
...
@@ -3,6 +3,8 @@ package io.dataease.dto.dataset;
import
io.dataease.base.domain.DatasetGroup
;
import
lombok.Data
;
import
java.util.List
;
/**
* @Author gin
* @Date 2021/2/20 8:17 下午
...
...
@@ -10,4 +12,5 @@ import lombok.Data;
@Data
public
class
DataSetGroupDTO
extends
DatasetGroup
{
private
String
label
;
private
List
<
DataSetGroupDTO
>
children
;
}
backend/src/main/java/io/dataease/service/dataset/DataSetGroupService.java
浏览文件 @
75e9537a
...
...
@@ -2,13 +2,19 @@ package io.dataease.service.dataset;
import
com.alibaba.nacos.common.util.UuidUtils
;
import
io.dataease.base.domain.DatasetGroup
;
import
io.dataease.base.domain.DatasetGroupExample
;
import
io.dataease.base.mapper.DatasetGroupMapper
;
import
io.dataease.commons.utils.BeanUtils
;
import
io.dataease.controller.request.dataset.DataSetGroupRequest
;
import
io.dataease.dto.dataset.DataSetGroupDTO
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @Author gin
...
...
@@ -32,4 +38,77 @@ public class DataSetGroupService {
dataSetGroupDTO
.
setLabel
(
dataSetGroupDTO
.
getName
());
return
dataSetGroupDTO
;
}
public
void
delete
(
String
id
)
{
DataSetGroupRequest
datasetGroup
=
new
DataSetGroupRequest
();
datasetGroup
.
setId
(
id
);
List
<
DataSetGroupDTO
>
tree
=
tree
(
datasetGroup
);
List
<
String
>
ids
=
new
ArrayList
<>();
getAllId
(
tree
,
ids
);
DatasetGroupExample
datasetGroupExample
=
new
DatasetGroupExample
();
datasetGroupExample
.
createCriteria
().
andIdIn
(
ids
);
datasetGroupMapper
.
deleteByExample
(
datasetGroupExample
);
}
public
List
<
DataSetGroupDTO
>
tree
(
DataSetGroupRequest
datasetGroup
)
{
DatasetGroupExample
datasetGroupExample
=
new
DatasetGroupExample
();
DatasetGroupExample
.
Criteria
criteria
=
datasetGroupExample
.
createCriteria
();
if
(
StringUtils
.
isNotEmpty
(
datasetGroup
.
getName
()))
{
criteria
.
andNameLike
(
"%"
+
datasetGroup
.
getName
()
+
"%"
);
}
if
(
StringUtils
.
isNotEmpty
(
datasetGroup
.
getType
()))
{
criteria
.
andTypeEqualTo
(
datasetGroup
.
getType
());
}
if
(
StringUtils
.
isNotEmpty
(
datasetGroup
.
getId
()))
{
criteria
.
andIdEqualTo
(
datasetGroup
.
getId
());
}
else
{
criteria
.
andLevelEqualTo
(
0
);
}
datasetGroupExample
.
setOrderByClause
(
datasetGroup
.
getSort
());
List
<
DatasetGroup
>
datasetGroups
=
datasetGroupMapper
.
selectByExample
(
datasetGroupExample
);
List
<
DataSetGroupDTO
>
DTOs
=
datasetGroups
.
stream
().
map
(
ele
->
{
DataSetGroupDTO
dto
=
new
DataSetGroupDTO
();
BeanUtils
.
copyBean
(
dto
,
ele
);
dto
.
setLabel
(
ele
.
getName
());
return
dto
;
}).
collect
(
Collectors
.
toList
());
getAll
(
DTOs
,
datasetGroup
);
return
DTOs
;
}
public
void
getAll
(
List
<
DataSetGroupDTO
>
list
,
DataSetGroupRequest
datasetGroup
)
{
for
(
DataSetGroupDTO
obj
:
list
)
{
DatasetGroupExample
datasetGroupExample
=
new
DatasetGroupExample
();
DatasetGroupExample
.
Criteria
criteria
=
datasetGroupExample
.
createCriteria
();
if
(
StringUtils
.
isNotEmpty
(
datasetGroup
.
getName
()))
{
criteria
.
andNameLike
(
"%"
+
datasetGroup
.
getName
()
+
"%"
);
}
if
(
StringUtils
.
isNotEmpty
(
datasetGroup
.
getType
()))
{
criteria
.
andTypeEqualTo
(
datasetGroup
.
getType
());
}
criteria
.
andPidEqualTo
(
obj
.
getId
());
datasetGroupExample
.
setOrderByClause
(
datasetGroup
.
getSort
());
List
<
DatasetGroup
>
datasetGroups
=
datasetGroupMapper
.
selectByExample
(
datasetGroupExample
);
List
<
DataSetGroupDTO
>
DTOs
=
datasetGroups
.
stream
().
map
(
ele
->
{
DataSetGroupDTO
dto
=
new
DataSetGroupDTO
();
BeanUtils
.
copyBean
(
dto
,
ele
);
dto
.
setLabel
(
ele
.
getName
());
return
dto
;
}).
collect
(
Collectors
.
toList
());
obj
.
setChildren
(
DTOs
);
if
(
CollectionUtils
.
isNotEmpty
(
DTOs
))
{
getAll
(
DTOs
,
datasetGroup
);
}
}
}
public
List
<
String
>
getAllId
(
List
<
DataSetGroupDTO
>
list
,
List
<
String
>
ids
)
{
for
(
DataSetGroupDTO
dto
:
list
)
{
ids
.
add
(
dto
.
getId
());
if
(
CollectionUtils
.
isNotEmpty
(
dto
.
getChildren
()))
{
getAllId
(
dto
.
getChildren
(),
ids
);
}
}
return
ids
;
}
}
backend/src/main/resources/db/migration/V2__metersphere_ddl.sql
浏览文件 @
75e9537a
...
...
@@ -340,19 +340,11 @@ CREATE TABLE IF NOT EXISTS `dataset_group` (
`name`
varchar
(
64
)
NOT
NULL
COMMENT
'名称'
,
`pid`
varchar
(
50
)
COMMENT
'父级ID'
,
`level`
int
(
10
)
COMMENT
'当前分组处于第几级'
,
`type`
varchar
(
50
)
COMMENT
'group or scene'
,
`create_by`
varchar
(
50
)
COMMENT
'创建人ID'
,
`create_time`
bigint
(
13
)
COMMENT
'创建时间'
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8mb4
;
CREATE
TABLE
IF
NOT
EXISTS
`dataset_scene`
(
`id`
varchar
(
50
)
NOT
NULL
COMMENT
'ID'
,
`name`
varchar
(
64
)
NOT
NULL
COMMENT
'名称'
,
`group_id`
varchar
(
50
)
COMMENT
'DataSet Group ID'
,
`create_by`
varchar
(
50
)
COMMENT
'创建人ID'
,
`create_time`
bigint
(
13
)
COMMENT
'创建时间'
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8mb4
;
-- dataset end
frontend/src/business/components/dataset/DataSet.vue
浏览文件 @
75e9537a
...
...
@@ -34,8 +34,8 @@
.ms-aside-container
{
height
:
calc
(
100vh
-
40px
);
padding
:
20px
;
min-width
:
26
0px
;
max-width
:
46
0px
;
min-width
:
30
0px
;
max-width
:
50
0px
;
}
.ms-main-container
{
...
...
frontend/src/business/components/dataset/group/Group.vue
浏览文件 @
75e9537a
<
template
xmlns:el-col=
"http://www.w3.org/1999/html"
>
<el-col>
<el-col>
<el-col
v-if=
"!sceneMode"
>
<span>
{{
$t
(
'dataset.datalist'
)
}}
</span>
<el-divider/>
<el-row>
<el-button
icon=
"el-icon-circle-plus"
type=
"primary"
size=
"mini"
@
click=
"addGroup"
>
{{
$t
(
'dataset.add_group'
)
}}
<el-button
icon=
"el-icon-circle-plus"
type=
"primary"
size=
"mini"
@
click=
"add('group')"
>
{{
$t
(
'dataset.add_group'
)
}}
</el-button>
<el-button
icon=
"el-icon-document"
type=
"primary"
size=
"mini"
@
click=
"addScene"
>
{{
$t
(
'dataset.add_scene'
)
}}
<el-button
icon=
"el-icon-folder-add"
type=
"primary"
size=
"mini"
@
click=
"add('scene')"
>
{{
$t
(
'dataset.add_scene'
)
}}
</el-button>
</el-row>
<el-row
style=
"margin: 12px 0"
>
<el-input
size=
"mini"
placeholder=
"Search"
prefix-icon=
"el-icon-search"
v-model=
"search"
clearable
>
</el-input>
<el-row>
<el-form>
<el-form-item
class=
"form-item"
>
<el-input
size=
"mini"
:placeholder=
"$t('dataset.search')"
prefix-icon=
"el-icon-search"
v-model=
"search"
clearable
>
</el-input>
</el-form-item>
</el-form>
</el-row>
<el-col
class=
"custom-tree-container"
>
<div
class=
"block"
>
<el-tree
:default-expanded-keys=
"expandedArray"
:data=
"data"
node-key=
"id"
:expand-on-click-node=
"true"
@
node-click=
"nodeClick"
>
<span
class=
"custom-tree-node"
slot-scope=
"
{ node, data }">
<span>
<span
v-if=
"data.
show
"
>
<span
v-if=
"data.
type === 'scene'
"
>
<el-button
icon=
"el-icon-
document
"
icon=
"el-icon-
folder
"
type=
"text"
size=
"mini"
>
</el-button>
</el-button>
</span>
<span>
{{
data
.
label
}}
</span>
<span
style=
"margin-left: 6px"
>
{{
data
.
label
}}
</span>
</span>
<span>
<el-button
icon=
"el-icon-plus"
type=
"text"
size=
"mini"
@
click
.
stop=
"() => append(data)"
>
</el-button>
<el-button
icon=
"el-icon-more"
type=
"text"
size=
"mini"
@
click
.
stop=
"() => remove(node, data)"
>
</el-button>
<span
@
click
.
stop
v-if=
"data.type ==='group'"
>
<el-dropdown
trigger=
"click"
@
command=
"clickAdd"
>
<span
class=
"el-dropdown-link"
>
<el-button
icon=
"el-icon-plus"
type=
"text"
size=
"small"
>
</el-button>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
icon=
"el-icon-circle-plus"
:command=
"beforeClickAdd('group',data,node)"
>
{{
$t
(
'dataset.group'
)
}}
</el-dropdown-item>
<el-dropdown-item
icon=
"el-icon-folder-add"
:command=
"beforeClickAdd('scene',data,node)"
>
{{
$t
(
'dataset.scene'
)
}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</span>
<span
@
click
.
stop
style=
"margin-left: 12px;"
>
<el-dropdown
trigger=
"click"
@
command=
"clickMore"
>
<span
class=
"el-dropdown-link"
>
<el-button
icon=
"el-icon-more"
type=
"text"
size=
"small"
>
</el-button>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
icon=
"el-icon-edit-outline"
:command=
"beforeClickMore('rename',data,node)"
>
{{
$t
(
'dataset.rename'
)
}}
</el-dropdown-item>
<!--
<el-dropdown-item
icon=
"el-icon-right"
:command=
"beforeClickMore('move',data,node)"
>
-->
<!--
{{
$t
(
'dataset.move_to'
)
}}
-->
<!--
</el-dropdown-item>
-->
<el-dropdown-item
icon=
"el-icon-delete"
:command=
"beforeClickMore('delete',data,node)"
>
{{
$t
(
'dataset.delete'
)
}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</span>
</span>
</span>
</el-tree>
</div>
</el-col>
<el-dialog
:title=
"
$t('dataset.group')
"
:visible=
"editGroup"
:show-close=
"false"
>
<el-dialog
:title=
"
dialogTitle
"
:visible=
"editGroup"
:show-close=
"false"
>
<el-form
:model=
"groupForm"
:rules=
"groupFormRules"
ref=
"groupForm"
>
<el-form-item
:label=
"$t('commons.name')"
prop=
"name"
>
<el-input
v-model=
"groupForm.name"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"close()"
>
{{
$t
(
'
commons
.cancel'
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"saveGroup(
)"
>
{{
$t
(
'commons
.confirm'
)
}}
</el-button>
<el-button
@
click=
"close()"
>
{{
$t
(
'
dataset
.cancel'
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"saveGroup(
groupForm)"
>
{{
$t
(
'dataset
.confirm'
)
}}
</el-button>
</div>
</el-dialog>
</el-col>
<el-col
v-if=
"sceneMode"
>
<el-row>
<span>
{{
$t
(
'dataset.scene'
)
}}
</span>
<el-button
icon=
"el-icon-back"
size=
"mini"
@
click=
"sceneMode = false"
style=
"float: right"
>
{{
$t
(
'dataset.back'
)
}}
</el-button>
</el-row>
<el-divider/>
<el-row>
<el-button
type=
"primary"
size=
"mini"
plain
>
{{
$t
(
'dataset.add_table'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"mini"
plain
>
{{
$t
(
'dataset.update'
)
}}
</el-button>
<el-button
type=
"primary"
size=
"mini"
plain
>
{{
$t
(
'dataset.process'
)
}}
</el-button>
</el-row>
<el-row>
<el-form>
<el-form-item
class=
"form-item"
>
<el-input
size=
"mini"
:placeholder=
"$t('dataset.search')"
prefix-icon=
"el-icon-search"
v-model=
"search"
clearable
>
</el-input>
</el-form-item>
</el-form>
</el-row>
<!-- todo el-tree -->
<el-tree
:data=
"null"
node-key=
"id"
:expand-on-click-node=
"true"
@
node-click=
"nodeClick"
>
<span
class=
"custom-tree-node"
slot-scope=
"
{ node, data }">
<span>
<span
v-if=
"data.type === 'scene'"
>
<el-button
icon=
"el-icon-folder"
type=
"text"
size=
"mini"
>
</el-button>
</span>
<span
style=
"margin-left: 6px"
>
{{
data
.
label
}}
</span>
</span>
<span>
<span
@
click
.
stop
style=
"margin-left: 12px;"
>
<el-dropdown
trigger=
"click"
@
command=
"clickMore"
>
<span
class=
"el-dropdown-link"
>
<el-button
icon=
"el-icon-more"
type=
"text"
size=
"small"
>
</el-button>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
icon=
"el-icon-edit-outline"
:command=
"beforeClickMore('rename',data,node)"
>
{{
$t
(
'dataset.rename'
)
}}
</el-dropdown-item>
<!--
<el-dropdown-item
icon=
"el-icon-right"
:command=
"beforeClickMore('move',data,node)"
>
-->
<!--
{{
$t
(
'dataset.move_to'
)
}}
-->
<!--
</el-dropdown-item>
-->
<el-dropdown-item
icon=
"el-icon-delete"
:command=
"beforeClickMore('delete',data,node)"
>
{{
$t
(
'dataset.delete'
)
}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</span>
</span>
</span>
</el-tree>
</el-col>
</el-col>
</
template
>
<
script
>
let
id
=
1000
;
export
default
{
name
:
"Group"
,
data
()
{
const
data
=
[{
id
:
1
,
label
:
'一级 1'
,
children
:
[{
id
:
4
,
label
:
'二级 1-1'
,
children
:
[{
id
:
9
,
label
:
'三级 1-1-1'
},
{
id
:
10
,
label
:
'三级 1-1-2'
}]
}]
},
{
id
:
2
,
label
:
'一级 2'
,
children
:
[{
id
:
5
,
label
:
'二级 2-1'
},
{
id
:
6
,
label
:
'二级 2-2'
}]
},
{
id
:
3
,
label
:
'一级 3'
,
children
:
[{
id
:
7
,
label
:
'二级 3-1'
},
{
id
:
8
,
label
:
'二级 3-2'
}]
}];
export
default
{
name
:
"Group"
,
data
()
{
return
{
sceneMode
:
false
,
dialogTitle
:
''
,
search
:
''
,
editGroup
:
false
,
data
:
null
,
expandedArray
:
[],
groupForm
:
{
name
:
''
,
pid
:
null
,
level
:
0
,
type
:
''
,
children
:
[],
sort
:
'type desc,name asc'
},
groupFormRules
:
{
name
:
[
{
required
:
true
,
message
:
this
.
$t
(
'commons.input_content'
),
trigger
:
'blur'
},
],
}
}
},
mounted
()
{
this
.
tree
(
this
.
groupForm
);
},
activated
()
{
this
.
tree
(
this
.
groupForm
);
},
watch
:
{
// search(val){
// this.groupForm.name = val;
// this.tree(this.groupForm);
// }
},
methods
:
{
clickAdd
(
param
)
{
// console.log(param);
this
.
add
(
param
.
type
);
this
.
groupForm
.
pid
=
param
.
data
.
id
;
this
.
groupForm
.
level
=
param
.
data
.
level
+
1
;
},
beforeClickAdd
(
type
,
data
,
node
)
{
return
{
search
:
''
,
editGroup
:
false
,
data
:
JSON
.
parse
(
JSON
.
stringify
(
data
)),
groupForm
:
{
name
:
''
,
pid
:
null
,
level
:
0
},
groupFormRules
:
{
name
:
[
{
required
:
true
,
message
:
this
.
$t
(
'commons.input_content'
),
trigger
:
'blur'
},
],
}
'type'
:
type
,
'data'
:
data
,
'node'
:
node
}
},
mounted
()
{
clickMore
(
param
)
{
// console.log(param);
switch
(
param
.
type
)
{
case
'rename'
:
this
.
add
(
param
.
data
.
type
);
this
.
groupForm
=
param
.
data
;
break
;
case
'move'
:
break
;
case
'delete'
:
this
.
delete
(
param
.
data
);
break
;
}
},
activated
()
{
beforeClickMore
(
type
,
data
,
node
)
{
return
{
'type'
:
type
,
'data'
:
data
,
'node'
:
node
}
},
methods
:
{
addGroup
()
{
this
.
editGroup
=
true
;
},
add
(
type
)
{
switch
(
type
)
{
case
'group'
:
this
.
dialogTitle
=
this
.
$t
(
'dataset.group'
);
break
;
case
'scene'
:
this
.
dialogTitle
=
this
.
$t
(
'dataset.scene'
);
break
;
}
this
.
groupForm
.
type
=
type
;
this
.
editGroup
=
true
;
},
saveGroup
()
{
console
.
log
(
this
.
groupForm
);
this
.
$refs
[
'groupForm'
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
$post
(
"/dataset/group/save"
,
this
.
groupForm
,
response
=>
{
this
.
close
();
this
.
$message
({
message
:
this
.
$t
(
'commons.save_success'
),
type
:
'success'
,
showClose
:
true
,
});
})
}
else
{
saveGroup
(
group
)
{
// console.log(group);
this
.
$refs
[
'groupForm'
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
$post
(
"/dataset/group/save"
,
group
,
response
=>
{
this
.
close
();
this
.
$message
({
message
:
this
.
$t
(
'commons.
input_content
'
),
type
:
'
error
'
,
message
:
this
.
$t
(
'commons.
save_success
'
),
type
:
'
success
'
,
showClose
:
true
,
});
return
false
;
}
});
},
this
.
tree
(
this
.
groupForm
);
})
}
else
{
this
.
$message
({
message
:
this
.
$t
(
'commons.input_content'
),
type
:
'error'
,
showClose
:
true
,
});
return
false
;
}
});
},
close
()
{
this
.
editGroup
=
false
;
this
.
$refs
[
'groupForm'
].
resetFields
();
},
delete
(
data
)
{
this
.
$confirm
(
this
.
$t
(
'dataset.confirm_delete'
),
this
.
$t
(
'dataset.tips'
),
{
confirmButtonText
:
this
.
$t
(
'dataset.confirm'
),
cancelButtonText
:
this
.
$t
(
'dataset.cancel'
),
type
:
'warning'
}).
then
(()
=>
{
this
.
$post
(
"/dataset/group/delete/"
+
data
.
id
,
null
,
response
=>
{
this
.
$message
({
type
:
'success'
,
message
:
this
.
$t
(
'dataset.delete_success'
),
showClose
:
true
,
});
this
.
tree
(
this
.
groupForm
);
});
}).
catch
(()
=>
{
});
},
addScene
()
{
this
.
$message
(
{
message
:
'添加场景'
,
type
:
'success'
}
)
},
close
()
{
this
.
editGroup
=
false
;
this
.
groupForm
=
{
name
:
''
,
pid
:
null
,
level
:
0
,
type
:
''
,
children
:
[],
sort
:
'type desc,name asc'
}
},
nodeClick
(
data
,
node
)
{
console
.
log
(
data
);
console
.
log
(
node
);
},
tree
(
group
)
{
this
.
$post
(
"/dataset/group/tree"
,
group
,
response
=>
{
this
.
data
=
response
.
data
;
})
},
append
(
data
)
{
const
newChild
=
{
id
:
id
++
,
label
:
'testtest'
,
children
:
[],
show
:
true
};
if
(
!
data
.
children
)
{
this
.
$set
(
data
,
'children'
,
[]);
nodeClick
(
data
,
node
)
{
// console.log(data);
// console.log(node);
if
(
data
.
type
===
'scene'
)
{
this
.
sceneMode
=
true
;
}
if
(
node
.
expanded
)
{
this
.
expandedArray
.
push
(
data
.
id
);
}
else
{
let
index
=
this
.
expandedArray
.
indexOf
(
data
.
id
);
if
(
index
>
-
1
)
{
this
.
expandedArray
.
splice
(
index
,
1
);
}
data
.
children
.
push
(
newChild
);
},
remove
(
node
,
data
)
{
const
parent
=
node
.
parent
;
const
children
=
parent
.
data
.
children
||
parent
.
data
;
const
index
=
children
.
findIndex
(
d
=>
d
.
id
===
data
.
id
);
children
.
splice
(
index
,
1
);
},
}
}
// console.log(this.expandedArray);
},
}
}
</
script
>
<
style
scoped
>
...
...
@@ -218,4 +378,16 @@
font-size
:
14px
;
padding-right
:
8px
;
}
.custom-position
{
flex
:
1
;
display
:
flex
;
align-items
:
center
;
font-size
:
14px
;
flex-flow
:
row
nowrap
;
}
.form-item
{
margin-bottom
:
0
;
}
</
style
>
frontend/src/i18n/en-US.js
浏览文件 @
75e9537a
...
...
@@ -1523,6 +1523,20 @@ export default {
datalist
:
'Data List'
,
add_group
:
'Add Group'
,
add_scene
:
'Add Scene'
,
group
:
'DataSet Group'
group
:
'Group'
,
scene
:
'Scene'
,
delete
:
'Delete'
,
move_to
:
'Move'
,
rename
:
'Rename'
,
tips
:
'Tips'
,
confirm_delete
:
'Confirm Delete'
,
delete_success
:
'Delete Success'
,
confirm
:
'Confirm'
,
cancel
:
'Cancel'
,
search
:
'Search'
,
back
:
'Back'
,
add_table
:
'Add Table'
,
process
:
'Process'
,
update
:
'Update'
}
};
frontend/src/i18n/zh-CN.js
浏览文件 @
75e9537a
...
...
@@ -1526,6 +1526,20 @@ export default {
datalist
:
'数据列表'
,
add_group
:
'添加分组'
,
add_scene
:
'添加场景'
,
group
:
'分组'
group
:
'分组'
,
scene
:
'场景'
,
delete
:
'删除'
,
move_to
:
'移动到'
,
rename
:
'重命名'
,
tips
:
'提示'
,
confirm_delete
:
'确认删除'
,
delete_success
:
'删除成功'
,
confirm
:
'确认'
,
cancel
:
'取消'
,
search
:
'搜索'
,
back
:
'返回'
,
add_table
:
'添加表'
,
process
:
'进度'
,
update
:
'更新'
}
};
frontend/src/i18n/zh-TW.js
浏览文件 @
75e9537a
...
...
@@ -1524,6 +1524,20 @@ export default {
datalist
:
'數據列表'
,
add_group
:
'添加分組'
,
add_scene
:
'添加場景'
,
group
:
'分組'
group
:
'分組'
,
scene
:
'場景'
,
delete
:
'刪除'
,
move_to
:
'移動到'
,
rename
:
'重命名'
,
tips
:
'提示'
,
confirm_delete
:
'確認刪除'
,
delete_success
:
'刪除成功'
,
confirm
:
'確認'
,
cancel
:
'取消'
,
search
:
'搜索'
,
back
:
'返回'
,
add_table
:
'添加表'
,
process
:
'進度'
,
update
:
'更新'
}
};
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论