diff --git a/package-lock.json b/package-lock.json index 66382a4..53a4f62 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "@vueuse/core": "^10.4.1", "axios": "^1.5.0", "echarts": "^5.4.3", + "echarts-gl": "^2.1.0", "lunar-javascript": "^1.7.3", "vue": "^3.3.4", "vue-router": "^4.5.1" @@ -968,6 +969,11 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/claygl": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/claygl/-/claygl-1.3.0.tgz", + "integrity": "sha512-+gGtJjT6SSHD2l2yC3MCubW/sCV40tZuSs5opdtn79vFSGUgp/lH139RNEQ6Jy078/L0aV8odCw8RSrUcMfLaQ==" + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -1027,6 +1033,19 @@ "zrender": "5.6.1" } }, + "node_modules/echarts-gl": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/echarts-gl/-/echarts-gl-2.1.0.tgz", + "integrity": "sha512-GxzAPTYJyOANbu7InkdGV7QLLpVyuQWNvN1yyEEIiqgM11ilAO2OkvPNgRdf854R9ZPt/C1HAgjO8Udrj61lOQ==", + "license": "MIT", + "dependencies": { + "claygl": "^1.2.1", + "zrender": "^5.1.1 || ^6.0.0" + }, + "peerDependencies": { + "echarts": "^5.1.2 || ^6.0.0" + } + }, "node_modules/entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", @@ -2104,6 +2123,11 @@ "readdirp": "^4.0.1" } }, + "claygl": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/claygl/-/claygl-1.3.0.tgz", + "integrity": "sha512-+gGtJjT6SSHD2l2yC3MCubW/sCV40tZuSs5opdtn79vFSGUgp/lH139RNEQ6Jy078/L0aV8odCw8RSrUcMfLaQ==" + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -2148,6 +2172,15 @@ "zrender": "5.6.1" } }, + "echarts-gl": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/echarts-gl/-/echarts-gl-2.1.0.tgz", + "integrity": "sha512-GxzAPTYJyOANbu7InkdGV7QLLpVyuQWNvN1yyEEIiqgM11ilAO2OkvPNgRdf854R9ZPt/C1HAgjO8Udrj61lOQ==", + "requires": { + "claygl": "^1.2.1", + "zrender": "^5.1.1 || ^6.0.0" + } + }, "entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", diff --git a/package.json b/package.json index ad550ab..260ce0a 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "@vueuse/core": "^10.4.1", "axios": "^1.5.0", "echarts": "^5.4.3", + "echarts-gl": "^2.1.0", "lunar-javascript": "^1.7.3", "vue": "^3.3.4", "vue-router": "^4.5.1" diff --git a/public/images/下部.png b/public/images/下部.png new file mode 100644 index 0000000..0913e08 Binary files /dev/null and b/public/images/下部.png differ diff --git a/public/images/世界地图背景.png b/public/images/世界地图背景.png new file mode 100644 index 0000000..e389028 Binary files /dev/null and b/public/images/世界地图背景.png differ diff --git a/public/images/供应商数量.png b/public/images/供应商数量.png new file mode 100644 index 0000000..9c2c57e Binary files /dev/null and b/public/images/供应商数量.png differ diff --git a/public/images/剩余车位.png b/public/images/剩余车位.png new file mode 100644 index 0000000..748236f Binary files /dev/null and b/public/images/剩余车位.png differ diff --git a/public/images/右边bg.png b/public/images/右边bg.png new file mode 100644 index 0000000..0a571d5 Binary files /dev/null and b/public/images/右边bg.png differ diff --git a/public/images/右部.png b/public/images/右部.png new file mode 100644 index 0000000..a72ae14 Binary files /dev/null and b/public/images/右部.png differ diff --git a/public/images/实时信息背景.png b/public/images/实时信息背景.png new file mode 100644 index 0000000..1f13f86 Binary files /dev/null and b/public/images/实时信息背景.png differ diff --git a/public/images/小标题背景.png b/public/images/小标题背景.png new file mode 100644 index 0000000..c341ec4 Binary files /dev/null and b/public/images/小标题背景.png differ diff --git a/public/images/左边bg.png b/public/images/左边bg.png new file mode 100644 index 0000000..cc9328f Binary files /dev/null and b/public/images/左边bg.png differ diff --git a/public/images/左部.png b/public/images/左部.png new file mode 100644 index 0000000..3254969 Binary files /dev/null and b/public/images/左部.png differ diff --git a/public/images/底座.png b/public/images/底座.png new file mode 100644 index 0000000..0709625 Binary files /dev/null and b/public/images/底座.png differ diff --git a/public/images/数据底板.png b/public/images/数据底板.png new file mode 100644 index 0000000..0394695 Binary files /dev/null and b/public/images/数据底板.png differ diff --git a/public/images/日期指标.png b/public/images/日期指标.png new file mode 100644 index 0000000..abfdfc5 Binary files /dev/null and b/public/images/日期指标.png differ diff --git a/public/images/日期指标选中.png b/public/images/日期指标选中.png new file mode 100644 index 0000000..9a2a6c8 Binary files /dev/null and b/public/images/日期指标选中.png differ diff --git a/public/images/标题.png b/public/images/标题.png new file mode 100644 index 0000000..935fbc1 Binary files /dev/null and b/public/images/标题.png differ diff --git a/public/images/标题背景.png b/public/images/标题背景.png new file mode 100644 index 0000000..a910f5f Binary files /dev/null and b/public/images/标题背景.png differ diff --git a/public/images/牦牛.png b/public/images/牦牛.png new file mode 100644 index 0000000..b7ef15a Binary files /dev/null and b/public/images/牦牛.png differ diff --git a/public/images/进场车辆.png b/public/images/进场车辆.png new file mode 100644 index 0000000..615c80f Binary files /dev/null and b/public/images/进场车辆.png differ diff --git a/src/App.vue b/src/App.vue index c58a2c2..6fe5ec7 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,20 +1,9 @@ \ No newline at end of file + diff --git a/src/components/ComprehensiveSalesStats.vue b/src/components/ComprehensiveSalesStats.vue index 68e8bf7..67e2b92 100644 --- a/src/components/ComprehensiveSalesStats.vue +++ b/src/components/ComprehensiveSalesStats.vue @@ -1,25 +1,35 @@ @@ -27,195 +37,120 @@ @@ -224,42 +159,47 @@ onUnmounted(() => { display: flex; flex-direction: column; height: 100%; + min-height: 0; } .tab-container { display: flex; - margin-bottom: 12px; - background: rgba(26, 31, 46, 0.5); - border-radius: 6px; - padding: 2px; + gap: 8px; + margin-bottom: 8px; + flex-shrink: 0; } .tab-item { flex: 1; - text-align: center; - padding: 6px 8px; + height: 32px; + padding: 0 6px; + border: 1px solid rgba(45, 189, 255, 0.35); + background: rgba(8, 36, 72, 0.75); + color: #d8ecff; + font-family: 'Microsoft YaHei', sans-serif; font-size: 13px; - color: #a0a8b8; + font-weight: 400; cursor: pointer; - border-radius: 4px; - transition: all 0.3s ease; - user-select: none; + transition: all 0.25s ease; } .tab-item:hover { - color: #409EFF; - background: rgba(64, 158, 255, 0.1); + border-color: rgba(255, 200, 100, 0.55); + color: #fff0c8; } .tab-item.active { - color: #ffffff; - background: #409EFF; - box-shadow: 0 2px 8px rgba(64, 158, 255, 0.3); + border-color: rgba(255, 190, 80, 0.85); + background: linear-gradient(180deg, rgba(120, 72, 18, 0.95) 0%, rgba(78, 46, 10, 0.95) 100%); + color: #fff0c8; + font-weight: 700; + box-shadow: 0 0 12px rgba(255, 170, 60, 0.25); } .chart-container { + position: relative; flex: 1; - min-height: 140px; + min-height: 200px; } .chart { @@ -267,5 +207,42 @@ onUnmounted(() => { height: 100%; } +.legend-panel { + display: flex; + flex-wrap: wrap; + gap: 8px 18px; + justify-content: center; + padding: 6px 4px 2px; + flex-shrink: 0; +} - \ No newline at end of file +.legend-item { + display: flex; + align-items: center; + gap: 5px; + font-family: 'Microsoft YaHei', sans-serif; + font-size: 14px; + color: #d8ecff; + white-space: nowrap; +} + +.legend-dot { + width: 12px; + height: 12px; + border-radius: 2px; + flex-shrink: 0; +} + +.legend-name { + color: #ffffff; +} + +.legend-percent { + color: #8ecfff; + font-weight: 700; +} + +.legend-value { + color: #ffffff; +} + diff --git a/src/components/DateIndicatorTabs.vue b/src/components/DateIndicatorTabs.vue new file mode 100644 index 0000000..3d3981c --- /dev/null +++ b/src/components/DateIndicatorTabs.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/src/components/ExchangeMonitor.vue b/src/components/ExchangeMonitor.vue index 2a92c1e..508ede8 100644 --- a/src/components/ExchangeMonitor.vue +++ b/src/components/ExchangeMonitor.vue @@ -1,11 +1,22 @@