1 效果预览
2 背景
Confluence 是一个专业的企业知识管理与协同软件,可以用于构建企业 wiki,通过它可以实现团队成员之间的协作和知识共享,非常便捷高效。
3 需求概述
本次仪表看板大屏主要是对 Confluence 系统数据的可视化展示,实时了解文章的发布与创建,团队人员以及空间的动态情况。
4 数据准备
4.1 添加数据源
DataEase 支持 MySQL、Oracle、PostgreSQL、SQL Server 等多种数据库作为数据源,可以很方便的对接到 Confluence 系统数据库。如下图所示,在数据源页面,新建一个数据源,将自己 Confluence 环境 MySQL 数据库相关信息输入对应的框中。
4.2 添加数据集
此次模板共创建 8 个 SQL 数据集,涉及到以下几张表,也可根据自己需求创建其他数据集,具体方法可参考: SQL 数据集 - DataEase 文档。
- 页面信息表:CONTENT
- 用户映射表:user_mapping
- 空间信息表:SPACES
- 用户信息表:cwd_user
- 点赞情况表:LIKES
下图为涉及的所有数据集截图。
4.2.1 用户总数
SELECT
count(1) 用户总数
FROM
cwd_user;
4.2.2 空间文章列表
SELECT
DISTINCT CONTENT.`title` 文章列表,
SPACES.`spacename` 空间名称
FROM
SPACES
LEFT JOIN
CONTENT
ON
SPACES.`spaceid` = CONTENT.`spaceid`
WHERE
CONTENT.`title` <> ""
AND CONTENT.`contenttype` = "PAGE";
4.2.3 每个空间最后更新的时间
SELECT
b.`spacename` 空间名,
a.`最后更新时间`
FROM
SPACES b
LEFT JOIN
(SELECT
`spaceid`,Max(`lastmoddate`) 最后更新时间
FROM
CONTENT
GROUP BY
spaceid
) a
ON
a.`spaceid` = b.`spaceid`
4.2.4 历史文章点赞数排行榜
SELECT
CONTENT.`title` 文章标题,
COUNT(LIKES.`username`) 点赞数
FROM
CONTENT,
LIKES
WHERE
CONTENT.`contentid` = LIKES.`contentid`
GROUP BY
CONTENT.title;
4.2.5 最近一周被点赞数
SELECT
DISTINCT d.`username` 用户名,
sum(c.`点赞量`) 点赞量
FROM
user_mapping d
RIGHT JOIN
(select
distinct(a.`title`) 标题,
a.`creator`,count(b.`username`) 点赞量
FROM
CONTENT a,
LIKES b
WHERE
a.`contentid` = b.`contentid`
and DATEDIFF(now(),a.`creationdate`)<7
GROUP BY
a.`title`,
a.`creator`
) c
ON
d.user_key = c.creator
GROUP BY
d.`username`;
4.2.6 最近一周创建的文章列表
SELECT
DISTINCT a.`title` 文章名称,
b.`username` 用户名称,
MAX(a.`creationdate`) 创建时间
FROM
CONTENT a
LEFT JOIN
user_mapping b
ON
a.`creator` = b.`user_key`
WHERE
DATEDIFF(now(),a.`creationdate`)<7
AND `title` <> ""
AND a.`contenttype` = "PAGE"
AND a.`spaceid` is not null
GROUP BY
a.`title`,b.`username`
4.2.7 最近一周文章创建数量走势
SELECT
COUNT(`title`) 文章数量,
DATE_FORMAT(`creationdate`,'%Y-%m-%d') 日期
FROM
CONTENT
WHERE
DATEDIFF(now(),`creationdate`) < 7
AND `version` = 1
AND `spaceid` IS NOT NULL
AND `contenttype` = "PAGE"
GROUP BY
DATE_FORMAT(`creationdate`,'%Y-%m-%d')
4.2.8 最近一周文章更新数量走势
SELECT
COUNT(`title`) 文章数量,
DATE_FORMAT(`lastmoddate`,'%Y-%m-%d') 日期
FROM
CONTENT
WHERE
DATEDIFF(now(),`lastmoddate`) < 7
AND `version` >= 1
AND `spaceid` IS NULL
GROUP BY
DATE_FORMAT(`lastmoddate`,'%Y-%m-%d')
5 替换数据集
参考在线文档应用模板 DataEase 文档,成功应用后如下图所示:
以下截图为视图与对应使用的数据集。
视图:最近一周文章创建数量走势。
视图:最近一周文章更新数量走势。
视图:最近一周创建的文章列表。
视图:用户总数。
视图:空间总数。
空间总数使用去重计数功能,具体使用参考:视图功能设计 - DataEase 文档。
视图:文章总数。
视图:空间文章列表。
空间文章列表使用到新建计算字段功能,具体使用参考:数据集功能设计 - DataEase 文档。
视图:每个空间最后更新时间。
综上 Confluence 仪表看板大屏就制作完成了。