From 8a7bf94912d6889070399da43205fc1c8cd3c96a Mon Sep 17 00:00:00 2001 From: songjie Date: Fri, 30 Jan 2026 13:54:40 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=AD=97=E4=BD=93=E6=94=BE=E5=A4=A7?= =?UTF-8?q?=EF=BC=9B=E5=AE=B9=E5=99=A8=E6=94=B9=E4=B8=BA=E5=B7=A6=E5=8F=B3?= =?UTF-8?q?=E7=BB=93=E6=9E=84=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/PlatformData/UserOverview.vue | 64 +++++++++++++++++++++++++-------- 1 file changed, 49 insertions(+), 15 deletions(-) diff --git a/src/views/PlatformData/UserOverview.vue b/src/views/PlatformData/UserOverview.vue index 27f3a76..5e41662 100644 --- a/src/views/PlatformData/UserOverview.vue +++ b/src/views/PlatformData/UserOverview.vue @@ -36,31 +36,35 @@
-
+
会员总数
-
{{ overviewData.member }}
-
-
- {{ getGrowthText(overviewData.member_growth) }} +
+
{{ overviewData.member }}
+
+
+ {{ getGrowthText(overviewData.member_growth) }} +
-
+
非会员总数
-
{{ overviewData.normal }}
-
-
- {{ getGrowthText(overviewData.normal_growth) }} -
+
+
{{ overviewData.normal }}
+
+
+ {{ getGrowthText(overviewData.normal_growth) }} +
+
@@ -622,14 +626,28 @@ onMounted(() => { border-radius: 12px; padding: 20px; display: flex; - flex-direction: column; - justify-content: flex-start; /* 改为从顶部开始布局 */ + flex-direction: row; + justify-content: space-between; + align-items: center; color: #fff; position: relative; /* 确保绝对定位相对于卡片 */ } +.left-part { + display: flex; + align-items: center; + align-self: flex-start; /* 标题垂直居上 */ +} + +.right-part { + display: flex; + flex-direction: column; + align-items: center; /* 改为水平居中 */ + justify-content: center; +} + .card-title { - font-size: 24px; /* 字体放大 */ + font-size: 34px; /* 字体放大 */ font-weight: bold; /* 加粗 */ display: flex; align-items: center; @@ -637,6 +655,12 @@ onMounted(() => { margin-bottom: 20px; /* 增加底部间距 */ width: 100%; /* 占满宽度 */ } + +.small-card .card-title { + width: auto; + margin-bottom: 0; +} + .card-value { font-size: 64px; font-weight: bold; @@ -652,10 +676,16 @@ onMounted(() => { gap: 10px; /* 数字和百分比之间的间距 */ } .card-value-small { - font-size: 48px; + font-size: 64px; font-weight: bold; margin-left: auto; } + +.small-card .card-value-small { + margin-left: 0; + line-height: 1.2; +} + .top-row { display: flex; align-items: center; @@ -666,6 +696,10 @@ onMounted(() => { justify-content: flex-end; margin-top: 10px; } + +.small-card .card-tag-wrapper { + margin-top: 8px; +} .card-tag { background-color: #fff; padding: 8px 16px; /* 增加高度 */ From 623fdc1938bb70d7cd186fee69ba862ed3b61a4a Mon Sep 17 00:00:00 2001 From: songjie Date: Fri, 30 Jan 2026 14:03:03 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=8F=B3=E4=BE=A7=E5=AE=B9=E5=99=A8?= =?UTF-8?q?=E5=B7=A6=E7=A7=BB=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/PlatformData/UserOverview.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/views/PlatformData/UserOverview.vue b/src/views/PlatformData/UserOverview.vue index 5e41662..b91191f 100644 --- a/src/views/PlatformData/UserOverview.vue +++ b/src/views/PlatformData/UserOverview.vue @@ -644,6 +644,7 @@ onMounted(() => { flex-direction: column; align-items: center; /* 改为水平居中 */ justify-content: center; + margin-right: 150px; /* 右边容器向左移 */ } .card-title { From 9f905ba3419a1f1df5831d65e3391547e1420b7e Mon Sep 17 00:00:00 2001 From: songjie Date: Fri, 30 Jan 2026 14:31:24 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=92=8C=E9=9D=9E?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=8A=A0=E9=BB=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/PlatformData/UserOverview.vue | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/views/PlatformData/UserOverview.vue b/src/views/PlatformData/UserOverview.vue index b91191f..de858b1 100644 --- a/src/views/PlatformData/UserOverview.vue +++ b/src/views/PlatformData/UserOverview.vue @@ -121,6 +121,7 @@ @@ -828,6 +829,7 @@ onMounted(() => { .text-red { color: #ff4d4f; font-weight: bold; } .text-green { color: #52c41a; font-weight: bold; } +.text-black-bold { color: #333; font-weight: bold; } .sub-item-text { font-size: 12px; From 0fa2236ad2f5fdf9598bc3114fb1b12ba27db362 Mon Sep 17 00:00:00 2001 From: songjie Date: Fri, 30 Jan 2026 16:56:14 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=A0=8F=E5=90=B8?= =?UTF-8?q?=E9=99=84=E5=88=B0=E9=A1=B6=E9=83=A8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/PlatformData/UserLoginStats.vue | 4 ++++ src/views/PlatformData/UserOverview.vue | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/views/PlatformData/UserLoginStats.vue b/src/views/PlatformData/UserLoginStats.vue index ea15ef4..ce2d6ee 100644 --- a/src/views/PlatformData/UserLoginStats.vue +++ b/src/views/PlatformData/UserLoginStats.vue @@ -1142,6 +1142,10 @@ onMounted(() => { gap: 10px; margin-bottom: 20px; border: 1px solid #f0f0f0; + position: sticky; + top: 0; + z-index: 1000; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); } .search-label { font-weight: bold; diff --git a/src/views/PlatformData/UserOverview.vue b/src/views/PlatformData/UserOverview.vue index de858b1..bd06649 100644 --- a/src/views/PlatformData/UserOverview.vue +++ b/src/views/PlatformData/UserOverview.vue @@ -789,6 +789,10 @@ onMounted(() => { gap: 10px; margin-bottom: 20px; border: 1px solid #f0f0f0; + position: sticky; + top: 0; + z-index: 1000; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); } .search-label { font-weight: bold; From b65f73aab27c34d18857f8bf7787adad0f1cdeb2 Mon Sep 17 00:00:00 2001 From: songjie Date: Fri, 30 Jan 2026 17:40:19 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E9=A5=BC=E5=9B=BE=E5=92=8Clegend=E9=9D=A0?= =?UTF-8?q?=E8=BF=91=E4=B8=80=E7=82=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/PlatformData/UserLoginStats.vue | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/views/PlatformData/UserLoginStats.vue b/src/views/PlatformData/UserLoginStats.vue index ce2d6ee..c9242b0 100644 --- a/src/views/PlatformData/UserLoginStats.vue +++ b/src/views/PlatformData/UserLoginStats.vue @@ -875,12 +875,12 @@ const updatePieChart = (chartRef, chartInstance, data) => { const option = { color: regionColors, tooltip: { trigger: 'item' }, - legend: { orient: 'vertical', right: '0%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, + legend: { orient: 'vertical', right: '15%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, series: [ { type: 'pie', radius: '70%', - center: ['30%', '50%'], + center: ['50%', '50%'], // 改为居中显示 data: data, label: { show: false }, itemStyle: { @@ -1011,12 +1011,12 @@ const initCharts = () => { chart.setOption({ color: regionColors, tooltip: { trigger: 'item' }, - legend: { orient: 'vertical', right: '10%', top: 'center' }, + legend: { orient: 'vertical', right: '15%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, series: [ { type: 'pie', - radius: '80%', - center: ['40%', '50%'], + radius: '70%', + center: ['50%', '50%'], data: [ { value: 1048, name: '香港地区' }, { value: 735, name: '新加坡地区' }, @@ -1042,14 +1042,14 @@ const initCharts = () => { chart.setOption({ color: regionColors, tooltip: { trigger: 'item' }, - legend: { orient: 'vertical', right: '0%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, + legend: { orient: 'vertical', right: '15%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, series: [ { type: 'pie', radius: '70%', - center: ['30%', '50%'], + center: ['50%', '50%'], data: [ - { value: 1048, name: '香港地区' }, + { value: 1048, name: '香港地区' }, { value: 735, name: '新加坡地区' }, { value: 580, name: '泰国地区' }, { value: 484, name: '越南地区' }, @@ -1068,12 +1068,12 @@ const initCharts = () => { chart.setOption({ color: regionColors, tooltip: { trigger: 'item' }, - legend: { orient: 'vertical', right: '0%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, + legend: { orient: 'vertical', right: '15%', top: 'center', itemWidth: 10, itemHeight: 10, textStyle: { fontSize: 10 } }, series: [ { type: 'pie', radius: '70%', - center: ['30%', '50%'], + center: ['50%', '50%'], data: [ { value: 1048, name: '香港地区' }, { value: 735, name: '新加坡地区' },