From 9c9ac8e84f54a78c1b7bb861ede201c54e05d5d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E5=A4=A7=E8=83=86?= <1101282782@qq.com> Date: Fri, 5 Sep 2025 18:53:23 +0800 Subject: [PATCH] Merge branch 'zyl' of http://xny.yj-3d.com:3000/zhouyulong/electron-4 into zyl --- .gitignore | 1 + src/renderer/components.d.ts | 1 + src/renderer/public/sdk/custom/css/index.css | 84 +- src/renderer/public/tree/newFuzzySearch.js | 14 +- src/renderer/src/api/gisApi.ts | 11 + src/renderer/src/api/tree/index.ts | 22 +- src/renderer/src/assets/styles/global.css | 1 - .../src/components/dialog/baseDialog.vue | 32 +- .../src/components/dialog/directory.vue | 22 +- .../components/bottomSide/bottomSide.vue | 208 ++-- .../components/propertyBox/addGroundText.vue | 60 + .../components/propertyBox/addStandText.vue | 60 + .../components/propertyBox/attribute.vue | 320 +++++ .../propertyBox/billboardObject.vue | 649 +++++++++++ .../propertyBox/curvelineObject.vue | 494 ++++++++ .../views/components/propertyBox/elm_html.js | 1037 +++++++++++++++++ .../components/propertyBox/fontSelect.ts | 48 + .../components/propertyBox/labelStyle.vue | 119 ++ .../components/propertyBox/polygonObject.vue | 214 ++++ .../components/propertyBox/polylineObject.vue | 501 ++++++++ .../views/components/propertyBox/richText.vue | 188 +++ .../components/propertyBox/standText.vue | 1 - .../tree/components/hooks/rightMenu.ts | 4 +- .../tree/components/hooks/rightOperate.ts | 56 +- .../components/tree/components/rightMenu.vue | 6 +- .../src/views/components/tree/hooks/tree.ts | 150 ++- .../views/components/tree/hooks/treeNode.ts | 31 +- .../src/views/components/tree/index.vue | 5 +- .../src/views/components/tree/initMapData.ts | 42 + src/renderer/src/views/home/index.vue | 112 +- 30 files changed, 4307 insertions(+), 186 deletions(-) create mode 100644 src/renderer/src/api/gisApi.ts create mode 100644 src/renderer/src/views/components/propertyBox/addGroundText.vue create mode 100644 src/renderer/src/views/components/propertyBox/addStandText.vue create mode 100644 src/renderer/src/views/components/propertyBox/attribute.vue create mode 100644 src/renderer/src/views/components/propertyBox/billboardObject.vue create mode 100644 src/renderer/src/views/components/propertyBox/curvelineObject.vue create mode 100644 src/renderer/src/views/components/propertyBox/elm_html.js create mode 100644 src/renderer/src/views/components/propertyBox/fontSelect.ts create mode 100644 src/renderer/src/views/components/propertyBox/labelStyle.vue create mode 100644 src/renderer/src/views/components/propertyBox/polygonObject.vue create mode 100644 src/renderer/src/views/components/propertyBox/polylineObject.vue create mode 100644 src/renderer/src/views/components/propertyBox/richText.vue create mode 100644 src/renderer/src/views/components/tree/initMapData.ts diff --git a/.gitignore b/.gitignore index 001a4cf..09cddb9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,6 @@ build out .history .DS_Store +.vscode .eslintcache *.log* diff --git a/src/renderer/components.d.ts b/src/renderer/components.d.ts index d28569a..940d818 100644 --- a/src/renderer/components.d.ts +++ b/src/renderer/components.d.ts @@ -27,6 +27,7 @@ declare module 'vue' { ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] ElTabPane: typeof import('element-plus/es')['ElTabPane'] ElTabs: typeof import('element-plus/es')['ElTabs'] + ElTag: typeof import('element-plus/es')['ElTag'] ElUpload: typeof import('element-plus/es')['ElUpload'] Index_b: typeof import('./src/components/SvgIcon/index_b.vue')['default'] Pagination: typeof import('./src/components/Pagination/index.vue')['default'] diff --git a/src/renderer/public/sdk/custom/css/index.css b/src/renderer/public/sdk/custom/css/index.css index 67d9e20..37d4333 100644 --- a/src/renderer/public/sdk/custom/css/index.css +++ b/src/renderer/public/sdk/custom/css/index.css @@ -65,7 +65,7 @@ position: absolute; color: var(--color-sdk-auxiliary-public); font-size: 14px; - z-index: 999999; + z-index: 99; background: linear-gradient(0deg, var(--color-sdk-bg-gradual)), rgba(0, 0, 0, 0.6); border: 1.5px solid; border-image: linear-gradient(to bottom, var(--color-sdk-gradual)) 1; @@ -76,8 +76,6 @@ } .YJ-custom-base-dialog * { - margin: 0px; - padding: 0px; box-sizing: border-box; } @@ -171,7 +169,7 @@ position: relative; } -.YJ-custom-base-dialog button:not(button[disabled="disabled"]):hover { +.YJ-custom-base-dialog button:not(button[disabled]):hover { border-color: rgba(var(--color-sdk-base-rgb), 1) !important; cursor: pointer; } @@ -3888,3 +3886,81 @@ /* 移回顶部外 */ } } + +.yj-custom-icon { + display: inline-block; + width: 22px; + height: 10px; + margin-right: 5px; +} + +.yj-custom-icon.line { + border: 1px solid rgba(255, 255, 255, 1); + height: 0px; + margin-top: 4px; +} + +.yj-custom-icon.dash-line { + border: 1px dashed rgba(255, 255, 255, 1); + height: 0px; + margin-top: 4px; +} + +.yj-custom-icon.light-line { + border: 1px solid rgba(255, 255, 255, 1); + height: 0px; + margin-top: 4px; + box-shadow: 0 0 3px #fff +} + +.yj-custom-icon.tail-line { + background: url(../../img/arrow/tail.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.mult-tail-line { + background: url(../../img/arrow/tail.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.flow-dash-line1 { + border: 1px dashed rgba(255, 255, 255, 1); + height: 0px; + margin-top: 4px; +} + +.yj-custom-icon.flow-dash-line2 { + border: 1px dashed rgba(255, 255, 255, 1); + height: 0px; + margin-top: 4px; +} + +.yj-custom-icon.pic-line1 { + background: url(../../img/arrow/1.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.pic-line2 { + background: url(../../img/arrow/2.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.pic-line3 { + background: url(../../img/arrow/3.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.pic-line4 { + background: url(../../img/arrow/4.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.pic-line5 { + background: url(../../img/arrow/5.png) 100% 100% no-repeat; + background-size: 100% 100%; +} + +.yj-custom-icon.pic-line6 { + background: url(../../img/arrow/6.png) 100% 100% no-repeat; + background-size: 100% 100%; +} diff --git a/src/renderer/public/tree/newFuzzySearch.js b/src/renderer/public/tree/newFuzzySearch.js index c72cca9..31c0885 100644 --- a/src/renderer/public/tree/newFuzzySearch.js +++ b/src/renderer/public/tree/newFuzzySearch.js @@ -23,7 +23,7 @@ window.newFuzzySearch = function( let notSearchTypeNodesIds = []; if (notSearchType.length) { allNodes.forEach((allNodeItem) => { - if (notSearchType.includes(allNodeItem.source_type)) { + if (notSearchType.includes(allNodeItem.sourceType)) { notSearchTypeNodesIds.push(allNodeItem[idKey]); } }); @@ -81,19 +81,19 @@ window.newFuzzySearch = function( hideAllNode(allNodes); nodeChildren.forEach((item) => { if (item.oldname) { - item.source_name = item.oldname; + item.sourceName = item.oldname; zTreeObj.updateNode(item); } if (contrast) { - if ((item.source_name || "").indexOf(contrast) > -1) { - console.log("source_name包含关键字"); + if ((item.sourceName || "").indexOf(contrast) > -1) { + console.log("sourceName包含关键字"); console.log(item); - console.log(item.source_name); + console.log(item.sourceName); - item.oldname = item.source_name; + item.oldname = item.sourceName; item.highlight = true; let F = new RegExp(contrast, "gi"); - item.source_name = item.oldname.replace(F, function(h) { + item.sourceName = item.oldname.replace(F, function(h) { let str = '' + h + diff --git a/src/renderer/src/api/gisApi.ts b/src/renderer/src/api/gisApi.ts new file mode 100644 index 0000000..b716ff8 --- /dev/null +++ b/src/renderer/src/api/gisApi.ts @@ -0,0 +1,11 @@ +import request from '@/axios/request' + +export const GisApi = { + // 查询活动分页 + linkFile: async (data: any) => { + return await request.post({ + url: `/fileInfo/upload`, + data + }) + } +} diff --git a/src/renderer/src/api/tree/index.ts b/src/renderer/src/api/tree/index.ts index 66eb7cf..4323f53 100644 --- a/src/renderer/src/api/tree/index.ts +++ b/src/renderer/src/api/tree/index.ts @@ -5,7 +5,6 @@ export const TreeApi = { getTreeList: async () => { return await request.get({ url: `/source/list` - // url: `/yjearth4/api/v1/source/list` }) }, // 新增其他资源 /source/addOtherSource @@ -19,9 +18,26 @@ export const TreeApi = { //新增节点 addDirectory: async (data: any) => { return await request.post({ - url: `/yjearth4/api/v1/directory/add`, + url: `/source/addOtherSource`, data - }) + }).then((res) => { + ElMessage({ + message: '添加成功', + type: 'success' + }) + }); + }, + // 更新节点信息 + updateDirectoryInfo: async (data: any) => { + return await request.post({ + url: `/source/update`, + data + }).then((res) => { + ElMessage({ + message: '操作成功', + type: 'success' + }) + }); }, //删除节点 removeDirectory: async (data: any) => { diff --git a/src/renderer/src/assets/styles/global.css b/src/renderer/src/assets/styles/global.css index 700f8fc..34d0824 100644 --- a/src/renderer/src/assets/styles/global.css +++ b/src/renderer/src/assets/styles/global.css @@ -293,7 +293,6 @@ img { background-color: rgba(0, 0, 0, 0.5) !important; border: none !important; /* 去除边框 */ box-shadow: none !important; /* 去除阴影 */ - } .el-select-dropdown__item { diff --git a/src/renderer/src/components/dialog/baseDialog.vue b/src/renderer/src/components/dialog/baseDialog.vue index 0443506..859163e 100644 --- a/src/renderer/src/components/dialog/baseDialog.vue +++ b/src/renderer/src/components/dialog/baseDialog.vue @@ -1,11 +1,9 @@