From f2582cb0d06f9b9ed3bb111110f261b5eda75db2 Mon Sep 17 00:00:00 2001 From: limengnan <420004014@qq.com> Date: Tue, 24 Jun 2025 09:17:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=89=8D=E7=AB=AFsrc/views?= =?UTF-8?q?=EF=BC=88chart=E5=92=8Ctemplate=EF=BC=89=E7=9B=AE=E5=BD=95?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/chart/ChartView.vue | 4 +- .../editor/chart-type/ChartType.vue | 12 +- .../editor/common/ChartTemplateInfo.vue | 109 ++- .../components/editor/common/TemplateTips.vue | 76 ++ .../editor/dataset-select/DatasetSelect.vue | 7 +- .../editor/drag-item/DimensionItem.vue | 60 +- .../components/editor/drag-item/DrillItem.vue | 13 +- .../components/editor/drag-item/QuotaItem.vue | 45 +- .../drag-item/components/CustomSortEdit.vue | 16 + .../components/ValueFormatterEdit.vue | 68 +- .../components/editor/drag-item/utils.ts | 1 + .../editor/editor-senior/Senior.vue | 18 +- .../editor-senior/components/AssistLine.vue | 10 +- .../editor-senior/components/Threshold.vue | 13 +- .../components/dialog/AssistLineEdit.vue | 46 +- .../components/dialog/LineThresholdEdit.vue | 12 +- .../dialog/PictureGroupThresholdEdit.vue | 17 +- .../components/dialog/TableThresholdEdit.vue | 35 +- .../components/dialog/TextThresholdEdit.vue | 10 +- .../editor/editor-style/ChartStyle.vue | 66 +- .../editor-style/ChartStyleBatchSet.vue | 2 +- .../editor/editor-style/VQueryChartStyle.vue | 107 ++- .../components/BasicStyleSelector.vue | 234 +++++-- .../components/CustomColorStyleSelect.vue | 17 +- .../components/DualBasicStyleSelector.vue | 37 +- .../components/DualYAxisSelector.vue | 5 +- .../components/DualYAxisSelectorInner.vue | 172 +++-- .../components/FlowMapLineSelector.vue | 7 +- .../components/FlowMapPointSelector.vue | 5 +- .../components/GradientColorSelector.vue | 4 +- .../components/IndicatorNameSelector.vue | 15 +- .../components/IndicatorValueSelector.vue | 15 +- .../editor-style/components/LabelSelector.vue | 660 +++++++++++------- .../components/LegendSelector.vue | 133 +++- .../editor-style/components/MiscSelector.vue | 539 ++++++-------- .../components/MiscStyleSelector.vue | 4 +- .../components/QuadrantSelector.vue | 2 +- .../components/SummarySelector.vue | 194 +++++ .../components/SymbolicStyleSelector.vue | 4 +- .../editor-style/components/TitleSelector.vue | 11 +- .../components/TooltipSelector.vue | 270 ++++--- .../editor-style/components/XAxisSelector.vue | 141 ++-- .../editor-style/components/YAxisSelector.vue | 156 +++-- .../bullet/BulletMeasureSelector.vue | 118 ++++ .../components/bullet/BulletRangeSelector.vue | 259 +++++++ .../bullet/BulletTargetSelector.vue | 183 +++++ .../components/table/CustomAggrEdit.vue | 11 +- .../components/table/TableCellSelector.vue | 8 +- .../table/TableHeaderGroupConfig.vue | 84 ++- .../components/table/TableHeaderSelector.vue | 44 +- .../components/table/TableTotalSelector.vue | 90 ++- .../components/editor/filter/FilterTree.vue | 4 +- .../filter/auth-tree-chart/AuthTree.vue | 14 +- .../filter/auth-tree-chart/FilterFiled.vue | 12 +- .../editor/filter/auth-tree/AuthTree.vue | 1 - .../editor/filter/auth-tree/FilterFiled.vue | 16 +- .../views/chart/components/editor/index.vue | 181 +++-- .../chart/components/editor/util/chart.ts | 76 +- .../editor/util/dataVisualization.ts | 1 + .../views/chart/components/js/extremumUitl.ts | 12 +- .../views/chart/components/js/formatter.ts | 121 +++- .../components/js/g2plot_tooltip_carousel.ts | 656 +++++++++++++++++ .../components/js/panel/charts/bar/bar.ts | 121 +++- .../js/panel/charts/bar/bidirectional-bar.ts | 20 +- .../js/panel/charts/bar/bullet-graph.ts | 507 ++++++++++++++ .../js/panel/charts/bar/horizontal-bar.ts | 80 ++- .../js/panel/charts/bar/progress-bar.ts | 44 +- .../js/panel/charts/bar/range-bar.ts | 47 +- .../js/panel/charts/bar/waterfall.ts | 3 +- .../components/js/panel/charts/line/area.ts | 9 +- .../components/js/panel/charts/line/line.ts | 87 ++- .../js/panel/charts/line/stock-line.ts | 1 - .../js/panel/charts/liquid/liquid.ts | 2 +- .../js/panel/charts/map/bubble-map.ts | 3 +- .../components/js/panel/charts/map/common.ts | 26 + .../js/panel/charts/map/flow-map.ts | 114 +-- .../js/panel/charts/map/heat-map.ts | 109 +-- .../components/js/panel/charts/map/map.ts | 28 +- .../js/panel/charts/map/symbolic-map.ts | 72 +- .../js/panel/charts/others/chart-mix.ts | 35 +- .../js/panel/charts/others/circle-packing.ts | 6 +- .../js/panel/charts/others/gauge.ts | 10 +- .../js/panel/charts/others/indicator.ts | 3 +- .../js/panel/charts/others/quadrant.ts | 6 +- .../js/panel/charts/others/scatter.ts | 49 +- .../components/js/panel/charts/pie/pie.ts | 24 +- .../components/js/panel/charts/pie/rose.ts | 1 + .../js/panel/charts/table/common.ts | 1 + .../js/panel/charts/table/t-heatmap.ts | 9 +- .../js/panel/charts/table/table-info.ts | 187 +++-- .../js/panel/charts/table/table-normal.ts | 108 ++- .../js/panel/charts/table/table-pivot.ts | 405 +++++++++-- .../components/js/panel/common/common_antv.ts | 613 ++++++++++++++-- .../js/panel/common/common_table.ts | 572 ++++++++++++--- .../components/js/panel/types/impl/g2plot.ts | 6 +- .../components/js/panel/types/impl/l7.ts | 4 +- .../components/js/panel/types/impl/s2.ts | 22 +- .../src/views/chart/components/js/util.ts | 151 ++-- .../views/components/ChartComponentG2Plot.vue | 261 ++++--- .../views/components/ChartComponentS2.vue | 49 +- .../views/components/ChartError.vue | 2 +- .../components/views/components/DrillPath.vue | 40 +- .../views/components/ScrollShadow.vue | 16 + .../views/chart/components/views/index.vue | 104 ++- .../template/component/DeTemplateImport.vue | 4 +- .../src/views/template/indexInject.vue | 21 + 106 files changed, 7041 insertions(+), 2204 deletions(-) create mode 100644 core/core-frontend/src/views/chart/components/editor/common/TemplateTips.vue create mode 100644 core/core-frontend/src/views/chart/components/editor/editor-style/components/SummarySelector.vue create mode 100644 core/core-frontend/src/views/chart/components/editor/editor-style/components/bullet/BulletMeasureSelector.vue create mode 100644 core/core-frontend/src/views/chart/components/editor/editor-style/components/bullet/BulletRangeSelector.vue create mode 100644 core/core-frontend/src/views/chart/components/editor/editor-style/components/bullet/BulletTargetSelector.vue create mode 100644 core/core-frontend/src/views/chart/components/js/g2plot_tooltip_carousel.ts create mode 100644 core/core-frontend/src/views/chart/components/js/panel/charts/bar/bullet-graph.ts create mode 100644 core/core-frontend/src/views/chart/components/views/components/ScrollShadow.vue create mode 100644 core/core-frontend/src/views/template/indexInject.vue diff --git a/core/core-frontend/src/views/chart/ChartView.vue b/core/core-frontend/src/views/chart/ChartView.vue index c8183af..42ceecd 100644 --- a/core/core-frontend/src/views/chart/ChartView.vue +++ b/core/core-frontend/src/views/chart/ChartView.vue @@ -29,6 +29,7 @@ const DashboardPanel = defineAsyncComponent( () => import('@/views/dashboard/DashboardPreviewShow.vue') ) const Copilot = defineAsyncComponent(() => import('@/views/copilot/index.vue')) +const TemplateManage = defineAsyncComponent(() => import('@/views/template/indexInject.vue')) const AsyncXpackComponent = defineAsyncComponent(() => import('@/components/plugin/src/index.vue')) @@ -42,7 +43,8 @@ const componentMap = { Datasource, ScreenPanel, DashboardPanel, - Copilot + Copilot, + TemplateManage } const iframeStyle = ref(null) const setStyle = debounce(() => { diff --git a/core/core-frontend/src/views/chart/components/editor/chart-type/ChartType.vue b/core/core-frontend/src/views/chart/components/editor/chart-type/ChartType.vue index 55b3c34..0c02628 100644 --- a/core/core-frontend/src/views/chart/components/editor/chart-type/ChartType.vue +++ b/core/core-frontend/src/views/chart/components/editor/chart-type/ChartType.vue @@ -127,19 +127,19 @@ const groupActiveChange = category => { .chart-light { color: #646a73 !important; :deep(.group-right) { - border-left: 1px solid @side-outline-border-color-light; + border-left: 1px solid @side-outline-border-color-light!important; } :deep(.item-top) { - background-color: #f5f6f7; + background-color: #f5f6f7 !important; } :deep(.ul-custom) { color: @chart-change-font-color-light!important; } :deep(.item-bottom) { - color: @chart-change-font-color-light; + color: @chart-change-font-color-light!important; } :deep(.item-top-icon) { - color: @chart-change-font-color-light; + color: @chart-change-font-color-light!important; } } .group { @@ -250,8 +250,8 @@ const groupActiveChange = category => { } .group .group-left .ul-custom{ color: #a6a6a6 !important; -} +} .chart-light .item-top{ background-color: #1a1a1a !important; -} +} diff --git a/core/core-frontend/src/views/chart/components/editor/common/ChartTemplateInfo.vue b/core/core-frontend/src/views/chart/components/editor/common/ChartTemplateInfo.vue index 7dd2256..4222402 100644 --- a/core/core-frontend/src/views/chart/components/editor/common/ChartTemplateInfo.vue +++ b/core/core-frontend/src/views/chart/components/editor/common/ChartTemplateInfo.vue @@ -1,45 +1,98 @@ + + diff --git a/core/core-frontend/src/views/chart/components/editor/common/TemplateTips.vue b/core/core-frontend/src/views/chart/components/editor/common/TemplateTips.vue new file mode 100644 index 0000000..745cc55 --- /dev/null +++ b/core/core-frontend/src/views/chart/components/editor/common/TemplateTips.vue @@ -0,0 +1,76 @@ + + + + diff --git a/core/core-frontend/src/views/chart/components/editor/dataset-select/DatasetSelect.vue b/core/core-frontend/src/views/chart/components/editor/dataset-select/DatasetSelect.vue index e6d62e0..dee7b51 100644 --- a/core/core-frontend/src/views/chart/components/editor/dataset-select/DatasetSelect.vue +++ b/core/core-frontend/src/views/chart/components/editor/dataset-select/DatasetSelect.vue @@ -373,13 +373,13 @@ onMounted(() => { - + @@ -395,7 +395,7 @@ onMounted(() => { :deep(.ed-input__wrapper) { cursor: pointer; padding: 1px 11px; - + .ed-input__inner { cursor: pointer; font-size: 12px; @@ -405,7 +405,6 @@ onMounted(() => { margin-bottom: 0; } :deep(.ed-form-item.is-error .ed-input__wrapper) { - box-shadow: none !important; input { color: var(--ed-color-danger); } diff --git a/core/core-frontend/src/views/chart/components/editor/drag-item/DimensionItem.vue b/core/core-frontend/src/views/chart/components/editor/drag-item/DimensionItem.vue index 0399dc4..abee9c6 100644 --- a/core/core-frontend/src/views/chart/components/editor/drag-item/DimensionItem.vue +++ b/core/core-frontend/src/views/chart/components/editor/drag-item/DimensionItem.vue @@ -67,7 +67,7 @@ const emit = defineEmits([ const { item } = toRefs(props) const toolTip = computed(() => { - return props.themes === 'dark' ? 'ndark' : 'dark' + return props.themes || 'dark' }) const showValueFormatter = computed(() => { return ( @@ -192,17 +192,25 @@ const showCustomSort = item => { } return !item.chartId && (item.deType === 0 || item.deType === 5) } -const showSort = () => { + +const NOT_SUPPORT_SORT = ['word-cloud', 'stock-line', 'treemap', 'circle-packing'] +const showSort = computed(() => { const { type: chartType } = props.chart const { type: propType } = props - const notShowSort = ['word-cloud', 'stock-line'].includes(chartType) + const notShowSort = NOT_SUPPORT_SORT.includes(chartType) if (notShowSort || propType === 'extColor') { return false } const isChartMix = chartType.includes('chart-mix') const isDimensionType = ['dimension', 'dimensionStack', 'dimensionExt'].includes(propType) return !isChartMix || isDimensionType -} +}) +const showSortPriority = computed(() => { + if (props.chart.type.includes('chart-mix')) { + return false + } + return showSort.value +}) const toggleHide = () => { item.value.index = props.index item.value.hide = !item.value.hide @@ -212,6 +220,7 @@ const toggleHide = () => { const showHideIcon = computed(() => { return ['table-info', 'table-normal'].includes(props.chart.type) && item.value.hide }) + onMounted(() => { getItemTagType() }) @@ -226,17 +235,17 @@ onMounted(() => { :style="{ backgroundColor: tagType + '0a', border: '1px solid ' + tagType }" > - + - + - + @@ -283,7 +292,7 @@ onMounted(() => { class="item-span-style" :class="{ 'hidden-status': showHideIcon, - 'sort-status': showSort() && item.sort !== 'none' + 'sort-status': showSort && item.sort !== 'none' }" > {{ item.chartShowName ? item.chartShowName : item.name }} @@ -312,7 +321,7 @@ onMounted(() => { class="drop-style" :class="themes === 'dark' ? 'dark-dimension-quota' : ''" > - + { - + { + + + {{ t('chart.y_M_d_H') }} + + + + + { > - +