From b8727f9b5a28876410304e740fa0227f528ec6f7 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Fri, 22 Jul 2022 13:20:13 +0800 Subject: [PATCH 01/19] =?UTF-8?q?refactor(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20?= =?UTF-8?q?=E4=BB=AA=E8=A1=A8=E6=9D=BF=E9=A2=84=E8=A7=88=E7=95=8C=E9=9D=A2?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BB=AA=E8=A1=A8=E6=9D=BF=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=BC=B9=E5=87=BA=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/panel/PanelGroupService.java | 6 ++ .../main/resources/db/migration/V38__1.13.sql | 4 + frontend/src/api/panel/panel.js | 6 +- frontend/src/api/panel/shareProxy.js | 6 +- .../src/components/DeViewSelect/index.vue | 6 +- frontend/src/lang/en.js | 17 ++-- frontend/src/lang/tw.js | 15 ++-- frontend/src/lang/zh.js | 17 ++-- frontend/src/views/link/view/index.vue | 6 +- frontend/src/views/panel/list/PanelList.vue | 6 +- .../src/views/panel/list/PanelViewShow.vue | 18 +++- .../panel/list/common/PanelDetailInfo.vue | 84 +++++++++++++++++++ 12 files changed, 157 insertions(+), 34 deletions(-) create mode 100644 frontend/src/views/panel/list/common/PanelDetailInfo.vue diff --git a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java index 35eb934abb..5832c13c90 100644 --- a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java +++ b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java @@ -134,6 +134,8 @@ public class PanelGroupService { public String update(PanelGroupRequest request) { String panelId = request.getId(); + request.setUpdateTime(System.currentTimeMillis()); + request.setUpdateBy(AuthUtils.getUser().getUsername()); panelViewService.syncPanelViews(request); if ("toDefaultPanel".equals(request.getOptType())) { // 转存为默认仪表板 panelId = UUID.randomUUID().toString(); @@ -146,6 +148,7 @@ public class PanelGroupService { newDefaultPanel.setLevel(0); newDefaultPanel.setSource(request.getId()); newDefaultPanel.setCreateBy(AuthUtils.getUser().getUsername()); + newDefaultPanel.setCreateTime(System.currentTimeMillis()); checkPanelName(newDefaultPanel.getName(), newDefaultPanel.getPid(), PanelConstants.OPT_TYPE_INSERT, newDefaultPanel.getId(), newDefaultPanel.getNodeType()); panelGroupMapper.insertSelective(newDefaultPanel); // 清理权限缓存 @@ -177,6 +180,8 @@ public class PanelGroupService { record.setName(request.getName()); record.setId(request.getId()); record.setPid(request.getPid()); + record.setUpdateTime(request.getUpdateTime()); + record.setUpdateBy(request.getUpdateBy()); panelGroupMapper.updateByPrimaryKeySelective(record); DeLogUtils.save(SysLogConstants.OPERATE_TYPE.MODIFY, sourceType, request.getId(), panelInfo.getPid(), request.getPid(), sourceType); @@ -336,6 +341,7 @@ public class PanelGroupService { newPanel.setName(request.getName()); newPanel.setId(newPanelId); newPanel.setCreateBy(AuthUtils.getUser().getUsername()); + newPanel.setCreateTime(System.currentTimeMillis()); //TODO copy panelView extPanelViewMapper.copyFromPanel(newPanelId, sourcePanelId, copyId); //TODO 复制视图 chart_view diff --git a/backend/src/main/resources/db/migration/V38__1.13.sql b/backend/src/main/resources/db/migration/V38__1.13.sql index 4d771988dd..6161690bbf 100644 --- a/backend/src/main/resources/db/migration/V38__1.13.sql +++ b/backend/src/main/resources/db/migration/V38__1.13.sql @@ -71,3 +71,7 @@ INSERT INTO `sys_menu` (`menu_id`, `pid`, `sub_count`, `type`, `title`, `name`, INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALUES ('basic.templateAccessKey', 'dataease', 'text', NULL); INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALUES ('basic.templateMarketUlr', 'https://dataease.io/templates', 'text', 4); + +ALTER TABLE `panel_group` + ADD COLUMN `update_by` varchar(255) NULL COMMENT '更新人' AFTER `status`, +ADD COLUMN `update_time` bigint(13) NULL COMMENT '更新时间' AFTER `update_by`; diff --git a/frontend/src/api/panel/panel.js b/frontend/src/api/panel/panel.js index d97c41b615..0827fa10b1 100644 --- a/frontend/src/api/panel/panel.js +++ b/frontend/src/api/panel/panel.js @@ -154,7 +154,11 @@ export function initPanelData(panelId, callback) { name: response.data.name, privileges: response.data.privileges, sourcePanelName: response.data.sourcePanelName, - status: response.data.status + status: response.data.status, + createBy: response.data.createBy, + createTime: response.data.createTime, + updateBy: response.data.updateBy, + updateTime: response.data.updateTime }) // 刷新联动信息 getPanelAllLinkageInfo(panelId).then(rsp => { diff --git a/frontend/src/api/panel/shareProxy.js b/frontend/src/api/panel/shareProxy.js index c47d5b3fb4..f171f73429 100644 --- a/frontend/src/api/panel/shareProxy.js +++ b/frontend/src/api/panel/shareProxy.js @@ -13,7 +13,11 @@ export function proxyInitPanelData(panelId, proxy, callback) { name: response.data.name, privileges: response.data.privileges, proxy: proxy.userId, - status: response.data.status + status: response.data.status, + createBy: response.data.createBy, + createTime: response.data.createTime, + updateBy: response.data.updateBy, + updateTime: response.data.updateTime }) // 刷新联动信息 getPanelAllLinkageInfo(panelId, proxy).then(rsp => { diff --git a/frontend/src/components/DeViewSelect/index.vue b/frontend/src/components/DeViewSelect/index.vue index 40160056f6..405419110e 100644 --- a/frontend/src/components/DeViewSelect/index.vue +++ b/frontend/src/components/DeViewSelect/index.vue @@ -133,7 +133,11 @@ export default { name: response.data.name, privileges: response.data.privileges, sourcePanelName: response.data.sourcePanelName, - status: response.data.status + status: response.data.status, + createBy: response.data.createBy, + createTime: response.data.createTime, + updateBy: response.data.updateBy, + updateTime: response.data.updateTime } this.$store.dispatch('panel/setPanelInfo', this.panelInfo) panelDataPrepare(JSON.parse(response.data.panelData), JSON.parse(response.data.panelStyle), rsp => { diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js index c6d407daaa..d75a96b062 100644 --- a/frontend/src/lang/en.js +++ b/frontend/src/lang/en.js @@ -132,7 +132,7 @@ export default { }, commons: { manage_member: 'Managing members', - user_confirm_remove_cancel:'Are you sure you want to remove the user from the role?', + user_confirm_remove_cancel: 'Are you sure you want to remove the user from the role?', confirm_remove_cancel: 'Are you sure to delete the role?', default_value: 'Default Value', params_value: 'Param Value', @@ -623,12 +623,11 @@ export default { can_not_move: `Can't be removed, keep at least one administrator`, manage_can_not_move: 'Administrator is a preset role of the system. By default, he has all the permissions of system management and cannot be deleted', manage_can_not_update: 'Administrator is a preset role of the system. By default, he has all the permissions of system management and cannot be edit', - role_name: 'Role name', role_description: 'Role description', editer_role: 'Edit role', add_role: 'Add role', role_name_exist: 'The role name already exists', - search_by_role: 'Search by role name', + search_by_role: 'Search by role name' }, menu: { parent_category: 'Parent Category', @@ -667,7 +666,6 @@ export default { member: 'member', organization: 'organization', add_user: 'Add user', - search_by_name: 'Search by organization name', sure_move_user: 'Are you sure to remove this user from the organization?', move_success: 'Removed successfully', user: 'user', @@ -680,9 +678,8 @@ export default { canot_delete: 'Cannot delete', remove_user_first: 'Please remove all users in the organization before deleting the organization', sure_delete_organization: 'Are you sure to delete this organization?', - delete: 'delete', add_child_org: 'Add sub organization', - edite_organization: 'Edit organization', + edite_organization: 'Edit organization' }, system_parameter_setting: { mailbox_service_settings: 'Mail Settings', @@ -1546,6 +1543,10 @@ export default { sure_bt: 'Confirm' }, panel: { + create_by: '创建人', + create_time: '创建时间', + update_by: '最近修改人', + update_time: '最近修改时间', target_url: 'Target Url', target_url_tips: 'You can click fields to splice URLs or parameters', select_world: 'Select World', @@ -1919,8 +1920,6 @@ export default { column_permission: 'Column permission rule', enable_column: 'Enable column permissions', search_by_field: 'Search by field name', - add_condition: 'Add condition', - add_relationship: 'Add relationship', filter_fields: 'Filter fields', selct_filter_fields: 'Please select a filter field', enter_keywords: 'Please enter keywords', @@ -1934,7 +1933,7 @@ export default { please_fill: 'Please fill in one line and add 500 at most. Duplicate options and added options will be automatically filtered when identifying and entering', close: 'close', add: 'add to', - sure: 'determine', + sure: 'determine' }, about: { auth_to: 'Authorized to', diff --git a/frontend/src/lang/tw.js b/frontend/src/lang/tw.js index 49f37db3be..e5f2af74d9 100644 --- a/frontend/src/lang/tw.js +++ b/frontend/src/lang/tw.js @@ -624,12 +624,11 @@ export default { can_not_move: '不可移除,至少保留一位管理員', manage_can_not_move: '管理員是系統預置角色,默認擁有系統管理全部權限,無法刪除', manage_can_not_update: '管理員是系統預置角色,默認擁有系統管理全部權限,無法編輯', - role_name: '角色名稱', role_description: '角色描述', editer_role: '編輯角色', add_role: '添加角色', role_name_exist: '該角色名稱已存在', - search_by_role: '通過角色名稱搜索', + search_by_role: '通過角色名稱搜索' }, menu: { parent_category: '上級目錄', @@ -658,7 +657,6 @@ export default { create_time: '創建日期', create: '新建組織', modify: '修改組織', - delete: '刪除組織', delete_confirm: '確定要刪除該組織嗎?', input_name: '請輸入組織名稱', select_organization: '請選擇組織', @@ -668,7 +666,6 @@ export default { member: '成員', organization: '組織', add_user: '添加用戶', - search_by_name: '通過組織名稱搜索', sure_move_user: '確定將該用戶從組織中移除嗎?', move_success: '移除成功', user: '用戶', @@ -683,7 +680,7 @@ export default { sure_delete_organization: '確定刪除該組織嗎?', delete: '刪除', add_child_org: '添加子組織', - edite_organization: '編輯組織', + edite_organization: '編輯組織' }, system_parameter_setting: { mailbox_service_settings: '郵件設置', @@ -1546,6 +1543,10 @@ export default { sure_bt: '確定' }, panel: { + create_by: '创建人', + create_time: '创建时间', + update_by: '最近修改人', + update_time: '最近修改时间', target_url: '目标URL', target_url_tips: '可以点击字段用来拼接URL或者参数', select_world: '点击选择字段', @@ -1930,8 +1931,6 @@ export default { column_permission: '列權限規則', enable_column: '啟用列權限', search_by_field: '通過字段名稱搜索', - add_condition: '添加條件', - add_relationship: '添加關系', filter_fields: '篩選字段', selct_filter_fields: '請選擇篩選字段', enter_keywords: '請輸關鍵字', @@ -1945,7 +1944,7 @@ export default { please_fill: '請一行填一個,最多添加500個,識別錄入時會自動過濾重復的選項和已經添加過的選項', close: '關 閉', add: '添 加', - sure: '確 定', + sure: '確 定' }, about: { auth_to: '授權給', diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index 4a4e92425c..31cc4dd966 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -133,7 +133,7 @@ export default { commons: { manage_member: '管理成员', confirm_remove_cancel: '确定删除该角色吗?', - user_confirm_remove_cancel:'确定将该用户从角色中移除吗?', + user_confirm_remove_cancel: '确定将该用户从角色中移除吗?', default_value: '默认值', params_value: '参数值', input_role_name: '请输入角色名称', @@ -615,7 +615,6 @@ export default { modify: '修改角色', tips: '提示', confirm_delete: '确认删除角色 ', - role_name: '角色名称', search_by_name: '按名称搜索', pls_input_name: '请输入名称', search_by_name_email: '通过姓名或邮箱搜索', @@ -630,7 +629,7 @@ export default { editer_role: '编辑角色', add_role: '添加角色', role_name_exist: '该角色名称已存在', - search_by_role: '通过角色名称搜索', + search_by_role: '通过角色名称搜索' }, menu: { parent_category: '上级目录', @@ -659,7 +658,6 @@ export default { create_time: '创建日期', create: '新建组织', modify: '修改组织', - delete: '删除组织', delete_confirm: '确定要删除该组织吗?', input_name: '请输入组织名称', select_organization: '请选择组织', @@ -669,7 +667,6 @@ export default { member: '成员', organization: '组织', add_user: '添加用户', - search_by_name: '通过组织名称搜索', sure_move_user: '确定将该用户从组织中移除吗?', move_success: '移除成功', user: '用户', @@ -684,7 +681,7 @@ export default { sure_delete_organization: '确定删除该组织吗?', delete: '删除', add_child_org: '添加子组织', - edite_organization: '编辑组织', + edite_organization: '编辑组织' }, system_parameter_setting: { mailbox_service_settings: '邮件设置', @@ -1554,6 +1551,10 @@ export default { sure_bt: '确定' }, panel: { + create_by: '创建人', + create_time: '创建时间', + update_by: '最近修改人', + update_time: '最近修改时间', target_url: '目标URL', target_url_tips: '可以点击字段用来拼接URL或者参数', select_world: '点击选择字段', @@ -1931,8 +1932,6 @@ export default { row_column: '行列权限设置', row_permission: '行权限规则', enable_row: '启用行权限', - add_condition: '添加条件', - add_relationship: '添加关系', white_list: '白名单', white_user_not: '以上权限规则对白名单用户不生效', organization_or_role: '请选择组织或角色', @@ -1954,7 +1953,7 @@ export default { please_fill: '请一行填一个,最多添加500个,识别录入时会自动过滤重复的选项和已经添加过的选项', close: '关 闭', add: '添 加', - sure: '确 定', + sure: '确 定' }, about: { auth_to: '授权给', diff --git a/frontend/src/views/link/view/index.vue b/frontend/src/views/link/view/index.vue index d4a041dc46..b6594b6714 100644 --- a/frontend/src/views/link/view/index.vue +++ b/frontend/src/views/link/view/index.vue @@ -57,7 +57,11 @@ export default { id: res.data.id, name: res.data.name, privileges: res.data.privileges, - status: res.data.status + status: res.data.status, + createBy: res.data.createBy, + createTime: res.data.createTime, + updateBy: res.data.updateBy, + updateTime: res.data.updateTime } this.$store.dispatch('panel/setPanelInfo', this.panelInfo) diff --git a/frontend/src/views/panel/list/PanelList.vue b/frontend/src/views/panel/list/PanelList.vue index 34f34d36d7..0bfe88dfb4 100644 --- a/frontend/src/views/panel/list/PanelList.vue +++ b/frontend/src/views/panel/list/PanelList.vue @@ -721,7 +721,11 @@ export default { name: data.name, privileges: data.privileges, sourcePanelName: data.sourcePanelName, - status: data.status + status: data.status, + createBy: data.createBy, + createTime: data.createTime, + updateBy: data.updateBy, + updateTime: data.updateTime }) bus.$emit('PanelSwitchComponent', { name: 'PanelEdit' }) }, diff --git a/frontend/src/views/panel/list/PanelViewShow.vue b/frontend/src/views/panel/list/PanelViewShow.vue index 03076f4c60..623d570dfc 100644 --- a/frontend/src/views/panel/list/PanelViewShow.vue +++ b/frontend/src/views/panel/list/PanelViewShow.vue @@ -18,9 +18,20 @@
{{ panelInfo.name || '测试仪表板' }} -   ({{ $t('panel.default_panel_name') }}:{{ panelInfo.defaultPanelName }}) - ({{ $t('panel.source_panel_name') }}:{{ panelInfo.sourcePanelName }}) +  ({{ $t('panel.source_panel_name') }}:{{ panelInfo.sourcePanelName }}) + + + + @@ -157,10 +168,11 @@ import { initPanelData, updatePanelStatus } from '@/api/panel/panel' import { proxyInitPanelData } from '@/api/panel/shareProxy' import { dataURLToBlob } from '@/components/canvas/utils/utils' import { findResourceAsBase64 } from '@/api/staticResource/staticResource' +import PanelDetailInfo from "@/views/panel/list/common/PanelDetailInfo"; export default { name: 'PanelViewShow', - components: { Preview, SaveToTemplate, PDFPreExport, ShareHead }, + components: {PanelDetailInfo, Preview, SaveToTemplate, PDFPreExport, ShareHead }, props: { activeTab: { type: String, diff --git a/frontend/src/views/panel/list/common/PanelDetailInfo.vue b/frontend/src/views/panel/list/common/PanelDetailInfo.vue new file mode 100644 index 0000000000..1b3d4a4dde --- /dev/null +++ b/frontend/src/views/panel/list/common/PanelDetailInfo.vue @@ -0,0 +1,84 @@ + + + + + From f75d44cd135104bd474cbc56c06e179eaa421149 Mon Sep 17 00:00:00 2001 From: dataeaseShu <106045316+dataeaseShu@users.noreply.github.com> Date: Fri, 22 Jul 2022 13:39:05 +0800 Subject: [PATCH 02/19] =?UTF-8?q?feat:=20API=E6=95=B0=E6=8D=AE=E6=BA=90?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/lang/en.js | 1 + frontend/src/lang/tw.js | 1 + frontend/src/lang/zh.js | 1 + .../system/datasource/DsConfiguration.vue | 1441 ++++++++++++----- frontend/src/views/system/user/userEditer.vue | 2 +- 5 files changed, 1018 insertions(+), 428 deletions(-) diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js index 6cfe191bcb..90c8eb4b47 100644 --- a/frontend/src/lang/en.js +++ b/frontend/src/lang/en.js @@ -1179,6 +1179,7 @@ export default { remark_bg_color: 'Background Fill' }, dataset: { + parse_filed: 'Parse Field', field_rename: 'Rename Field', params_work: 'Effective only when editing SQL', sql_variable_limit_1: '1、SQL variables can only be used in where conditions', diff --git a/frontend/src/lang/tw.js b/frontend/src/lang/tw.js index 7d8a88d4c5..0174d7d61e 100644 --- a/frontend/src/lang/tw.js +++ b/frontend/src/lang/tw.js @@ -1178,6 +1178,7 @@ export default { remark_bg_color: '背景填充' }, dataset: { + parse_filed: '解析字段', field_rename: '字段重命名', params_work: '僅在編輯 sql 時生效', sql_variable_limit_1: '1、SQL變數只能在WHERE條件中使用', diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index bb46e8a0a4..f6a75d3e85 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -1180,6 +1180,7 @@ export default { remark_bg_color: '背景填充' }, dataset: { + parse_filed: '解析字段', field_rename: '字段重命名', params_work: '仅在编辑sql时生效', select_year: '选择年', diff --git a/frontend/src/views/system/datasource/DsConfiguration.vue b/frontend/src/views/system/datasource/DsConfiguration.vue index a63f32b8a6..deb9f97656 100644 --- a/frontend/src/views/system/datasource/DsConfiguration.vue +++ b/frontend/src/views/system/datasource/DsConfiguration.vue @@ -11,178 +11,135 @@ label-width="180px" label-position="right" > - + - - - - - - + + + + + + - - - - - - - - - -

{{ $t('datasource.base_info') }}

- - - - - - - - - - - - - -
-

{{ $t('datasource.req_param') }}

- - - - -
- -
-
- - -

{{ $t('datasource.column_info') }}

- - - - - - - - - - - - - - - -

{{ $t('dataset.data_preview') }}

- - - - - - -
-
- -
- - - + + - - + + - - + + - - {{ - $t('datasource.oracle_sid') - }} + + {{ $t("datasource.oracle_sid") }} - - {{ $t('datasource.oracle_service_name') }} + + {{ $t("datasource.oracle_service_name") }} - + - - + + - - + +

- {{ $t('datasource.kerbers_info') }} + {{ $t("datasource.kerbers_info") }}

- - + - + v-if=" + form.type !== 'es' && + form.type !== 'api' && + form.configuration.authMethod !== 'kerberos' + " + :label="$t('datasource.user_name')" + > + - - - - - - - - - - - - - - - - - + v-if=" + form.type !== 'es' && + form.type !== 'api' && + form.configuration.authMethod !== 'kerberos' + " + :label="$t('datasource.password')" + > + - {{ - $t('datasource.get_schema') - }} + v-if="form.type === 'es'" + :label="$t('datasource.user_name')" + > + + + + + + + + + + + + + + + + + {{ $t("datasource.get_schema") }} - - + v-if=" + form.type == 'oracle' || + form.type == 'sqlServer' || + form.type == 'pg' || + form.type == 'redshift' || + form.type == 'db2' + " + :label="$t('datasource.schema')" + > + + - - - + + + - - - + + + - + - - + + - - + + - - + + - - + + -
+ + + + + + + + + +
+ {{ $t("datasource.base_info") }} +
+ + + + + + + + + + + + +
+
+ {{ $t("datasource.req_param") }} +
+ + + + +
+
+
+ + +
+ {{ $t("datasource.column_info") }} +
+
+ + + + + + + + + + + + +
+ +
+ {{ $t("dataset.data_preview") }} +
+ + + + + + +
+
+
+ {{ $t("commons.cancel") }} + {{ $t("fu.steps.next") }} + + {{ + $t("fu.steps.prev") + }} + {{ + $t("commons.save") + }} +
+
+ \ No newline at end of file diff --git a/frontend/src/views/system/user/userEditer.vue b/frontend/src/views/system/user/userEditer.vue index d416887bb0..8dfe9bed70 100644 --- a/frontend/src/views/system/user/userEditer.vue +++ b/frontend/src/views/system/user/userEditer.vue @@ -502,11 +502,11 @@ export default { font-weight: 400; line-height: 22px; text-align: left; - color: #1f2329; } .pwd { margin: 0 8px; + color: #1f2329; } .btn-text { From 0c4ff919039f4bdeba9841e4df056d2db2e5e95e Mon Sep 17 00:00:00 2001 From: dataeaseShu <106045316+dataeaseShu@users.noreply.github.com> Date: Fri, 22 Jul 2022 13:39:05 +0800 Subject: [PATCH 03/19] =?UTF-8?q?feat:=20API=E6=95=B0=E6=8D=AE=E6=BA=90?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/lang/en.js | 1 + frontend/src/lang/tw.js | 1 + frontend/src/lang/zh.js | 1 + .../system/datasource/DsConfiguration.vue | 1441 ++++++++++++----- frontend/src/views/system/user/userEditer.vue | 2 +- 5 files changed, 1018 insertions(+), 428 deletions(-) diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js index d75a96b062..e0e3fb7cd6 100644 --- a/frontend/src/lang/en.js +++ b/frontend/src/lang/en.js @@ -1176,6 +1176,7 @@ export default { remark_bg_color: 'Background Fill' }, dataset: { + parse_filed: 'Parse Field', field_rename: 'Rename Field', params_work: 'Effective only when editing SQL', sql_variable_limit_1: '1、SQL variables can only be used in where conditions', diff --git a/frontend/src/lang/tw.js b/frontend/src/lang/tw.js index e5f2af74d9..1119087f3c 100644 --- a/frontend/src/lang/tw.js +++ b/frontend/src/lang/tw.js @@ -1175,6 +1175,7 @@ export default { remark_bg_color: '背景填充' }, dataset: { + parse_filed: '解析字段', field_rename: '字段重命名', params_work: '僅在編輯 sql 時生效', sql_variable_limit_1: '1、SQL變數只能在WHERE條件中使用', diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index 31cc4dd966..1767f03c2e 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -1177,6 +1177,7 @@ export default { remark_bg_color: '背景填充' }, dataset: { + parse_filed: '解析字段', field_rename: '字段重命名', params_work: '仅在编辑sql时生效', select_year: '选择年', diff --git a/frontend/src/views/system/datasource/DsConfiguration.vue b/frontend/src/views/system/datasource/DsConfiguration.vue index a63f32b8a6..deb9f97656 100644 --- a/frontend/src/views/system/datasource/DsConfiguration.vue +++ b/frontend/src/views/system/datasource/DsConfiguration.vue @@ -11,178 +11,135 @@ label-width="180px" label-position="right" > - + - - - - - - + + + + + + - - - - - - - - - -

{{ $t('datasource.base_info') }}

- - - - - - - - - - - - - -
-

{{ $t('datasource.req_param') }}

- - - - -
- -
-
- - -

{{ $t('datasource.column_info') }}

- - - - - - - - - - - - - - - -

{{ $t('dataset.data_preview') }}

- - - - - - -
-
- -
- - - + + - - + + - - + + - - {{ - $t('datasource.oracle_sid') - }} + + {{ $t("datasource.oracle_sid") }} - - {{ $t('datasource.oracle_service_name') }} + + {{ $t("datasource.oracle_service_name") }} - + - - + + - - + +

- {{ $t('datasource.kerbers_info') }} + {{ $t("datasource.kerbers_info") }}

- - + - + v-if=" + form.type !== 'es' && + form.type !== 'api' && + form.configuration.authMethod !== 'kerberos' + " + :label="$t('datasource.user_name')" + > + - - - - - - - - - - - - - - - - - + v-if=" + form.type !== 'es' && + form.type !== 'api' && + form.configuration.authMethod !== 'kerberos' + " + :label="$t('datasource.password')" + > + - {{ - $t('datasource.get_schema') - }} + v-if="form.type === 'es'" + :label="$t('datasource.user_name')" + > + + + + + + + + + + + + + + + + + {{ $t("datasource.get_schema") }} - - + v-if=" + form.type == 'oracle' || + form.type == 'sqlServer' || + form.type == 'pg' || + form.type == 'redshift' || + form.type == 'db2' + " + :label="$t('datasource.schema')" + > + + - - - + + + - - - + + + - + - - + + - - + + - - + + - - + + - + + + + + + + + + +
+ {{ $t("datasource.base_info") }} +
+ + + + + + + + + + + + +
+
+ {{ $t("datasource.req_param") }} +
+ + + + +
+
+
+ + +
+ {{ $t("datasource.column_info") }} +
+
+ + + + + + + + + + + + +
+ +
+ {{ $t("dataset.data_preview") }} +
+ + + + + + +
+
+
+ {{ $t("commons.cancel") }} + {{ $t("fu.steps.next") }} + + {{ + $t("fu.steps.prev") + }} + {{ + $t("commons.save") + }} +
+
+ \ No newline at end of file diff --git a/frontend/src/views/system/user/userEditer.vue b/frontend/src/views/system/user/userEditer.vue index d416887bb0..8dfe9bed70 100644 --- a/frontend/src/views/system/user/userEditer.vue +++ b/frontend/src/views/system/user/userEditer.vue @@ -502,11 +502,11 @@ export default { font-weight: 400; line-height: 22px; text-align: left; - color: #1f2329; } .pwd { margin: 0 8px; + color: #1f2329; } .btn-text { From 1272119cbb5d10351ade61b7d9280ed895db93dc Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Fri, 22 Jul 2022 15:00:13 +0800 Subject: [PATCH 04/19] =?UTF-8?q?perf(=E7=B3=BB=E7=BB=9F=E7=AE=A1=E7=90=86?= =?UTF-8?q?):=20=E5=AE=9A=E6=97=B6=E6=8A=A5=E5=91=8A=E5=8F=91=E9=80=81?= =?UTF-8?q?=E8=A7=86=E5=9B=BE=E6=95=B0=E6=8D=AE=E9=A1=B5=E9=9D=A2=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/DeViewSelect/index.bak.vue | 238 ++++++++++++++++++ .../src/components/DeViewSelect/index.vue | 138 +++++----- .../chart/components/normal/LabelNormal.vue | 1 + 3 files changed, 307 insertions(+), 70 deletions(-) create mode 100644 frontend/src/components/DeViewSelect/index.bak.vue diff --git a/frontend/src/components/DeViewSelect/index.bak.vue b/frontend/src/components/DeViewSelect/index.bak.vue new file mode 100644 index 0000000000..40160056f6 --- /dev/null +++ b/frontend/src/components/DeViewSelect/index.bak.vue @@ -0,0 +1,238 @@ + + + + + diff --git a/frontend/src/components/DeViewSelect/index.vue b/frontend/src/components/DeViewSelect/index.vue index 40160056f6..909e17c2f2 100644 --- a/frontend/src/components/DeViewSelect/index.vue +++ b/frontend/src/components/DeViewSelect/index.vue @@ -3,7 +3,6 @@ - - -
- -
+ -
- - -
+ + +
+ +
+ + +
+ + + From 32aad19c60bfc667c01fcebd62f540ac7b956291 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Sun, 24 Jul 2022 23:00:36 +0800 Subject: [PATCH 13/19] =?UTF-8?q?feat(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20?= =?UTF-8?q?=E4=BB=AA=E8=A1=A8=E6=9D=BF=E6=96=B0=E5=A2=9E=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/db/migration/V38__1.13.sql | 3 + .../canvas/components/Editor/ContextMenu.vue | 7 +- .../canvas/components/Editor/EditBar.vue | 6 +- .../canvas/components/Editor/SettingMenu.vue | 5 +- .../components/widget/DeWidget/DeButton.vue | 1 + .../widget/DeWidget/SearchButton.vue | 29 +++++ .../serviceImpl/ButtonSureServiceImpl.js | 16 +-- frontend/src/styles/index.scss | 17 +++ frontend/src/views/panel/edit/index.vue | 72 ++++++++++++- .../src/views/panel/filter/ButtonDialog.vue | 100 ++++++++++++++++++ frontend/src/views/panel/filter/index.vue | 6 +- 11 files changed, 249 insertions(+), 13 deletions(-) create mode 100644 frontend/src/components/widget/DeWidget/SearchButton.vue create mode 100644 frontend/src/views/panel/filter/ButtonDialog.vue diff --git a/backend/src/main/resources/db/migration/V38__1.13.sql b/backend/src/main/resources/db/migration/V38__1.13.sql index 6161690bbf..0817d25c1d 100644 --- a/backend/src/main/resources/db/migration/V38__1.13.sql +++ b/backend/src/main/resources/db/migration/V38__1.13.sql @@ -75,3 +75,6 @@ INSERT INTO `system_parameter` (`param_key`, `param_value`, `type`, `sort`) VALU ALTER TABLE `panel_group` ADD COLUMN `update_by` varchar(255) NULL COMMENT '更新人' AFTER `status`, ADD COLUMN `update_time` bigint(13) NULL COMMENT '更新时间' AFTER `update_by`; + +ALTER TABLE `sys_task_email` +ADD COLUMN `view_ids` varchar(255) NULL COMMENT '视图ID结婚' AFTER `task_id`; diff --git a/frontend/src/components/canvas/components/Editor/ContextMenu.vue b/frontend/src/components/canvas/components/Editor/ContextMenu.vue index 04baa0f20d..79496f3a34 100644 --- a/frontend/src/components/canvas/components/Editor/ContextMenu.vue +++ b/frontend/src/components/canvas/components/Editor/ContextMenu.vue @@ -30,7 +30,8 @@ export default { copyData: null, editFilter: [ 'view', - 'custom' + 'custom', + 'custom-button' ] } }, @@ -56,6 +57,10 @@ export default { bus.$emit('component-dialog-edit') } + if (this.curComponent.type === 'custom-button') { + bus.$emit('button-dialog-edit') + } + // 编辑样式组件 if (this.curComponent.type === 'v-text' || this.curComponent.type === 'de-rich-text' || this.curComponent.type === 'rect-shape') { diff --git a/frontend/src/components/canvas/components/Editor/EditBar.vue b/frontend/src/components/canvas/components/Editor/EditBar.vue index 83ce3b216c..2ac224e3e1 100644 --- a/frontend/src/components/canvas/components/Editor/EditBar.vue +++ b/frontend/src/components/canvas/components/Editor/EditBar.vue @@ -82,7 +82,8 @@ export default { linkageActiveStatus: false, editFilter: [ 'view', - 'custom' + 'custom', + 'custom-button' ], timer: null } @@ -216,6 +217,9 @@ export default { edit() { if (this.curComponent.type === 'custom') { bus.$emit('component-dialog-edit', 'update') + } + else if (this.curComponent.type === 'custom-button') { + bus.$emit('button-dialog-edit') } else if (this.curComponent.type === 'v-text' || this.curComponent.type === 'de-rich-text' || this.curComponent.type === 'rect-shape') { bus.$emit('component-dialog-style') } else { bus.$emit('change_panel_right_draw', true) } diff --git a/frontend/src/components/canvas/components/Editor/SettingMenu.vue b/frontend/src/components/canvas/components/Editor/SettingMenu.vue index 2fb4132f52..bb1dfb377c 100644 --- a/frontend/src/components/canvas/components/Editor/SettingMenu.vue +++ b/frontend/src/components/canvas/components/Editor/SettingMenu.vue @@ -60,7 +60,8 @@ export default { hyperlinksSetVisible: false, editFilter: [ 'view', - 'custom' + 'custom', + 'custom-button' ] } }, @@ -72,6 +73,8 @@ export default { edit() { if (this.curComponent.type === 'custom') { bus.$emit('component-dialog-edit', 'update') + }else if (this.curComponent.type === 'custom-button') { + bus.$emit('button-dialog-edit') } else if (this.curComponent.type === 'v-text' || this.curComponent.type === 'de-rich-text' || this.curComponent.type === 'rect-shape') { bus.$emit('component-dialog-style') } else { bus.$emit('change_panel_right_draw', true) } diff --git a/frontend/src/components/widget/DeWidget/DeButton.vue b/frontend/src/components/widget/DeWidget/DeButton.vue index 0ff872c515..e9a309cae9 100644 --- a/frontend/src/components/widget/DeWidget/DeButton.vue +++ b/frontend/src/components/widget/DeWidget/DeButton.vue @@ -4,6 +4,7 @@ v-if="options!== null && options.attrs!==null" :type="options.attrs.type" :round="options.attrs.round" + :plain="options.attrs.plain" :size="size" > {{ options.value }} diff --git a/frontend/src/components/widget/DeWidget/SearchButton.vue b/frontend/src/components/widget/DeWidget/SearchButton.vue new file mode 100644 index 0000000000..f003d7d679 --- /dev/null +++ b/frontend/src/components/widget/DeWidget/SearchButton.vue @@ -0,0 +1,29 @@ + + + + + \ No newline at end of file diff --git a/frontend/src/components/widget/serviceImpl/ButtonSureServiceImpl.js b/frontend/src/components/widget/serviceImpl/ButtonSureServiceImpl.js index 5b0f627444..e107121d86 100644 --- a/frontend/src/components/widget/serviceImpl/ButtonSureServiceImpl.js +++ b/frontend/src/components/widget/serviceImpl/ButtonSureServiceImpl.js @@ -2,15 +2,15 @@ import { WidgetService } from '../service/WidgetService' const leftPanel = { icon: 'iconfont icon-chaxunsousuo', - label: '确定', + label: '查询按钮', defaultClass: 'time-filter' } const drawPanel = { - type: 'custom', + type: 'custom-button', style: { - width: 300, - height: 47, + width: 150, + height: 60, fontSize: 14, fontWeight: 500, lineHeight: '', @@ -21,9 +21,12 @@ const drawPanel = { options: { attrs: { type: 'primary', - round: true + round: false, + plain: true, + customRange: false, + filterIds: [] }, - value: '测试按钮' + value: '查询' }, component: 'de-button', miniSizex: 1, @@ -35,6 +38,7 @@ class ButtonSureServiceImpl extends WidgetService { Object.assign(options, { name: 'buttonSureWidget' }) super(options) this.filterDialog = false + this.buttonDialog = true this.showSwitch = false } diff --git a/frontend/src/styles/index.scss b/frontend/src/styles/index.scss index 45f0623dee..a75619b95b 100644 --- a/frontend/src/styles/index.scss +++ b/frontend/src/styles/index.scss @@ -110,6 +110,23 @@ div:focus { } } +.de-button-dialog { + min-width: 250px !important; + width: 30% !important; + + .el-dialog__header { + padding: 10px 20px !important; + + .el-dialog__headerbtn { + top: 15px !important; + } + } + + .el-dialog__body { + padding: 1px 15px !important; + } +} + .de-style-dialog { width: 600px !important; diff --git a/frontend/src/views/panel/edit/index.vue b/frontend/src/views/panel/edit/index.vue index 8d7b66e6d9..9ac46d8471 100644 --- a/frontend/src/views/panel/edit/index.vue +++ b/frontend/src/views/panel/edit/index.vue @@ -238,6 +238,25 @@ + + + + + + +
+ + + + + + + + + 默认关联全部过滤组件 + + + + + + + + + + + 确定 + 取消 + + +
+ + + \ No newline at end of file diff --git a/frontend/src/views/panel/filter/index.vue b/frontend/src/views/panel/filter/index.vue index 54cc505566..c10dbf2962 100644 --- a/frontend/src/views/panel/filter/index.vue +++ b/frontend/src/views/panel/filter/index.vue @@ -59,10 +59,10 @@ export default { 'numberSelectWidget', 'numberSelectGridWidget', 'numberRangeWidget' + ], + '按钮': [ + 'buttonSureWidget' ] - // '按钮': [ - // 'buttonSureWidget' - // ] } } }, From ef41583187d989915bd2135c59f2c25eb4aa6202 Mon Sep 17 00:00:00 2001 From: junjun Date: Mon, 25 Jul 2022 10:07:33 +0800 Subject: [PATCH 14/19] =?UTF-8?q?feat(=E8=A7=86=E5=9B=BE):=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=A0=87=E9=A2=98=E5=A4=87=E6=B3=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chart/components/ChartComponentG2.vue | 20 ++++- .../chart/components/ChartComponentS2.vue | 20 ++++- .../component-style/TitleSelectorAntV.vue | 84 +++++++++++++++++-- .../component-style/dialog/RemarkEditor.vue | 72 ++++++++++++++++ .../chart/components/normal/LabelNormal.vue | 29 +++++-- .../components/normal/LabelNormalText.vue | 28 +++++-- 6 files changed, 224 insertions(+), 29 deletions(-) create mode 100644 frontend/src/views/chart/components/component-style/dialog/RemarkEditor.vue diff --git a/frontend/src/views/chart/components/ChartComponentG2.vue b/frontend/src/views/chart/components/ChartComponentG2.vue index 1c22f98532..447faf672e 100644 --- a/frontend/src/views/chart/components/ChartComponentG2.vue +++ b/frontend/src/views/chart/components/ChartComponentG2.vue @@ -2,7 +2,10 @@
-

{{ chart.title }}

+
+

{{ chart.title }}

+ +
@@ -12,7 +15,7 @@ import { baseLiquid } from '@/views/chart/chart/liquid/liquid' import { uuid } from 'vue-uuid' import ViewTrackBar from '@/components/canvas/components/Editor/ViewTrackBar' -import { hexColorToRGBA } from '@/views/chart/chart/util' +import { getRemark, hexColorToRGBA } from '@/views/chart/chart/util' import { baseBarOptionAntV, hBaseBarOptionAntV } from '@/views/chart/chart/bar/bar_antv' import { baseAreaOptionAntV, baseLineOptionAntV } from '@/views/chart/chart/line/line_antv' import { basePieOptionAntV, basePieRoseOptionAntV } from '@/views/chart/chart/pie/pie_antv' @@ -23,10 +26,11 @@ import { baseTreemapOptionAntV } from '@/views/chart/chart/treemap/treemap_antv' import { baseRadarOptionAntV } from '@/views/chart/chart/radar/radar_antv' import { baseWaterfallOptionAntV } from '@/views/chart/chart/waterfall/waterfall' import { baseWordCloudOptionAntV } from '@/views/chart/chart/wordCloud/word_cloud' +import TitleRemark from '@/views/chart/view/TitleRemark' export default { name: 'ChartComponentG2', - components: { ViewTrackBar }, + components: { TitleRemark, ViewTrackBar }, props: { chart: { type: Object, @@ -84,7 +88,11 @@ export default { title_show: true, antVRenderStatus: false, linkageActiveParam: null, - linkageActiveHistory: false + linkageActiveHistory: false, + remarkCfg: { + show: false, + content: '' + } } }, @@ -320,6 +328,7 @@ export default { this.borderRadius = (customStyle.background.borderRadius || 0) + 'px' } } + this.initRemark() }, calcHeightRightNow() { @@ -337,6 +346,9 @@ export default { setTimeout(() => { this.calcHeightRightNow() }, 100) + }, + initRemark() { + this.remarkCfg = getRemark(this.chart) } } } diff --git a/frontend/src/views/chart/components/ChartComponentS2.vue b/frontend/src/views/chart/components/ChartComponentS2.vue index 489f6b8f20..39426a84c6 100644 --- a/frontend/src/views/chart/components/ChartComponentS2.vue +++ b/frontend/src/views/chart/components/ChartComponentS2.vue @@ -2,7 +2,10 @@
-

{{ chart.title }}

+
+

{{ chart.title }}

+ +
@@ -34,12 +37,13 @@ + + diff --git a/frontend/src/views/chart/components/normal/LabelNormal.vue b/frontend/src/views/chart/components/normal/LabelNormal.vue index aa39b60651..f1707beeac 100644 --- a/frontend/src/views/chart/components/normal/LabelNormal.vue +++ b/frontend/src/views/chart/components/normal/LabelNormal.vue @@ -1,6 +1,11 @@