DataRoom项目配置

拉取成功后目录如图:
前端目录:data-room-ui
后端目录:DataRoom
前端运行步骤:
注意:node版本在14
1、切换分支为:git checkout 2.1.0.RELEASE,功能齐全可用
2、终端切换到:Command Prompt 进行前端命令操作
3、cd DataRoom
cd data-room-ui
npm install --registry=http://registry.npmmirror.com
npm run serve
启动成功会自动启动访问地址
登录账号与密码在DataRoom/dataroom-server/src/main/resources/application.yml中

前端启动成功:

如图中:验证码未正常显示,是因为后端未正常启动
进行到这,前端差不多,重点是后端的配置和启动,作为一个纯前端,有点小难度,好在有AI的辅助
后端启动:
编译器:IDEA
环境:JAVA 17
百度搜索配置JAVA环境


如上图:
IDEA打开DataRoom后端文件夹,只需要打开这一个文件夹即可!!!
官网技术文档有详细介绍
1、引入依赖
在项目的pom.xml文件dependencies标签中加入以下内容:
<dependency>
<groupId>com.gccloud</groupId>
<artifactId>dataroom-core</artifactId>
<version>2.x最新版本号</version>
</dependency>

2、文件配置
在dataroom-server目录下src、main、resources下新建application-dev.yml文件
spring: servlet: multipart: # 配置上传下载文件的最大值 max-file-size: 500MB max-request-size: 500MB datasource: type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://127.0.0.1:3306/dataroom?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true username: root password: pwd gc: starter: file: # 一个存储文件的绝对路径,需要有写入权限 basePath: C:\Users\weixiuxiu\Desktop\data # 文件资源访问前缀,一般修改ip即可 urlPrefix: http://127.0.0.1:${server.port}${server.servlet.context-path}/static
3、启动


运行中出现Started说明后端启动成功================================
前后端都启动成功,出现图中内容,验证码正常显示:

登录成功显示以下图中内容:

注意:登录时效为2小时!!!!!!!!!
进阶操作:
数据集管理及配置:

根据页面分组,便于查找配置
前端只需要配置JSON数据集静态数据就可以了,确定所需的数据格式
也可配置好所需的JSON格式后,发给后端,让后端再根据实际情况配置接口
示例:
词云图:
像echarts图表这类数据格式,可以去echarts官网上复制,也可在项目代码中查找
如图:在DataRoom项目内,词云图的数据格式

就可以根据图中格式配置所需数据:

分组是必选的
JSON格式是不需要带data的,只需要数组对象
对于图表输出字段是不需要配置的,在表格等其他组件会用到
JSON解析通过后,进行保存

右击配置进行数据配置
点击数据集弹出所配数据集列表,选择你所配置的内容,确定后图表的内容就会变化

以上就配置好了图表的数据集,其他图表类似操作,重点是数据的配置
配置表格的数据集示例:
对应的组件是左侧基础类目下的表格组件,如图:

这个在后台使用的频率很高的
表格的数据内容可去Element、AntDesgin UI库中查找

我是在element上找的数据
输出字段是表示字段的名称,如图:

注意:表格列的选择前后,代表那个列先展示,通过选择确定展示的内容和排序
以上是表格的数据集配置,其他类似===============================================
资源库配置:
资源库是配置图片资源
图片最好是不带背景的
点击上传资源,打开的是本地内容

实际使用:
左侧资源,在资源列表中进行选择即可

组件库配置================================================================

组件库分为:
自定义组件:将常用的基础组件(如图表、文本、装饰等)自由组合,形成可复用模板,后续可快速拖拽使用,提升设计效率
业务组件:代码编辑、参数配置和效果预览
系统组件:需要在项目中增加页面进行代码实现
操作详解:
自定义组件:就是把常用的组件组合在一起,便于直接使用,就略过了
业务组件:

分为几种不同的类型,根据需求选择符合的进行二次开发
注意:要查看页面代码中的配置
比如:要配置一个自定义的饼图
如果按照echarts上配置肯定不显示
因为DataRoom对于配置有一定的要求
如:

如果配置的不显示,一定是参数的问题,可交给AI哦~
系统组件:https://www.yuque.com/chuinixiongkou/bigscreen/px6lmne7moigc7ke(官方技术文档)

我是按照技术文档上进行实现的,主要是体验下这个功能
注意:新建文件的位置千万不要错了哦~
有兴趣的小伙伴可以尝试下
补充======================================
表格组件
配置警告列
重点是告警条件的配置

