mirror of
https://github.com/dataease/dataease.git
synced 2026-05-21 04:08:10 +08:00
fix: 1.普通仪表盘可转为默认仪表盘同时增加默认仪表盘全新 2.仪表盘,视图,数据集加载慢的问题 3.上传大图片不成功的问题,4.仪表盘页面整体加上loading 5.编辑仪表盘预览改为全屏弹框模式
This commit is contained in:
@@ -21,5 +21,13 @@ public class PanelGroup implements Serializable {
|
||||
|
||||
private String panelType;
|
||||
|
||||
private String source;
|
||||
|
||||
private String extend1;
|
||||
|
||||
private String extend2;
|
||||
|
||||
private String remark;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
@@ -643,6 +643,286 @@ public class PanelGroupExample {
|
||||
addCriterion("panel_type not between", value1, value2, "panelType");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceIsNull() {
|
||||
addCriterion("`source` is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceIsNotNull() {
|
||||
addCriterion("`source` is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceEqualTo(String value) {
|
||||
addCriterion("`source` =", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceNotEqualTo(String value) {
|
||||
addCriterion("`source` <>", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceGreaterThan(String value) {
|
||||
addCriterion("`source` >", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("`source` >=", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceLessThan(String value) {
|
||||
addCriterion("`source` <", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceLessThanOrEqualTo(String value) {
|
||||
addCriterion("`source` <=", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceLike(String value) {
|
||||
addCriterion("`source` like", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceNotLike(String value) {
|
||||
addCriterion("`source` not like", value, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceIn(List<String> values) {
|
||||
addCriterion("`source` in", values, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceNotIn(List<String> values) {
|
||||
addCriterion("`source` not in", values, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceBetween(String value1, String value2) {
|
||||
addCriterion("`source` between", value1, value2, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andSourceNotBetween(String value1, String value2) {
|
||||
addCriterion("`source` not between", value1, value2, "source");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1IsNull() {
|
||||
addCriterion("extend1 is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1IsNotNull() {
|
||||
addCriterion("extend1 is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1EqualTo(String value) {
|
||||
addCriterion("extend1 =", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1NotEqualTo(String value) {
|
||||
addCriterion("extend1 <>", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1GreaterThan(String value) {
|
||||
addCriterion("extend1 >", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1GreaterThanOrEqualTo(String value) {
|
||||
addCriterion("extend1 >=", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1LessThan(String value) {
|
||||
addCriterion("extend1 <", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1LessThanOrEqualTo(String value) {
|
||||
addCriterion("extend1 <=", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1Like(String value) {
|
||||
addCriterion("extend1 like", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1NotLike(String value) {
|
||||
addCriterion("extend1 not like", value, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1In(List<String> values) {
|
||||
addCriterion("extend1 in", values, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1NotIn(List<String> values) {
|
||||
addCriterion("extend1 not in", values, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1Between(String value1, String value2) {
|
||||
addCriterion("extend1 between", value1, value2, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend1NotBetween(String value1, String value2) {
|
||||
addCriterion("extend1 not between", value1, value2, "extend1");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2IsNull() {
|
||||
addCriterion("extend2 is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2IsNotNull() {
|
||||
addCriterion("extend2 is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2EqualTo(String value) {
|
||||
addCriterion("extend2 =", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2NotEqualTo(String value) {
|
||||
addCriterion("extend2 <>", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2GreaterThan(String value) {
|
||||
addCriterion("extend2 >", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2GreaterThanOrEqualTo(String value) {
|
||||
addCriterion("extend2 >=", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2LessThan(String value) {
|
||||
addCriterion("extend2 <", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2LessThanOrEqualTo(String value) {
|
||||
addCriterion("extend2 <=", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2Like(String value) {
|
||||
addCriterion("extend2 like", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2NotLike(String value) {
|
||||
addCriterion("extend2 not like", value, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2In(List<String> values) {
|
||||
addCriterion("extend2 in", values, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2NotIn(List<String> values) {
|
||||
addCriterion("extend2 not in", values, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2Between(String value1, String value2) {
|
||||
addCriterion("extend2 between", value1, value2, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andExtend2NotBetween(String value1, String value2) {
|
||||
addCriterion("extend2 not between", value1, value2, "extend2");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkIsNull() {
|
||||
addCriterion("remark is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkIsNotNull() {
|
||||
addCriterion("remark is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkEqualTo(String value) {
|
||||
addCriterion("remark =", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkNotEqualTo(String value) {
|
||||
addCriterion("remark <>", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkGreaterThan(String value) {
|
||||
addCriterion("remark >", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkGreaterThanOrEqualTo(String value) {
|
||||
addCriterion("remark >=", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkLessThan(String value) {
|
||||
addCriterion("remark <", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkLessThanOrEqualTo(String value) {
|
||||
addCriterion("remark <=", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkLike(String value) {
|
||||
addCriterion("remark like", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkNotLike(String value) {
|
||||
addCriterion("remark not like", value, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkIn(List<String> values) {
|
||||
addCriterion("remark in", values, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkNotIn(List<String> values) {
|
||||
addCriterion("remark not in", values, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkBetween(String value1, String value2) {
|
||||
addCriterion("remark between", value1, value2, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andRemarkNotBetween(String value1, String value2) {
|
||||
addCriterion("remark not between", value1, value2, "remark");
|
||||
return (Criteria) this;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criteria extends GeneratedCriteria {
|
||||
|
||||
@@ -10,6 +10,10 @@
|
||||
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
|
||||
<result column="create_time" jdbcType="BIGINT" property="createTime" />
|
||||
<result column="panel_type" jdbcType="VARCHAR" property="panelType" />
|
||||
<result column="source" jdbcType="VARCHAR" property="source" />
|
||||
<result column="extend1" jdbcType="VARCHAR" property="extend1" />
|
||||
<result column="extend2" jdbcType="VARCHAR" property="extend2" />
|
||||
<result column="remark" jdbcType="VARCHAR" property="remark" />
|
||||
</resultMap>
|
||||
<resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="io.dataease.base.domain.PanelGroupWithBLOBs">
|
||||
<result column="panel_style" jdbcType="LONGVARCHAR" property="panelStyle" />
|
||||
@@ -74,7 +78,8 @@
|
||||
</where>
|
||||
</sql>
|
||||
<sql id="Base_Column_List">
|
||||
id, `name`, pid, `level`, node_type, create_by, create_time, panel_type
|
||||
id, `name`, pid, `level`, node_type, create_by, create_time, panel_type, `source`,
|
||||
extend1, extend2, remark
|
||||
</sql>
|
||||
<sql id="Blob_Column_List">
|
||||
panel_style, panel_data
|
||||
@@ -130,12 +135,14 @@
|
||||
<insert id="insert" parameterType="io.dataease.base.domain.PanelGroupWithBLOBs">
|
||||
insert into panel_group (id, `name`, pid,
|
||||
`level`, node_type, create_by,
|
||||
create_time, panel_type, panel_style,
|
||||
panel_data)
|
||||
create_time, panel_type, `source`,
|
||||
extend1, extend2, remark,
|
||||
panel_style, panel_data)
|
||||
values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{pid,jdbcType=VARCHAR},
|
||||
#{level,jdbcType=INTEGER}, #{nodeType,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR},
|
||||
#{createTime,jdbcType=BIGINT}, #{panelType,jdbcType=VARCHAR}, #{panelStyle,jdbcType=LONGVARCHAR},
|
||||
#{panelData,jdbcType=LONGVARCHAR})
|
||||
#{createTime,jdbcType=BIGINT}, #{panelType,jdbcType=VARCHAR}, #{source,jdbcType=VARCHAR},
|
||||
#{extend1,jdbcType=VARCHAR}, #{extend2,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR},
|
||||
#{panelStyle,jdbcType=LONGVARCHAR}, #{panelData,jdbcType=LONGVARCHAR})
|
||||
</insert>
|
||||
<insert id="insertSelective" parameterType="io.dataease.base.domain.PanelGroupWithBLOBs">
|
||||
insert into panel_group
|
||||
@@ -164,6 +171,18 @@
|
||||
<if test="panelType != null">
|
||||
panel_type,
|
||||
</if>
|
||||
<if test="source != null">
|
||||
`source`,
|
||||
</if>
|
||||
<if test="extend1 != null">
|
||||
extend1,
|
||||
</if>
|
||||
<if test="extend2 != null">
|
||||
extend2,
|
||||
</if>
|
||||
<if test="remark != null">
|
||||
remark,
|
||||
</if>
|
||||
<if test="panelStyle != null">
|
||||
panel_style,
|
||||
</if>
|
||||
@@ -196,6 +215,18 @@
|
||||
<if test="panelType != null">
|
||||
#{panelType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="source != null">
|
||||
#{source,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="extend1 != null">
|
||||
#{extend1,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="extend2 != null">
|
||||
#{extend2,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="remark != null">
|
||||
#{remark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="panelStyle != null">
|
||||
#{panelStyle,jdbcType=LONGVARCHAR},
|
||||
</if>
|
||||
@@ -237,6 +268,18 @@
|
||||
<if test="record.panelType != null">
|
||||
panel_type = #{record.panelType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.source != null">
|
||||
`source` = #{record.source,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.extend1 != null">
|
||||
extend1 = #{record.extend1,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.extend2 != null">
|
||||
extend2 = #{record.extend2,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.remark != null">
|
||||
remark = #{record.remark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="record.panelStyle != null">
|
||||
panel_style = #{record.panelStyle,jdbcType=LONGVARCHAR},
|
||||
</if>
|
||||
@@ -258,6 +301,10 @@
|
||||
create_by = #{record.createBy,jdbcType=VARCHAR},
|
||||
create_time = #{record.createTime,jdbcType=BIGINT},
|
||||
panel_type = #{record.panelType,jdbcType=VARCHAR},
|
||||
`source` = #{record.source,jdbcType=VARCHAR},
|
||||
extend1 = #{record.extend1,jdbcType=VARCHAR},
|
||||
extend2 = #{record.extend2,jdbcType=VARCHAR},
|
||||
remark = #{record.remark,jdbcType=VARCHAR},
|
||||
panel_style = #{record.panelStyle,jdbcType=LONGVARCHAR},
|
||||
panel_data = #{record.panelData,jdbcType=LONGVARCHAR}
|
||||
<if test="_parameter != null">
|
||||
@@ -273,7 +320,11 @@
|
||||
node_type = #{record.nodeType,jdbcType=VARCHAR},
|
||||
create_by = #{record.createBy,jdbcType=VARCHAR},
|
||||
create_time = #{record.createTime,jdbcType=BIGINT},
|
||||
panel_type = #{record.panelType,jdbcType=VARCHAR}
|
||||
panel_type = #{record.panelType,jdbcType=VARCHAR},
|
||||
`source` = #{record.source,jdbcType=VARCHAR},
|
||||
extend1 = #{record.extend1,jdbcType=VARCHAR},
|
||||
extend2 = #{record.extend2,jdbcType=VARCHAR},
|
||||
remark = #{record.remark,jdbcType=VARCHAR}
|
||||
<if test="_parameter != null">
|
||||
<include refid="Update_By_Example_Where_Clause" />
|
||||
</if>
|
||||
@@ -302,6 +353,18 @@
|
||||
<if test="panelType != null">
|
||||
panel_type = #{panelType,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="source != null">
|
||||
`source` = #{source,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="extend1 != null">
|
||||
extend1 = #{extend1,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="extend2 != null">
|
||||
extend2 = #{extend2,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="remark != null">
|
||||
remark = #{remark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="panelStyle != null">
|
||||
panel_style = #{panelStyle,jdbcType=LONGVARCHAR},
|
||||
</if>
|
||||
@@ -320,6 +383,10 @@
|
||||
create_by = #{createBy,jdbcType=VARCHAR},
|
||||
create_time = #{createTime,jdbcType=BIGINT},
|
||||
panel_type = #{panelType,jdbcType=VARCHAR},
|
||||
`source` = #{source,jdbcType=VARCHAR},
|
||||
extend1 = #{extend1,jdbcType=VARCHAR},
|
||||
extend2 = #{extend2,jdbcType=VARCHAR},
|
||||
remark = #{remark,jdbcType=VARCHAR},
|
||||
panel_style = #{panelStyle,jdbcType=LONGVARCHAR},
|
||||
panel_data = #{panelData,jdbcType=LONGVARCHAR}
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
@@ -332,7 +399,11 @@
|
||||
node_type = #{nodeType,jdbcType=VARCHAR},
|
||||
create_by = #{createBy,jdbcType=VARCHAR},
|
||||
create_time = #{createTime,jdbcType=BIGINT},
|
||||
panel_type = #{panelType,jdbcType=VARCHAR}
|
||||
panel_type = #{panelType,jdbcType=VARCHAR},
|
||||
`source` = #{source,jdbcType=VARCHAR},
|
||||
extend1 = #{extend1,jdbcType=VARCHAR},
|
||||
extend2 = #{extend2,jdbcType=VARCHAR},
|
||||
remark = #{remark,jdbcType=VARCHAR}
|
||||
where id = #{id,jdbcType=VARCHAR}
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
<select id="search" resultMap="BaseResultMapDTO">
|
||||
select
|
||||
id, `name`, pid, `level`, `type`, create_by, create_time,`name` as label,
|
||||
id, `name`, ifnull(pid,0) as pid, `level`, `type`, create_by, create_time,`name` as label,
|
||||
get_auths(id,'chart',#{userId}) as `privileges`
|
||||
from (select GET_V_AUTH_MODEL_ID_P_USE (#{userId}, 'chart') cids) t,chart_group
|
||||
<where>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
<select id="search" resultMap="BaseResultMapDTO">
|
||||
select
|
||||
id, `name`, pid, `level`, `type`, create_by, create_time,`name` as label,
|
||||
id, `name`, ifnull(pid,0) as pid, `level`, `type`, create_by, create_time,`name` as label,
|
||||
get_auths(id,'dataset',#{userId}) as `privileges`
|
||||
from (select GET_V_AUTH_MODEL_ID_P_USE (#{userId}, 'dataset') cids) t,dataset_group
|
||||
<where>
|
||||
|
||||
@@ -24,5 +24,14 @@ public class PanelConstants {
|
||||
|
||||
public final static String PANEL_NODE_TYPE_PANEL = "panel";
|
||||
|
||||
public final static String OPT_TYPE_INSERT="insert";
|
||||
|
||||
public final static String OPT_TYPE_UPDATE="update";
|
||||
|
||||
public final static String PANEL_GATHER_DEFAULT_PANEL = "default_panel";
|
||||
|
||||
public final static String PANEL_GATHER_PANEL_LIST = "panel_list";
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package io.dataease.commons.model;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Author: wangjiahao
|
||||
* Date: 2021-05-24
|
||||
* Description:
|
||||
*/
|
||||
public interface ITreeBase<T> {
|
||||
|
||||
String getId();
|
||||
|
||||
void setId(String id);
|
||||
|
||||
String getPid();
|
||||
|
||||
void setPid(String pid);
|
||||
|
||||
List<T> getChildren();
|
||||
|
||||
void setChildren(List<T> children);
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
package io.dataease.commons.utils;
|
||||
|
||||
import io.dataease.commons.model.ITreeBase;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* Author: wangjiahao
|
||||
* Date: 2021-05-24
|
||||
* Description:树构建工具
|
||||
*/
|
||||
public class TreeUtils{
|
||||
|
||||
/**
|
||||
* Description: rootPid 是根节点PID
|
||||
*/
|
||||
public static<T extends ITreeBase> List<T> mergeTree(List<T> tree,String ... rootPid) {
|
||||
Assert.notNull(rootPid, "Root Pid cannot be null");
|
||||
List<T> result = new ArrayList<>();
|
||||
// 构建id-节点map映射
|
||||
Map<String, T> treePidMap = tree.stream().collect(Collectors.toMap(T::getId, t -> t));
|
||||
tree.stream().forEach(node -> {
|
||||
// 判断根节点
|
||||
if (Arrays.asList(rootPid).contains(node.getPid())) {
|
||||
result.add(node);
|
||||
} else {
|
||||
//找到父元素
|
||||
T parentNode = treePidMap.get(node.getPid());
|
||||
if(parentNode==null){
|
||||
// 可能出现 rootPid 更高的节点 这个操作相当于截断
|
||||
return;
|
||||
}
|
||||
if (parentNode.getChildren() == null) {
|
||||
parentNode.setChildren(new ArrayList());
|
||||
}
|
||||
parentNode.getChildren().add(node);
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Description: rootPid 是根节点PID 档期那默认是0
|
||||
*/
|
||||
public static<T extends ITreeBase> List<T> mergeTree(List<T> tree) {
|
||||
return mergeTree(tree,"0");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +1,9 @@
|
||||
package io.dataease.controller.panel;
|
||||
|
||||
import io.dataease.base.domain.DatasetGroup;
|
||||
import io.dataease.base.domain.PanelGroup;
|
||||
import io.dataease.base.domain.PanelGroupWithBLOBs;
|
||||
import io.dataease.controller.handler.annotation.I18n;
|
||||
import io.dataease.controller.request.dataset.DataSetGroupRequest;
|
||||
import io.dataease.controller.request.panel.PanelGroupRequest;
|
||||
import io.dataease.dto.dataset.DataSetGroupDTO;
|
||||
@@ -28,18 +30,18 @@ public class PanelGroupController {
|
||||
|
||||
@PostMapping("/tree")
|
||||
public List<PanelGroupDTO> tree(@RequestBody PanelGroupRequest request) {
|
||||
request.setLevel(0);
|
||||
return panelGroupService.tree(request);
|
||||
}
|
||||
|
||||
@PostMapping("/defaultTree")
|
||||
public List<PanelGroupDTO> defaultTree(@RequestBody PanelGroupRequest request) {
|
||||
return panelGroupService.getDefaultTree(request);
|
||||
return panelGroupService.defaultTree(request);
|
||||
}
|
||||
|
||||
@PostMapping("/save")
|
||||
public PanelGroupDTO save(@RequestBody PanelGroupRequest request) {
|
||||
return panelGroupService.save(request);
|
||||
@I18n
|
||||
public PanelGroup saveOrUpdate(@RequestBody PanelGroupRequest request) {
|
||||
return panelGroupService.saveOrUpdate(request);
|
||||
}
|
||||
|
||||
@PostMapping("/deleteCircle/{id}")
|
||||
|
||||
@@ -36,6 +36,7 @@ public class SysAuthController {
|
||||
|
||||
@ApiOperation("查询视图")
|
||||
@PostMapping("/authModels")
|
||||
@I18n
|
||||
public List<VAuthModelDTO> authModels(@RequestBody BaseTreeRequest request){
|
||||
return sysAuthService.searchAuthModelTree(request);
|
||||
}
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
package io.dataease.dto.chart;
|
||||
|
||||
import io.dataease.base.domain.DatasetGroup;
|
||||
import io.dataease.commons.model.ITreeBase;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
public class ChartGroupDTO extends DatasetGroup {
|
||||
public class ChartGroupDTO extends DatasetGroup implements ITreeBase<ChartGroupDTO> {
|
||||
private String label;
|
||||
|
||||
private List<ChartGroupDTO> children;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package io.dataease.dto.dataset;
|
||||
|
||||
import io.dataease.base.domain.DatasetGroup;
|
||||
import io.dataease.commons.model.ITreeBase;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
@@ -10,7 +11,7 @@ import java.util.List;
|
||||
* @Date 2021/2/20 8:17 下午
|
||||
*/
|
||||
@Data
|
||||
public class DataSetGroupDTO extends DatasetGroup {
|
||||
public class DataSetGroupDTO extends DatasetGroup implements ITreeBase<DataSetGroupDTO> {
|
||||
private String label;
|
||||
private List<DataSetGroupDTO> children;
|
||||
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
package io.dataease.dto.panel;
|
||||
|
||||
import io.dataease.base.domain.PanelGroup;
|
||||
import io.dataease.base.domain.PanelGroupWithBLOBs;
|
||||
import io.dataease.dto.chart.ChartViewDTO;
|
||||
import io.dataease.commons.model.ITreeBase;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -14,14 +13,15 @@ import java.util.List;
|
||||
* Description:
|
||||
*/
|
||||
@Data
|
||||
public class PanelGroupDTO extends PanelGroupWithBLOBs {
|
||||
public class PanelGroupDTO extends PanelGroupWithBLOBs implements ITreeBase<PanelGroupDTO> {
|
||||
|
||||
private String label;
|
||||
|
||||
private List<PanelGroupDTO> children;
|
||||
|
||||
private Boolean leaf;
|
||||
|
||||
private String privileges;
|
||||
|
||||
private List<PanelGroupDTO> children = new ArrayList<>();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.dataease.base.mapper.ChartGroupMapper;
|
||||
import io.dataease.base.mapper.ext.ExtChartGroupMapper;
|
||||
import io.dataease.commons.utils.AuthUtils;
|
||||
import io.dataease.commons.utils.BeanUtils;
|
||||
import io.dataease.commons.utils.TreeUtils;
|
||||
import io.dataease.controller.request.chart.ChartGroupRequest;
|
||||
import io.dataease.controller.request.dataset.DataSetTableRequest;
|
||||
import io.dataease.dto.chart.ChartGroupDTO;
|
||||
@@ -71,28 +72,9 @@ public class ChartGroupService {
|
||||
|
||||
public List<ChartGroupDTO> tree(ChartGroupRequest chartGroup) {
|
||||
chartGroup.setUserId(String.valueOf(AuthUtils.getUser().getUserId()));
|
||||
if (chartGroup.getLevel() == null) {
|
||||
chartGroup.setLevel(0);
|
||||
}
|
||||
List<ChartGroupDTO> treeInfo = extChartGroupMapper.search(chartGroup);
|
||||
getAll(treeInfo, chartGroup);
|
||||
return treeInfo;
|
||||
}
|
||||
|
||||
public void getAll(List<ChartGroupDTO> list, ChartGroupRequest chartGroup) {
|
||||
for (ChartGroupDTO obj : list) {
|
||||
ChartGroupRequest newChartGroup = new ChartGroupRequest();
|
||||
newChartGroup.setUserId(String.valueOf(AuthUtils.getUser().getUserId()));
|
||||
newChartGroup.setName(chartGroup.getName());
|
||||
newChartGroup.setType(chartGroup.getType());
|
||||
newChartGroup.setPid(obj.getId());
|
||||
newChartGroup.setSort(chartGroup.getSort());
|
||||
List<ChartGroupDTO> treeInfo = extChartGroupMapper.search(newChartGroup);
|
||||
obj.setChildren(treeInfo);
|
||||
if (CollectionUtils.isNotEmpty(treeInfo)) {
|
||||
getAll(treeInfo, chartGroup);
|
||||
}
|
||||
}
|
||||
List<ChartGroupDTO> result = TreeUtils.mergeTree(treeInfo);
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<String> getAllId(List<ChartGroupDTO> list, List<String> ids) {
|
||||
|
||||
@@ -7,6 +7,7 @@ import io.dataease.base.mapper.DatasetGroupMapper;
|
||||
import io.dataease.base.mapper.ext.ExtDataSetGroupMapper;
|
||||
import io.dataease.commons.utils.AuthUtils;
|
||||
import io.dataease.commons.utils.BeanUtils;
|
||||
import io.dataease.commons.utils.TreeUtils;
|
||||
import io.dataease.controller.request.dataset.DataSetGroupRequest;
|
||||
import io.dataease.controller.request.dataset.DataSetTableRequest;
|
||||
import io.dataease.dto.dataset.DataSetGroupDTO;
|
||||
@@ -82,28 +83,9 @@ public class DataSetGroupService {
|
||||
|
||||
public List<DataSetGroupDTO> tree(DataSetGroupRequest datasetGroup) {
|
||||
datasetGroup.setUserId(String.valueOf(AuthUtils.getUser().getUserId()));
|
||||
if (datasetGroup.getLevel() == null) {
|
||||
datasetGroup.setLevel(0);
|
||||
}
|
||||
List<DataSetGroupDTO> treeInfo = extDataSetGroupMapper.search(datasetGroup);
|
||||
getAll(treeInfo, datasetGroup);
|
||||
return treeInfo;
|
||||
}
|
||||
|
||||
public void getAll(List<DataSetGroupDTO> list, DataSetGroupRequest datasetGroup) {
|
||||
for (DataSetGroupDTO obj : list) {
|
||||
DataSetGroupRequest newDataSetGroup = new DataSetGroupRequest();
|
||||
newDataSetGroup.setUserId(String.valueOf(AuthUtils.getUser().getUserId()));
|
||||
newDataSetGroup.setName(datasetGroup.getName());
|
||||
newDataSetGroup.setType(datasetGroup.getType());
|
||||
newDataSetGroup.setPid(obj.getId());
|
||||
newDataSetGroup.setSort(datasetGroup.getSort());
|
||||
List<DataSetGroupDTO> treeInfo = extDataSetGroupMapper.search(newDataSetGroup);
|
||||
obj.setChildren(treeInfo);
|
||||
if (CollectionUtils.isNotEmpty(treeInfo)) {
|
||||
getAll(treeInfo, datasetGroup);
|
||||
}
|
||||
}
|
||||
List<DataSetGroupDTO> result = TreeUtils.mergeTree(treeInfo);
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<String> getAllId(List<DataSetGroupDTO> list, List<String> ids) {
|
||||
|
||||
@@ -9,11 +9,13 @@ import io.dataease.base.mapper.ext.ExtPanelGroupMapper;
|
||||
import io.dataease.commons.constants.PanelConstants;
|
||||
import io.dataease.commons.utils.AuthUtils;
|
||||
import io.dataease.commons.utils.BeanUtils;
|
||||
import io.dataease.commons.utils.TreeUtils;
|
||||
import io.dataease.controller.request.panel.PanelGroupRequest;
|
||||
import io.dataease.dto.chart.ChartViewDTO;
|
||||
import io.dataease.dto.dataset.DataSetGroupDTO;
|
||||
import io.dataease.dto.panel.PanelDesignDTO;
|
||||
import io.dataease.dto.panel.PanelGroupDTO;
|
||||
import io.dataease.i18n.Translator;
|
||||
import io.dataease.service.chart.ChartViewService;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -55,52 +57,69 @@ public class PanelGroupService {
|
||||
private ShareService shareService;
|
||||
@Resource
|
||||
private PanelLinkService panelLinkService;
|
||||
|
||||
public List<PanelGroupDTO> tree(PanelGroupRequest panelGroupRequest) {
|
||||
String userId = String.valueOf(AuthUtils.getUser().getUserId());
|
||||
panelGroupRequest.setUserId(userId);
|
||||
List<PanelGroupDTO> panelGroupDTOList = extPanelGroupMapper.panelGroupList(panelGroupRequest);
|
||||
getTreeChildren(panelGroupDTOList,userId);
|
||||
return panelGroupDTOList;
|
||||
List<PanelGroupDTO> result = TreeUtils.mergeTree(panelGroupDTOList,"panel_list");
|
||||
return result;
|
||||
}
|
||||
|
||||
public void getTreeChildren(List<PanelGroupDTO> parentPanelGroupDTO,String userId) {
|
||||
Optional.ofNullable(parentPanelGroupDTO).ifPresent(parent -> parent.forEach(panelGroupDTO -> {
|
||||
List<PanelGroupDTO> panelGroupDTOChildren = extPanelGroupMapper.panelGroupList(new PanelGroupRequest(panelGroupDTO.getId(),userId));
|
||||
panelGroupDTO.setChildren(panelGroupDTOChildren);
|
||||
getTreeChildren(panelGroupDTOChildren,userId);
|
||||
}));
|
||||
public List<PanelGroupDTO> defaultTree(PanelGroupRequest panelGroupRequest) {
|
||||
String userId = String.valueOf(AuthUtils.getUser().getUserId());
|
||||
panelGroupRequest.setUserId(userId);
|
||||
List<PanelGroupDTO> panelGroupDTOList = extPanelGroupMapper.panelGroupList(panelGroupRequest);
|
||||
List<PanelGroupDTO> result = TreeUtils.mergeTree(panelGroupDTOList,"default_panel");
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<PanelGroupDTO> getDefaultTree(PanelGroupRequest panelGroupRequest) {
|
||||
return extPanelGroupMapper.panelGroupListDefault(panelGroupRequest);
|
||||
}
|
||||
|
||||
|
||||
public PanelGroupDTO save(PanelGroupRequest request) {
|
||||
if (StringUtils.isEmpty(request.getId())) {
|
||||
request.setId(UUID.randomUUID().toString());
|
||||
public PanelGroup saveOrUpdate(PanelGroupRequest request) {
|
||||
String panelId = request.getId();
|
||||
if (StringUtils.isEmpty(panelId)) {
|
||||
// 新建
|
||||
checkPanelName(request.getName(), request.getPid(), PanelConstants.OPT_TYPE_INSERT, null);
|
||||
panelId = UUID.randomUUID().toString();
|
||||
request.setId(panelId);
|
||||
request.setCreateTime(System.currentTimeMillis());
|
||||
request.setCreateBy(AuthUtils.getUser().getUsername());
|
||||
panelGroupMapper.insert(request);
|
||||
} else if ("toDefaultPanel".equals(request.getOptType())) {
|
||||
panelId = UUID.randomUUID().toString();
|
||||
// 转存为默认仪表盘
|
||||
PanelGroupWithBLOBs newDefaultPanel = panelGroupMapper.selectByPrimaryKey(request.getId());
|
||||
newDefaultPanel.setPanelType(PanelConstants.PANEL_TYPE_SYSTEM);
|
||||
newDefaultPanel.setNodeType(PanelConstants.PANEL_NODE_TYPE_PANEL);
|
||||
newDefaultPanel.setName(request.getName());
|
||||
newDefaultPanel.setId(panelId);
|
||||
newDefaultPanel.setPid(PanelConstants.PANEL_GATHER_DEFAULT_PANEL);
|
||||
newDefaultPanel.setLevel(0);
|
||||
newDefaultPanel.setSource(request.getId());
|
||||
checkPanelName(newDefaultPanel.getName(), newDefaultPanel.getPid(), PanelConstants.OPT_TYPE_INSERT, newDefaultPanel.getId());
|
||||
panelGroupMapper.insertSelective(newDefaultPanel);
|
||||
} else {
|
||||
// 复制为默认仪表盘
|
||||
if("toDefaultPanel".equals(request.getOptType())){
|
||||
PanelGroupWithBLOBs newDefaultPanel = panelGroupMapper.selectByPrimaryKey(request.getId());
|
||||
newDefaultPanel.setPanelType(PanelConstants.PANEL_TYPE_SYSTEM);
|
||||
newDefaultPanel.setNodeType(PanelConstants.PANEL_NODE_TYPE_PANEL);
|
||||
newDefaultPanel.setName(request.getName());
|
||||
newDefaultPanel.setId(UUID.randomUUID().toString());
|
||||
newDefaultPanel.setPid(null);
|
||||
newDefaultPanel.setLevel(0);
|
||||
panelGroupMapper.insertSelective(newDefaultPanel);
|
||||
}else{
|
||||
panelGroupMapper.updateByPrimaryKeySelective(request);
|
||||
// 更新
|
||||
if (StringUtils.isNotEmpty(request.getName())) {
|
||||
checkPanelName(request.getName(), request.getPid(), PanelConstants.OPT_TYPE_UPDATE, request.getId());
|
||||
}
|
||||
panelGroupMapper.updateByPrimaryKeySelective(request);
|
||||
}
|
||||
return panelGroupMapper.selectByPrimaryKey(panelId);
|
||||
}
|
||||
|
||||
|
||||
private void checkPanelName(String name, String pid, String optType, String id) {
|
||||
PanelGroupExample groupExample = new PanelGroupExample();
|
||||
if (PanelConstants.OPT_TYPE_INSERT.equalsIgnoreCase(optType)) {
|
||||
groupExample.createCriteria().andPidEqualTo(pid).andNameEqualTo(name);
|
||||
} else if (PanelConstants.OPT_TYPE_UPDATE.equalsIgnoreCase(optType)) {
|
||||
groupExample.createCriteria().andPidEqualTo(pid).andNameEqualTo(name).andIdNotEqualTo(id);
|
||||
}
|
||||
|
||||
List<PanelGroup> checkResult = panelGroupMapper.selectByExample(groupExample);
|
||||
if (CollectionUtils.isNotEmpty(checkResult)) {
|
||||
throw new RuntimeException(Translator.get("i18n_same_folder_can_not_repeat"));
|
||||
}
|
||||
PanelGroupDTO panelGroupDTO = new PanelGroupDTO();
|
||||
BeanUtils.copyBean(panelGroupDTO, request);
|
||||
panelGroupDTO.setLabel(request.getName());
|
||||
return panelGroupDTO;
|
||||
}
|
||||
|
||||
|
||||
@@ -118,7 +137,6 @@ public class PanelGroupService {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public List<ChartViewDTO> getUsableViews(String panelId) throws Exception {
|
||||
List<ChartViewDTO> chartViewDTOList = new ArrayList<>();
|
||||
List<ChartView> allChartView = chartViewMapper.selectByExample(null);
|
||||
|
||||
Reference in New Issue
Block a user