diff --git a/main/package.json b/main/package.json index c302e24..3d5ed35 100644 --- a/main/package.json +++ b/main/package.json @@ -25,6 +25,7 @@ "echarts": "^5.6.0", "echarts-gl": "^2.0.9", "echarts-liquidfill": "^3.1.0", + "echarts-wordcloud": "^2.1.0", "element-plus": "^2.7.3", "file-saver": "^2.0.5", "js-base64": "^3.7.7", diff --git a/main/src/components/custom-echart-pictorial-bar/index.vue b/main/src/components/custom-echart-pictorial-bar/index.vue index 9684467..693ea50 100644 --- a/main/src/components/custom-echart-pictorial-bar/index.vue +++ b/main/src/components/custom-echart-pictorial-bar/index.vue @@ -103,7 +103,6 @@ export default { if (props.option) { Object.assign(option, cloneDeep(props.option)); } - option.series[0].data = props.chartData; setOptions(option); resize(); getInstance()?.off('click', onClick); diff --git a/main/src/components/custom-echart-pie-gauge/index.vue b/main/src/components/custom-echart-pie-gauge/index.vue new file mode 100644 index 0000000..0e1a795 --- /dev/null +++ b/main/src/components/custom-echart-pie-gauge/index.vue @@ -0,0 +1,73 @@ + + diff --git a/main/src/components/custom-echart-word-cloud/index.vue b/main/src/components/custom-echart-word-cloud/index.vue new file mode 100644 index 0000000..0be4aa6 --- /dev/null +++ b/main/src/components/custom-echart-word-cloud/index.vue @@ -0,0 +1,73 @@ + + diff --git a/main/src/components/custom-table-operate/index.vue b/main/src/components/custom-table-operate/index.vue index 3d7c4f8..152175d 100644 --- a/main/src/components/custom-table-operate/index.vue +++ b/main/src/components/custom-table-operate/index.vue @@ -40,7 +40,7 @@ const formatterIcon = (row) => { &__more { padding: 20px 5px; font-size: 20px; - color: $color-primary; + color: var(--el-color-primary); cursor: pointer; } .el-button { diff --git a/main/src/components/custom-table-tree/index.vue b/main/src/components/custom-table-tree/index.vue index b891761..e9125ec 100644 --- a/main/src/components/custom-table-tree/index.vue +++ b/main/src/components/custom-table-tree/index.vue @@ -27,7 +27,7 @@ import { reactive, ref, watch } from 'vue'; const props = defineProps({ title: { type: String, default: '' }, - shadow: { type: Boolean, default: true }, + shadow: { type: Boolean, default: false }, filter: { type: Boolean, default: false }, data: { type: Array, default: () => [] }, option: { diff --git a/main/src/components/index.js b/main/src/components/index.js index 2657a8f..db6c85e 100644 --- a/main/src/components/index.js +++ b/main/src/components/index.js @@ -15,6 +15,8 @@ import CustomEchartLineLine from './custom-echart-line-line'; import CustomEchartBubble from './custom-echart-bubble'; import CustomEchartPie3d from './custom-echart-pie-3d'; import CustomEchartWaterDroplet from './custom-echart-water-droplet'; +import CustomEchartPieGauge from './custom-echart-pie-gauge'; +import CustomEchartWordCloud from './custom-echart-word-cloud'; export { SvgIcon, @@ -34,4 +36,6 @@ export { CustomEchartBubble, CustomEchartPie3d, CustomEchartWaterDroplet, + CustomEchartPieGauge, + CustomEchartWordCloud, }; diff --git a/main/src/utils/echarts.js b/main/src/utils/echarts.js index 5a60038..589d852 100644 --- a/main/src/utils/echarts.js +++ b/main/src/utils/echarts.js @@ -1,8 +1,9 @@ import * as echarts from 'echarts/core'; -import { BarChart, LineChart, PieChart, MapChart, PictorialBarChart, RadarChart, GraphChart } from 'echarts/charts'; +import { BarChart, LineChart, PieChart, MapChart, PictorialBarChart, RadarChart, GraphChart, GaugeChart } from 'echarts/charts'; import 'echarts-gl'; import 'echarts-liquidfill'; +import 'echarts-wordcloud'; import { TitleComponent, @@ -46,6 +47,7 @@ echarts.use([ CalendarComponent, GraphicComponent, GraphChart, + GaugeChart, ]); export default echarts; diff --git a/main/yarn.lock b/main/yarn.lock index 5053bde..c9b6302 100644 --- a/main/yarn.lock +++ b/main/yarn.lock @@ -2195,6 +2195,11 @@ echarts-liquidfill@^3.1.0: resolved "https://registry.npmmirror.com/echarts-liquidfill/-/echarts-liquidfill-3.1.0.tgz#4ec70f3697382d0404c95fff9f3e8dd85c8377da" integrity sha512-5Dlqs/jTsdTUAsd+K5LPLLTgrbbNORUSBQyk8PSy1Mg2zgHDWm83FmvA4s0ooNepCJojFYRITTQ4GU1UUSKYLw== +echarts-wordcloud@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/echarts-wordcloud/-/echarts-wordcloud-2.1.0.tgz#c3de6fe267044f6c3343e4ff0e05eedb01c05096" + integrity sha512-Kt1JmbcROgb+3IMI48KZECK2AP5lG6bSsOEs+AsuwaWJxQom31RTNd6NFYI01E/YaI1PFZeueaupjlmzSQasjQ== + echarts@^5.6.0: version "5.6.0" resolved "https://registry.npmmirror.com/echarts/-/echarts-5.6.0.tgz#2377874dca9fb50f104051c3553544752da3c9d6" diff --git a/sub-government-affairs-service/package.json b/sub-government-affairs-service/package.json index f8c45b6..9206f9e 100644 --- a/sub-government-affairs-service/package.json +++ b/sub-government-affairs-service/package.json @@ -30,6 +30,7 @@ "pinia": "^2.1.7", "pinia-plugin-persistedstate": "^3.2.1", "screenfull": "^6.0.2", + "splitpanes": "^4.0.3", "vue": "^3.3.11", "vue-router": "^4.2.5" }, diff --git a/sub-government-affairs-service/src/main.js b/sub-government-affairs-service/src/main.js index e4318cb..67a5008 100644 --- a/sub-government-affairs-service/src/main.js +++ b/sub-government-affairs-service/src/main.js @@ -19,10 +19,12 @@ import { registerDirective } from './directives'; import { registerGlobalComponents } from './plugins/globalComponents'; import { registerElIcons } from './plugins/icon'; import { registerMicroApps } from './plugins/micro'; +import { registerSplitpanes } from './plugins/splitpanes'; const app = createApp(App); app.use(pinia).use(router).use(ElementPlus).use(Avue); registerGlobalComponents(app); registerElIcons(app); +registerSplitpanes(app); registerDirective(app); registerMicroApps(app); diff --git a/sub-government-affairs-service/src/plugins/splitpanes.js b/sub-government-affairs-service/src/plugins/splitpanes.js new file mode 100644 index 0000000..dca3790 --- /dev/null +++ b/sub-government-affairs-service/src/plugins/splitpanes.js @@ -0,0 +1,7 @@ +import { Splitpanes, Pane } from 'splitpanes'; +import 'splitpanes/dist/splitpanes.css'; + +export const registerSplitpanes = (app) => { + app.component('Splitpanes', Splitpanes); + app.component('Pane', Pane); +}; diff --git a/sub-government-affairs-service/src/router/modules/trace.js b/sub-government-affairs-service/src/router/modules/trace.js index f745b80..df876cb 100644 --- a/sub-government-affairs-service/src/router/modules/trace.js +++ b/sub-government-affairs-service/src/router/modules/trace.js @@ -9,12 +9,6 @@ export default [ redirect: '/sub-government-affairs-service/trace-home', meta: { title: '溯源管理', icon: 'Document' }, children: [ - { - path: '/sub-government-affairs-service/trace-index', - name: 'trace-index', - component: () => import('@/views/trace/statistic/index.vue'), - meta: { title: '溯源首页', icon: 'Document' }, - }, { path: '/sub-government-affairs-service/record', name: 'record', @@ -78,6 +72,12 @@ export default [ }, ], }, + { + path: '/sub-government-affairs-service/trace-statistic', + name: 'trace-statistic', + component: () => import('@/views/trace/statistic/index.vue'), + meta: { title: '溯源统计', icon: 'Document' }, + }, ], }, ]; diff --git a/sub-government-affairs-service/src/styles/style.scss b/sub-government-affairs-service/src/styles/style.scss index 5ee6df3..07d6b97 100644 --- a/sub-government-affairs-service/src/styles/style.scss +++ b/sub-government-affairs-service/src/styles/style.scss @@ -15,3 +15,7 @@ height: auto; max-height: calc(100vh - 130px); } + +.splitpanes.default-theme .splitpanes__pane { + background-color: #fff !important; +} diff --git a/sub-government-affairs-service/src/utils/index.js b/sub-government-affairs-service/src/utils/index.js index 8563816..fb825cc 100644 --- a/sub-government-affairs-service/src/utils/index.js +++ b/sub-government-affairs-service/src/utils/index.js @@ -3,7 +3,7 @@ * @Author: zenghua.wang * @Date: 2022-02-23 21:12:37 * @LastEditors: zenghua.wang - * @LastEditTime: 2025-02-11 17:18:36 + * @LastEditTime: 2025-03-24 10:05:36 */ import lodash from 'lodash'; import dayjs from 'dayjs'; @@ -123,6 +123,26 @@ export const setDicLabel = (dicData, value) => { } return label; }; +/** + * @Title 将tree数据结构打平 + * @param {*} tree + * @returns + */ +export const flattenTree = (tree) => { + const result = []; + function traverse(node) { + result.push(node); + if (node.children && node.children.length > 0) { + node.children.forEach((child) => traverse(child)); + } + } + if (Array.isArray(tree)) { + tree.forEach((item) => traverse(item)); + } else { + traverse(tree); + } + return result; +}; /** * @Title 数组交集 * @param {*} arr1 diff --git a/sub-government-affairs-service/src/views/dict/component/landCassification/index-bak.vue b/sub-government-affairs-service/src/views/dict/component/landCassification/index-bak.vue new file mode 100644 index 0000000..a788ddc --- /dev/null +++ b/sub-government-affairs-service/src/views/dict/component/landCassification/index-bak.vue @@ -0,0 +1,421 @@ + + + + diff --git a/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue b/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue index 54b1255..37fd670 100644 --- a/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue +++ b/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue @@ -1,107 +1,96 @@ - - diff --git a/sub-government-affairs-service/src/views/dict/component/region/index.vue b/sub-government-affairs-service/src/views/dict/component/region/index.vue index bf5c372..aabebdc 100644 --- a/sub-government-affairs-service/src/views/dict/component/region/index.vue +++ b/sub-government-affairs-service/src/views/dict/component/region/index.vue @@ -1,53 +1,49 @@ - - diff --git a/sub-government-affairs-service/src/views/home/index.vue b/sub-government-affairs-service/src/views/home/index.vue index 5dfcbfd..78ebb27 100644 --- a/sub-government-affairs-service/src/views/home/index.vue +++ b/sub-government-affairs-service/src/views/home/index.vue @@ -74,7 +74,7 @@ const state = reactive({ areaOption: { // color: ['#fed500'], title: { - text: '土地分别数据统计', + text: '土地分布数据统计', textStyle: { color: '#333', }, diff --git a/sub-government-affairs-service/src/views/landManage/component/landsManage/index.vue b/sub-government-affairs-service/src/views/landManage/component/landsManage/index.vue index 7d854a7..02cfdce 100644 --- a/sub-government-affairs-service/src/views/landManage/component/landsManage/index.vue +++ b/sub-government-affairs-service/src/views/landManage/component/landsManage/index.vue @@ -30,14 +30,14 @@ 导出 导入 -