通过业务组件实现折叠面板,支持右侧配置字体颜色、大小等
效果图

具体实现

使用的是业务组件类目下的原生组件
因为DataRoom支持element UI 2.0版本,所以在添加组件时,可以使用UI库的内容
组件模板
<template>
<div class="divTest">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item
v-for="item in collapseData"
:key="item.name"
:title="item.title"
:name="item.name"
>
<template #title>
<span :style="titleStyle" style="padding-left:15px;">{{ item.title }}</span>
</template>
<div
v-for="(desc, idx) in item.desc"
:key="idx"
:style="descStyle"
style="padding-left:15px;"
>{{ desc }}</div>
</el-collapse-item>
</el-collapse>
</div>
</template>
<script>
export default {
name: 'TestA',
props: {
config: {
type: Object,
default: () => ({})
}
},
data() {
return {
activeNames: ['1']
}
},
computed: {
collapseData() {
return this.config.option.data
},
titleStyle() {
return {
color: this.config.option?.titleFontColor || '#409EFF',
fontSize: (this.config.option?.titleFontSize || 20) + 'px'
}
},
descStyle() {
return {
color: this.config.option?.fontColor || '#333333',
fontSize: (this.config.option?.fontSize || 16) + 'px'
}
}
},
methods: {
handleChange(val) {
console.log(val);
}
}
}
</script>
<style lang="scss" scoped>
.divTest{
width:100%;
height:100%;
overflow-y:auto;
}
.divTest .el-collapse {
max-height: 100%;
overflow-y: auto;
}
</style>
注意事项
。 activeNames可以设置为每次只能展开一个面板,elementUI配置即可
。computed内的函数是更新右侧自定义配置项内容
组件配置
// 组件备注名称
const title = '折叠面板'
// 右侧配置项
const setting = [
{
label: '标题字体颜色',
type: 'colorPicker',
field: 'titleFontColor',//配置中不能有相同的值
optionField: 'titleFontColor',
value: '#409EFF',
tabName: 'custom'
},
{
label: '标题字体大小',
type: 'inputNumber',
field: 'titleFontSize',
optionField: 'titleFontSize',
value: 20,
tabName: 'custom'
},
{
label: '字体颜色',
type: 'colorPicker',
field: 'fontColor',
optionField: 'fontColor',
value: '#333333',
tabName: 'custom'
},
{
label: '字体大小',
type: 'inputNumber',//类型不同,type的值不同
field: 'fontSize',
optionField: 'fontSize',
value: 16,
tabName: 'custom'
}
]
// 模拟数据
const data = [
{
name: '1',
title: '内容1',
desc: [
'内容11111'
]
},
{
name: '2',
title: '内容2',
desc: [
'内容222'
]
},
{
name: '3',
title: '内容3',
desc: [
'内容3333',
'3的第二条内容'
]
}
],
const option = {
data: data,
fontColor:'#333333',
fontSize:18,
titleFontColor: '#409EFF',
titleFontSize: 20
}
export default {
title,
option,
setting
}
注意事项
。setting是自定义的配置项,配置组件的样式
。option中的data写法是固定的,由外部定义的data进行传参显示
总结:
。DataRoom现有图表如果不能满足需求,可在自定义组件内实现(全局弹窗、图表联动、Tabs切换等)
。图表的具体配置可在Echarts官网去赋值
。右侧配置项如果不知道咋配置,可在项目内搜索现有图表查看
柱状图、折线图增加单位显示
Y轴、鼠标悬停显示框


option.yAxis.label.formatter = function(v) {
return v + '%';
};
if (!option.tooltip) option.tooltip = {};//排查出option中并没有tooltip字段,故添加
option.tooltip.formatter = function(datum) {
return {
name: datum.type,//对应的是数据集的键
value: datum.value + '%'
};
};
注意:
。必须先配置数据集,数据处理脚本才会生效
。折线图同样适用,主要是根据图表的数据结构去配置的
下载资源错误:
请复制链接内容,直接替换项目中http.js内容
https://gitee.com/xdai02/DataRoom/blob/fix-download-resource/data-room-ui/packages/js/utils/http.js#
下期更新图表联动效果(表格展示一级数据,柱状图显示表格行的详情数据)
关于DataRoom框架还在持续性的探索研究中,后续会持续更新
有问题的小伙伴欢迎留言一起研究~
本文来自博客园,作者:danmo_xx,转载请注明原文链接:https://www.cnblogs.com/xx321/p/19532268

浙公网安备 33010602011771号