Merge remote-tracking branch 'origin/main' into main
This commit is contained in:
commit
076a66ed96
22
README.md
22
README.md
@ -2,7 +2,7 @@
|
||||
<h3 align="center">人人可用的开源数据可视化分析工具</h3>
|
||||
<p align="center">
|
||||
<a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0"><img src="https://img.shields.io/github/license/dataease/dataease?color=%231890FF&style=flat-square" alt="License: GPL v2"></a>
|
||||
<a href="https://app.codacy.com/gh/metersphere/metersphere?utm_source=github.com&utm_medium=referral&utm_content=metersphere/metersphere&utm_campaign=Badge_Grade_Dashboard"><img src="https://api.codacy.com/project/badge/Grade/176186d132df448b955f8bdd5e6ef9c0" alt="Codacy"></a>
|
||||
<a href="https://app.codacy.com/gh/dataease/dataease?utm_source=github.com&utm_medium=referral&utm_content=dataease/dataease&utm_campaign=Badge_Grade_Dashboard"><img src="https://app.codacy.com/project/badge/Grade/da67574fd82b473992781d1386b937ef" alt="Codacy"></a>
|
||||
<a href="https://github.com/dataease/dataease/releases/latest"><img src="https://img.shields.io/github/v/release/dataease/dataease" alt="Latest release"></a>
|
||||
<a href="https://github.com/dataease/dataease"><img src="https://img.shields.io/github/stars/dataease/dataease?color=%231890FF&style=flat-square" alt="Stars"></a>
|
||||
<a href="https://github.com/dataease/dataease/releases/latest"><img src="https://img.shields.io/github/downloads/dataease/dataease/total" alt="Downloads"></a>
|
||||
@ -12,17 +12,17 @@ DataEase 是开源的数据可视化分析工具,帮助用户快速分析数
|
||||
|
||||
### DataEase 的功能:
|
||||
|
||||
- 图表展示:支持 PC 端、移动端及大屏;
|
||||
- 图表制作:支持丰富的图表类型(基于 Apache ECharts 实现)、支持拖拉拽方式快速制作仪表板;
|
||||
- 数据引擎:支持直连模式、本地模式(基于 Apache Doris / Kettle 实现);
|
||||
- 数据连接:支持关系型数据库、Excel 等文件、Hadoop 等大数据平台、NoSQL 等各种数据源。
|
||||
- 图表展示:支持 PC 端、移动端及大屏;
|
||||
- 图表制作:支持丰富的图表类型(基于 Apache ECharts 实现)、支持拖拉拽方式快速制作仪表板;
|
||||
- 数据引擎:支持直连模式、本地模式(基于 Apache Doris / Kettle 实现);
|
||||
- 数据连接:支持关系型数据库、Excel 等文件、Hadoop 等大数据平台、NoSQL 等各种数据源。
|
||||
|
||||
### DataEase 的优势:
|
||||
|
||||
- 开源开放:零门槛,线上快速获取和安装;快速获取用户反馈、按月发布新版本;
|
||||
- 简单易用:极易上手,通过鼠标点击和拖拽即可完成分析;
|
||||
- 秒级响应:集成 Apache Doris,超大数据量下秒级查询返回延时;
|
||||
- 安全分享:支持多种数据分享方式,确保数据安全。
|
||||
- 开源开放:零门槛,线上快速获取和安装;快速获取用户反馈、按月发布新版本;
|
||||
- 简单易用:极易上手,通过鼠标点击和拖拽即可完成分析;
|
||||
- 秒级响应:集成 Apache Doris,超大数据量下秒级查询返回延时;
|
||||
- 安全分享:支持多种数据分享方式,确保数据安全。
|
||||
|
||||
## UI 展示
|
||||
|
||||
@ -49,8 +49,8 @@ DataEase 是开源的数据可视化分析工具,帮助用户快速分析数
|
||||
curl -sSL https://github.com/dataease/dataease/releases/latest/download/quick_start.sh | sh
|
||||
```
|
||||
|
||||
- [在线文档](https://dataease.io/docs/)
|
||||
- [演示视频](https://dataease.oss-cn-hangzhou.aliyuncs.com/video/de-v1-demo.mp4)
|
||||
- [在线文档](https://dataease.io/docs/)
|
||||
- [演示视频](https://dataease.oss-cn-hangzhou.aliyuncs.com/video/de-v1-demo.mp4)
|
||||
|
||||
## 微信群
|
||||
|
||||
|
||||
@ -47,7 +47,9 @@ module.exports = {
|
||||
'curly': [2, 'multi-line'],
|
||||
'dot-location': [2, 'property'],
|
||||
'eol-last': 2,
|
||||
'eqeqeq': ["error", "always", {"null": "ignore"}],
|
||||
'eqeqeq': ["error", "always", {
|
||||
"null": "ignore"
|
||||
}],
|
||||
'generator-star-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
|
||||
@ -1495,9 +1495,9 @@ export default {
|
||||
addEvent(window, 'resize', this.checkParentSize)
|
||||
},
|
||||
createdFunction() {
|
||||
// eslint-disable-next-line 无效的prop:minWidth不能大于maxWidth
|
||||
// minWidth不能大于maxWidth
|
||||
if (this.maxWidth && this.minWidth > this.maxWidth) console.warn('[Vdr warn]: Invalid prop: minWidth cannot be greater than maxWidth')
|
||||
// eslint-disable-next-line 无效prop:minHeight不能大于maxHeight'
|
||||
// minHeight不能大于maxHeight
|
||||
if (this.maxWidth && this.minHeight > this.maxHeight) console.warn('[Vdr warn]: Invalid prop: minHeight cannot be greater than maxHeight')
|
||||
this.elmX = 0
|
||||
this.elmY = 0
|
||||
|
||||
@ -871,6 +871,13 @@ export default {
|
||||
input_limit_2_25: '2-25 chars',
|
||||
input_limit_0_50: '0-50 chars'
|
||||
},
|
||||
pblink: {
|
||||
key_pwd: 'Please enter the password to open the link',
|
||||
input_placeholder: 'Please enter the 4-digit password',
|
||||
pwd_error: 'Wrong password',
|
||||
pwd_format_error: 'Please enter the 4-digit password',
|
||||
sure_bt: 'Confirm'
|
||||
},
|
||||
panel: {
|
||||
no_auth_role: 'Unshared roles',
|
||||
auth_role: 'Shared roles',
|
||||
|
||||
@ -871,6 +871,13 @@ export default {
|
||||
input_limit_2_25: '2-25字符',
|
||||
input_limit_0_50: '0-50字符'
|
||||
},
|
||||
pblink: {
|
||||
key_pwd: '請輸入密碼打開鏈接',
|
||||
input_placeholder: '請輸入4位數字密碼',
|
||||
pwd_error: '密碼錯誤',
|
||||
pwd_format_error: '請輸入4位數字密碼',
|
||||
sure_bt: '確定'
|
||||
},
|
||||
panel: {
|
||||
no_auth_role: '未分享角色',
|
||||
auth_role: '已分享角色',
|
||||
|
||||
@ -871,6 +871,13 @@ export default {
|
||||
input_limit_2_25: '2-25字符',
|
||||
input_limit_0_50: '0-50字符'
|
||||
},
|
||||
pblink: {
|
||||
key_pwd: '请输入密码打开链接',
|
||||
input_placeholder: '请输入4位数字密码',
|
||||
pwd_error: '密码错误',
|
||||
pwd_format_error: '请输入4位数字密码',
|
||||
sure_bt: '确定'
|
||||
},
|
||||
panel: {
|
||||
no_auth_role: '未分享角色',
|
||||
auth_role: '已分享角色',
|
||||
|
||||
@ -5,14 +5,18 @@
|
||||
|
||||
<div class="span-header">
|
||||
<div class="bi-text">
|
||||
请输入密码打开链接
|
||||
{{ $t('pblink.key_pwd') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="input-layout">
|
||||
<div class="input-main">
|
||||
<div class="div-input">
|
||||
<el-input v-model="pwd" class="real-input" />
|
||||
<el-form ref="pwdForm" :model="form" :rules="rule" size="small">
|
||||
<el-form-item prop="password">
|
||||
<el-input v-model="form.password" maxlength="4" show-password class="real-input" :placeholder="$t('pblink.input_placeholder')" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="abs-input">
|
||||
@ -22,7 +26,7 @@
|
||||
|
||||
<div class="auth-root-class">
|
||||
<span slot="footer">
|
||||
<el-button size="mini" type="primary" @click="refresh">确定</el-button>
|
||||
<el-button size="mini" type="primary" @click="refresh">{{ $t('pblink.sure_bt') }}</el-button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@ -45,24 +49,38 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
pwd: null,
|
||||
msg: null
|
||||
msg: null,
|
||||
form: { password: null },
|
||||
rule: {
|
||||
password: [
|
||||
{ required: true, message: this.$t('pblink.key_pwd'), trigger: 'blur' },
|
||||
{
|
||||
required: true,
|
||||
pattern: /^\d{4}$/,
|
||||
message: this.$t('pblink.pwd_format_error'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
// 验证密码是否正确 如果正确 设置请求头部带LINK-PWD-TOKEN=entrypt(pwd)再刷新页面
|
||||
refresh() {
|
||||
const param = {
|
||||
password: encrypt(this.pwd),
|
||||
resourceId: this.resourceId
|
||||
}
|
||||
validatePwd(param).then(res => {
|
||||
if (!res.data) {
|
||||
this.msg = '密码错误'
|
||||
} else {
|
||||
window.location.reload()
|
||||
this.$refs.pwdForm.validate(valid => {
|
||||
if (!valid) return false
|
||||
const param = {
|
||||
password: encrypt(this.form.password),
|
||||
resourceId: this.resourceId
|
||||
}
|
||||
validatePwd(param).then(res => {
|
||||
if (!res.data) {
|
||||
this.msg = this.$t('pblink.pwd_error')
|
||||
} else {
|
||||
window.location.reload()
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -145,25 +163,25 @@ export default {
|
||||
display: block;
|
||||
}
|
||||
.input-layout{
|
||||
width: 152px;
|
||||
width: 200px;
|
||||
position: relative;
|
||||
margin: 0px auto;
|
||||
padding: 0;
|
||||
display: block;
|
||||
}
|
||||
.input-main {
|
||||
width: 150px;
|
||||
height: 30px;
|
||||
width: 192px;
|
||||
height: 35px;
|
||||
position: relative;
|
||||
margin-top: 30px;
|
||||
border: 1px solid #e8eaed;
|
||||
display: block;
|
||||
}
|
||||
.div-input {
|
||||
inset: 2px 4px;
|
||||
position: absolute;
|
||||
display: block;
|
||||
}
|
||||
// .div-input {
|
||||
// inset: 2px 4px;
|
||||
// position: absolute;
|
||||
// display: block;
|
||||
// }
|
||||
.abs-input {
|
||||
height: 20px;
|
||||
position: relative;
|
||||
@ -183,18 +201,18 @@ export default {
|
||||
color: #E65251;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.real-input {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border: none;
|
||||
outline: none;
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
inset: 0px;
|
||||
position: absolute;
|
||||
display: block;
|
||||
// .real-input {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
// border: none;
|
||||
// outline: none;
|
||||
// padding: 0px;
|
||||
// margin: 0px;
|
||||
// inset: 0px;
|
||||
// position: absolute;
|
||||
// display: block;
|
||||
|
||||
}
|
||||
// }
|
||||
.auth-root-class {
|
||||
margin: 15px 0px 5px;
|
||||
text-align: center;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user