From 878040ee75419718c5cabb29667d3713125be44c Mon Sep 17 00:00:00 2001 From: Raod <1130305001@qq.com> Date: Wed, 30 Jun 2021 10:19:41 +0800 Subject: [PATCH 1/6] RELEASE --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 328e46eb..7264cbde 100644 --- a/pom.xml +++ b/pom.xml @@ -23,9 +23,9 @@ 6.0.0-SNAPSHOT 1.0.0-SNAPSHOT - 1.0.0-SNAPSHOT + 1.0.0.RELEASE 1.0.0-SNAPSHOT - 1.0.0-SNAPSHOT + 1.0.0.RELEASE true From 3ba7518893f517283cf35c31a14d6ea521902b1a Mon Sep 17 00:00:00 2001 From: yanzili <978387851@qq.com> Date: Wed, 30 Jun 2021 10:22:58 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=A2=9E=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- report-ui/src/api/report.js | 2 +- .../views/report/bigscreen/designer/index.vue | 3 +- .../src/views/report/resultset/index.vue | 59 ++++++++++++------- 3 files changed, 40 insertions(+), 24 deletions(-) diff --git a/report-ui/src/api/report.js b/report-ui/src/api/report.js index e78747df..a1d6d5d0 100644 --- a/report-ui/src/api/report.js +++ b/report-ui/src/api/report.js @@ -167,7 +167,7 @@ export function editReportExcel (data) { // /dataSet/pageList export function dataSetPageList (data) { return request({ - url: '/dataSet/pageList', + url: '/dataSet/pageList?page=' + data.page + '&size=' + data.size + '&sort=' + data.sort + '&order=' + data.order + '&pageNumber=' + data.pageNumber + '&pageSize=' + data.pageSize, method: 'GET', data, }) diff --git a/report-ui/src/views/report/bigscreen/designer/index.vue b/report-ui/src/views/report/bigscreen/designer/index.vue index 98ad0f90..b733157d 100644 --- a/report-ui/src/views/report/bigscreen/designer/index.vue +++ b/report-ui/src/views/report/bigscreen/designer/index.vue @@ -899,8 +899,9 @@ li { top: 0; } .nav > li:last-child > ul > li > ul { - left: -100%; + left: 140px; top: 0; + width: 400px; } .nav > li > ul > li:hover > ul { display: block; diff --git a/report-ui/src/views/report/resultset/index.vue b/report-ui/src/views/report/resultset/index.vue index 40bd883b..70b823e4 100644 --- a/report-ui/src/views/report/resultset/index.vue +++ b/report-ui/src/views/report/resultset/index.vue @@ -14,12 +14,12 @@ :md="6" :lg="6" :xl="6"> - - @@ -28,12 +28,12 @@ :md="6" :lg="6" :xl="6"> - - @@ -106,7 +106,15 @@ - +
+ +
+ label-width="130px"> - - + @@ -155,9 +163,9 @@ :md="8" :lg="8" :xl="8"> - - + @@ -178,8 +186,7 @@ :lg="22" :xl="22" class="code-mirror-form"> - +
Date: Wed, 30 Jun 2021 11:02:27 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=BA=90=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/report/bigscreen/designer/index.vue | 31 +++++++------- .../src/views/report/datasource/index.vue | 37 +++++++++++++---- .../src/views/report/resultset/index.vue | 40 ++++++++++++++----- 3 files changed, 76 insertions(+), 32 deletions(-) diff --git a/report-ui/src/views/report/bigscreen/designer/index.vue b/report-ui/src/views/report/bigscreen/designer/index.vue index b733157d..8c3df0d6 100644 --- a/report-ui/src/views/report/bigscreen/designer/index.vue +++ b/report-ui/src/views/report/bigscreen/designer/index.vue @@ -59,21 +59,15 @@
  • 边框
  • 装饰
  • @@ -866,7 +860,7 @@ li { } .nav ul { - display: none; + // display: none; background: #00113a; position: absolute; z-index: 10000; @@ -881,14 +875,21 @@ li { display: block; } .nav > li > .three-level > li > a { - width: 10em; + width: 100%; padding-left: 1em; padding-right: 1em; background-color: #0f2030; } -// .nav li .three-level li { -// display: none; -// } +.nav li .three-level { + padding: 10px 20px; +} +.nav li .three-level li { + width: 33.333%; + height: 80px; + float: left; + height: 80px; + display: inline-block; +} .nav > li > ul > li:hover > a { display: block; background-color: #182e42; diff --git a/report-ui/src/views/report/datasource/index.vue b/report-ui/src/views/report/datasource/index.vue index 7ccfd658..e23bfbf7 100644 --- a/report-ui/src/views/report/datasource/index.vue +++ b/report-ui/src/views/report/datasource/index.vue @@ -106,11 +106,12 @@ @@ -376,9 +377,29 @@ export default { }) }, async delData (val) { - const { code } = await deleteDataSource(val) - if (code != '200') return - this.queryByPage() + this.$confirm('确定删除?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning', + }) + .then(async () => { + this.$emit('deletelayer') + this.visible = false + const { code, data } = await deleteDataSource(val) + if (code != '200') return + this.queryByPage() + this.$message({ + type: 'success', + message: '删除成功!', + }) + }) + .catch(() => { + this.$message({ + type: 'info', + message: '已取消删除', + }) + }) + }, // 提交 async UserConfirm (formName) { diff --git a/report-ui/src/views/report/resultset/index.vue b/report-ui/src/views/report/resultset/index.vue index 70b823e4..d581a6f6 100644 --- a/report-ui/src/views/report/resultset/index.vue +++ b/report-ui/src/views/report/resultset/index.vue @@ -97,11 +97,12 @@ 编辑 - - 删除 - + + 删除 + @@ -614,10 +615,29 @@ export default { this.caseResultTitle = item.setName this.caseResultContent = JSON.parse(item.caseResult) }, - async delect (row) { - this.visible = false - const { code, data } = await deleteDataSet(row) - if (code != '200') return + delect (row) { + this.$confirm('确定删除?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning', + }) + .then(async () => { + this.$emit('deletelayer') + this.visible = false + const { code, data } = await deleteDataSet(row) + if (code != '200') return + this.queryByPage() + this.$message({ + type: 'success', + message: '删除成功!', + }) + }) + .catch(() => { + this.$message({ + type: 'info', + message: '已取消删除', + }) + }) }, // 编辑数据集,获取单条数据详情 addOrEditDataSet (row) { @@ -901,9 +921,11 @@ export default { if (this.dialogFormVisibleTitle === '新增数据集') { const { code } = await addDataSet(this.formData) if (code != '200') return + this.queryByPage() } else { const { code } = await editDataSet(this.formData) if (code != '200') return + this.queryByPage() } this.dialogFormVisible = false } else { From 763e5a642363c4832ad6f66d949715668a61f027 Mon Sep 17 00:00:00 2001 From: Raod <1130305001@qq.com> Date: Wed, 30 Jun 2021 11:34:26 +0800 Subject: [PATCH 4/6] doc --- doc/docs/.vuepress/config.js | 22 ++++++-------- doc/docs/{operation => guide}/dashboard.md | 0 doc/docs/{operation => guide}/dataset.md | 0 doc/docs/{operation => guide}/datasource.md | 3 +- doc/docs/guide/question.md | 7 ++++- doc/docs/operation/README.md | 25 ---------------- doc/docs/operation/dict.md | 32 --------------------- doc/docs/operation/i18n.md | 32 --------------------- 8 files changed, 16 insertions(+), 105 deletions(-) rename doc/docs/{operation => guide}/dashboard.md (100%) rename doc/docs/{operation => guide}/dataset.md (100%) rename doc/docs/{operation => guide}/datasource.md (50%) delete mode 100644 doc/docs/operation/README.md delete mode 100644 doc/docs/operation/dict.md delete mode 100644 doc/docs/operation/i18n.md diff --git a/doc/docs/.vuepress/config.js b/doc/docs/.vuepress/config.js index 9c415e69..489b5e55 100644 --- a/doc/docs/.vuepress/config.js +++ b/doc/docs/.vuepress/config.js @@ -12,7 +12,6 @@ module.exports = { nav: [ {text: '首页', link: '/'}, {text: '指南', link: '/guide/'}, - {text: '操作手册', link: '/operation/'}, {text: 'GitHub', link: 'https://github.com/anji-plus/report'}, {text: 'Gitee', link: 'https://gitee.com/anji-plus/report'}, ], @@ -24,29 +23,24 @@ module.exports = { children: [ {title: '介绍', path: '/guide/'}, {title: '快速入门', path: '/guide/quickly'}, - // {title: '系统运行', path: '/guide/deploy'} ] }, { - title: '其他', + title: '操作手册', collapsable: false, children: [ - {title: '常见问题', path: '/guide/question'} + {title: '数据源', path: '/guide/datasource'}, + {title: '数据集', path: '/guide/dataset'}, + {title: '大屏设计', path: '/guide/dashboard'}, ] - }], - '/operation/': [ + }, { - title: '操作手册', + title: '其他', collapsable: false, children: [ - {title: '数据源', path: '/operation/datasource'}, - {title: '数据集', path: '/operation/dataset'}, - {title: '大屏设计', path: '/operation/dashboard'}, - {title: '国际化', path: '/operation/i18n'}, - {title: '字典', path: '/operation/dict'}, + {title: '常见问题', path: '/guide/question'} ] - } - ] + }], } }, plugins: [ diff --git a/doc/docs/operation/dashboard.md b/doc/docs/guide/dashboard.md similarity index 100% rename from doc/docs/operation/dashboard.md rename to doc/docs/guide/dashboard.md diff --git a/doc/docs/operation/dataset.md b/doc/docs/guide/dataset.md similarity index 100% rename from doc/docs/operation/dataset.md rename to doc/docs/guide/dataset.md diff --git a/doc/docs/operation/datasource.md b/doc/docs/guide/datasource.md similarity index 50% rename from doc/docs/operation/datasource.md rename to doc/docs/guide/datasource.md index 3625ab12..a1649c65 100644 --- a/doc/docs/operation/datasource.md +++ b/doc/docs/guide/datasource.md @@ -1,3 +1,4 @@ -# 数据源 +## 数据源 ## 标题一 + diff --git a/doc/docs/guide/question.md b/doc/docs/guide/question.md index 70d67042..3850359e 100644 --- a/doc/docs/guide/question.md +++ b/doc/docs/guide/question.md @@ -1,4 +1,9 @@ -# 常见问题 +## 常见问题 +- 没有找到新增数据源类型?
    + 字典管理目前暂未有页面维护,可自行去数据库中增加你需要的数据源类型。
    + 表gaea_dict,字段dict_type:SOURCE_TYPE
    + 表gaea_dict_item, item_extend字段是下拉选择后动态表单渲染的json数据
    + ## 其他 diff --git a/doc/docs/operation/README.md b/doc/docs/operation/README.md deleted file mode 100644 index 1520bf70..00000000 --- a/doc/docs/operation/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# 介绍 ---- - -**大屏设计** - -大屏设计(Report)是一个JavaEE微服务架构平台,采用经典组合(SpringBoot,SpringCloud,Vue,ElementUI)。目前提供两种架构,单体架构和微服务架构。 -内置的基础功能包括数据源,数据集,报表管理 - -**功能架构** -- 前端 - - -- 后端 - - -**在线体验** -- 访问地址 - -- 默认账号密码 - - -**联系我们** - - - diff --git a/doc/docs/operation/dict.md b/doc/docs/operation/dict.md deleted file mode 100644 index f50cb745..00000000 --- a/doc/docs/operation/dict.md +++ /dev/null @@ -1,32 +0,0 @@ -# 快速了解 ---- -## 项目简介 -- 项目源代码地址: -- 在线提问: -- 在线文档: - -大屏设计(Report)是一个可视化拖拽编辑的,直观,酷炫,具有科技感的图表工具项目。 -内置的基础功能包括数据源,数据集,国际化,字典管理,报表管理 - - -## 技术选型 - -**1.环境** -- JavaEE 8 -- Apache Maven 3 - -**2.主框架** -- Spring Boot 2.3.x - -**3.持久层** -- Apache MyBatis 3.5.x - -**4.视图层** -- Vue 2.6.10+ -- ElementUI 2.13.0+ - - -## 系统特性 -1. 最新最稳定的技术栈; -2. 支持多数据源配置 -3. 丰富的大屏组件。拖拽配置实现动态大屏 diff --git a/doc/docs/operation/i18n.md b/doc/docs/operation/i18n.md deleted file mode 100644 index f50cb745..00000000 --- a/doc/docs/operation/i18n.md +++ /dev/null @@ -1,32 +0,0 @@ -# 快速了解 ---- -## 项目简介 -- 项目源代码地址: -- 在线提问: -- 在线文档: - -大屏设计(Report)是一个可视化拖拽编辑的,直观,酷炫,具有科技感的图表工具项目。 -内置的基础功能包括数据源,数据集,国际化,字典管理,报表管理 - - -## 技术选型 - -**1.环境** -- JavaEE 8 -- Apache Maven 3 - -**2.主框架** -- Spring Boot 2.3.x - -**3.持久层** -- Apache MyBatis 3.5.x - -**4.视图层** -- Vue 2.6.10+ -- ElementUI 2.13.0+ - - -## 系统特性 -1. 最新最稳定的技术栈; -2. 支持多数据源配置 -3. 丰富的大屏组件。拖拽配置实现动态大屏 From 1c95ccb46c3d9ce3aabd418f160de8a069cb398a Mon Sep 17 00:00:00 2001 From: qianming Date: Wed, 30 Jun 2021 13:03:20 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/docs/operation/img.png | Bin 0 -> 19292 bytes doc/docs/operation/pie.md | 7 +++++++ doc/docs/picture/img.png | Bin 0 -> 21289 bytes doc/docs/picture/img_1.png | Bin 0 -> 23863 bytes 4 files changed, 7 insertions(+) create mode 100644 doc/docs/operation/img.png create mode 100644 doc/docs/operation/pie.md create mode 100644 doc/docs/picture/img.png create mode 100644 doc/docs/picture/img_1.png diff --git a/doc/docs/operation/img.png b/doc/docs/operation/img.png new file mode 100644 index 0000000000000000000000000000000000000000..91254562d652482fe314477e313065c1f759c829 GIT binary patch literal 19292 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 literal 0 HcmV?d00001 diff --git a/doc/docs/picture/img_1.png b/doc/docs/picture/img_1.png new file mode 100644 index 0000000000000000000000000000000000000000..6fd598f4ea85200d5e01095ad8f0b33482bd44b8 GIT binary patch literal 23863 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 E0N=0nC;$Ke literal 0 HcmV?d00001 From 3066e866e0b01852b0e709122a85da3c2fed6649 Mon Sep 17 00:00:00 2001 From: yanzili <978387851@qq.com> Date: Wed, 30 Jun 2021 13:03:30 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E8=BE=B9=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/report/bigscreen/designer/index.vue | 132 ++++++++++-------- 1 file changed, 72 insertions(+), 60 deletions(-) diff --git a/report-ui/src/views/report/bigscreen/designer/index.vue b/report-ui/src/views/report/bigscreen/designer/index.vue index 8c3df0d6..9819bd34 100644 --- a/report-ui/src/views/report/bigscreen/designer/index.vue +++ b/report-ui/src/views/report/bigscreen/designer/index.vue @@ -59,15 +59,15 @@
  • 边框
  • 装饰
  • @@ -842,81 +842,93 @@ li { padding: 0; } .nav { + width: 40px; + padding: 0; + list-style: none; + /* overflow: hidden; */ } -.nav > li { - display: inline-block; - position: relative; +.nav { + zoom: 1; } -.nav > li > a { - text-decoration: none; +.nav:before, +.nav:after { + content: ""; + display: table; } -.nav > li:hover > a { - color: rgb(0, 136, 214); +.nav:after { + clear: both; } -.nav a { - color: #cde8ff; - display: block; +.nav li { + width: 40px; + text-align: center; + position: relative; +} +.nav li a { + float: left; + padding: 12px 30px; + color: #999; + font: bold 12px; text-decoration: none; } - -.nav ul { - // display: none; - background: #00113a; +.nav li:hover { + color: #6dc5ff; +} +.nav li ul { + visibility: hidden; position: absolute; - z-index: 10000; + z-index: 1000; + list-style: none; + top: 38px; + left: 0; + padding: 0; + background-color: #263445; + opacity: 0; + _margin: 0; width: 120px; - margin-left: -20px; + transition: all 0.2s ease-in-out; } -.nav ul li { - position: relative; - font-size: 12px; +.nav li:hover > ul { + opacity: 1; + visibility: visible; + margin: 0; } -.nav > li:hover > ul { +.nav ul li { + float: left; display: block; -} -.nav > li > .three-level > li > a { + border: 0; width: 100%; - padding-left: 1em; - padding-right: 1em; - background-color: #0f2030; -} -.nav li .three-level { - padding: 10px 20px; -} -.nav li .three-level li { - width: 33.333%; - height: 80px; - float: left; - height: 80px; - display: inline-block; + font-size: 12px; } -.nav > li > ul > li:hover > a { +.nav ul a { + padding: 10px; + width: 100%; display: block; - background-color: #182e42; - color: #fff; + float: none; + height: 120px; + border: 1px solid #30445c; + transition: all 0.2s ease-in-out; } -.nav > li > ul > li > ul { - left: 100%; - top: 0; +.nav ul a:hover { + border: 1px solid #3c5e88; } -.nav > li:last-child > ul > li > ul { - left: 140px; +.nav ul li:first-child > a:hover:before { + border-bottom-color: #04acec; +} +.nav ul ul { top: 0; + left: 120px; width: 400px; + height: 300px; + overflow: auto; + padding: 10px; + box-shadow: -1px 0 0 #30445c; + _margin: 0; } -.nav > li > ul > li:hover > ul { +.nav ul ul li { + width: 120px; + height: 120px; + margin-right: 3px; display: block; -} -.nav > li > ul > li > ul > li > a { - padding-top: 0.4em; - padding-bottom: 0.4em; - width: 10em; - padding-left: 1em; - padding-right: 1em; - background-color: rgb(50, 50, 50); -} -.nav > li > ul > li > ul > li:hover > a { - background-color: rgb(255, 255, 0); - color: rgb(0, 0, 0); + float: left; }