Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
dataease
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
njgzx
dataease
Commits
d46a40dc
提交
d46a40dc
authored
8月 06, 2021
作者:
wangjiahao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:仪表板联动设置浮层
上级
4f81ca0f
显示空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
360 行增加
和
112 行删除
+360
-112
DatasetTableField.java
.../main/java/io/dataease/base/domain/DatasetTableField.java
+4
-0
PanelViewLinkageField.java
...n/java/io/dataease/base/domain/PanelViewLinkageField.java
+2
-2
PanelViewLinkageFieldExample.java
...io/dataease/base/domain/PanelViewLinkageFieldExample.java
+56
-56
PanelViewLinkageFieldMapper.xml
...a/io/dataease/base/mapper/PanelViewLinkageFieldMapper.xml
+27
-27
ExtPanelViewLinkageMapper.java
...o/dataease/base/mapper/ext/ExtPanelViewLinkageMapper.java
+6
-1
ExtPanelViewLinkageMapper.xml
...io/dataease/base/mapper/ext/ExtPanelViewLinkageMapper.xml
+36
-12
PanelViewLinkageController.java
...dataease/controller/panel/PanelViewLinkageController.java
+10
-0
PanelLinkageRequest.java
...ataease/controller/request/panel/PanelLinkageRequest.java
+13
-0
PanelViewLinkageDTO.java
...nd/src/main/java/io/dataease/dto/PanelViewLinkageDTO.java
+4
-3
PanelViewLinkageService.java
...va/io/dataease/service/panel/PanelViewLinkageService.java
+67
-3
V20__linkage_table.sql
...nd/src/main/resources/db/migration/V20__linkage_table.sql
+33
-0
linkage.js
frontend/src/api/panel/linkage.js
+9
-0
LinkageField.vue
.../src/components/canvas/components/Editor/LinkageField.vue
+80
-6
SettingMenu.vue
...d/src/components/canvas/components/Editor/SettingMenu.vue
+2
-1
Toolbar.vue
frontend/src/components/canvas/components/Toolbar.vue
+11
-1
没有找到文件。
backend/src/main/java/io/dataease/base/domain/DatasetTableField.java
浏览文件 @
d46a40dc
...
@@ -2,11 +2,15 @@ package io.dataease.base.domain;
...
@@ -2,11 +2,15 @@ package io.dataease.base.domain;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Data
@Builder
@Builder
@AllArgsConstructor
//全参构造函数
@NoArgsConstructor
//无参构造函数
public
class
DatasetTableField
implements
Serializable
{
public
class
DatasetTableField
implements
Serializable
{
private
String
id
;
private
String
id
;
...
...
backend/src/main/java/io/dataease/base/domain/PanelViewLinkageField.java
浏览文件 @
d46a40dc
...
@@ -9,9 +9,9 @@ public class PanelViewLinkageField implements Serializable {
...
@@ -9,9 +9,9 @@ public class PanelViewLinkageField implements Serializable {
private
String
linkageId
;
private
String
linkageId
;
private
String
sourceFi
le
d
;
private
String
sourceFi
el
d
;
private
String
targetFi
le
d
;
private
String
targetFi
el
d
;
private
Long
updateTime
;
private
Long
updateTime
;
...
...
backend/src/main/java/io/dataease/base/domain/PanelViewLinkageFieldExample.java
浏览文件 @
d46a40dc
...
@@ -244,143 +244,143 @@ public class PanelViewLinkageFieldExample {
...
@@ -244,143 +244,143 @@ public class PanelViewLinkageFieldExample {
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dIsNull
()
{
public
Criteria
andSourceFi
el
dIsNull
()
{
addCriterion
(
"source_fi
le
d is null"
);
addCriterion
(
"source_fi
el
d is null"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dIsNotNull
()
{
public
Criteria
andSourceFi
el
dIsNotNull
()
{
addCriterion
(
"source_fi
le
d is not null"
);
addCriterion
(
"source_fi
el
d is not null"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dEqualTo
(
String
value
)
{
public
Criteria
andSourceFi
el
dEqualTo
(
String
value
)
{
addCriterion
(
"source_fi
led ="
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld ="
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dNotEqualTo
(
String
value
)
{
public
Criteria
andSourceFi
el
dNotEqualTo
(
String
value
)
{
addCriterion
(
"source_fi
led <>"
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld <>"
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dGreaterThan
(
String
value
)
{
public
Criteria
andSourceFi
el
dGreaterThan
(
String
value
)
{
addCriterion
(
"source_fi
led >"
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld >"
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dGreaterThanOrEqualTo
(
String
value
)
{
public
Criteria
andSourceFi
el
dGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"source_fi
led >="
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld >="
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dLessThan
(
String
value
)
{
public
Criteria
andSourceFi
el
dLessThan
(
String
value
)
{
addCriterion
(
"source_fi
led <"
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld <"
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dLessThanOrEqualTo
(
String
value
)
{
public
Criteria
andSourceFi
el
dLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"source_fi
led <="
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld <="
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dLike
(
String
value
)
{
public
Criteria
andSourceFi
el
dLike
(
String
value
)
{
addCriterion
(
"source_fi
led like"
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld like"
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dNotLike
(
String
value
)
{
public
Criteria
andSourceFi
el
dNotLike
(
String
value
)
{
addCriterion
(
"source_fi
led not like"
,
value
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld not like"
,
value
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dIn
(
List
<
String
>
values
)
{
public
Criteria
andSourceFi
el
dIn
(
List
<
String
>
values
)
{
addCriterion
(
"source_fi
led in"
,
values
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld in"
,
values
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dNotIn
(
List
<
String
>
values
)
{
public
Criteria
andSourceFi
el
dNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"source_fi
led not in"
,
values
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld not in"
,
values
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dBetween
(
String
value1
,
String
value2
)
{
public
Criteria
andSourceFi
el
dBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"source_fi
led between"
,
value1
,
value2
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld between"
,
value1
,
value2
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andSourceFi
le
dNotBetween
(
String
value1
,
String
value2
)
{
public
Criteria
andSourceFi
el
dNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"source_fi
led not between"
,
value1
,
value2
,
"sourceFile
d"
);
addCriterion
(
"source_fi
eld not between"
,
value1
,
value2
,
"sourceFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dIsNull
()
{
public
Criteria
andTargetFi
el
dIsNull
()
{
addCriterion
(
"target_fi
le
d is null"
);
addCriterion
(
"target_fi
el
d is null"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dIsNotNull
()
{
public
Criteria
andTargetFi
el
dIsNotNull
()
{
addCriterion
(
"target_fi
le
d is not null"
);
addCriterion
(
"target_fi
el
d is not null"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dEqualTo
(
String
value
)
{
public
Criteria
andTargetFi
el
dEqualTo
(
String
value
)
{
addCriterion
(
"target_fi
led ="
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld ="
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dNotEqualTo
(
String
value
)
{
public
Criteria
andTargetFi
el
dNotEqualTo
(
String
value
)
{
addCriterion
(
"target_fi
led <>"
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld <>"
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dGreaterThan
(
String
value
)
{
public
Criteria
andTargetFi
el
dGreaterThan
(
String
value
)
{
addCriterion
(
"target_fi
led >"
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld >"
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dGreaterThanOrEqualTo
(
String
value
)
{
public
Criteria
andTargetFi
el
dGreaterThanOrEqualTo
(
String
value
)
{
addCriterion
(
"target_fi
led >="
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld >="
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dLessThan
(
String
value
)
{
public
Criteria
andTargetFi
el
dLessThan
(
String
value
)
{
addCriterion
(
"target_fi
led <"
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld <"
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dLessThanOrEqualTo
(
String
value
)
{
public
Criteria
andTargetFi
el
dLessThanOrEqualTo
(
String
value
)
{
addCriterion
(
"target_fi
led <="
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld <="
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dLike
(
String
value
)
{
public
Criteria
andTargetFi
el
dLike
(
String
value
)
{
addCriterion
(
"target_fi
led like"
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld like"
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dNotLike
(
String
value
)
{
public
Criteria
andTargetFi
el
dNotLike
(
String
value
)
{
addCriterion
(
"target_fi
led not like"
,
value
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld not like"
,
value
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dIn
(
List
<
String
>
values
)
{
public
Criteria
andTargetFi
el
dIn
(
List
<
String
>
values
)
{
addCriterion
(
"target_fi
led in"
,
values
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld in"
,
values
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dNotIn
(
List
<
String
>
values
)
{
public
Criteria
andTargetFi
el
dNotIn
(
List
<
String
>
values
)
{
addCriterion
(
"target_fi
led not in"
,
values
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld not in"
,
values
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dBetween
(
String
value1
,
String
value2
)
{
public
Criteria
andTargetFi
el
dBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"target_fi
led between"
,
value1
,
value2
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld between"
,
value1
,
value2
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
public
Criteria
andTargetFi
le
dNotBetween
(
String
value1
,
String
value2
)
{
public
Criteria
andTargetFi
el
dNotBetween
(
String
value1
,
String
value2
)
{
addCriterion
(
"target_fi
led not between"
,
value1
,
value2
,
"targetFile
d"
);
addCriterion
(
"target_fi
eld not between"
,
value1
,
value2
,
"targetFiel
d"
);
return
(
Criteria
)
this
;
return
(
Criteria
)
this
;
}
}
...
...
backend/src/main/java/io/dataease/base/mapper/PanelViewLinkageFieldMapper.xml
浏览文件 @
d46a40dc
...
@@ -4,8 +4,8 @@
...
@@ -4,8 +4,8 @@
<resultMap
id=
"BaseResultMap"
type=
"io.dataease.base.domain.PanelViewLinkageField"
>
<resultMap
id=
"BaseResultMap"
type=
"io.dataease.base.domain.PanelViewLinkageField"
>
<id
column=
"id"
jdbcType=
"VARCHAR"
property=
"id"
/>
<id
column=
"id"
jdbcType=
"VARCHAR"
property=
"id"
/>
<result
column=
"linkage_id"
jdbcType=
"VARCHAR"
property=
"linkageId"
/>
<result
column=
"linkage_id"
jdbcType=
"VARCHAR"
property=
"linkageId"
/>
<result
column=
"source_fi
led"
jdbcType=
"VARCHAR"
property=
"sourceFile
d"
/>
<result
column=
"source_fi
eld"
jdbcType=
"VARCHAR"
property=
"sourceFiel
d"
/>
<result
column=
"target_fi
led"
jdbcType=
"VARCHAR"
property=
"targetFile
d"
/>
<result
column=
"target_fi
eld"
jdbcType=
"VARCHAR"
property=
"targetFiel
d"
/>
<result
column=
"update_time"
jdbcType=
"BIGINT"
property=
"updateTime"
/>
<result
column=
"update_time"
jdbcType=
"BIGINT"
property=
"updateTime"
/>
</resultMap>
</resultMap>
<sql
id=
"Example_Where_Clause"
>
<sql
id=
"Example_Where_Clause"
>
...
@@ -67,7 +67,7 @@
...
@@ -67,7 +67,7 @@
</where>
</where>
</sql>
</sql>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, linkage_id, source_fi
led, target_file
d, update_time
id, linkage_id, source_fi
eld, target_fiel
d, update_time
</sql>
</sql>
<select
id=
"selectByExample"
parameterType=
"io.dataease.base.domain.PanelViewLinkageFieldExample"
resultMap=
"BaseResultMap"
>
<select
id=
"selectByExample"
parameterType=
"io.dataease.base.domain.PanelViewLinkageFieldExample"
resultMap=
"BaseResultMap"
>
select
select
...
@@ -100,10 +100,10 @@
...
@@ -100,10 +100,10 @@
</if>
</if>
</delete>
</delete>
<insert
id=
"insert"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
<insert
id=
"insert"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
insert into panel_view_linkage_field (id, linkage_id, source_fi
le
d,
insert into panel_view_linkage_field (id, linkage_id, source_fi
el
d,
target_fi
le
d, update_time)
target_fi
el
d, update_time)
values (#{id,jdbcType=VARCHAR}, #{linkageId,jdbcType=VARCHAR}, #{sourceFi
le
d,jdbcType=VARCHAR},
values (#{id,jdbcType=VARCHAR}, #{linkageId,jdbcType=VARCHAR}, #{sourceFi
el
d,jdbcType=VARCHAR},
#{targetFi
le
d,jdbcType=VARCHAR}, #{updateTime,jdbcType=BIGINT})
#{targetFi
el
d,jdbcType=VARCHAR}, #{updateTime,jdbcType=BIGINT})
</insert>
</insert>
<insert
id=
"insertSelective"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
<insert
id=
"insertSelective"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
insert into panel_view_linkage_field
insert into panel_view_linkage_field
...
@@ -114,11 +114,11 @@
...
@@ -114,11 +114,11 @@
<if
test=
"linkageId != null"
>
<if
test=
"linkageId != null"
>
linkage_id,
linkage_id,
</if>
</if>
<if
test=
"sourceFi
le
d != null"
>
<if
test=
"sourceFi
el
d != null"
>
source_fi
le
d,
source_fi
el
d,
</if>
</if>
<if
test=
"targetFi
le
d != null"
>
<if
test=
"targetFi
el
d != null"
>
target_fi
le
d,
target_fi
el
d,
</if>
</if>
<if
test=
"updateTime != null"
>
<if
test=
"updateTime != null"
>
update_time,
update_time,
...
@@ -131,11 +131,11 @@
...
@@ -131,11 +131,11 @@
<if
test=
"linkageId != null"
>
<if
test=
"linkageId != null"
>
#{linkageId,jdbcType=VARCHAR},
#{linkageId,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"sourceFi
le
d != null"
>
<if
test=
"sourceFi
el
d != null"
>
#{sourceFi
le
d,jdbcType=VARCHAR},
#{sourceFi
el
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"targetFi
le
d != null"
>
<if
test=
"targetFi
el
d != null"
>
#{targetFi
le
d,jdbcType=VARCHAR},
#{targetFi
el
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"updateTime != null"
>
<if
test=
"updateTime != null"
>
#{updateTime,jdbcType=BIGINT},
#{updateTime,jdbcType=BIGINT},
...
@@ -157,11 +157,11 @@
...
@@ -157,11 +157,11 @@
<if
test=
"record.linkageId != null"
>
<if
test=
"record.linkageId != null"
>
linkage_id = #{record.linkageId,jdbcType=VARCHAR},
linkage_id = #{record.linkageId,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"record.sourceFi
le
d != null"
>
<if
test=
"record.sourceFi
el
d != null"
>
source_fi
led = #{record.sourceFile
d,jdbcType=VARCHAR},
source_fi
eld = #{record.sourceFiel
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"record.targetFi
le
d != null"
>
<if
test=
"record.targetFi
el
d != null"
>
target_fi
led = #{record.targetFile
d,jdbcType=VARCHAR},
target_fi
eld = #{record.targetFiel
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"record.updateTime != null"
>
<if
test=
"record.updateTime != null"
>
update_time = #{record.updateTime,jdbcType=BIGINT},
update_time = #{record.updateTime,jdbcType=BIGINT},
...
@@ -175,8 +175,8 @@
...
@@ -175,8 +175,8 @@
update panel_view_linkage_field
update panel_view_linkage_field
set id = #{record.id,jdbcType=VARCHAR},
set id = #{record.id,jdbcType=VARCHAR},
linkage_id = #{record.linkageId,jdbcType=VARCHAR},
linkage_id = #{record.linkageId,jdbcType=VARCHAR},
source_fi
led = #{record.sourceFile
d,jdbcType=VARCHAR},
source_fi
eld = #{record.sourceFiel
d,jdbcType=VARCHAR},
target_fi
led = #{record.targetFile
d,jdbcType=VARCHAR},
target_fi
eld = #{record.targetFiel
d,jdbcType=VARCHAR},
update_time = #{record.updateTime,jdbcType=BIGINT}
update_time = #{record.updateTime,jdbcType=BIGINT}
<if
test=
"_parameter != null"
>
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
<include
refid=
"Update_By_Example_Where_Clause"
/>
...
@@ -188,11 +188,11 @@
...
@@ -188,11 +188,11 @@
<if
test=
"linkageId != null"
>
<if
test=
"linkageId != null"
>
linkage_id = #{linkageId,jdbcType=VARCHAR},
linkage_id = #{linkageId,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"sourceFi
le
d != null"
>
<if
test=
"sourceFi
el
d != null"
>
source_fi
led = #{sourceFile
d,jdbcType=VARCHAR},
source_fi
eld = #{sourceFiel
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"targetFi
le
d != null"
>
<if
test=
"targetFi
el
d != null"
>
target_fi
led = #{targetFile
d,jdbcType=VARCHAR},
target_fi
eld = #{targetFiel
d,jdbcType=VARCHAR},
</if>
</if>
<if
test=
"updateTime != null"
>
<if
test=
"updateTime != null"
>
update_time = #{updateTime,jdbcType=BIGINT},
update_time = #{updateTime,jdbcType=BIGINT},
...
@@ -203,8 +203,8 @@
...
@@ -203,8 +203,8 @@
<update
id=
"updateByPrimaryKey"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
<update
id=
"updateByPrimaryKey"
parameterType=
"io.dataease.base.domain.PanelViewLinkageField"
>
update panel_view_linkage_field
update panel_view_linkage_field
set linkage_id = #{linkageId,jdbcType=VARCHAR},
set linkage_id = #{linkageId,jdbcType=VARCHAR},
source_fi
led = #{sourceFile
d,jdbcType=VARCHAR},
source_fi
eld = #{sourceFiel
d,jdbcType=VARCHAR},
target_fi
led = #{targetFile
d,jdbcType=VARCHAR},
target_fi
eld = #{targetFiel
d,jdbcType=VARCHAR},
update_time = #{updateTime,jdbcType=BIGINT}
update_time = #{updateTime,jdbcType=BIGINT}
where id = #{id,jdbcType=VARCHAR}
where id = #{id,jdbcType=VARCHAR}
</update>
</update>
...
...
backend/src/main/java/io/dataease/base/mapper/ext/ExtPanelViewLinkageMapper.java
浏览文件 @
d46a40dc
...
@@ -9,6 +9,11 @@ import java.util.List;
...
@@ -9,6 +9,11 @@ import java.util.List;
public
interface
ExtPanelViewLinkageMapper
{
public
interface
ExtPanelViewLinkageMapper
{
List
<
PanelViewLinkageDTO
>
getViewLinkageGather
(
@Param
(
"panelId"
)
String
panelId
,
@Param
(
"sourceViewId"
)
String
sourceViewId
,
@Param
(
"targetViewIds"
)
List
<
String
>
targetViewIds
);
List
<
PanelViewLinkageDTO
>
getViewLinkageGather
(
@Param
(
"panelId"
)
String
panelId
,
@Param
(
"sourceViewId"
)
String
sourceViewId
,
@Param
(
"targetViewIds"
)
List
<
String
>
targetViewIds
);
List
<
DatasetTableField
>
queryTableField
(
@Param
(
"tableId"
)
String
tableId
);
List
<
DatasetTableField
>
queryTableField
(
@Param
(
"table_id"
)
String
tableId
);
void
deleteViewLinkage
(
@Param
(
"panelId"
)
String
panelId
,
@Param
(
"sourceViewId"
)
String
sourceViewId
);
void
deleteViewLinkageField
(
@Param
(
"panelId"
)
String
panelId
,
@Param
(
"sourceViewId"
)
String
sourceViewId
);
}
}
backend/src/main/java/io/dataease/base/mapper/ext/ExtPanelViewLinkageMapper.xml
浏览文件 @
d46a40dc
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
<mapper
namespace=
"io.dataease.base.mapper.ext.ExtPanelViewLinkageMapper"
>
<mapper
namespace=
"io.dataease.base.mapper.ext.ExtPanelViewLinkageMapper"
>
<resultMap
id=
"TableFieldMap"
type=
"io.dataease.base.domain.DatasetTableField"
>
<resultMap
id=
"TableFieldMap"
type=
"io.dataease.base.domain.DatasetTableField"
>
<
id
column=
"id"
jdbcType=
"VARCHAR"
property=
"id"
/>
<
result
column=
"id"
jdbcType=
"VARCHAR"
property=
"id"
/>
<result
column=
"table_id"
jdbcType=
"VARCHAR"
property=
"tableId"
/>
<result
column=
"table_id"
jdbcType=
"VARCHAR"
property=
"tableId"
/>
<result
column=
"origin_name"
jdbcType=
"VARCHAR"
property=
"originName"
/>
<result
column=
"origin_name"
jdbcType=
"VARCHAR"
property=
"originName"
/>
<result
column=
"name"
jdbcType=
"VARCHAR"
property=
"name"
/>
<result
column=
"name"
jdbcType=
"VARCHAR"
property=
"name"
/>
...
@@ -15,12 +15,12 @@
...
@@ -15,12 +15,12 @@
<result
column=
"table_id"
jdbcType=
"VARCHAR"
property=
"tableId"
/>
<result
column=
"table_id"
jdbcType=
"VARCHAR"
property=
"tableId"
/>
<result
column=
"targetViewName"
jdbcType=
"VARCHAR"
property=
"targetViewName"
/>
<result
column=
"targetViewName"
jdbcType=
"VARCHAR"
property=
"targetViewName"
/>
<result
column=
"linkageActive"
property=
"linkageActive"
/>
<result
column=
"linkageActive"
property=
"linkageActive"
/>
<!-- <collection property="targetViewFields" ofType="io.dataease.base.domain.DatasetTableField" column="table_id"-->
<collection
property=
"targetViewFields"
ofType=
"io.dataease.base.domain.DatasetTableField"
column=
"table_id"
<!-- select="queryTableField">--
>
select=
"queryTableField"
>
<!-- </collection>--
>
</collection
>
<collection
property=
"linkageFields"
ofType=
"io.dataease.
dto.PanelViewLinkageFieldDTO
"
>
<collection
property=
"linkageFields"
ofType=
"io.dataease.
base.domain.PanelViewLinkageField
"
>
<result
column=
"source_fi
led"
jdbcType=
"VARCHAR"
property=
"sourceFile
d"
/>
<result
column=
"source_fi
eld"
jdbcType=
"VARCHAR"
property=
"sourceFiel
d"
/>
<result
column=
"target_fi
led"
jdbcType=
"VARCHAR"
property=
"targetFile
d"
/>
<result
column=
"target_fi
eld"
jdbcType=
"VARCHAR"
property=
"targetFiel
d"
/>
</collection>
</collection>
</resultMap>
</resultMap>
...
@@ -30,14 +30,14 @@
...
@@ -30,14 +30,14 @@
chart_view.id as 'target_view_id',
chart_view.id as 'target_view_id',
chart_view.table_id,
chart_view.table_id,
(case when panel_view_linkage.target_view_id is null then 0 else 1 end) as 'linkageActive',
(case when panel_view_linkage.target_view_id is null then 0 else 1 end) as 'linkageActive',
panel_view_linkage_field.source_fi
le
d,
panel_view_linkage_field.source_fi
el
d,
panel_view_linkage_field.target_fi
le
d
panel_view_linkage_field.target_fi
el
d
FROM
FROM
chart_view
chart_view
LEFT JOIN panel_view_linkage ON chart_view.id = panel_view_linkage.target_view_id
LEFT JOIN panel_view_linkage ON chart_view.id = panel_view_linkage.target_view_id
LEFT JOIN panel_view_linkage_field ON panel_view_linkage.id = panel_view_linkage_field.linkage_id
AND panel_view_linkage.panel_id = #{panelId}
AND panel_view_linkage.panel_id = #{panelId}
AND panel_view_linkage.source_view_id = #{sourceViewId}
AND panel_view_linkage.source_view_id = #{sourceViewId}
LEFT JOIN panel_view_linkage_field ON panel_view_linkage.id = panel_view_linkage_field.linkage_id
where chart_view.id in
where chart_view.id in
<foreach
collection=
"targetViewIds"
item=
"targetViewId"
index=
"index"
open=
"("
close=
")"
separator=
","
>
<foreach
collection=
"targetViewIds"
item=
"targetViewId"
index=
"index"
open=
"("
close=
")"
separator=
","
>
#{targetViewId}
#{targetViewId}
...
@@ -49,9 +49,33 @@
...
@@ -49,9 +49,33 @@
dataset_table_field.id,
dataset_table_field.id,
dataset_table_field.table_id,
dataset_table_field.table_id,
dataset_table_field.origin_name,
dataset_table_field.origin_name,
dataset_table_field.
name
,
dataset_table_field.
`name`
,
dataset_table_field.de_type
dataset_table_field.de_type
from dataset_table_field where table_id = #{tableI
d}
from dataset_table_field where table_id = #{table_i
d}
</select>
</select>
<delete
id=
"deleteViewLinkage"
>
delete from panel_view_linkage where panel_view_linkage.panel_id = #{panelId}
AND panel_view_linkage.source_view_id = #{sourceViewId}
</delete>
<delete
id=
"deleteViewLinkageField"
>
DELETE pvl
FROM
panel_view_linkage pvl,
panel_view_linkage_field pvlf
WHERE
pvl.id = pvlf.linkage_id
AND pvl.source_view_id = #{panelId}
AND pvl.panel_id = #{panelId}
</delete>
<insert
id=
"savePluginMenu"
>
INSERT INTO `panel_view_linkage` ( menu_id, title, pid, sub_count, permission, hidden,i_frame ) VALUES
<foreach
collection=
"menuList"
item=
"menu"
index=
"index"
separator=
","
>
(#{menu.menuId},#{menu.title},#{menu.pid},#{menu.subCount},#{menu.permission},#{menu.hidden},ifnull(#{menu.hidden},0))
</foreach>
</insert>
</mapper>
</mapper>
backend/src/main/java/io/dataease/controller/panel/PanelViewLinkageController.java
浏览文件 @
d46a40dc
...
@@ -2,6 +2,7 @@ package io.dataease.controller.panel;
...
@@ -2,6 +2,7 @@ package io.dataease.controller.panel;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
io.dataease.controller.request.panel.PanelLinkageRequest
;
import
io.dataease.controller.request.panel.PanelLinkageRequest
;
import
io.dataease.dto.PanelViewLinkageDTO
;
import
io.dataease.service.panel.PanelViewLinkageService
;
import
io.dataease.service.panel.PanelViewLinkageService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
...
@@ -30,4 +31,13 @@ public class PanelViewLinkageController {
...
@@ -30,4 +31,13 @@ public class PanelViewLinkageController {
return
panelViewLinkageService
.
getViewLinkageGather
(
request
);
return
panelViewLinkageService
.
getViewLinkageGather
(
request
);
}
}
@ApiOperation
(
"获取仪表板视图联动信息"
)
@PostMapping
(
"/saveLinkage"
)
public
void
saveLinkage
(
@RequestBody
PanelLinkageRequest
request
){
panelViewLinkageService
.
saveLinkage
(
request
);
}
}
}
backend/src/main/java/io/dataease/controller/request/panel/PanelLinkageRequest.java
浏览文件 @
d46a40dc
package
io
.
dataease
.
controller
.
request
.
panel
;
package
io
.
dataease
.
controller
.
request
.
panel
;
import
io.dataease.dto.PanelViewLinkageDTO
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* Author: wangjiahao
* Author: wangjiahao
...
@@ -15,6 +18,16 @@ public class PanelLinkageRequest {
...
@@ -15,6 +18,16 @@ public class PanelLinkageRequest {
private
List
<
String
>
targetViewIds
;
private
List
<
String
>
targetViewIds
;
private
Map
<
String
,
PanelViewLinkageDTO
>
linkageInfo
;
public
Map
<
String
,
PanelViewLinkageDTO
>
getLinkageInfo
()
{
return
linkageInfo
;
}
public
void
setLinkageInfo
(
Map
<
String
,
PanelViewLinkageDTO
>
linkageInfo
)
{
this
.
linkageInfo
=
linkageInfo
;
}
public
String
getPanelId
()
{
public
String
getPanelId
()
{
return
panelId
;
return
panelId
;
}
}
...
...
backend/src/main/java/io/dataease/dto/PanelViewLinkageDTO.java
浏览文件 @
d46a40dc
...
@@ -2,6 +2,7 @@ package io.dataease.dto;
...
@@ -2,6 +2,7 @@ package io.dataease.dto;
import
io.dataease.base.domain.DatasetTableField
;
import
io.dataease.base.domain.DatasetTableField
;
import
io.dataease.base.domain.PanelViewLinkage
;
import
io.dataease.base.domain.PanelViewLinkage
;
import
io.dataease.base.domain.PanelViewLinkageField
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -19,7 +20,7 @@ public class PanelViewLinkageDTO extends PanelViewLinkage {
...
@@ -19,7 +20,7 @@ public class PanelViewLinkageDTO extends PanelViewLinkage {
//关联状态
//关联状态
private
boolean
linkageActive
=
false
;
private
boolean
linkageActive
=
false
;
private
List
<
PanelViewLinkageField
DTO
>
linkageFields
=
new
ArrayList
<>();
private
List
<
PanelViewLinkageField
>
linkageFields
=
new
ArrayList
<>();
private
List
<
DatasetTableField
>
targetViewFields
=
new
ArrayList
<>();
private
List
<
DatasetTableField
>
targetViewFields
=
new
ArrayList
<>();
...
@@ -68,11 +69,11 @@ public class PanelViewLinkageDTO extends PanelViewLinkage {
...
@@ -68,11 +69,11 @@ public class PanelViewLinkageDTO extends PanelViewLinkage {
this
.
linkageActive
=
linkageActive
;
this
.
linkageActive
=
linkageActive
;
}
}
public
List
<
PanelViewLinkageField
DTO
>
getLinkageFields
()
{
public
List
<
PanelViewLinkageField
>
getLinkageFields
()
{
return
linkageFields
;
return
linkageFields
;
}
}
public
void
setLinkageFields
(
List
<
PanelViewLinkageField
DTO
>
linkageFields
)
{
public
void
setLinkageFields
(
List
<
PanelViewLinkageField
>
linkageFields
)
{
this
.
linkageFields
=
linkageFields
;
this
.
linkageFields
=
linkageFields
;
}
}
}
}
backend/src/main/java/io/dataease/service/panel/PanelViewLinkageService.java
浏览文件 @
d46a40dc
package
io
.
dataease
.
service
.
panel
;
package
io
.
dataease
.
service
.
panel
;
import
io.dataease.base.domain.PanelViewLinkage
;
import
io.dataease.base.domain.PanelViewLinkageExample
;
import
io.dataease.base.domain.PanelViewLinkageField
;
import
io.dataease.base.mapper.PanelViewLinkageFieldMapper
;
import
io.dataease.base.mapper.PanelViewLinkageMapper
;
import
io.dataease.base.mapper.PanelViewLinkageMapper
;
import
io.dataease.base.mapper.ext.ExtPanelViewLinkageMapper
;
import
io.dataease.base.mapper.ext.ExtPanelViewLinkageMapper
;
import
io.dataease.commons.utils.AuthUtils
;
import
io.dataease.controller.request.panel.PanelLinkageRequest
;
import
io.dataease.controller.request.panel.PanelLinkageRequest
;
import
io.dataease.dto.PanelViewLinkageDTO
;
import
io.dataease.dto.PanelViewLinkageDTO
;
import
io.dataease.dto.PanelViewLinkageFieldDTO
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.*
;
import
java.util.*
;
...
@@ -22,6 +30,9 @@ public class PanelViewLinkageService {
...
@@ -22,6 +30,9 @@ public class PanelViewLinkageService {
@Resource
@Resource
private
PanelViewLinkageMapper
panelViewLinkageMapper
;
private
PanelViewLinkageMapper
panelViewLinkageMapper
;
@Resource
private
PanelViewLinkageFieldMapper
panelViewLinkageFieldMapper
;
@Resource
@Resource
private
ExtPanelViewLinkageMapper
extPanelViewLinkageMapper
;
private
ExtPanelViewLinkageMapper
extPanelViewLinkageMapper
;
...
@@ -29,9 +40,6 @@ public class PanelViewLinkageService {
...
@@ -29,9 +40,6 @@ public class PanelViewLinkageService {
public
Map
<
String
,
PanelViewLinkageDTO
>
getViewLinkageGather
(
PanelLinkageRequest
request
)
{
public
Map
<
String
,
PanelViewLinkageDTO
>
getViewLinkageGather
(
PanelLinkageRequest
request
)
{
if
(
CollectionUtils
.
isNotEmpty
(
request
.
getTargetViewIds
())){
if
(
CollectionUtils
.
isNotEmpty
(
request
.
getTargetViewIds
())){
List
<
PanelViewLinkageDTO
>
linkageDTOList
=
extPanelViewLinkageMapper
.
getViewLinkageGather
(
request
.
getPanelId
(),
request
.
getSourceViewId
(),
request
.
getTargetViewIds
());
List
<
PanelViewLinkageDTO
>
linkageDTOList
=
extPanelViewLinkageMapper
.
getViewLinkageGather
(
request
.
getPanelId
(),
request
.
getSourceViewId
(),
request
.
getTargetViewIds
());
linkageDTOList
.
stream
().
forEach
(
linkage
->{
linkage
.
setTargetViewFields
(
extPanelViewLinkageMapper
.
queryTableField
(
linkage
.
getTableId
()));
});
Map
<
String
,
PanelViewLinkageDTO
>
result
=
linkageDTOList
.
stream
()
Map
<
String
,
PanelViewLinkageDTO
>
result
=
linkageDTOList
.
stream
()
.
collect
(
Collectors
.
toMap
(
PanelViewLinkageDTO:
:
getTargetViewId
,
PanelViewLinkageDTO
->
PanelViewLinkageDTO
));
.
collect
(
Collectors
.
toMap
(
PanelViewLinkageDTO:
:
getTargetViewId
,
PanelViewLinkageDTO
->
PanelViewLinkageDTO
));
return
result
;
return
result
;
...
@@ -39,5 +47,61 @@ public class PanelViewLinkageService {
...
@@ -39,5 +47,61 @@ public class PanelViewLinkageService {
return
new
HashMap
<>();
return
new
HashMap
<>();
}
}
@Transactional
public
void
saveLinkage
(
PanelLinkageRequest
request
){
Long
updateTime
=
System
.
currentTimeMillis
();
Map
<
String
,
PanelViewLinkageDTO
>
linkageInfo
=
request
.
getLinkageInfo
();
String
sourceViewId
=
request
.
getSourceViewId
();
String
panelId
=
request
.
getPanelId
();
Assert
.
notNull
(
sourceViewId
,
"source View ID can not be null"
);
Assert
.
notNull
(
panelId
,
"panelId can not be null"
);
//去掉source view 的信息
linkageInfo
.
remove
(
sourceViewId
);
// 清理原有关系
extPanelViewLinkageMapper
.
deleteViewLinkageField
(
panelId
,
sourceViewId
);
extPanelViewLinkageMapper
.
deleteViewLinkage
(
panelId
,
sourceViewId
);
//重新建立关系
for
(
Map
.
Entry
<
String
,
PanelViewLinkageDTO
>
entry
:
linkageInfo
.
entrySet
()){
String
targetViewId
=
entry
.
getKey
();
PanelViewLinkageDTO
linkageDTO
=
entry
.
getValue
();
List
<
PanelViewLinkageField
>
linkageFields
=
linkageDTO
.
getLinkageFields
();
if
(
CollectionUtils
.
isNotEmpty
(
linkageFields
)&&
linkageDTO
.
isLinkageActive
()){
String
linkageId
=
UUID
.
randomUUID
().
toString
();
PanelViewLinkage
linkage
=
new
PanelViewLinkage
();
linkage
.
setId
(
linkageId
);
linkage
.
setPanelId
(
panelId
);
linkage
.
setSourceViewId
(
sourceViewId
);
linkage
.
setTargetViewId
(
targetViewId
);
linkage
.
setUpdatePeople
(
AuthUtils
.
getUser
().
getUsername
());
linkage
.
setUpdateTime
(
updateTime
);
panelViewLinkageMapper
.
insert
(
linkage
);
linkageFields
.
stream
().
forEach
(
linkageField
->{
linkageField
.
setId
(
UUID
.
randomUUID
().
toString
());
linkageField
.
setLinkageId
(
linkageId
);
linkageField
.
setUpdateTime
(
updateTime
);
panelViewLinkageFieldMapper
.
insert
(
linkageField
);
});
}
}
}
}
}
backend/src/main/resources/db/migration/V20__linkage_table.sql
0 → 100644
浏览文件 @
d46a40dc
SET
NAMES
utf8mb4
;
SET
FOREIGN_KEY_CHECKS
=
0
;
-- ----------------------------
-- Table structure for panel_view_linkage
-- ----------------------------
DROP
TABLE
IF
EXISTS
`panel_view_linkage`
;
CREATE
TABLE
`panel_view_linkage`
(
`id`
varchar
(
50
)
NOT
NULL
,
`panel_id`
varchar
(
50
)
DEFAULT
NULL
,
`source_view_id`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'源视图id'
,
`target_view_id`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'联动视图id'
,
`update_time`
bigint
(
13
)
DEFAULT
NULL
COMMENT
'更新时间'
,
`update_people`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'更新人'
,
`ext1`
varchar
(
2000
)
DEFAULT
NULL
,
`ext2`
varchar
(
2000
)
DEFAULT
NULL
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
;
-- ----------------------------
-- Table structure for panel_view_linkage_field
-- ----------------------------
DROP
TABLE
IF
EXISTS
`panel_view_linkage_field`
;
CREATE
TABLE
`panel_view_linkage_field`
(
`id`
varchar
(
50
)
NOT
NULL
,
`linkage_id`
varchar
(
50
)
DEFAULT
NULL
COMMENT
'联动ID'
,
`source_field`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'源视图字段'
,
`target_field`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'目标视图字段'
,
`update_time`
bigint
(
13
)
DEFAULT
NULL
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
;
SET
FOREIGN_KEY_CHECKS
=
1
;
frontend/src/api/panel/linkage.js
浏览文件 @
d46a40dc
...
@@ -9,3 +9,12 @@ export function getViewLinkageGather(requestInfo) {
...
@@ -9,3 +9,12 @@ export function getViewLinkageGather(requestInfo) {
})
})
}
}
export
function
saveLinkage
(
requestInfo
)
{
return
request
({
url
:
'/linkage/saveLinkage'
,
method
:
'post'
,
data
:
requestInfo
,
loading
:
true
})
}
frontend/src/components/canvas/components/Editor/LinkageField.vue
浏览文件 @
d46a40dc
<
template
>
<
template
>
<el-popover
<el-popover
width=
"
3
00"
width=
"
4
00"
trigger=
"click"
trigger=
"click"
>
>
<el-row>
<el-row>
<el-col
:span=
"1
0
"
>
<el-col
:span=
"1
1
"
>
<div
class=
"ellip"
>
联动视图
</div>
<div
class=
"ellip"
>
{{
sourceLinkageInfo
.
targetViewName
}}
</div>
</el-col>
</el-col>
<el-col
:span=
"1
0
"
>
<el-col
:span=
"1
1
"
>
<div
class=
"ellip"
>
{{
linkageInfo
.
targetViewName
}}
</div>
<div
class=
"ellip"
>
{{
linkageInfo
.
targetViewName
}}
</div>
</el-col>
</el-col>
</el-row>
</el-row>
linkageInfo
{{
linkageInfo
}}
<el-row
v-for=
"(item, index) in linkageInfo.linkageFields"
:key=
"index"
>
<el-col
:span=
"11"
>
<div
class=
"select-filed"
>
<el-select
v-model=
"item.sourceField"
size=
"mini"
placeholder=
"请选择"
>
<el-option
v-for=
"item in sourceLinkageInfo.targetViewFields"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
>
<span
style=
"float: left"
>
<svg-icon
v-if=
"item.deType === 0"
icon-class=
"field_text"
class=
"field-icon-text"
/>
<svg-icon
v-if=
"item.deType === 1"
icon-class=
"field_time"
class=
"field-icon-time"
/>
<svg-icon
v-if=
"item.deType === 2 || item.value === 3"
icon-class=
"field_value"
class=
"field-icon-value"
/>
<svg-icon
v-if=
"item.deType === 5"
icon-class=
"field_location"
class=
"field-icon-location"
/>
</span>
<span
style=
"float: left; color: #8492a6; font-size: 12px"
>
{{
item
.
name
}}
</span>
</el-option>
</el-select>
</div>
</el-col>
<el-col
:span=
"11"
>
<div
class=
"select-filed"
>
<el-select
v-model=
"item.targetField"
size=
"mini"
placeholder=
"请选择"
>
<el-option
v-for=
"item in linkageInfo.targetViewFields"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
>
<span
style=
"float: left"
>
<svg-icon
v-if=
"item.deType === 0"
icon-class=
"field_text"
class=
"field-icon-text"
/>
<svg-icon
v-if=
"item.deType === 1"
icon-class=
"field_time"
class=
"field-icon-time"
/>
<svg-icon
v-if=
"item.deType === 2 || item.value === 3"
icon-class=
"field_value"
class=
"field-icon-value"
/>
<svg-icon
v-if=
"item.deType === 5"
icon-class=
"field_location"
class=
"field-icon-location"
/>
</span>
<span
style=
"float: left; color: #8492a6; font-size: 12px"
>
{{
item
.
name
}}
</span>
</el-option>
</el-select>
</div>
</el-col>
<el-col
:span=
"2"
>
<div>
<el-button
icon=
"el-icon-delete"
type=
"text"
size=
"small"
style=
"float: left"
@
click=
"deleteLinkageField(index)"
/>
</div>
</el-col>
</el-row>
<el-row
class=
"bottom"
>
<el-row
class=
"bottom"
>
<el-button
size=
"mini"
type=
"success"
icon=
"el-icon-plus"
round
>
追加联动依赖字段
</el-button>
<el-button
size=
"mini"
type=
"success"
icon=
"el-icon-plus"
round
@
click=
"addLinkageField"
>
追加联动依赖字段
</el-button>
</el-row>
</el-row>
<!--
<el-button
slot=
"reference"
>
T
</el-button>
-->
<!--
<el-button
slot=
"reference"
>
T
</el-button>
-->
...
@@ -60,6 +106,9 @@ export default {
...
@@ -60,6 +106,9 @@ export default {
linkageInfo
()
{
linkageInfo
()
{
return
this
.
targetLinkageInfo
[
this
.
element
.
propValue
.
viewId
]
return
this
.
targetLinkageInfo
[
this
.
element
.
propValue
.
viewId
]
},
},
sourceLinkageInfo
()
{
return
this
.
targetLinkageInfo
[
this
.
curLinkageView
.
propValue
.
viewId
]
},
...
mapState
([
...
mapState
([
'menuTop'
,
'menuTop'
,
'menuLeft'
,
'menuLeft'
,
...
@@ -81,6 +130,16 @@ export default {
...
@@ -81,6 +130,16 @@ export default {
},
},
linkageEdit
()
{
linkageEdit
()
{
},
deleteLinkageField
(
index
)
{
this
.
linkageInfo
.
linkageFields
.
splice
(
index
,
1
)
},
addLinkageField
()
{
const
linkageFieldItem
=
{
sourceViewId
:
null
,
targetViewId
:
null
}
this
.
linkageInfo
.
linkageFields
.
push
(
linkageFieldItem
)
}
}
}
}
}
}
...
@@ -92,6 +151,7 @@ export default {
...
@@ -92,6 +151,7 @@ export default {
}
}
.bottom
{
.bottom
{
margin-top
:
20px
;
text-align
:
center
;
text-align
:
center
;
}
}
...
@@ -110,4 +170,18 @@ export default {
...
@@ -110,4 +170,18 @@ export default {
border-radius
:
3px
;
border-radius
:
3px
;
}
}
.select-filed
{
/*width: 100%;*/
margin-left
:
10px
;
margin-right
:
10px
;
overflow
:
hidden
;
/*超出部分隐藏*/
white-space
:
nowrap
;
/*不换行*/
text-overflow
:ellipsis
;
/*超出部分文字以...显示*/
color
:
#3d4d66
;
font-size
:
12px
;
line-height
:
35px
;
height
:
35px
;
border-radius
:
3px
;
}
</
style
>
</
style
>
frontend/src/components/canvas/components/Editor/SettingMenu.vue
浏览文件 @
d46a40dc
...
@@ -124,7 +124,8 @@ export default {
...
@@ -124,7 +124,8 @@ export default {
},
},
linkageSetting
()
{
linkageSetting
()
{
debugger
debugger
const
targetViewIds
=
this
.
componentData
.
filter
(
item
=>
item
.
type
===
'view'
&&
item
.
propValue
&&
item
.
propValue
.
viewId
&&
item
!==
this
.
curComponent
)
// sourceViewId 也加入查询
const
targetViewIds
=
this
.
componentData
.
filter
(
item
=>
item
.
type
===
'view'
&&
item
.
propValue
&&
item
.
propValue
.
viewId
)
.
map
(
item
=>
item
.
propValue
.
viewId
)
.
map
(
item
=>
item
.
propValue
.
viewId
)
// 获取当前仪表板当前视图联动信息
// 获取当前仪表板当前视图联动信息
...
...
frontend/src/components/canvas/components/Toolbar.vue
浏览文件 @
d46a40dc
...
@@ -101,6 +101,7 @@ import { commonStyle, commonAttr } from '@/components/canvas/custom-component/co
...
@@ -101,6 +101,7 @@ import { commonStyle, commonAttr } from '@/components/canvas/custom-component/co
import
eventBus
from
'@/components/canvas/utils/eventBus'
import
eventBus
from
'@/components/canvas/utils/eventBus'
import
{
deepCopy
}
from
'@/components/canvas/utils/utils'
import
{
deepCopy
}
from
'@/components/canvas/utils/utils'
import
{
panelSave
}
from
'@/api/panel/panel'
import
{
panelSave
}
from
'@/api/panel/panel'
import
{
saveLinkage
}
from
'@/api/panel/linkage'
import
bus
from
'@/utils/bus'
import
bus
from
'@/utils/bus'
import
{
import
{
DEFAULT_COMMON_CANVAS_STYLE_STRING
DEFAULT_COMMON_CANVAS_STYLE_STRING
...
@@ -137,7 +138,9 @@ export default {
...
@@ -137,7 +138,9 @@ export default {
'changeTimes'
,
'changeTimes'
,
'snapshotIndex'
,
'snapshotIndex'
,
'lastSaveSnapshotIndex'
,
'lastSaveSnapshotIndex'
,
'linkageSettingStatus'
'linkageSettingStatus'
,
'curLinkageView'
,
'targetLinkageInfo'
]),
]),
created
()
{
created
()
{
...
@@ -316,7 +319,14 @@ export default {
...
@@ -316,7 +319,14 @@ export default {
this
.
close
()
this
.
close
()
},
},
saveLinkage
()
{
saveLinkage
()
{
const
request
=
{
panelId
:
this
.
$store
.
state
.
panel
.
panelInfo
.
id
,
sourceViewId
:
this
.
curLinkageView
.
propValue
.
viewId
,
linkageInfo
:
this
.
targetLinkageInfo
}
saveLinkage
(
request
).
then
(
rsp
=>
{
this
.
cancelLinkageSettingStatus
()
this
.
cancelLinkageSettingStatus
()
})
},
},
cancelLinkage
()
{
cancelLinkage
()
{
this
.
cancelLinkageSettingStatus
()
this
.
cancelLinkageSettingStatus
()
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论