From 0af4ecb9b2047b8ba6d00e891050cf2d68b829a6 Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期六, 27 五月 2023 20:41:18 +0800 Subject: [PATCH] 代码提交 --- src/views/datamanage/metadataManage.vue | 271 +++- src/views/datamanage/uploadmanage.vue | 20 src/views/Synthesis/LeftMenu.vue | 8 src/views/userManage/templateManage.vue | 30 src/components/MapView/mapMenuPop.vue | 4 src/components/mapsdk.vue | 38 src/views/Tools/queryinfo.vue | 50 src/views/datamanage/styleManage.vue | 17 src/components/MapView/mapSpaceTop.vue | 2 src/assets/lang/zh.js | 2 src/views/Tools/LayerTree.vue | 1871 ++++++++++++++++++++++++++---------- src/views/datamanage/dictionaryManage.vue | 2 src/components/MapView/mapMenuTop.vue | 4 src/components/preview_map.vue | 667 +++++++----- src/views/datamanage/catalogueManage.vue | 45 src/assets/lang/en.js | 1 src/views/Archive/dataApplication.vue | 3 src/components/navMenu.vue | 2 18 files changed, 2,066 insertions(+), 971 deletions(-) diff --git a/src/assets/lang/en.js b/src/assets/lang/en.js index 6326636..3df1643 100644 --- a/src/assets/lang/en.js +++ b/src/assets/lang/en.js @@ -211,6 +211,7 @@ fieldLength: 'field length', FieldPrecision: 'Field Precision', rangeAssociationTable: 'range association table', + tableName: 'Table Name', remark: 'remark', creationTime: 'creation time', createPersonnel: 'create personnel', diff --git a/src/assets/lang/zh.js b/src/assets/lang/zh.js index 0b1f412..cdeb20f 100644 --- a/src/assets/lang/zh.js +++ b/src/assets/lang/zh.js @@ -211,6 +211,8 @@ fieldLength: '瀛楁闀垮害', FieldPrecision: '瀛楁绮惧害', rangeAssociationTable: '鍊煎煙鍏宠仈琛�', + + tableName: '琛ㄥ悕绉�', remark: '澶囨敞', creationTime: '鍒涘缓鏃堕棿', createPersonnel: '鍒涘缓浜哄憳', diff --git a/src/components/MapView/mapMenuPop.vue b/src/components/MapView/mapMenuPop.vue index 40471a3..a4f0255 100644 --- a/src/components/MapView/mapMenuPop.vue +++ b/src/components/MapView/mapMenuPop.vue @@ -502,7 +502,7 @@ this.dialogVisible = false this.codeForm.password = "" this.codeForm.repassword = "" - this.closeInsertDown() + // this.closeInsertDown() }, startTableMssage() { this.listdata.pageIndex = 1 @@ -944,7 +944,7 @@ this.getInsertDown(res) }) this.$bus.$on("setInsertDown1", res => { - + this.isflag = true; this.getInsertDown(res) }) this.$bus.$on("setInsertApply1", res => { diff --git a/src/components/MapView/mapMenuTop.vue b/src/components/MapView/mapMenuTop.vue index 41798fe..dd4cef5 100644 --- a/src/components/MapView/mapMenuTop.vue +++ b/src/components/MapView/mapMenuTop.vue @@ -9,7 +9,7 @@ <el-select v-model="menuTopFrom.queryLayer" :title="treeChange" - placeholder="璇烽�夋嫨..." + placeholder="璇烽�夋嫨鏁版嵁..." :popper-append-to-body="false" > <el-option @@ -48,7 +48,7 @@ <el-select @change="changeValue($event)" v-model="menuTopFrom.queryType" - placeholder="璇烽�夋嫨..." + placeholder="閫夋嫨鑼冨洿" :popper-append-to-body="false" > <el-option diff --git a/src/components/MapView/mapSpaceTop.vue b/src/components/MapView/mapSpaceTop.vue index af8b830..609c9e0 100644 --- a/src/components/MapView/mapSpaceTop.vue +++ b/src/components/MapView/mapSpaceTop.vue @@ -3,7 +3,7 @@ <el-select v-model="menuTopFrom.queryLayer" @change="menuTreeCheck" - placeholder="璇烽�夋嫨..." + placeholder="璇烽�夋嫨鏁版嵁..." filterable ref="selectTree1" > diff --git a/src/components/mapsdk.vue b/src/components/mapsdk.vue index 2677e44..c3663c4 100644 --- a/src/components/mapsdk.vue +++ b/src/components/mapsdk.vue @@ -78,13 +78,22 @@ label-width="50px" > <el-form-item label="缁忓害:"> - <el-input v-model="coordFrom.lon"></el-input> + <el-input + v-model="coordFrom.lon" + placeholder="璇疯緭鍏ョ粡搴�" + ></el-input> </el-form-item> <el-form-item label="绾害:"> - <el-input v-model="coordFrom.lat"></el-input> + <el-input + v-model="coordFrom.lat" + placeholder="璇疯緭鍏ョ淮搴�" + ></el-input> </el-form-item> <el-form-item label="楂樺害:"> - <el-input v-model="coordFrom.height"></el-input> + <el-input + v-model="coordFrom.height" + placeholder="璇疯緭鍏ラ珮搴�" + ></el-input> </el-form-item> <el-form-item> <el-button @@ -161,6 +170,7 @@ <el-input style="width: 160px" v-model="comprehensive.name" + placeholder="璇疯緭鍏ュ湴鍚�...." ></el-input> </el-form-item> <el-form-item> @@ -738,9 +748,9 @@ val: 50, }, coordFrom: { - lon: 116.3911, - lat: 39.9115, - height: 100000, + lon: "", + lat: "", + height: "", }, listData: { name: null, @@ -843,16 +853,16 @@ }, async setModelInfoData(result) { var modelKey = 'id'; - debugger + var modelid; if (result.tileset) { - if (result.tileset.pubid > 0) { + if (result.tileset.pubid) { const data = await comprehensive_selectPubById({ id: result.tileset.pubid }) if (data.code != 200) { return } else { - debugger + modelKey = JSON.parse(data.result.json).modelid } if (!modelKey) { @@ -988,7 +998,7 @@ requestVertexNormals: true, }; window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); - + window.terrainFlag = 'MPT' window.elevationTool = new SmartEarth.ElevationTool(window.sgworld); elevationTool.setContourColor("#F1D487"); @@ -1194,6 +1204,12 @@ }, //瀹氫綅 setCoordLocal() { + if (!this.coordFrom.lon) { + return this.$message('璇疯緭鍏ョ粡搴�'); + } + if (!this.coordFrom.lat) { + return this.$message('璇疯緭鍏ョ含搴�'); + } var lon = parseFloat(this.coordFrom.lon) var lat = parseFloat(this.coordFrom.lat) var height = parseFloat(this.coordFrom.height) == NaN ? parseFloat(this.coordFrom.height) : 100; @@ -1201,7 +1217,7 @@ var position = { X: lon, Y: lat, - Altitude: 2000, + Altitude: height, }; if (this.imagePoint != null) { sgworld.Creator.DeleteObject(this.imagePoint); diff --git a/src/components/navMenu.vue b/src/components/navMenu.vue index 7e356d3..e863a03 100644 --- a/src/components/navMenu.vue +++ b/src/components/navMenu.vue @@ -156,7 +156,7 @@ // this.showFlag = null; // }) window.addEventListener('message', (e) => { - console.log("e", e.data) + this.showFlag = null; }) }, diff --git a/src/components/preview_map.vue b/src/components/preview_map.vue index 3eab5dd..53cfe36 100644 --- a/src/components/preview_map.vue +++ b/src/components/preview_map.vue @@ -1,139 +1,205 @@ <template> - <div id="mapdiv" - class="previewBox"> - <div v-if="modelLayer" - class="modelLayer box_divm"> + <div + id="mapdiv" + class="previewBox" + > + <div + v-if="modelLayer" + class="modelLayer box_divm" + > <div class="modelBox"> - <div style="float:right" - :title="$t('synthesis.undergroundMode')" - @click="setUndergroundMode"> + <div + style="float:right" + :title="$t('synthesis.undergroundMode')" + @click="setUndergroundMode" + > <i class="el-icon-sunrise "></i> </div> </div> <div class="modelBox"> - <el-tree :data="treeData" - show-checkbox - node-key="id" - ref="tree" - :default-expanded-keys="[1]" - :props="defaultProps" - @node-click="handleNodeClick" - @check="handleCheckChange"> + <el-tree + :data="treeData" + show-checkbox + node-key="id" + ref="tree" + :default-expanded-keys="[1]" + :props="defaultProps" + @node-click="handleNodeClick" + @check="handleCheckChange" + > </el-tree> </div> </div> - <div v-if="editModelFlag" - class="modelLayer box_divm"> - <el-form ref="form" - :model="modelForm" - label-width="80px"> + <div + v-if="editModelFlag" + class="modelLayer box_divm" + > + <el-form + ref="form" + :model="modelForm" + label-width="80px" + > <el-form-item> - <el-button size="small" - @click="locateTo">瀹氫綅</el-button> - <el-button size="small" - @click="showTileset">鏄鹃殣</el-button> - <el-button size="small" - @click="underground">鍦颁笅</el-button> - <el-button v-if="$store.state.previewLayer.type != '3dml'" - size="small" - @click="pickupCoords">鎷惧彇</el-button> - <el-button v-if="$store.state.previewLayer.type != '3dml'" - size="small" - @click="reload"> + <el-button + size="small" + @click="locateTo" + >瀹氫綅</el-button> + <el-button + size="small" + @click="showTileset" + >鏄鹃殣</el-button> + <el-button + size="small" + @click="underground" + >鍦颁笅</el-button> + <el-button + v-if="$store.state.previewLayer.type != '3dml'" + size="small" + @click="pickupCoords" + >鎷惧彇</el-button> + <el-button + v-if="$store.state.previewLayer.type != '3dml'" + size="small" + @click="reload" + > 閲嶈浇 </el-button> - <el-button v-if="modelForm.modelid == null && $store.state.previewLayer.type != '3dml'" - size="small" - @click="getModeKeyId">妯″瀷涓婚敭</el-button> - <el-button v-if="$store.state.previewLayer.type != '3dml'" - size="small" - @click="resave">淇濆瓨</el-button> + <el-button + v-if="modelForm.modelid == null && $store.state.previewLayer.type != '3dml'" + size="small" + @click="getModeKeyId" + >妯″瀷涓婚敭</el-button> + <el-button + v-if="$store.state.previewLayer.type != '3dml'" + size="small" + @click="resave" + >淇濆瓨</el-button> </el-form-item> - <el-form-item label="缁忓害:" - v-if="$store.state.previewLayer.type != '3dml'"> - <el-input size="small" - v-model="modelForm.lon" - @input="update"></el-input> - <el-slider v-model="modelForm.lon" - @input="update" - :min="73" - :step="0.001" - :max="135"></el-slider> + <el-form-item + label="缁忓害:" + v-if="$store.state.previewLayer.type != '3dml'" + > + <el-input + size="small" + v-model="modelForm.lon" + @input="update" + ></el-input> + <el-slider + v-model="modelForm.lon" + @input="update" + :min="73" + :step="0.001" + :max="135" + ></el-slider> </el-form-item> - <el-form-item label="绾害:" - v-if="$store.state.previewLayer.type != '3dml'"> - <el-input size="small" - v-model="modelForm.lat" - @input="update"></el-input> - <el-slider v-model="modelForm.lat" - @input="update" - :min="3" - :step="0.001" - :max="54"></el-slider> + <el-form-item + label="绾害:" + v-if="$store.state.previewLayer.type != '3dml'" + > + <el-input + size="small" + v-model="modelForm.lat" + @input="update" + ></el-input> + <el-slider + v-model="modelForm.lat" + @input="update" + :min="3" + :step="0.001" + :max="54" + ></el-slider> </el-form-item> - <el-form-item label="楂樺害:" - v-if="$store.state.previewLayer.type != '3dml'"> - <el-input size="small" - v-model="modelForm.height" - @input="update"></el-input> - <el-slider v-model="modelForm.height" - :min="-800" - :step="1" - @input="update" - :max="8800"></el-slider> + <el-form-item + label="楂樺害:" + v-if="$store.state.previewLayer.type != '3dml'" + > + <el-input + size="small" + v-model="modelForm.height" + @input="update" + ></el-input> + <el-slider + v-model="modelForm.height" + :min="-800" + :step="1" + @input="update" + :max="8800" + ></el-slider> </el-form-item> - <el-form-item label="瑙掑害:" - v-if="$store.state.previewLayer.type != '3dml'"> - <el-input size="small" - v-model="modelForm.yaw" - @input="update"></el-input> - <el-slider v-model="modelForm.yaw" - :min="0" - @input="update" - :step="0.1" - :max="360"></el-slider> + <el-form-item + label="瑙掑害:" + v-if="$store.state.previewLayer.type != '3dml'" + > + <el-input + size="small" + v-model="modelForm.yaw" + @input="update" + ></el-input> + <el-slider + v-model="modelForm.yaw" + :min="0" + @input="update" + :step="0.1" + :max="360" + ></el-slider> </el-form-item> <el-form-item label="閫忔槑搴�:"> - <el-input size="small" - v-model="modelForm.alpha" - @input="update"></el-input> - <el-slider v-model="modelForm.alpha" - @input="update" - :min="0" - :step="0.01" - :max="1"></el-slider> + <el-input + size="small" + v-model="modelForm.alpha" + @input="update" + ></el-input> + <el-slider + v-model="modelForm.alpha" + @input="update" + :min="0" + :step="0.01" + :max="1" + ></el-slider> </el-form-item> </el-form> </div> - <el-dialog :title="formInline.title" - :visible.sync="dialogVisible" - :modal="false" - :modal-append-to-body="false" - :close-on-click-modal="false" - :before-close="handleClose" - width="30%"> + <el-dialog + :title="formInline.title" + :visible.sync="dialogVisible" + :modal="false" + :modal-append-to-body="false" + :close-on-click-modal="false" + :before-close="handleClose" + width="30%" + > <div style="height:63vh"> - <el-tabs v-model="activeName" - @tab-click="handleClick"> - <el-tab-pane label="灞炴��" - name="first"> - <el-form ref="form" - :model="formInline" - label-width="80px"> + <el-tabs + v-model="activeName" + @tab-click="handleClick" + > + <el-tab-pane + label="灞炴��" + name="first" + > + <el-form + ref="form" + :model="formInline" + label-width="80px" + > <el-form-item :label="$t('common.name')"> <el-input v-model="formInline.name"></el-input> </el-form-item> <el-form-item :label="$t('common.type')"> - <el-select v-model="formInline.type" - style="width:100%"> - <el-option v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> + <el-select + v-model="formInline.type" + style="width:100%" + > + <el-option + v-for="item in options" + :key="item.value" + :label="item.label" + :value="item.value" + > </el-option> </el-select> @@ -144,78 +210,110 @@ </el-form-item> <el-form-item> - <el-button v-show="isShowModel" - type="success" - plain - size="small" - @click="InsertData">{{$t('common.increase')}}</el-button> - <el-button v-show="!isShowModel" - type="info" - plain - size="small" - @click="EditData">{{$t('common.update')}}</el-button> + <el-button + v-show="isShowModel" + type="success" + plain + size="small" + @click="InsertData" + >{{$t('common.increase')}}</el-button> + <el-button + v-show="!isShowModel" + type="info" + plain + size="small" + @click="EditData" + >{{$t('common.update')}}</el-button> </el-form-item> </el-form> </el-tab-pane> - <el-tab-pane label="闄勪欢" - name="second"> - <el-form :model="fromfile" - class="demo-form-inline"> + <el-tab-pane + label="闄勪欢" + name="second" + > + <el-form + :model="fromfile" + class="demo-form-inline" + > <el-form-item> - <el-input v-model="fromfile.file" - style="width: 300px; margin-right: 20px" - :placeholder="$t('common.choose')" - disabled></el-input> - <input name="file1" - type="file" - id="insertFile" - multiple="multiple" - style="display: none" - @change="insertFile( )" /> - <el-link @click="getInsertFile( )" - :underline="false"><i class="el-icon-folder-opened"></i></el-link> + <el-input + v-model="fromfile.file" + style="width: 300px; margin-right: 20px" + :placeholder="$t('common.choose')" + disabled + ></el-input> + <input + name="file1" + type="file" + id="insertFile" + multiple="multiple" + style="display: none" + @change="insertFile( )" + /> + <el-link + @click="getInsertFile( )" + :underline="false" + ><i class="el-icon-folder-opened"></i></el-link> </el-form-item> <el-form-item> <el-row> <el-col :span="3"> - <el-link class="elLink" - :underline="false" - @click="setAttachInsert">{{$t('common.append')}}</el-link> + <el-link + class="elLink" + :underline="false" + @click="setAttachInsert" + >{{$t('common.append')}}</el-link> </el-col> <el-col :span="3"> - <el-link class="elLink" - :underline="false" - @click="setAttachDel">{{$t('common.delete')}}</el-link> + <el-link + class="elLink" + :underline="false" + @click="setAttachDel" + >{{$t('common.delete')}}</el-link> </el-col> </el-row> </el-form-item> </el-form> - <el-table :data="tableData" - ref="filterTable" - height="calc(100% - 130px)" - border - style="width: 100%" - @selection-change="handleAttatchChange"> - <el-table-column type="selection" - width="70" /> - <el-table-column width="60" - type="index" - :label="$t('common.index')" /> - <el-table-column prop="name" - :label="$t('common.name')" /> + <el-table + :data="tableData" + ref="filterTable" + height="calc(100% - 130px)" + border + style="width: 100%" + @selection-change="handleAttatchChange" + > + <el-table-column + type="selection" + width="70" + /> + <el-table-column + width="60" + type="index" + :label="$t('common.index')" + /> + <el-table-column + prop="name" + :label="$t('common.name')" + /> - <el-table-column prop="sizes" - :label="$t('common.size')" - :formatter="statSizeChange" /> - <el-table-column align="center" - :label="$t('common.operate')" - min-width="100"> + <el-table-column + prop="sizes" + :label="$t('common.size')" + :formatter="statSizeChange" + /> + <el-table-column + align="center" + :label="$t('common.operate')" + min-width="100" + > <template slot-scope="scope"> - <el-link v-if="matchState(scope, /[]/)" - @click="setAttatchDetail(scope.$index, scope.row)" - class="elLink">{{ $t('common.see') }}</el-link> + <el-link + v-if="matchState(scope, /[]/)" + @click="setAttatchDetail(scope.$index, scope.row)" + class="elLink" + >{{ $t('common.see') }}</el-link> </template> </el-table-column> @@ -238,48 +336,66 @@ <map-sdk v-if='showMapVisible'></map-sdk> </div> </el-dialog> --> - <el-dialog title="棰勮" - :append-to-body="false" - :visible.sync="dialog.dialogVisible" - width="70%" - :close-on-click-modal="false"> - <div v-if="dialog.isPdf" - class="pdfClass"> - <iframe :src="dialog.src" - type="application/x-google-chrome-pdf" - width="100%" - height="100%"> + <el-dialog + title="棰勮" + :append-to-body="false" + :visible.sync="dialog.dialogVisible" + width="70%" + :close-on-click-modal="false" + > + <div + v-if="dialog.isPdf" + class="pdfClass" + > + <iframe + :src="dialog.src" + type="application/x-google-chrome-pdf" + width="100%" + height="100%" + > </iframe> </div> - <div v-if="dialog.isJpg" - class="pdfClass"> + <div + v-if="dialog.isJpg" + class="pdfClass" + > - <el-image style="width:100%; height:100%" - :src="dialog.src" - :preview-src-list="[dialog.src]"> + <el-image + style="width:100%; height:100%" + :src="dialog.src" + :preview-src-list="[dialog.src]" + > </el-image> </div> </el-dialog> - <div v-show="modelKeyFlag" - class="modelLayer box_divm" - v-drag> - <el-form ref="form" - :model="modelForm" - label-width="80px"> + <div + v-show="modelKeyFlag" + class="modelLayer box_divm" + v-drag + > + <el-form + ref="form" + :model="modelForm" + label-width="80px" + > <el-form-item label="涓婚敭ID"> <el-select v-model="modelLayerId"> - <el-option v-for="item in optionKey" - :key="item.value" - :label="item.label" - :value="item.value"> + <el-option + v-for="item in optionKey" + :key="item.value" + :label="item.label" + :value="item.value" + > </el-option> </el-select> </el-form-item> <el-form-item> - <el-button type="primary" - size="small" - @click="setSureKeyModelKey">{{$t('common.confirm')}}</el-button> + <el-button + type="primary" + size="small" + @click="setSureKeyModelKey" + >{{$t('common.confirm')}}</el-button> </el-form-item> </el-form> </div> @@ -305,7 +421,7 @@ components: { undergroundModel }, - data () { + data() { return { levelArray: [ 0, 40000000, 20000000, 10000000, 5000000, 2000000, 1000000, 500000, @@ -384,11 +500,11 @@ modelKeyFlag: false, } }, - mounted () { + mounted() { this.init3DMap(); }, methods: { - setUndergroundMode () { + setUndergroundMode() { if (window.UndergroundMode) { this.$refs && this.$refs.undergroundModel && @@ -399,14 +515,14 @@ this.$refs.undergroundModel.open("鍦颁笅妯″紡", null,); } }, - refreshAttatchDetail () { + refreshAttatchDetail() { this.dialog.src = ""; this.dialog.dialogVisible = false; this.dialog.isPdf = false; this.dialog.isJpg = false; }, //闄勪欢鏌ョ湅 - setAttatchDetail (index, row) { + setAttatchDetail(index, row) { this.refreshAttatchDetail() var name = row.name; if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) { @@ -432,7 +548,7 @@ this.dialog.src = url } }, - async setAttachDel () { + async setAttachDel() { var std = []; for (var i in this.attacgSelection) { std.push(this.attacgSelection[i].id); @@ -443,7 +559,7 @@ } this.getAttacthFlieList(); }, - setAttachInsert () { + setAttachInsert() { var token = getToken(); var fs = document.getElementById("insertFile"); if (fs.files.length == 0) { @@ -487,15 +603,15 @@ ); }, //闄勪欢=>鏂囦欢閫夋嫨 - getInsertFile () { + getInsertFile() { $('#insertFile').click(); }, - insertFile () { + insertFile() { var val = document.getElementById('insertFile').files; if (!val || !val.length) return; this.fromfile.file = val[0].name; }, - matchState (state = "", reg) { + matchState(state = "", reg) { var row = state.row; var name = row.name; if ( @@ -517,10 +633,10 @@ return false; }, - statSizeChange (row, column) { + statSizeChange(row, column) { return this.stateFormatSizes(row.sizes) }, - stateFormatSizes (res) { + stateFormatSizes(res) { if (res >= 1024) { const val = parseFloat(res / 1024).toFixed(3); return val + ' GB'; @@ -529,11 +645,11 @@ } }, // 闄勪欢=>琛ㄦ牸閫夋嫨 - handleAttatchChange (val) { + handleAttatchChange(val) { this.attacgSelection = val; }, //闄勪欢鍒楄〃鏌ヨ - async getAttacthFlieList () { + async getAttacthFlieList() { var obj = { eventid: this.layerID, tabName: "lf.sys_style" @@ -545,12 +661,12 @@ } this.tableData = res.result; }, - handleClick () { + handleClick() { if (this.activeName == "second") { this.getAttacthFlieList(); } }, - async EditData () { + async EditData() { const data = await comprehensive_updateModel(this.formInline) @@ -572,7 +688,7 @@ this.startModelData(); }, - async InsertData () { + async InsertData() { var std = { "bak": this.formInline.bak, "guid": this.formInline.Id, @@ -599,7 +715,7 @@ }, - handleClose () { + handleClose() { this.dialogVisible = false; this.formInline = { title: '', @@ -614,12 +730,14 @@ this.activeName = "first" }, - async setShowModelInfo (result) { + async setShowModelInfo(result) { var modelKey = 'id'; if (result.tileset) { - if (result.tileSet.pubid > 0) { + + if (result.tileset.pubid) { const data = await comprehensive_selectPubById({ id: result.tileset.pubid }) + if (data.code != 200) { return } else { @@ -646,7 +764,7 @@ this.dialogVisible = true; }, - async startModelData () { + async startModelData() { var obj = { layerid: this.formInline.layerId, modelid: this.formInline.Id @@ -664,7 +782,7 @@ this.formInline.title = this.formInline.name; } }, - setChangeTileset (result) { + setChangeTileset(result) { var value = this.$refs.tree.getCheckedNodes(); var std = []; for (var i in value) { @@ -683,18 +801,19 @@ } } }, - setAddLayers (res) { - if (res.serveType == "Tileset" || res.serveType == "3DML") { + setAddLayers(rs) { + + if (rs.serveType == "Tileset" || rs.serveType == "3DML") { var url; - if (res.url.indexOf("{host}") != -1) { - url = res.url.replace("{host}", iisHost); + if (rs.url.indexOf("{host}") != -1) { + url = rs.url.replace("{host}", iisHost); } else { - url = modelUrl + "/" + res.url + url = modelUrl + "/" + rs.url } var tileset = Viewer.scene.primitives.add( new Cesium.Cesium3DTileset({ - name: res.cnName, + name: rs.cnName, url: url, //192.168.20.106,to4 maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16 maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512 @@ -704,28 +823,29 @@ ); var that = this; tileset.readyPromise.then((tileset) => { - tileset.id = res.cnName; - tileset.layerId = res.id; - tileset.pubid = res.pubid; - if (res.serveType != '3DML') { - that.getArgsTileset(tileset, res); + tileset.id = rs.cnName; + tileset.layerId = rs.id; + tileset.pubid = rs.pubid; + if (rs.serveType != '3DML') { + that.getArgsTileset(tileset, rs); } }); } }, - async getArgsTileset (tileset, res) { + async getArgsTileset(tileset, rs) { - if (res.pubid > 0) { - const data = await comprehensive_selectPubById({ id: res.pubid }) + if (rs.pubid > 0) { + + const data = await comprehensive_selectPubById({ id: rs.pubid }) if (data.code != 200) { } else { - if (res.serveType != '3DML') { - this.tileSet(tileset, parseFloat(res.elev)) + if (rs.serveType == '3DML') { + this.tileSet(tileset, parseFloat(rs.elev)) } else { this.reloadTile(tileset, data.result.json) } @@ -733,11 +853,11 @@ } } else { - this.tileSet(tileset, parseFloat(res.elev)) + this.tileSet(tileset, parseFloat(rs.elev)) } }, - tileSet (tileset, height) { + tileSet(tileset, height) { //3dtile妯″瀷鐨勮竟鐣岀悆浣� var boundingSphere = tileset.boundingSphere; //杩崱灏旂┖闂寸洿瑙掑潗鏍�=>鍦扮悊鍧愭爣锛堝姬搴﹀埗锛� @@ -751,7 +871,7 @@ tileset.modelMatrix = Cesium.Matrix4.fromTranslation(translation); // Viewer.flyTo(tileset); }, - reloadTile (tileset, res) { + reloadTile(tileset, res) { var vm = JSON.parse(res) var pos = Cesium.Cartesian3.fromDegrees(vm.lon, vm.lat, vm.height); var converter = Cesium.Transforms.eastNorthUpToFixedFrame; @@ -763,7 +883,7 @@ - handleCheckChange (data, checked, indeterminate) { + handleCheckChange(data, checked, indeterminate) { if (data.type == 1) { this.getchilds(data); this.setChangeTileset(this.childOption, checked); @@ -771,7 +891,7 @@ this.setChangeTileset([data], checked); } }, - handleNodeClick (data) { + handleNodeClick(data) { if (data.type == 2) { this.currentData = data; for (var j in Viewer.scene.primitives._primitives) { @@ -781,7 +901,7 @@ } } }, - getchilds (source) { + getchilds(source) { if (source.children) { var child = source.children for (var i in child) { @@ -795,7 +915,7 @@ this.childOption.push(source) } }, - init3DMap () { + init3DMap() { //鍦板浘鍒濆鍖� window.sgworld = new SmartEarth.SGWorld("mapdiv", { licenseServer: window.sceneConfig.licenseServer, @@ -816,25 +936,27 @@ Viewer.scene.globe.depthTestAgainstTerrain = true; // window.elevationTool = new SmartEarth.ElevationTool(window.sg); // elevationTool.setContourColor("#F1D487"); - // var option = { - // url: window.sceneConfig.SGUrl, - // layerName: window.sceneConfig.mptName, - // requestVertexNormals: true, - // }; - // window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); - window.terrainLayer = new Cesium.CesiumTerrainProvider({ - url: demLayer - }); + var option = { + url: window.sceneConfig.SGUrl, + layerName: window.sceneConfig.mptName, + requestVertexNormals: true, + }; + window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); + // window.terrainLayer = new Cesium.CesiumTerrainProvider({ + // url: demLayer + // }); - Viewer.terrainProvider = window.terrainLayer + // Viewer.terrainProvider = window.terrainLayer if (this.$store.state.previewLayer) { var res = this.$store.state.previewLayer; var type = res.type; + res.ulr = res.url.replace("{host}", iisHost); if (type == 'DEM') { - // window.terrainLayer.deleteObject(); - //Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider(); - //window.terrainLayer = null; + window.terrainLayer.deleteObject(); + // Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider(); + // window.terrainLayer = null; + window.terrainLayer = new Cesium.CesiumTerrainProvider({ url: res.url }); @@ -866,9 +988,12 @@ }); } else if (type == '3dml' || type == 'fbx' || type == 'ifc' || type == 'rvt') { if (this.app.tileset) viewer.scene.primitives.remove(this.app.tileset); + this.app.tileset = this.createTileset(res); var that = this; + Viewer.scene.primitives.add(this.app.tileset).readyPromise.then(function (ts) { + that.setModleLocatin() Viewer.flyTo(ts); }); @@ -885,7 +1010,7 @@ } } }, - getModeKeyId () { + getModeKeyId() { window.ModeKeyIdHandler = new Cesium.ScreenSpaceEventHandler(Viewer.scene.canvas); window.ModeKeyIdHandler.setInputAction((event) => { @@ -904,12 +1029,16 @@ }, Cesium.ScreenSpaceEventType.LEFT_CLICK) }, - async resave () { + async resave() { if (!this.modelForm.modelid) { return this.$message('鏈�夋嫨妯″瀷涓婚敭ID'); } this.$store.state.previewLayer.json = JSON.stringify(this.modelForm); + if (this.$store.state.previewLayer.url) { + var url = this.$store.state.previewLayer.url; + this.$store.state.previewLayer.url = url.replace(iisHost, "{host}"); + } const data = await publish_update(this.$store.state.previewLayer); if (data.code != 200) { this.$message.error('鏁版嵁淇濆瓨澶辫触'); @@ -921,9 +1050,9 @@ } this.reload(); }, - reload () { + reload() { var json = JSON.stringify(this.modelForm); - var url = this.$store.state.previewLayer.url; + var url = this.$store.state.previewLayer.url.replace("{host}", iisHost); if (!url) return; if (this.app.tileset) Viewer.scene.primitives.remove(this.app.tileset); @@ -947,7 +1076,7 @@ }, //鎷惧彇 - pickupCoords () { + pickupCoords() { if (this.app.handler) { this.app.handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK); this.app.handler = undefined; @@ -971,12 +1100,12 @@ }, Cesium.ScreenSpaceEventType.LEFT_CLICK); }, // 淇濈暀灏忔暟浣� - toFixed (d, n) { + toFixed(d, n) { var p = Math.pow(10, n); return Math.round(d * p) / p; }, - update () { + update() { if (!this.modelForm.lon || isNaN(this.modelForm.lon)) { var args = this.getEditTilesetArgs(); this.modelForm.lon = args.lon == null ? 0 : args.height; @@ -1010,7 +1139,7 @@ this.setTilesetArgs(this.modelForm); sgworld.Analysis.UndergroundMode(this.app.under, this.modelForm.alpha) }, - setTilesetArgs (f) { + setTilesetArgs(f) { if (!this.app.tileset || this.app.isBusy) return; @@ -1023,21 +1152,22 @@ model._root.transform = matrix; }, //鍦颁笅 - underground () { + underground() { this.app.under = !this.app.under; sgworld.Analysis.UndergroundMode(this.app.under, this.modelForm.alpha) }, //鏄鹃殣 - showTileset () { + showTileset() { if (!this.app.tileset) return; this.app.tileset.show = !this.app.tileset.show; }, //瀹氫綅 - locateTo () { + locateTo() { if (!this.app.tileset) return; Viewer.flyTo(this.app.tileset); }, - createTileset (res) { + createTileset(res) { + res.url = res.url.replace('{host}', iisHost) return new Cesium.Cesium3DTileset({ url: res.url, name: 'tsTest', @@ -1060,7 +1190,7 @@ dynamicScreenSpaceError: true // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse锛屽叏灞忓姞杞藉畬涔嬪悗鎵嶆竻鏅板寲鎴垮眿 }); }, - setEditModelLayer (res) { + setEditModelLayer(res) { this.editModelFlag = true; if (res.json) { var json = JSON.parse(res.json) @@ -1070,9 +1200,10 @@ this.getTilesetArgs(); } }, - setModleLocatin () { + setModleLocatin() { var res = this.$store.state.previewLayer; var type = res.type; + if (this.modelType.indexOf(type) != -1) { if (type != '3dml') { this.setEditModelLayer(res) @@ -1083,7 +1214,7 @@ } }, - setModeLayerID (res) { + setModeLayerID(res) { var value = res.getPropertyNames(); var std = []; @@ -1097,12 +1228,12 @@ this.modelLayerId = this.optionKey[0].label; this.modelKeyFlag = true; }, - setSureKeyModelKey () { + setSureKeyModelKey() { this.modelKeyFlag = false; this.modelForm.modelid = this.modelLayerId window.ModeKeyIdHandler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK); //绉婚櫎浜嬩欢 }, - getTilesetArgs () { + getTilesetArgs() { this.app.isBusy = true; var cm = this.app.tileset._root.transform; var cartesian = new Cesium.Cartesian3(cm[12], cm[13], cm[14]); @@ -1115,7 +1246,7 @@ } this.app.isBusy = false; }, - getEditTilesetArgs () { + getEditTilesetArgs() { this.app.isBusy = true; var std = { lon: 0, @@ -1138,7 +1269,7 @@ return std }, - async setShowModelLayer () { + async setShowModelLayer() { const data = await perms_selectLayers(); if (data.code != 200) { @@ -1187,7 +1318,7 @@ }, Cesium.ScreenSpaceEventType.LEFT_CLICK) } }, - setTreeData (source) { + setTreeData(source) { let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕 return cloneData.filter((father) => { // 寰幆鎵�鏈夐」 @@ -1211,7 +1342,7 @@ // //淇敼妯″瀷鐭╅樀 // tileset.modelMatrix = Cesium.Matrix4.fromTranslation(translation); // }, - getHeight (level) { + getHeight(level) { if (level > 0 && level < 23) { return this.levelArray[level] } diff --git a/src/views/Archive/dataApplication.vue b/src/views/Archive/dataApplication.vue index d790ce9..052da36 100644 --- a/src/views/Archive/dataApplication.vue +++ b/src/views/Archive/dataApplication.vue @@ -203,7 +203,7 @@ :model="detailsFrom" class="demo-form-inline" > - <el-form-item label="琛ㄥ悕锛�"> + <el-form-item label="鐢宠鏁版嵁鍚嶇О锛�"> <div class="statusLabel">{{ detailsFrom.tabs }}</div> </el-form-item><br /> <el-form-item label="鐢宠浜猴細"> @@ -411,6 +411,7 @@ if (data.code != 200) { return this.$message.error("鍒楄〃璋冪敤澶辫触"); } + debugger this.detailsFrom.tableData = data.result; this.detailsFrom.tabs = row.tabs; this.detailsFrom.uname = row.uname; diff --git a/src/views/Synthesis/LeftMenu.vue b/src/views/Synthesis/LeftMenu.vue index 750b659..54eaa7d 100644 --- a/src/views/Synthesis/LeftMenu.vue +++ b/src/views/Synthesis/LeftMenu.vue @@ -2235,11 +2235,16 @@ } }, addAnalysisFlood() { + var url = window.location.href; + var testurl = ""; + if (url.indexOf("web") != -1) { + testurl = "/web"; + } var method = { pointSelect: true, spood: 20, GroupID: 0, - url: "/SmartEarthSDK/Workers/image/33.gif", + url: testurl + "/SmartEarthSDK/Workers/image/33.gif", }; window.AnalysisFlood = sgworld.Command.execute( 2, @@ -3184,7 +3189,6 @@ this.$bus.$on("setDialogInsertVisible", (res) => { - if (res == true) { this.dialogVisible1 = true; } else { diff --git a/src/views/Tools/LayerTree.vue b/src/views/Tools/LayerTree.vue index d1577b4..c26ac67 100644 --- a/src/views/Tools/LayerTree.vue +++ b/src/views/Tools/LayerTree.vue @@ -1,690 +1,1490 @@ <template> <div class="lalala tree-container"> + <el-form ref="form"> <el-form-item> - <el-select v-model="$store.state.pigCode" - clearable - filterable - style="width :100%" - @change="prjChanged" - placeholder="璇烽�夋嫨椤圭洰"> - <el-option v-for="item in menus" - :key="item.code" - :label="item.name" - :value="item.code"> + + <el-select + v-model="$store.state.pigCode" + clearable + filterable + style="width :100%" + @change="setproChange" + placeholder="璇烽�夋嫨椤圭洰" + > + <el-option + v-for="item in optionts" + :key="item.code" + :label="item.name" + :value="item.code" + > </el-option> </el-select> </el-form-item> <el-form-item> - <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" - v-model="filterText" - class="search"> + <el-input + placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" + v-model="filterText" + class="search" + > </el-input> </el-form-item> </el-form> - <el-tree ref="tree" - :data="treeData" - node-key="id" - show-checkbox - :props="defaultProps" - @node-click="handleLeftclick" - @node-contextmenu="rightClick" - @check="handleCheckChange" - :default-checked-keys="handleTreeCheck" - :expand-on-click-node="false" - :filter-node-method="filterNode" - draggable> - <span class="slot-t-node" - slot-scope="{ node, data }"> + <el-tree + ref="tree" + :data="treeData" + node-key="id" + show-checkbox + :props="defaultProps" + @node-click="handleLeftclick" + @node-contextmenu="rightClick" + @check="handleCheckChange" + :default-checked-keys="handleTreeCheck" + :expand-on-click-node="false" + :filter-node-method="filterNode" + draggable + > + <span + class="slot-t-node" + slot-scope="{ node, data }" + > <span v-show="!data.isEdit"> <span :class="[data.id >= 99 ? 'slot-t-node--label' : '']">{{ node.label }}</span> </span> <span v-show="data.isEdit"> - <el-input class="slot-t-input" - size="mini" - autofocus - v-model="data.label" - :ref="'slotTreeInput' + data.id" - @blur.stop="nodeBlur(node, data)" - @keydown.native.enter="nodeBlur(node, data)"></el-input> + <el-input + class="slot-t-input" + size="mini" + autofocus + v-model="data.label" + :ref="'slotTreeInput' + data.id" + @blur.stop="NodeBlur(node, data)" + @keydown.native.enter="NodeBlur(node, data)" + ></el-input> </span> </span> </el-tree> - <el-card class="box-card" - ref="card" - :style="{ ...rightClickMenuStyle }" - v-show="menuVisible"> - <div class="edit" - @click="showLayerAttribute()" - v-if="showProp && !shwoHistogram"> + + <el-card + class="box-card" + ref="card" + :style="{ ...rightClickMenuStyle }" + v-show="menuVisible" + > + <!-- <div + @click="addSameLevelNode()" + v-show="firstLevel" + > + <i class="el-icon-plus"></i> 娣诲姞鍥惧眰缁� + </div> --> + <!-- <div + class="add" + @click="addChildNode()" + > + <i class="el-icon-plus"></i> 娣诲姞鍥惧眰 + </div> --> + <!-- <div + class="delete" + @click="deleteNode()" + > + <i class="el-icon-delete"></i> 鍒犻櫎 + </div> --> + <!-- <div + class="edit" + @click="editNode()" + > + <i class="el-icon-edit"></i> 閲嶅懡鍚� + </div> --> + <div + class="edit" + @click="showLayerAttribute()" + v-if="!showlocal && !shwoHistogram" + v-show="!firstLevel" + > <i class="el-icon-tickets"></i> 灞炴�� </div> - <div class="edit" - @click="positioning()" - v-if="showLocal"> + <div + class="edit" + @click="positioning()" + v-if="showlocal" + > <i class="el-icon-tickets"></i> 瀹氫綅 </div> - <div class="edit" - @click="pellucidity()" - v-if="showOpacity"> + <div + class="edit" + @click="pellucidity()" + v-if="showopaque" + > <i class="el-icon-tickets"></i> 閫忔槑搴� </div> - <div class="edit" - @click="histogram()" - v-show="shwoHistogram"> + <div + class="edit" + @click="histogram()" + v-show="shwoHistogram" + > <i class="el-icon-tickets"></i> 閽诲瓟鏌辩姸鍥� </div> + <!-- <div + class="edit" + v-show="showModelAttach" + @click="modelAttach()" + > + <i class="el-icon-tickets"></i> 妯″瀷灞炴�� + </div> --> + <!-- <div + class="edit" + @click="menuMoveF( 'up')" + > + <i class="el-icon-top"></i> 涓婄Щ + </div> + <div + class="edit" + @click="menuMoveF( 'down')" + > + <i class="el-icon-bottom"></i> 涓嬬Щ + </div> --> </el-card> + <el-dialog + :title="appendNodetitle" + :visible.sync="dialogVisible" + width="30%" + top="20vh" + :modal="false" + :before-close="handleClose" + > + <el-form + ref="form" + :model="addFormServer" + label-width="100px" + > + <el-form-item label="鏈嶅姟绫诲瀷"> + <!-- <el-input v-model="addFormServer.type"></el-input> --> + <el-select + style="width: 100%" + :popper-append-to-body="false" + v-model="addFormServer.serveType" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in options" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="鍥惧眰鍚嶇О"> + <el-input v-model="addFormServer.cnName"></el-input> + </el-form-item> + <el-form-item label="鏈嶅姟鍚嶇О"> + <el-input v-model="addFormServer.url"></el-input> + </el-form-item> + + <el-form-item label="鏈嶅姟鍦板潃"> + <el-input v-model="addFormServer.resource"></el-input> + </el-form-item> + <el-form-item label="閫忔槑搴�"> + <el-slider v-model="addFormServer.opacity"></el-slider> + </el-form-item> + </el-form> + <span + slot="footer" + class="dialog-footer" + > + <el-button + type="primary" + @click="setAddServer" + >纭� 瀹�</el-button> + </span> + </el-dialog> + </div> </template> <script> +import { image_layer } from "../../assets/js/index.js"; +import ImageWMS from "ol/source/ImageWMS"; +import Image from "ol/layer/Image"; import GeoJSON from "ol/format/GeoJSON.js"; +import Map from "ol/Map.js"; import queryinfo from "./queryinfo.vue"; import { Vector as VectorSource } from "ol/source"; import { Vector as VectorLayer } from "ol/layer"; -import { perms_selectLayers, comprehensive_selectPubById, project_selectDirAll, project_selectByDirid, } from "../../api/api.js"; +import View from "ol/View.js"; +import { Fill, Stroke, Style } from "ol/style.js"; +import { + perms_selectLayers, inquiry_selectDomains, comprehensive_selectPubById, + project_selectDirAll, project_selectByDirid, dataQuerySelectWktById +} from "../../api/api.js"; export default { name: "tree", components: { queryinfo }, - data () { + data() { return { - isBusy: false, // 姝e繖 - lastPrjCode: "", // 鏈�鍚庨�夋嫨椤圭洰缂栫爜 - showProp: false, // 灞炴�� - shwoHistogram: false, // 閽诲瓟鏌辩姸鍥� - showLocal: false, // 瀹氫綅 - showOpacity: false, // 涓嶉�忔槑搴� - menuVisible: false, // 鑿滃崟 - levelArray: [ // 楂樼▼鏁扮粍 - 0, 40000000, 20000000, 10000000, 5000000, 2000000, 1000000, 500000, - 250000, 200000, 100000, 50000, 17000, 9000, 5000, 2000, 1000, 500, 200, - 100, 50, 25, 10, 0, - ], - filterText: "", // 鍏抽敭瀛楄繃婊� - currentData: "", // 褰撳墠鏁版嵁 - currentNode: "", // 褰撳墠鑺傜偣 - rightClickMenuStyle: {}, // 鍙抽敭鑿滃崟鏍峰紡 - handleTreeCheck: [], // 榛樿閫変腑閿� + shwoHistogram: false, + showlocal: false, + showopaque: false, + eleId: "", + isShow: false, + currentData: "", + currentNode: "", + menuVisible: false, + firstLevel: false, + filterText: "", + appendNodetitle: "", + maxexpandId: 4, + rightClickMenuStyle: {}, + handleTreeCheck: [], + dialogVisible: false, + showModelAttach: false, + addFormServer: { + opacity: 100, + serveType: "WMS", + type: 2, + }, layerId: [ "m_pipeline", "th_strategic_channel", "bs_project", "m_sitepoint", ], - treeData: [], // 鏍戞暟鎹� - defaultProps: { // 榛樿灞炴�у�� + treeData: [], + defaultProps: { children: "children", label: "cnName", }, - mptLayer: [], // Mpt鍥惧眰 - menus: [] // 鑿滃崟椤� + options: [ + { + value: "WMS", + label: "WMS", + }, + { + value: "WFS", + label: "WFS", + }, + ], + childOption: [], + mptLayer: [], + optionts: [], + proValue: null, }; }, - watch: { - filterText (val) { - this.$refs.tree.filter(val); - }, - }, - mounted () { - this.getMenus(); - this.$bus.$on("treeDataCopy", (res) => { - this.$store.state.treeData = this.treeData; - this.$store.state.checkedKeys = this.$refs.tree.getCheckedKeys(); - }); - if (this.$store.state.showAllLayers) { - this.layersStart(); - this.$store.state.showAllLayers = false; - } else { - this.treeData = this.$store.state.treeData; - this.$refs.tree.setCheckedKeys(this.$store.state.checkedKeys); - } - }, methods: { - // 鑾峰彇鑿滃崟 - async getMenus () { - let data = await project_selectDirAll(); - if (data && data.code == 200) this.menus = data.result; - }, - // 鍒濆鍖栧浘灞� - async layersStart () { - let data = await perms_selectLayers(); - if (data.code != 200) { - return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触"); - } - let checkKey = [], checkedLayers = []; - let layers = data.result.filter((lyr) => { - if (lyr.url && lyr.type == 2 && lyr.isShow == 1) { - checkKey.push(lyr.id); - if (lyr.serveType == "WMS") checkedLayers.push(lyr); - } - return lyr; - }); - // 瀛樺偍閫変腑鍥惧眰 - this.treeData = this.setTreeData(layers); - this.$refs.tree.setCheckedKeys(checkKey); - sessionStorage.setItem("checkedLayers", JSON.stringify(checkedLayers)); + //杞瓟鏌辩姸鍥� + async histogram() { + this.menuVisible = false + var layer = this.currentData.enName.replaceAll("_", ""); + this.$store.state.mapSpaceQueryLayer = layer; + this.$store.state.mapPopBoxFlag = "2"; + this.$store.state.showPopBoxFlag = true; }, - // 璁剧疆鏍戞暟鎹� - setTreeData (source) { - let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕 - return cloneData.filter((father) => { - // 寰幆鎵�鏈夐」 - let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 - branchArr.length > 0 ? (father.children = branchArr) : ""; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� - // 灞炰簬鍚屼竴瀵硅薄闂锛屼緥濡傦細浠� a=b銆乧=1 锛岀劧鍚庡啀浠� b.c=c 锛岄偅涔� a.c=b.c=c=1 锛涘悓鐞嗭紝鍚庣画浠� c.d=2 ,閭d箞 a.c.d 涔熸槸=2锛� - return father.pid == 0; // 杩斿洖涓�绾ц彍鍗� - }); - }, - // 鑺傜偣鑾峰緱鐒︾偣浜嬩欢 - nodeBlur (node, data) { - if (!data.label.length) return this.$message.error("鑿滃崟鍚嶄笉鍙负绌猴紒"); - if (data.isEdit) this.$set(data, "isEdit", false); - this.$nextTick(() => { - this.$refs["slotTreeInput" + data.id].$refs.input.focus(); - }); - }, - // 榧犳爣宸﹀嚮浜嬩欢 - handleLeftclick (data, node) { - this.rmListener(); - }, - // 鍙栨秷榧犳爣鐩戝惉浜嬩欢 - rmListener () { + modelAttach() { this.menuVisible = false; - // 瑕佸強鏃跺叧鎺夌洃鍚紝涓嶅叧鎺夌殑鏄竴涓潙锛屼笉淇′綘璇曡瘯锛岃櫧鐒跺墠鍙版樉绀虹殑鏃跺�欐病鏈夊暐姣涚梾锛屽姞涓�涓猘lert浣犲氨鐭ラ亾浜� - document.removeEventListener("click", this.rmListener); + this.$store.state.attachinfo = this.currentData; + this.$store.state.attachModel = true; + + }, - // 杩囨护鑺傜偣 - filterNode (value, data) { - if (!value) return true; - return data.cnName.indexOf(value) !== -1; + NodeBlur(Node, data) { + if (data.label.length === 0) { + this.$message.error("鑿滃崟鍚嶄笉鍙负绌猴紒"); + return false; + } else { + if (data.isEdit) { + this.$set(data, "isEdit", false); + } + this.$nextTick(() => { + this.$refs["slotTreeInput" + data.id].$refs.input.focus(); + }); + } + }, + + + allowDrop(draggingNode, dropNode, type) { + if (dropNode.data.label === "浜岀骇 3-1") { + return type !== "inner"; + } else { + return true; + } + }, + allowDrag(draggingNode) { + return draggingNode.data.label.indexOf("涓夌骇 3-2-2") === -1; }, // 榧犳爣鍙冲嚮浜嬩欢 - rightClick (event, object, node, element) { - if (object.type == 1 || node.data.children != null) return; - - this.currentNode = node; + rightClick(event, object, Node, element) { + if (object.type == 1) { + return + } this.currentData = object; - this.$store.state.propertiesName = object; + this.currentNode = Node; - this.showProp = object.serveType == "WMS"; // 灞炴�� - this.shwoHistogram = this.showProp && object.enName == "s_explorationpoint"; // 閽诲瓟鏌辩姸鍥� - this.showLocal = ["Tileset", "3DML", "Mpt", "TMS", "DOM", "DEM"].indexOf(object.serveType) > -1; // 瀹氫綅 - this.showOpacity = ["Tileset", "3DML"].indexOf(object.serveType) > -1; // 涓嶉�忔槑搴� - this.menuVisible = this.showProp || this.shwoHistogram || this.showLocal || this.showOpacity; // 鑿滃崟 + this.$store.state.propertiesName = this.currentData; + this.showModelAttach = false; + this.shwoTitle = false; + this.menuVisible = true; + + if (this.currentData.serveType == 'TMS') { + this.shwoTitle = true + } else if (this.currentData.serveType == "Tileset" || this.currentData.serveType == "3DML") { + this.showModelAttach = true; + } else if (this.currentData.serveType == "DOM" || this.currentData.serveType == "Mpt") { + this.menuVisible = false; + } + + if (this.currentData.enName == "s_explorationpoint") { + this.shwoHistogram = true; + } else { + this.shwoHistogram = false; + } + + if (Node.data.children == null) { + this.firstLevel = false; + } else { + this.firstLevel = true; + } + if (Node.data.children == null && Node.data.serveType == "Tileset" || Node.data.serveType == "3DML") { + this.showlocal = true; + this.showopaque = true; + } else if (Node.data.children == null && Node.data.serveType == "TMS") { + this.showlocal = true; + this.showopaque = false; + } else if (Node.data.children == null && Node.data.serveType != "Tileset") { + this.showlocal = false; + this.showopaque = false; + } + if (this.currentData.serveType == "DEM") { + this.showlocal = true; + this.showopaque = false; + } this.$refs.card.$el.style.left = event.pageX + 20 + "px"; this.$refs.card.$el.style.top = event.pageY + "px"; }, - // 灞炴�ф樉绀� - showLayerAttribute (data) { - this.rmListener(); - this.currentData = data ? data : this.currentData; - let layer = this.currentData.enName.replaceAll("_", ""); - this.$store.state.mapSpaceQueryLayer = layer; - this.$store.state.showPopBoxFlag = true; - this.$store.state.mapPopBoxFlag = "2"; - }, - // 瀹氫綅 - async positioning () { - this.rmListener(); - if (["Tileset", "3DML"].indexOf(this.currentData.serveType) > -1) { - for (let i in Viewer.scene.primitives._primitives) { - if (Viewer.scene.primitives._primitives[i].id == this.currentData.cnName) { - Viewer.flyTo(Viewer.scene.primitives._primitives[i]); - break; + // 榧犳爣宸﹀嚮浜嬩欢 + handleLeftclick(data, node) { + this.foo(); + if (node.checked == true) { + for (var i = 0; i < window.Viewer.imageryLayers._layers.length; i++) { + var val_id = + window.Viewer.imageryLayers._layers[i].imageryProvider.name; + if (val_id == data.label) { + const img_layer = window.Viewer.imageryLayers._layers[i]; } } - return; } + }, + // 鍙栨秷榧犳爣鐩戝惉浜嬩欢 鑿滃崟鏍� + foo() { + this.menuVisible = false; + // 瑕佸強鏃跺叧鎺夌洃鍚紝涓嶅叧鎺夌殑鏄竴涓潙锛屼笉淇′綘璇曡瘯锛岃櫧鐒跺墠鍙版樉绀虹殑鏃跺�欐病鏈夊暐姣涚梾锛屽姞涓�涓猘lert浣犲氨鐭ラ亾浜� + document.removeEventListener("click", this.foo); + }, + // 澧炲姞鍚岀骇鑺傜偣浜嬩欢 + addSameLevelNode() { + this.menuVisible = false + this.foo(); + if (this.currentNode.level == 2) { + this.appendNodetitle = this.currentData.label; + this.dialogVisible = true; + } else { + let id = Math.ceil(Math.random() * 100); + var data = { id: id, label: "鏂板鑺傜偣" }; + this.$refs.tree.append(data, this.currentNode.parent); + } + }, + // 澧炲姞瀛愮骇鑺傜偣浜嬩欢 + addChildNode() { + this.foo(); + this.menuVisible = false + // if (this.currentNode.level >= 2) { + // this.$message.error("鏈�澶氬彧鏀袱绾э紒"); + // return false; + // } + this.appendNodetitle = this.currentData.label; + this.dialogVisible = true; + }, + handleClose() { + this.dialogVisible = false; + this.addFormServer = { + opacity: 100, + serveType: "WMS", + type: 2, + }; + }, + setAddServer() { + var val = this.currentNode; + if (this.currentNode.level == 2) { + val = this.currentNode.parent; + } + var data = this.addFormServer; + data.id = Math.ceil(Math.random() * 100); + this.$refs.tree.append(data, val); + this.handleClose(); + }, + // 鍒犻櫎鑺傜偣 + deleteNode() { + this.foo(); + this.menuVisible = false + var label = this.currentNode.data.cnName; + if (this.currentNode.data.serveType == "WMS") { + var value = this.$refs.tree.getCheckedNodes(); - if (["TMS", "DOM", "DEM"].indexOf(this.currentData.serveType) > -1 && this.currentData.pubid) { - let data = await comprehensive_selectPubById({ id: this.currentData.pubid }); - if (data.result && data.result.geom) { - let wkt = this.$wkt.parse(data.result.geom); - let height = this.getHeight(wkt.coordinates[2]); - Viewer.camera.flyTo({ - destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], height), // 2000 - }); + this.$bus.$emit("showMenuLayer", value); + + } else if (this.currentNode.data.serveType == "WFS") { + for (var i in window.Viewer.dataSources._dataSources) { + if (window.Viewer.dataSources._dataSources[i].name == label) { + window.Viewer.dataSources.remove( + window.Viewer.dataSources._dataSources[i] + ); + } } - return; + } else if (this.currentNode.data.serveType == "Tileset") { + for (var i in Viewer.scene.primitives._primitives) { + // Viewer.scene.primitives._primitives[i].show = checked; + if (Viewer.scene.primitives._primitives[i].id == label) { + Viewer.scene.primitives.remove( + Viewer.scene.primitives._primitives[i] + ); + } + } + var list = this.$store.state.setAlphaList; + for (var i = 0; i < list.length; i++) { + if (list[i].name == label) { + list.splice(i, 1) + } + } + + } + var layers_ol = window.map.getAllLayers(); + for (var i in layers_ol) { + var layerOl = layers_ol[i]; + if (layerOl.values_.name == label) { + window.map.removeLayer(layerOl); //鏄剧ず鍥惧眰 + } } - if ("Mpt" == this.currentData.serveType) { - viewer.camera.flyTo({ destination: Cesium.Cartesian3.fromDegrees(101.8, 37.9, 10000000.0) }); // 涓浗 - } + this.$refs.tree.remove(this.currentNode); }, - // 閽诲瓟鏌辩姸鍥� - async histogram () { - this.rmListener(); - let layer = this.currentData.enName.replaceAll("_", ""); + //灞炴�ф樉绀� + showLayerAttribute(data) { + this.foo(); + this.menuVisible = false + this.currentData = data ? data : this.currentData; + var layer = this.currentData.enName.replaceAll("_", ""); this.$store.state.mapSpaceQueryLayer = layer; - this.$store.state.mapPopBoxFlag = "2"; this.$store.state.showPopBoxFlag = true; + this.$store.state.mapPopBoxFlag = "2"; + + }, - // 閫忔槑搴� - pellucidity () { - this.rmListener(); - for (let j in Viewer.scene.primitives._primitives) { - if (Viewer.scene.primitives._primitives[j].id == this.currentData.cnName) { + //妯″瀷璁剧疆閫忔槑搴� + pellucidity() { + this.foo(); + this.menuVisible = false + var tile = this.currentData + for (var j in Viewer.scene.primitives._primitives) { + if (Viewer.scene.primitives._primitives[j].id == tile.cnName) { this.$store.state.setAlphaDity = this.currentData; this.$bus.$emit("showPellucidity", true); break; } } }, - // 鑾峰彇楂樺害 - getHeight (level) { - if (level > -1 && level < 23) return this.levelArray[level]; - return this.levelArray[this.levelArray.length - 1]; + + + //妯″瀷瀹氫綅 + async positioning() { + this.menuVisible = false + if (this.currentData.serveType == 'Tileset' || this.currentData.serveType == '3DML') { + for (var i in Viewer.scene.primitives._primitives) { + if ( + Viewer.scene.primitives._primitives[i].id == this.currentData.cnName + ) { + Viewer.flyTo(Viewer.scene.primitives._primitives[i]); + } + } + } else if (this.currentData.pubid && this.currentData.serveType == 'TMS' || this.currentData.serveType == "DEM") { + const data = await comprehensive_selectPubById({ id: this.currentData.pubid }) + if (data.result.geom) { + var wkt = this.$wkt.parse(data.result.geom); + Viewer.camera.flyTo({ + destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], 2000), + }); + } + } }, - // 鍥惧眰閫変腑浜嬩欢 - handleCheckChange (data, checked) { - if (this.isBusy) return; + // 缂栬緫鑺傜偣 + editNode(data) { + this.foo(); + this.menuVisible = false + this.currentData = data ? data : this.currentData; + if (!this.currentData.isEdit) { + this.$set(this.currentData, "isEdit", true); + } + // 鑾峰彇鐒︾偣 + this.$nextTick(() => { + this.$refs["slotTreeInput" + this.currentData.id].focus(); + }); + }, - let nodes = []; - this.getNodes(data, nodes); - let obj = { WMS: [], Tileset: [], TMS: [], Mpt: [], DEM: [] }; + menuMoveF(type) { + // 灏嗗彉鍔ㄤ箣鍓嶇殑node澶囦唤 + var node = this.currentNode; + var data = this.currentData; + let copyNode = this.currentNode; - for (let i = 0, c = nodes.length; i < c; i++) { - let node = nodes[i]; - switch (node.serveType) { - case "WMS": - obj.WMS.push(node); - break; - case "3DML": - case "Tileset": - obj.Tileset.push(node); - break; - case "TMS": - obj.TMS.push(node); - break; - case "Mpt": - obj.Mpt.push(node); - break; - case "DEM": - obj.DEM.push(node); - break; + // copyNode.previousSibling = {...node. } + // copyNode.nextSibling = {...node.nextSibling} + // window.sessionStorage.setItem('menuNode',CircularJSON.stringify(copyNode)) + let nodeData = {}; + if (type === "up") { + // 涓婄Щ + if (node.previousSibling) { + // 鍒犻櫎鍘熷厛鐨刵ode + this.$refs.tree.remove(node.data); + // 鎷垮埌copy鐨刵ode + // nodeData = CircularJSON.parse(window.sessionStorage.getItem('menuNode')) + // // 澶嶅埗璇ode鍒版寚瀹氫綅缃�(鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫悗涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node) + // this.$refs.tree.insertBefore(nodeData.data,nodeData.previousSibling.data) + window.sessionStorage.removeItem("menuNode"); + } else { + this.$message.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓婄骇"); + } + } else { + // 涓嬬Щ + if (node.nextSibling) { + this.$refs.tree.remove(node.data); + nodeData = CircularJSON.parse( + window.sessionStorage.getItem("menuNode") + ); + // 鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫墠涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node + this.$refs.tree.insertAfter(nodeData.data, nodeData.nextSibling.data); + window.sessionStorage.removeItem("menuNode"); + } else { + this.$message.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓嬬骇"); + } + } + }, + + handleDragStart(node, ev) { + console.log("drag start", node); + }, + handleDragEnter(draggingNode, dropNode, ev) { + console.log("tree drag enter: ", dropNode.label); + }, + handleDragLeave(draggingNode, dropNode, ev) { + console.log("tree drag leave: ", dropNode.label); + }, + handleDragOver(draggingNode, dropNode, ev) { + console.log("tree drag over: ", dropNode.label); + }, + handleDragEnd(draggingNode, dropNode, dropType, ev) { + console.log("tree drag end: ", dropNode && dropNode.label, dropType); + }, + handleDrop(draggingNode, dropNode, dropType, ev) { + console.log("tree drop: ", dropNode.label, dropType); + }, + handleCheckChange(data, checked, indeterminate) { + if (data.type == 1) { + this.childOption = []; + this.getchilds(data); + var listWMS = []; + var listWFS = []; + var listTileset = []; + var listTMS = []; + var listMpt = []; + var listDEM = []; + for (var i in this.childOption) { + switch (this.childOption[i].serveType) { + case 'WMS': + listWMS.push(this.childOption[i]) + break; + case 'WFS': + listWFS.push(this.childOption[i]) + break; + case '3DML': + listTileset.push(this.childOption[i]) + break; + case 'Tileset': + listTileset.push(this.childOption[i]) + break; + case 'Mpt': + listMpt.push(this.childOption[i]) + break; + case 'TMS': + listTMS.push(this.childOption[i]) + break; + case 'DEM': + this.setChangeDEM([data], checked); + break; + } + } + this.setChangeWMS(listWMS, checked); + this.setChangeWFS(listWFS, checked); + this.setChangeTileset(listTileset, checked); + this.setChangeTMS(listTMS, checked); + this.setChangeMpt(listMpt, checked); + } else if (data.type == 2) { + if (data.serveType == "WMS") { + this.setChangeWMS([data], checked); + } else if (data.serveType == "Tileset" || data.serveType == "3DML") { + this.setChangeTileset([data], checked); + } else if (data.serveType == "TMS") { + this.setChangeTMS([data], checked); + } else if (data.serveType == "Mpt") { + this.setChangeMpt([data], checked); + } else if (data.serveType == "DEM") { + this.setChangeDEM([data], checked); + } + } + // if (data.type != 2) return; + + + + + // if (data.serveType == "WFS") { + // if (window.Viewer.dataSources._dataSources.length == 0) { + // this.setAddLayers(data); + // } else { + + // } + // } else if (data.serveType == "Tileset") { + + // if (Viewer.scene.primitives._primitives.length == 0) { + // this.setAddLayers(data); + // } else { + // var std = []; + // for (var i in Viewer.scene.primitives._primitives) { + // Viewer.scene.primitives._primitives[i].show = checked; + // if (Viewer.scene.primitives._primitives[i].id == data.cnName) { + // std.push(data.id); + // Viewer.flyTo(Viewer.scene.primitives._primitives[i]); + // } + // } + // } + // if (std.length == 0 && checked == true) { + // this.setAddLayers(data); + // } else { + // window.map.getLayers().getArray().forEach(item => { + // if (item.get("name") == data.cnName) { + // item.setVisible(checked); + + // } + // }); + // } + // } else if (data.serveType == "TMS") { + + // if (data.pubid) { + + // } else { + // var res; + // if (data.url.indexOf("{host}") != -1) { + // res = data.url.replace("{host}", iisHost); + // } else { + // res = data.url + // } + // var url = res.split(';') + + // window.sgworld.Creator.createImageryProvider('mpt褰卞儚', "wms", { + // url: url[0], + // layers: url[1] + // }, "0", undefined, true, ""); + // } + + // } + + + + + // var layers_ol = window.map.getAllLayers(); + // for (var i in layers_ol) { + // var layerOl = layers_ol[i]; + // if (layerOl.values_.name == data.label) { + // layerOl.setVisible(checked); //鏄剧ず鍥惧眰 + // } + // } + }, + setChangeWMS(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + this.$bus.$emit("showMenuLayer", value); + }, + setChangeWFS(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + var std = []; + for (var i in value) { + std.push(value[i].id) + } + for (var i in result) { + var tile = result[i] + if (std.indexOf(tile.id) != -1) { + this.setAddLayers(tile) + } else { + for (var i in window.Viewer.dataSources._dataSources) { + if (window.Viewer.dataSources._dataSources[i].name == tile.cnName) { + window.Viewer.dataSources.remove(window.Viewer.dataSources._dataSources[i]); + } + } + + var layers_ol = window.map.getAllLayers(); + for (var i in layers_ol) { + var layerOl = layers_ol[i]; + if (layerOl.values_.name == tile.cnName) { + window.map.removeLayer(layerOl) + } + } + } + } + }, + setChangeTileset(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + var std = []; + for (var i in value) { + std.push(value[i].id) + } + for (var i in result) { + var tile = result[i] + if (std.indexOf(tile.id) != -1) { + this.setAddLayers(tile) + } else { + for (var j in Viewer.scene.primitives._primitives) { + if (Viewer.scene.primitives._primitives[j].id == tile.cnName) { + Viewer.scene.primitives.remove(Viewer.scene.primitives._primitives[j]) + } + } + var list = this.$store.state.setAlphaList; + for (var i = 0; i < list.length; i++) { + if (list[i].name == tile.cnName) { + list.splice(i, 1) + } + } } } - if (obj.WMS.length) this.setChangeWMS(obj.WMS, checked); - if (obj.Tileset.length) this.setChangeTileset(obj.Tileset, checked); - if (obj.TMS.length) this.setChangeTMS(obj.TMS, checked); - if (obj.Mpt.length) this.setChangeMpt(obj.Mpt, checked); - if (obj.DEM.length) this.setChangeDEM(obj.DEM, checked); + + + // if (checked.checkedKeys) { + // for (var i in result) { + // + // } + // } else { + + // for (var j in result) { + // console.log(result[j]) + // // + // } + // } }, - // 鑾峰彇瀛愯妭鐐� - getNodes (data, arr) { - if (data.children) { - for (let i = 0, c = data.children.length; i < c; i++) { - let node = data.children[i]; - if (node.children) { - this.getNodes(node, arr) + + + setChangeDEM(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + var std = []; + var val = []; + for (var i in value) { + if (value[i].serveType != 'DEM') { + val.push(value[i].id) + } + std.push(value[i].id) + } + + + if (window.terrainFlag == 'MPT') { + window.terrainLayer.deleteObject(); + } else if (window.terrainFlag == 'DEM') { + Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider(); + window.terrainLayer = null; + } + + var tile = result[0] + + if (std.indexOf(tile.id) != -1) { + val.push(tile.id); + this.$refs.tree.setCheckedKeys(val); + window.terrainLayer = new Cesium.CesiumTerrainProvider({ + url: tile.url.replace("{host}", iisHost) + }); + Viewer.terrainProvider = window.terrainLayer + window.terrainFlag = 'DEM' + } else { + + var option = { + url: window.sceneConfig.SGUrl, + layerName: window.sceneConfig.mptName, + requestVertexNormals: true, + }; + window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); + Viewer.camera.flyTo({ + destination: Cesium.Cartesian3.fromDegrees(110, 33, 8000000), + }); + window.terrainFlag = 'MPT' + } + + }, + + setChangeMpt(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + var std = []; + for (var i in value) { + std.push(value[i].id) + } + for (var i in result) { + var tile = result[i] + if (std.indexOf(tile.id) != -1) { + this.setAddLayers(tile) + + } else { + for (var i in this.mptLayer) { + if (this.mptLayer[i].treeobj.name == tile.cnName) { + this.mptLayer[i].deleteObject(); + this.mptLayer.splice(i, 1) + } + } + } + } + }, + setChangeTMS(result, checked) { + var value = this.$refs.tree.getCheckedNodes(); + var std = []; + for (var i in value) { + std.push(value[i].id) + } + for (var i in result) { + var tile = result[i] + if (std.indexOf(tile.id) != -1) { + this.setAddLayers(tile) + + } else { + for (var i = 0; i < window.Viewer.imageryLayers._layers.length; i++) { + var val_id = window.Viewer.imageryLayers._layers[i].name; + if (val_id == tile.cnName) { + window.Viewer.imageryLayers.remove( + window.Viewer.imageryLayers._layers[i] + ); + } + } + } + } + }, + getchilds(source) { + if (source.children) { + var child = source.children + for (var i in child) { + if (child[i].children) { + this.getchilds(child[i]) } else { - arr.push(node); + this.childOption.push(child[i]) } } } else { - arr.push(data); + this.childOption.push(source) } }, - // 鑾峰彇鑺傜偣ID - getCheckNodesIds () { - let nodes = this.$refs.tree.getCheckedNodes(); - let ids = []; - for (let i in nodes) { - ids.push(nodes[i].id); - } - return ids; - }, - // 鍒囨崲WMS鏈嶅姟 - setChangeWMS (layers, checked) { - let value = this.$refs.tree.getCheckedNodes(); - this.$bus.$emit("showMenuLayer", value); - }, - // 鍒囨崲Tileset - setChangeTileset (layers, checked) { - let ids = this.getCheckNodesIds(), arr = []; - for (let k in layers) { - let layer = layers[k]; - if (ids.indexOf(layer.id) > -1) { - arr.push(layer); - continue; + async setAddLayers(res) { + + if (res.serveType == "WMS") { + var resource = geoServerURl; + if (res.resource != null && res.resource != undefined) { + resource = res.resource; + } + var imageryLayers = window.Viewer.scene.imageryLayers; + let layerWMS = new Cesium.WebMapServiceImageryProvider({ + url: resource, + layers: res.url, + parameters: { + transparent: true, + format: "image/png", + srs: "EPSG:4490", + styles: "", + }, + tileWidth: 512, + tileHeight: 512, + }); + layerWMS.name = res.cnName; + //閫忔槑搴� + var tdtAnnoLayer = imageryLayers.addImageryProvider(layerWMS); + if (res.opacity) { + tdtAnnoLayer.alpha = parseInt(res.opacity) / 100; + } + var layer2 = new Image({ + name: res.cnName, + source: new ImageWMS({ + crossOrigin: "anonymous", + url: resource, + params: { + FORMAT: "image/png", + VERSION: "1.1.1", + LAYERS: res.url, + }, + }), + }); + if (res.opacity) { + layer2.setOpacity(parseInt(res.opacity) / 100); + } + window.map.addLayer(layer2); + } else if (res.serveType == "WFS") { + var url = + res.resource + + "?service=WFS&version=1.0.0&request=GetFeature&typeName=" + + res.url + + "&outputFormat=application%2Fjson"; + $.ajax({ + url: url, + cache: false, + async: true, + success: function (data) { + var datasource = Cesium.GeoJsonDataSource.load(data, { + stroke: Cesium.Color.YELLOW, + fill: Cesium.Color.YELLOW.withAlpha(0.1), + alpha: 0.1, + strokeWidth: 8, + clampToGround: true, //鏄惁璐村湴 + }); + datasource.then((data) => { + data.name = res.cnName; + window.Viewer.dataSources.add(data); + }); + }, + error: function (data) { + console.log("error"); + }, + }); + + var vectorLayer = new VectorLayer({ + name: res.cnName, + source: new VectorSource({ + url: url, + format: new GeoJSON(), + }), + }); + window.map.addLayer(vectorLayer); + } else if (res.serveType == "Tileset" || res.serveType == "3DML") { + var url; + if (res.url.indexOf("{host}") != -1) { + url = res.url.replace("{host}", iisHost); + } else { + url = modelUrl + "/" + res.url } - for (let j in Viewer.scene.primitives._primitives) { - if (Viewer.scene.primitives._primitives[j].id == layer.cnName) { - Viewer.scene.primitives.remove(Viewer.scene.primitives._primitives[j]); - break; - } - } - - let list = this.$store.state.setAlphaList; - for (let i = 0; i < list.length; i++) { - if (list[i].name == layer.cnName) { - list.splice(i, 1); - } - } - } - - if (arr.length) this.addTilesetLayers(arr); - }, - // 娣诲姞Tileset鍥惧眰 - addTilesetLayers (layers) { - for (let i in layers) { - let res = layers[i]; - let url = res.url.indexOf("{host}") > -1 ? res.url.replace("{host}", iisHost) : modelUrl + "/" + res.url; - - let tileset = Viewer.scene.primitives.add( + var tileset = Viewer.scene.primitives.add( new Cesium.Cesium3DTileset({ name: res.cnName, - url: url, + url: url, //192.168.20.106,to4 + maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16 + maximumMemoryUsage: 768, // 鏈�澶у唴瀛橈細512 + dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse skipLevelOfDetail: true, // 鍦ㄩ亶鍘嗘椂鍊欒烦杩囪鎯咃細false - baseScreenSpaceError: 1024, - maximumScreenSpaceError: 64, // 鏈�澶у睆骞曠┖闂撮敊璇細16锛屾暟鍊煎姞澶ц兘璁╂渶缁堟垚鍍忓彉妯$硦 - skipScreenSpaceErrorFactor: 16, - skipLevels: 1, - immediatelyLoadDesiredLevelOfDetail: false, - loadSiblings: true, // 鑷姩浠庝腑蹇冨紑濮嬭秴娓呭寲妯″瀷锛歠alse - cullWithChildrenBounds: true, // 浣跨敤瀛愰」杈圭晫浣撶Н鐨勫苟闆嗘潵鍓旈櫎鍥惧潡锛歵rue - cullRequestsWhileMoving: true, - cullRequestsWhileMovingMultiplier: 10, // 鍊艰秺灏忚兘澶熸洿蹇殑鍓旈櫎锛�60 - preloadWhenHidden: true, - preferLeaves: true, // 棰勮瀛愯妭鐐癸細false - maximumMemoryUsage: 768, // 鍐呭瓨鍒嗛厤鍙樺皬鏈夊埄浜庡唴瀛樺洖鏀讹紝鎻愬崌鎬ц兘浣撻獙 - progressiveResolutionHeightFraction: 0.5, // 鏁板�煎亸浜�0鑳藉璁╁垵濮嬪姞杞藉彉寰楁ā绯� - dynamicScreenSpaceErrorDensity: 0.5, // 鏁板�煎姞澶э紝鑳借鍛ㄨ竟鍔犺浇鍙樺揩 - dynamicScreenSpaceErrorFactor: 2, // 鍔ㄦ�佸睆骞曠┖闂磋宸殑绯绘暟 - dynamicScreenSpaceError: true, // 鍑忓皯绂荤浉鏈鸿緝杩滅殑灞忓箷绌洪棿閿欒锛歠alse锛屽叏灞忓姞杞藉畬涔嬪悗鎵嶆竻鏅板寲鎴垮眿 }) ); + tileset.readyPromise.then((tileset) => { tileset.id = res.cnName; tileset.layerId = res.id; tileset.pubid = res.pubid; - if (res.serveType != '3DML') { - // Cesium.Matrix4.equals(a,b) 鍒ゆ柇鐭╅樀鏄惁鐩哥瓑锛屾暣涓牴鑺傜偣妯″瀷鐭╅樀锛岃tileSet=>涓栫晫鍧愭爣绯伙紝鍗曚綅鐭╅樀瀵硅绾垮�间负1.0鐨�4*4鐭╅樀 + + // Cesium.Matrix4.equals(a,b)鍒ゆ柇涓や釜鍥涚淮鐭╅樀鏄惁鐩哥瓑 + // 鏁翠釜鏍硅妭鐐规ā鍨嬬煩闃碉紝璇ileSet=>涓栫晫鍧愭爣绯� + // 鍗曚綅鐭╅樀锛屽瑙掔嚎鍊间负1.0鐨�4*4鐭╅樀 if (!Cesium.Matrix4.equals(tileset.root.transform, Cesium.Matrix4.IDENTITY)) { - // 鑾峰彇妯″瀷鐨勪笘鐣屽潗鏍�(绗涘崱灏�)锛孋esium.Matrix4.getTranslation 閫氳繃浠垮皠鍙樻崲鐭╅樀鑾峰彇璇ileSet鐨勪笘鐣屽潗鏍� - const transformCenter = Cesium.Matrix4.getTranslation(tileset.root.transform, new Cesium.Cartesian3()); + // 鑾峰彇妯″瀷鐨勪笘鐣屽潗鏍�(绗涘崱灏�) + // Cesium.Matrix4.getTranslation 閫氳繃浠垮皠鍙樻崲鐭╅樀鑾峰彇璇ileSet鐨勪笘鐣屽潗鏍� + const transformCenter = Cesium.Matrix4.getTranslation( + tileset.root.transform, + new Cesium.Cartesian3() + ); // 灏嗙瑳鍗″皵鍧愭爣杞崲涓篧GS84缁忕含搴﹀潗鏍囷紙妯″瀷鐨勶級 - const transformCartographic = Cesium.Cartographic.fromCartesian(transformCenter); + const transformCartographic = Cesium.Cartographic.fromCartesian( + transformCenter + ); // 灏嗙瑳鍗″皵鍧愭爣杞崲涓篧GS84缁忕含搴﹀潗鏍囷紙鎴潰鐨勶級 - const boundingSphereCartographic = Cesium.Cartographic.fromCartesian(tileset.boundingSphere.center); + const boundingSphereCartographic = Cesium.Cartographic.fromCartesian( + tileset.boundingSphere.center + ); const height = boundingSphereCartographic.height - transformCartographic.height; // 浠庝竴涓狢artesian3瀵硅薄鐢熸垚Matrix4鍙樻崲鐭╅樀锛堣鍒囬潰鐨勶級 window.modelHeight = height; - } else { - window.modelHeight = 0; - } - this.setTilesetArgs(tileset, res); + } else window.modelHeight = 0; + this.getTilesetArgs(tileset, res); } }); - } - }, - // 鍒囨崲TMS - setChangeTMS (layers, checked) { - let ids = this.getCheckNodesIds(), arr = []; - for (let j in layers) { - let layer = layers[j]; - if (ids.indexOf(layer.id) > -1) { - arr.push(layer); - continue; + this.$store.state.setAlphaList.push({ + name: res.cnName, + alpha: 1 + }) + window.model = tileset + } else if (res.serveType == "TMS") { + var url = res.url; + if (res.url.indexOf("{host}") != -1) { + url = res.url.replace("{host}", iisHost); } - - for (let i = 0; i < window.Viewer.imageryLayers._layers.length; i++) { - if (window.Viewer.imageryLayers._layers[i].name == layer.cnName) { - window.Viewer.imageryLayers.remove(window.Viewer.imageryLayers._layers[i]); - break; - } - } - } - - if (arr.length) this.addTMSLayers(arr); - }, - // 娣诲姞TMS鍥惧眰 - addTMSLayers (layers) { - for (let i in layers) { - let res = layers[i]; - res.url = res.url.indexOf("{host}") > -1 ? res.url.replace("{host}", iisHost) : res.url; if (res.pubid) { - this.setTMSLayerByPubid(res); - continue; + this.setQueryPubid(res); + } else { + + var layer = Viewer.imageryLayers.addImageryProvider( + new Cesium.UrlTemplateImageryProvider({ + url: url, + maximumLevel: 22, + }) + ); + layer.name = res.cnName; + this.setChangeWMS(); } - let layer = Viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({ - url: res.url, - maximumLevel: 22, - })); - layer.id = res.id; - layer.name = res.cnName; - } - }, - // 鍒囨崲Mpt - setChangeMpt (layers, checked) { - let ids = this.getCheckNodesIds(), arr = []; - for (let j in layers) { - let layer = layers[j]; - if (ids.indexOf(layer.id) != -1) { - arr.push(layer); - continue; + } else if (res.serveType == "Mpt") { + + if (res.url.indexOf("{host}") != -1) { + res.url = res.url.replace("{host}", iisHost); } + var url = res.url.split(';') - for (let i in this.mptLayer) { - if (this.mptLayer[i].treeobj.name == layer.cnName) { - this.mptLayer[i].deleteObject(); - this.mptLayer.splice(i, 1); - } - } - } - - if (arr.length) this.addMptLayers(arr); - }, - // 娣诲姞Mpt鍥惧眰 - addMptLayers (layers) { - for (let i in layers) { - let res = layers[i]; - if (res.url.indexOf("{host}") > -1) res.url = res.url.replace("{host}", iisHost); - let urls = res.url.split(';') - - let layer = sgworld.Creator.createImageryProvider(res.cnName, "wms", { - url: urls[0], - layers: urls[1] + var layer = sgworld.Creator.createImageryProvider(res.cnName, "wms", { + url: url[0], + layers: url[1] }, "0", undefined, true, ""); - this.mptLayer.push(layer); + this.mptLayer.push(layer) + setTimeout(() => { + this.setChangeWMS(); + }, 500); } + }, - // 鍒囨崲DEM - setChangeDEM (layers, checked) { - let ids = this.getCheckNodesIds(), arr = [], isDel = false, useSG = false; - for (let i in layers) { - let layer = layers[i]; - if (ids.indexOf(layer.id) != -1) { - arr.push(layer.url); - continue; + async getTilesetArgs(tileset, res) { + if (res.pubid > 0) { + const data = await comprehensive_selectPubById({ id: res.pubid }) + if (data.code != 200) { + + } else { + if (res.serveType != '3DML') { + this.reload(tileset, data.result.json) + } else { + this.tileSet(tileset, parseFloat(res.elev)) + } + + } + } else { + this.tileSet(tileset, parseFloat(res.elev)) + + } + + + + + }, + async setQueryPubid(res) { + const data = await comprehensive_selectPubById({ id: res.pubid }) + if (data.code != 200) { + + } else { + var url = data.result.url; + + if (res.url.indexOf("{host}") != -1) { + url = res.url.replace("{host}", iisHost); + } + var min = data.result.min; + var max = data.result.max; + var layer; + if (max > 0) { + layer = Viewer.imageryLayers.addImageryProvider( + new Cesium.UrlTemplateImageryProvider({ + url: url, + minimumLevel: min, + maximumLevel: max, + + }) + ); + } else { + layer = Viewer.imageryLayers.addImageryProvider( + new Cesium.UrlTemplateImageryProvider({ + url: url, + minimumLevel: min, + }) + ); } - if (window.Viewer.terrainProvider._layers[0].resource._url == layer.url) isDel = true; // 鍒犻櫎DEM - } + layer.name = res.cnName; - if (!arr.length && isDel) useSG = true; // demLayer - if (arr.length) this.addDEMLayers(arr[0], useSG); - }, - // 娣诲姞DEM鍥惧眰 - addDEMLayer (url, useSG) { - if (useSG) { - let option = { - url: window.sceneConfig.SGUrl, - layerName: window.sceneConfig.mptName, - requestVertexNormals: true - }; - window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); - } else { - window.terrainLayer = new Cesium.CesiumTerrainProvider({ - url: url, - requestVertexNormals: true - }); + if (data.result.geom) { + // var wkt = this.$wkt.parse(data.result.geom); + // Viewer.camera.flyTo({ + // destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], 2000), + // }); + } + this.setChangeWMS(); } - Viewer.terrainProvider = terrainLayer; }, - // 璁剧疆Tileset鍙傛暟 - async setTilesetArgs (tileset, res) { - if (res.serveType == '3DML' || !res.pubid) { - this.setTilesetHeigth(tileset, parseFloat(res.elev)); - return; - } - - const data = await comprehensive_selectPubById({ id: res.pubid }) - if (data.code == 200) this.setTilesetCoord(tileset, data.result.json); + reload(tileset, res) { + var vm = JSON.parse(res) + var pos = Cesium.Cartesian3.fromDegrees(vm.lon, vm.lat, vm.height); + var converter = Cesium.Transforms.eastNorthUpToFixedFrame; + var hpr = new Cesium.HeadingPitchRoll(Cesium.Math.toRadians(vm.yaw), 0, 0); + var matrix = Cesium.Transforms.headingPitchRollToFixedFrame(pos, hpr, Cesium.Ellipsoid.WGS84, converter); + tileset._root.transform = matrix; + // Viewer.flyTo(tileset); }, - // 璁剧疆Tileset楂樺害 - setTilesetHeigth (tileset, height) { + tileSet(tileset, height) { //3dtile妯″瀷鐨勮竟鐣岀悆浣� - let boundingSphere = tileset.boundingSphere; + var boundingSphere = tileset.boundingSphere; //杩崱灏旂┖闂寸洿瑙掑潗鏍�=>鍦扮悊鍧愭爣锛堝姬搴﹀埗锛� - let cartographic_original = Cesium.Cartographic.fromCartesian(boundingSphere.center); + var cartographic_original = Cesium.Cartographic.fromCartesian(boundingSphere.center); //鍦扮悊鍧愭爣锛堝姬搴﹀埗锛�=>杩崱灏旂┖闂寸洿瑙掑潗鏍� - let Cartesian3_original = Cesium.Cartesian3.fromRadians(cartographic_original.longitude, cartographic_original.latitude, cartographic_original.height); - let Cartesian3_offset = Cesium.Cartesian3.fromRadians(cartographic_original.longitude, cartographic_original.latitude, height); + var Cartesian3_original = Cesium.Cartesian3.fromRadians(cartographic_original.longitude, cartographic_original.latitude, cartographic_original.height); + var Cartesian3_offset = Cesium.Cartesian3.fromRadians(cartographic_original.longitude, cartographic_original.latitude, height); //鑾峰緱鍦伴潰鍜宱ffset鐨勮浆鎹� - let translation = Cesium.Cartesian3.subtract(Cartesian3_offset, Cartesian3_original, new Cesium.Cartesian3()); + var translation = Cesium.Cartesian3.subtract(Cartesian3_offset, Cartesian3_original, new Cesium.Cartesian3()); //淇敼妯″瀷鐭╅樀 tileset.modelMatrix = Cesium.Matrix4.fromTranslation(translation); // Viewer.flyTo(tileset); }, - // 璁剧疆Tileset鍧愭爣 - setTilesetCoord (tileset, json) { - let vm = JSON.parse(json); - let pos = Cesium.Cartesian3.fromDegrees(vm.lon, vm.lat, vm.height); - let converter = Cesium.Transforms.eastNorthUpToFixedFrame; - let hpr = new Cesium.HeadingPitchRoll(Cesium.Math.toRadians(vm.yaw), 0, 0); - let matrix = Cesium.Transforms.headingPitchRollToFixedFrame(pos, hpr, Cesium.Ellipsoid.WGS84, converter); - tileset._root.transform = matrix; - // Viewer.flyTo(tileset); + setTreeData(source) { + let cloneData = JSON.parse(JSON.stringify(source)); // 瀵规簮鏁版嵁娣卞害鍏嬮殕 + return cloneData.filter((father) => { + // 寰幆鎵�鏈夐」 + let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 + branchArr.length > 0 ? (father.children = branchArr) : ""; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� + // 灞炰簬鍚屼竴瀵硅薄闂锛屼緥濡傦細浠� a=b銆乧=1 锛岀劧鍚庡啀浠� b.c=c 锛� 閭d箞 a.c=b.c=c=1 锛涘悓鐞嗭紝鍚庣画浠� c.d=2 ,閭d箞 a.c.d 涔熸槸=2锛� + // 鐢辨寰幆澶氭鍚庯紝灏辫兘褰㈡垚鐩稿簲鐨勬爲褰㈡暟鎹粨鏋� + return father.pid == 0; // 杩斿洖涓�绾ц彍鍗� + }); }, - // 鏍规嵁Pubid璁剧疆TMS鍥惧眰 - async setTMSLayerByPubid (res) { - const data = await comprehensive_selectPubById({ id: res.pubid }); - if (!data || data.code != 200) return; + async layersStart() { + const data = await perms_selectLayers(); + if (data.code != 200) { + return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触"); + } + var std = data.result; + var that = this; + var checkKey = []; + let checkedLayers = []; + var val = std.filter((str) => { + if (str.type == 1) { + return str; + } + if (str.url != null && str.type == 2) { + if (str.isShow == 1) { + checkKey.push(str.id); + // that.setAddLayers(str); + if (str.serveType == "WMS" && str.url) { + checkedLayers.push(str); + } + } + return str; + } + }); - let provider = data.result.max > 0 ? - new Cesium.UrlTemplateImageryProvider({ - url: res.url, - minimumLevel: data.result.min, - maximumLevel: data.result.max - }) : - new Cesium.UrlTemplateImageryProvider({ - url: res.url, - minimumLevel: data.result.min - }); + //瀛樺偍閫変腑鍥惧眰 + sessionStorage.setItem("checkedLayers", JSON.stringify(checkedLayers)); + var res = this.setTreeData(val); - let layer = Viewer.imageryLayers.addImageryProvider(provider); - layer.name = res.cnName; - - // if (data.result.geom) { - // let wkt = this.$wkt.parse(data.result.geom); - // Viewer.camera.flyTo({ - // destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], 2000) + // for (var i in res) { + // res[i].children = res[i].children.filter((val) => { + // if (val.children != null) { + // return val; + // } // }); // } + this.treeData = res; + this.$refs.tree.setCheckedKeys(checkKey); }, - // 鍒囨崲椤圭洰 - prjChanged (code) { - this.$store.state.pigCode = code; - if (code) { - this.isBusy = true; - let checkedLayers = this.getCheckedLayersByCode(code); - - let checkedKeys = []; - for (let i in checkedLayers) { - checkedKeys.push(checkedLayers[i].id); - } - - this.$refs.tree.setCheckedKeys(checkedKeys); - sessionStorage.setItem("checkedLayers", JSON.stringify(checkedLayers)); - this.isBusy = false; + async treelayersStart() { + const data = await perms_selectLayers(); + if (data.code != 200) { + return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触"); } - - for (let i = 0, c = this.treeData.length; i < c; i++) { - this.handleCheckChange(this.treeData[i], true); - } - }, - // 鏍规嵁椤圭洰缂栫爜鑾峰彇閫変腑鍥惧眰 - getCheckedLayersByCode (code) { - let layers = []; - for (let i = 0, c = this.treeData.length; i < c; i++) { - this.getCheckedChildLayersByCode(this.treeData[i], code, layers, false); - } - - return layers; - }, - // 鏍规嵁椤圭洰缂栫爜鑾峰彇閫変腑瀛愬浘灞� - getCheckedChildLayersByCode (data, code, layers, isPrj) { - if (data.children && data.children.length) { - for (let i = 0, c = data.children.length; i < c; i++) { - let layer = data.children[i]; - if (layer.children && layer.children.length) { - let flag = layer.type == 1 && layer.isProject && layer.enName == code; - this.getCheckedChildLayersByCode(layer, code, layers, flag); - continue; - } - - if (layer.type == 2 && (layer.isProject || isPrj)) { - layers.push(layer); + var std = []; + var layer_list = []; + var layer_groups = []; + for (var i in data.result) { + if (data.result[i].type == 1) { + layer_groups.push({ + id: data.result[i].id, + label: data.result[i].cnName, + type: data.result[i].type, + isEdit: false, + children: [], + }); + } else if (data.result[i].type == 2) { + if (data.result[i].url != null) { + var layer_entity = { + id: data.result[i].id, + pid: data.result[i].pid, + label: data.result[i].cnName, + resource: data.result[i].url, + type: data.result[i].type, + isEdit: false, + }; + layer_list.push(layer_entity); } } - return; } + for (var i in layer_list) { + for (var j in layer_groups) { + if (layer_list[i].pid === layer_groups[j].id) { + layer_groups[j].children.push(layer_list[i]); + } + } + } + layer_groups = layer_groups.filter((res) => { + if (res.children && res.children.length != 0) { + return res; + } + }); + this.treeData = layer_groups; - if (data.type == 2 && (data.isProject || isPrj)) { - layers.push(data); + for (var i in data.result) { + if (data.result[i].type == 2 && data.result[i].url != null) { + for (var j = 0; j < window.Viewer.imageryLayers._layers.length; j++) { + var val_id = window.Viewer.imageryLayers._layers[j]; + if (val_id.show == true) { + if (val_id.imageryProvider.name == data.result[i].cnName) { + std.push(data.result[i].id); + } + } + } + } + } + this.$refs.tree.setCheckedKeys(std); + }, + // 鏌ヨ + filterNode(value, data) { + + if (!value) return true; + return data.cnName.indexOf(value) !== -1; + }, + + async setproChange(res) { + if (res) { + this.setCheeckedLayer = this.$refs.tree.getCheckedKeys(); + + this.$store.state.pigCode = res; + var st_code = this.optionts.filter(rs => { + if (rs.code == res) { + return rs + } + }) + + var val = this.$store.state.oldTree.filter(rs => { + if (rs.enName == st_code[0].code) { + return rs + } + }) + this.removeAllLayer(); + var obj = { + dirid: res, + pageIndex: 1, + pageSize: 10, + } + + const data = await project_selectByDirid(obj); + if (data.code != 200) { + this.$message.error("鍒楄〃鑾峰彇澶辫触"); + return; + } + + if (data.result[0]) { + var geom = data.result[0].geom + if (geom) { + var wkt = this.$wkt.parse(geom) + Viewer.camera.flyTo({ + destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[0].toFixed(6), wkt.coordinates[1].toFixed(6), 5000), + }); + } + + } + this.cannelTerrainLayer(); + this.setTerrainMptLayer(); + //娓呯┖鍥惧眰鏍戦�変腑鐘舵�� + this.$refs.tree.setCheckedKeys([]); + + + if (val.length > 0) { + + if (val[0].type == 1 && val[0].isProject == 1) {//椤圭洰鍒嗙被 + + var std_check = []; + for (var i in val) { + var std_val = this.getNewTree([this.$refs.tree.getNode(val[i].id).data], []) + for (var j in std_val) { + std_check.push(std_val[j]) + } + } + + + var value = this.$store.state.isProjectLayer; + for (var i in value) { + + std_check.push(value[i]) + } + this.setProjectLayer(std_check); + } else { + this.setChangeProLayer(); + } + } else { + this.setChangeProLayer(); + } + } else { + this.removeAllLayer(); + this.$store.state.pigCode = null; + this.$refs.tree.setCheckedKeys(this.setCheeckedLayer); + var std = []; + for (var i in this.setCheeckedLayer) { + std.push(this.$refs.tree.getNode(this.setCheeckedLayer[i]).data) + } + this.setProjectLayer(std); } }, - // 娣诲姞WFS鍥惧眰 * - addWFSLayers (res) { - let url = - res.resource + - "?service=WFS&version=1.0.0&request=GetFeature&typeName=" + - res.url + - "&outputFormat=application%2Fjson"; - $.ajax({ - url: url, - cache: false, - async: true, - success: function (data) { - let datasource = Cesium.GeoJsonDataSource.load(data, { - stroke: Cesium.Color.YELLOW, - fill: Cesium.Color.YELLOW.withAlpha(0.1), - alpha: 0.1, - strokeWidth: 8, - clampToGround: true, //鏄惁璐村湴 - }); - datasource.then((data) => { - data.name = res.cnName; - window.Viewer.dataSources.add(data); - }); - }, - error: function (data) { - console.log("error"); - }, + removeAllLayer() { + for (var j in Viewer.scene.primitives._primitives) { + Viewer.scene.primitives.remove(Viewer.scene.primitives._primitives[j]) + } + for (var i in window.Viewer.dataSources._dataSources) { + window.Viewer.dataSources.remove( + window.Viewer.dataSources._dataSources[i] + ); + } + for (var i = 0; i < window.Viewer.imageryLayers._layers.length; i++) { + var val_id = window.Viewer.imageryLayers._layers[i].id; + if (val_id == 'TMS') { + window.Viewer.imageryLayers.remove( + window.Viewer.imageryLayers._layers[i] + ); + } + } + for (var i in this.mptLayer) { + this.mptLayer[i].deleteObject(); + this.mptLayer.splice(i, 1) + } + this.mptLayer = []; + }, + setProjectLayer(res) { + var layerid = []; + for (var i in res) { + layerid.push(res[i].id) + } + this.$refs.tree.setCheckedKeys(layerid); + // var value = this.$refs.tree.getCheckedNodes(); + // this.$bus.$emit("showMenuLayer", value); + + var listWMS = []; + var listWFS = []; + var listTileset = []; + var listTMS = []; + var listMpt = []; + for (var i in res) { + if (res[i].type == 2) { + switch (res[i].serveType) { + case 'WMS': + listWMS.push(res[i]) + break; + case 'WFS': + listWFS.push(res[i]) + break; + case '3DML': + case 'Tileset': + listTileset.push(res[i]) + break; + case 'Mpt': + listMpt.push(res[i]) + break; + case 'TMS': + listTMS.push(res[i]) + break; + + } + } + } + // this.setChangeProLayer(); + this.setChangeWMS(listWMS, true); + this.setChangeWFS(listWFS, true); + this.setChangeTileset(listTileset, true); + this.setChangeTMS(listTMS, true); + this.setChangeMpt(listMpt, true); + }, + getNewTree(obj, result) { + for (const i in obj) { + console.log(obj[i].cnName) + result.push(obj[i]) + if (obj[i].children && obj[i].children.length > 0) { + this.getNewTree(obj[i].children, result) + } + } + return result + }, + cannelTerrainLayer() { + //娓呯┖鍦板舰 + if (window.terrainMptLayer) { + window.terrainMptLayer.deleteObject(); + window.terrainMptLayer = null; + } + if (window.terrainDemLayer) { + Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider(); + window.terrainDemLayer = null; + } + }, + setTerrainMptLayer() { + // //榛樿鍦板舰MPT + // var option = { + // url: window.sceneConfig.SGUrl, + // layerName: window.sceneConfig.mptName, + // requestVertexNormals: true, + // }; + // window.terrainMptLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, ""); + window.terrainDemLayer = new Cesium.CesiumTerrainProvider({ + // url: LFData + '/3d/terrain/dem20230321' + url: demLayer }); - let vectorLayer = new VectorLayer({ - name: res.cnName, - source: new VectorSource({ - url: url, - format: new GeoJSON(), - }), - }); - window.map.addLayer(vectorLayer); + Viewer.terrainProvider = window.terrainDemLayer + }, + setChangeProLayer() { + var value = this.$store.state.isProjectLayer; + if (value.length != 0) { + + var std = []; + for (var i in value) { + std.push(value[i].id) + } + this.$refs.tree.setCheckedKeys(std); + this.$bus.$emit("showMenuLayer", value); + } + + + }, + + async getMenuProject() { + const data = await project_selectDirAll(); + if (data.code != 200) { + return + } + this.optionts = data.result; + }, + }, + watch: { + filterText(val) { + this.$refs.tree.filter(val); + }, + }, + mounted() { + this.getMenuProject() + this.$bus.$on("treeDataCopy", (res) => { + this.$store.state.treeData = this.treeData; + this.$store.state.checkedKeys = this.$refs.tree.getCheckedKeys(); + }); + + if (this.$store.state.showAllLayers == true) { + this.layersStart(); + this.$store.state.showAllLayers = false; + } else { + this.treeData = this.$store.state.treeData; + this.$refs.tree.setCheckedKeys(this.$store.state.checkedKeys); } }, }; @@ -717,6 +1517,7 @@ .tree-container /deep/ .el-tree-node { position: relative; padding-left: 10px; + // text-indent: 16px; } .tree-container /deep/ .el-tree-node__children { @@ -840,11 +1641,9 @@ position: absolute; right: auto; } - /deep/.el-table__placeholder { padding-left: 8px; } - /deep/.el-card__body { padding: 10px !important; > div { @@ -855,15 +1654,15 @@ } } } - /deep/ .el-form .el-form-item { padding-right: 0px !important; } - /deep/ .el-form-item { margin-bottom: 10px !important; } - +/*.lalala {*/ +/*position: relative;*/ +/*}*/ .text { font-size: 14px; } diff --git a/src/views/Tools/queryinfo.vue b/src/views/Tools/queryinfo.vue index 83702c6..bb7d8ad 100644 --- a/src/views/Tools/queryinfo.vue +++ b/src/views/Tools/queryinfo.vue @@ -1,16 +1,20 @@ <template> <div class="InfoPopup"> - <Popup ref="pop" - v-for="(data, index) in PopupData" - :key="data.id" - :title="data.title || '鎻愮ず'" - maxHeight="400" - @close="close(data.id)" - left="calc(90% - 900px)" - top="calc(100% - 470px) "> + <Popup + ref="pop" + v-for="(data, index) in PopupData" + :key="data.id" + :title="data.title || '鎻愮ず'" + maxHeight="400" + @close="close(data.id)" + left="calc(90% - 900px)" + top="calc(100% - 470px) " + > <div> - <div style="width:940px;height:400px;" - v-drag> + <div + style="width:940px;height:400px;" + v-drag + > <map-menu-pop v-if="$store.state.mapPopBoxFlag == '1'" /> <map-space-pop v-if="$store.state.mapPopBoxFlag == '2'" /> <pipe-line-analy v-if="$store.state.mapPopBoxFlag == '3'" /> @@ -37,7 +41,7 @@ pipeLineAnaly, mapPickUpPop }, - data () { + data() { return { // 寮圭獥鏁版嵁 PopupData: ['queryinfo'], @@ -46,7 +50,11 @@ }; }, computed: {}, - mounted () { }, + mounted() { + + + + }, directives: { drag: { inserted: function (el) { @@ -57,8 +65,7 @@ const disX = e.clientX; const w = dragDom.clientWidth; const minW = 500; - const maxW = 1024; - + const maxW = 940; var nw; document.onmousemove = function (e) { // 閫氳繃浜嬩欢濮旀墭锛岃绠楃Щ鍔ㄧ殑璺濈 @@ -80,14 +87,14 @@ }, methods: { // 鍏抽棴鎵�鏈� - closeAll () { + closeAll() { this.PopupData.forEach((item) => { item.close && item.close(); }); this.PopupData = []; }, // 鍏抽棴寮圭獥 - close (id) { + close(id) { let index = this.PopupData.findIndex((item) => { console.log(item); return item.id === id; @@ -98,6 +105,7 @@ for (var i in this.$store.state.pipelineEntity) { sgworld.Viewer.entities.remove(this.$store.state.pipelineEntity[i]); } + } if (this.$store.state.primitLayer != null) { sgworld.Viewer.entities.remove(this.$store.state.primitLayer); @@ -125,7 +133,7 @@ this.$store.state.histLenged = false; }, // 鎵撳紑寮圭獥 - open (title, value, style = {}) { + open(title, value, style = {}) { this.PopupData.push({ id: this.createRandomId(), title, @@ -139,7 +147,7 @@ return this.PopupData[index]; }, // 闅忔満id - createRandomId () { + createRandomId() { return ( (Math.random() * 10000000).toString(16).substr(0, 4) + '-' + @@ -148,10 +156,12 @@ Math.random().toString().substr(2, 5) ); }, - mouseDown (event) { + mouseDown(event) { // document.addEventListener("mousemove", this.mouseMove); // this.lastX = event.screenX; }, }, }; -</script> \ No newline at end of file +</script> + + diff --git a/src/views/datamanage/catalogueManage.vue b/src/views/datamanage/catalogueManage.vue index d04bca9..02bd753 100644 --- a/src/views/datamanage/catalogueManage.vue +++ b/src/views/datamanage/catalogueManage.vue @@ -184,7 +184,6 @@ :key="item.value" :label="item.label" :value="item.value" - > </el-option> </el-select> @@ -230,7 +229,6 @@ disabled type="textarea" style=" max-width: 420px" - autosize /> </el-form-item> @@ -335,7 +333,7 @@ type="textarea" resize="none" style="height: 100%; overflow: auto" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuesuffix')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuesuffix')" /> </el-form-item> <el-form-item @@ -352,7 +350,7 @@ v-model="ruleForm.checks" multiple style="width:100%;" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valueexamine')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valueexamine')" > <el-option v-for="item in options" @@ -702,6 +700,7 @@ queryDirTree().then((res) => { // console.log(res); if (res.code == 200) { + this.oriData = res.result; this.newData = res.result; this.dirList = this.treeData(res.result); @@ -754,19 +753,22 @@ if (currentId != 0) { const tempChildrenNodex1 = pchildNodes[currentId - 1]; const tempChildrenNodex2 = pchildNodes[currentId]; - tempChildrenNodex2.orderNum = - pchildNodes[currentId - 1].data.orderNum; - tempChildrenNodex1.orderNum = pchildNodes[currentId].data.orderNum; + // tempChildrenNodex2.orderNum = + // pchildNodes[currentId - 1].data.orderNum; + // tempChildrenNodex1.orderNum = pchildNodes[currentId].data.orderNum; var arr = []; this.oriData.filter((res) => { if (res.id == tempChildrenNodex2.data.id) { - res.orderNum = tempChildrenNodex2.orderNum; + // res.orderNum = tempChildrenNodex2.orderNum; arr.push(res); } else if (res.id == tempChildrenNodex1.data.id) { - res.orderNum = tempChildrenNodex1.orderNum; + // res.orderNum = tempChildrenNodex1.orderNum; arr.push(res); } }); + const orderNum = arr[1].orderNum + arr[1].orderNum = arr[0].orderNum + arr[0].orderNum = orderNum this.newData = arr; this.sendChange(); } else { @@ -780,19 +782,22 @@ if (currentId < pchildNodes.length - 1) { const tempChildrenNodex1 = pchildNodes[currentId + 1]; const tempChildrenNodex2 = pchildNodes[currentId]; - tempChildrenNodex2.orderNum = - pchildNodes[currentId + 1].data.orderNum; - tempChildrenNodex1.orderNum = pchildNodes[currentId].data.orderNum; + // tempChildrenNodex2.orderNum = + // pchildNodes[currentId + 1].data.orderNum; + // tempChildrenNodex1.orderNum = pchildNodes[currentId].data.orderNum; var arr = []; this.oriData.filter((res) => { if (res.id == tempChildrenNodex2.data.id) { - res.orderNum = tempChildrenNodex2.orderNum; + // res.orderNum = tempChildrenNodex2.orderNum; arr.push(res); } else if (res.id == tempChildrenNodex1.data.id) { - res.orderNum = tempChildrenNodex1.orderNum; + // res.orderNum = tempChildrenNodex1.orderNum; arr.push(res); } }); + const orderNum = arr[1].orderNum + arr[1].orderNum = arr[0].orderNum + arr[0].orderNum = orderNum this.newData = arr; this.sendChange(); } else { @@ -870,7 +875,13 @@ if (valid) { this.fullscreenLoading = true; var val = this.ruleForm; - val.checks = this.ruleForm.checks.toString() + if (this.ruleForm.checks) { + val.checks = this.ruleForm.checks.toString() + } else { + val.checks = '' + } + + insertDir(val) .then((res) => { setTimeout(() => { @@ -1041,11 +1052,11 @@ this.getDirTree(); return; } else { - this.$message.error("淇敼澶辫触锛岃閲嶈瘯锛�"); + this.$message.error("绉诲姩澶辫触锛岃閲嶈瘯锛�"); } }) .catch(() => { - this.$message.error("淇敼澶辫触锛岃閲嶈瘯锛�"); + this.$message.error("绉诲姩澶辫触锛岃閲嶈瘯锛�"); }); }, diff --git a/src/views/datamanage/dictionaryManage.vue b/src/views/datamanage/dictionaryManage.vue index 9fa30a9..74b2aa5 100644 --- a/src/views/datamanage/dictionaryManage.vue +++ b/src/views/datamanage/dictionaryManage.vue @@ -152,7 +152,7 @@ min-width="100" prop="tab" :label=" - $t('dataManage.dictionaryManageObj.rangeAssociationTable') + $t('dataManage.dictionaryManageObj.tableName') " /> <el-table-column diff --git a/src/views/datamanage/metadataManage.vue b/src/views/datamanage/metadataManage.vue index 0c92ee3..5713039 100644 --- a/src/views/datamanage/metadataManage.vue +++ b/src/views/datamanage/metadataManage.vue @@ -1,14 +1,19 @@ <template> <div class="authorityManagement_box"> - <My-bread - :list="[ + <My-bread :list="[ `${$t('dataManage.dataManage')}`, `${$t('dataManage.metadataManage')}`, - ]" - ></My-bread> + ]"></My-bread> <el-divider /> - <div class="inquire subpage_Div" ref="container"> - <el-form ref="queryForm" :model="queryForm" :inline="true"> + <div + class="inquire subpage_Div" + ref="container" + > + <el-form + ref="queryForm" + :model="queryForm" + :inline="true" + > <div class="flex_box"> <div style="margin-right: auto"> <el-form-item size="small"> @@ -95,19 +100,21 @@ </el-option> </el-select> </el-form-item> - <el-form-item prop="name" size="small"> + <el-form-item + prop="name" + size="small" + > <!-- suffix-icon="el-icon-edit" :placeholder="$t('common.pleaseInput')"--> <el-input v-model="queryForm.name" :placeholder="$t('shuJuGuanLi.lable2')" style="width: 200px" - ><i + ><i slot="suffix" class="el-icon-search" @click="queryInfo()" style="padding-right: 8px" - ></i - ></el-input> + ></i></el-input> </el-form-item> </div> <div> @@ -127,7 +134,7 @@ size="small" @click="deleteMetaInfo" icon="el-icon-delete" - >{{ $t("common.delete") }} + >{{ $t("common.delete") }} </el-button> </el-form-item> <el-form-item v-if="btnStatus.download"> @@ -136,7 +143,7 @@ icon="el-icon-download" type="success" size="small" - >{{ $t("common.download") }} + >{{ $t("common.download") }} </el-button> </el-form-item> @@ -146,7 +153,7 @@ icon="el-icon-refresh" type="info" size="small" - >{{ $t("common.reset") }} + >{{ $t("common.reset") }} </el-button> </el-form-item> </div> @@ -197,7 +204,10 @@ </el-form> </div> <div class="dividing-line"></div> - <div class="table_box subpage_Div" :style="styleVar"> + <div + class="table_box subpage_Div" + :style="styleVar" + > <el-table :data="tableData" style="width: 100%" @@ -205,7 +215,10 @@ @selection-change="handleSelectionChange" height="calc(100% - 57px)" > - <el-table-column type="selection" width="55" /> + <el-table-column + type="selection" + width="55" + /> <el-table-column :label="$t('dataManage.dictionaryManageObj.number')" type="index" @@ -220,8 +233,7 @@ title="婧愭暟鎹煡璇�" @click="setQueryMetaData(scope.row)" target="_blank" - >{{ scope.row.name }}</el-link - > + >{{ scope.row.name }}</el-link> </span> <span v-else-if="scope.row.metaid > 0"> <el-link @@ -229,14 +241,15 @@ title="鍏冩暟鎹煡璇�" @click="setMetaDataQuery(scope.row)" target="_blank" - >{{ scope.row.name }}</el-link - ></span - > + >{{ scope.row.name }}</el-link></span> <span v-else>{{ scope.row.name }}</span> </template> </el-table-column> - <el-table-column prop="type" :label="$t('dataManage.vmobj.format')" /> + <el-table-column + prop="type" + :label="$t('dataManage.vmobj.format')" + /> <el-table-column prop="sizes" :label="$t('dataManage.vmobj.size')" @@ -259,7 +272,10 @@ <template slot-scope="scope"> <!-- <span ></span> --> <el-link></el-link> - <el-link :underline="false" @click="detail(scope.row)">{{ + <el-link + :underline="false" + @click="detail(scope.row)" + >{{ scope.row.tab }}</el-link> </template> @@ -270,7 +286,10 @@ :label="$t('dataManage.vmobj.tab')" :formatter="formatData" /> --> - <el-table-column prop="rows" :label="$t('dataManage.vmobj.row')" /> + <el-table-column + prop="rows" + :label="$t('dataManage.vmobj.row')" + /> <el-table-column prop="uname" :label="$t('dataManage.vmobj.createonuser')" @@ -280,14 +299,17 @@ :label="$t('dataManage.vmobj.createontime')" :formatter="formatData" /> - <el-table-column min-width="210" :label="$t('common.operate')"> + <el-table-column + min-width="210" + :label="$t('common.operate')" + > <template slot-scope="scope"> <el-button @click="showDetail(scope.row)" type="primary" plain size="small" - >{{ $t("common.details") }} + >{{ $t("common.details") }} </el-button> <el-button type="warning" @@ -296,7 +318,7 @@ v-if="btnStatus.update" @click="editInfo(scope.row)" style="margin-left: 10px" - >{{ $t("common.edit") }} + >{{ $t("common.edit") }} </el-button> <el-button plain @@ -304,12 +326,15 @@ v-if="showPreview(scope.row)" @click="handlePreview(scope.row)" style="margin-left: 10px" - >{{ $t("common.preview") }} + >{{ $t("common.preview") }} </el-button> </template> </el-table-column> </el-table> - <div class="pagination_box" style="margin-top: 15px"> + <div + class="pagination_box" + style="margin-top: 15px" + > <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" @@ -322,16 +347,28 @@ </el-pagination> </div> </div> - <div class="infoBox_box" v-show="showinfoBox"> + <div + class="infoBox_box" + v-show="showinfoBox" + > <div class="infoBox box_div"> - <div slot="header" class="clearfix"> + <div + slot="header" + class="clearfix" + > <span>{{ $t("common.details") }}</span> - <div style="float: right; cursor: pointer" @click="closeDetial"> + <div + style="float: right; cursor: pointer" + @click="closeDetial" + > <i class="el-icon-close"></i> </div> </div> <el-divider></el-divider> - <div class="contentBox" style="padding: 1%"> + <div + class="contentBox" + style="padding: 1%" + > <p>{{ $t("dataManage.vmobj.name") }}锛歿{ itemdetail.name }}</p> <el-divider></el-divider> <p>{{ $t("dataManage.vmobj.format") }}锛歿{ itemdetail.type }}</p> @@ -348,7 +385,7 @@ <el-divider></el-divider> <p>{{ $t("dataManage.vmobj.tab") }}锛歿{ itemdetail.tab }}</p> <el-divider></el-divider> - <p>{{ $t("dataManage.vmobj.row") }}锛歿{ itemdetail.row }}</p> + <p>{{ $t("dataManage.vmobj.row") }}锛歿{ itemdetail.rows }}</p> <el-divider></el-divider> <p> {{ $t("dataManage.vmobj.createonuser") }}锛歿{ itemdetail.uname }} @@ -360,7 +397,7 @@ }} </p> <el-divider></el-divider> - <p> + <!-- <p> {{ $t("dataManage.vmobj.depName") }}锛歿{ itemdetail.updateUser }} </p> <el-divider></el-divider> @@ -368,7 +405,7 @@ {{ $t("dataManage.vmobj.depName") }}锛歿{ setInfoBoxTime(itemdetail.updateTime) }} - </p> + </p> --> </div> </div> </div> @@ -384,24 +421,36 @@ :visible.sync="dialogFormVisible" :before-close="handleClose" > - <el-form :model="editForm" ref="editForm"> + <el-form + :model="editForm" + ref="editForm" + > <el-form-item :label="$t('dataManage.vmobj.name')" :label-width="formLabelWidth" > - <el-input v-model="editForm.name" autocomplete="off"></el-input> + <el-input + v-model="editForm.name" + autocomplete="off" + ></el-input> </el-form-item> <el-form-item :label="$t('dataManage.vmobj.format')" :label-width="formLabelWidth" > - <el-input v-model="editForm.type" autocomplete="off"></el-input> + <el-input + v-model="editForm.type" + autocomplete="off" + ></el-input> </el-form-item> <el-form-item :label="$t('dataManage.vmobj.size')" :label-width="formLabelWidth" > - <el-input v-model="editForm.sizes" autocomplete="off"></el-input> + <el-input + v-model="editForm.sizes" + autocomplete="off" + ></el-input> </el-form-item> <el-form-item :label="$t('dataManage.vmobj.depName')" @@ -467,7 +516,10 @@ :label="$t('dataManage.vmobj.describe')" :label-width="formLabelWidth" > - <el-input v-model="editForm.describe" autocomplete="off"></el-input> + <el-input + v-model="editForm.describe" + autocomplete="off" + ></el-input> </el-form-item> <!-- <el-form-item :label="$t('dataManage.vmobj.gather')" @@ -476,28 +528,40 @@ <el-input v-model="editForm.gather" autocomplete="off"></el-input> </el-form-item> --> </el-form> - <div v-if="behavior == '淇敼淇℃伅'" slot="footer" class="dialog-footer"> - <el-button size="small" @click="cancelEdit()" - >{{ $t("common.reset") }} + <div + v-if="behavior == '淇敼淇℃伅'" + slot="footer" + class="dialog-footer" + > + <el-button + size="small" + @click="cancelEdit()" + >{{ $t("common.reset") }} </el-button> <el-button size="small" type="primary" @click="sendEdit('editForm')" v-loading.fullscreen.lock="fullscreenLoading" - >{{ $t("common.submit") }} + >{{ $t("common.submit") }} </el-button> </div> - <div v-else slot="footer" class="dialog-footer"> - <el-button size="small" @click="cancelAdd('editForm')" - >{{ $t("common.reset") }} + <div + v-else + slot="footer" + class="dialog-footer" + > + <el-button + size="small" + @click="cancelAdd('editForm')" + >{{ $t("common.reset") }} </el-button> <el-button size="small" type="primary" @click="sendAdd('editForm')" v-loading.fullscreen.lock="fullscreenLoading" - >{{ $t("common.submit") }} + >{{ $t("common.submit") }} </el-button> </div> </el-dialog> @@ -529,7 +593,10 @@ align="center" ></el-table-column> </el-table> - <div style="margin-top: 10px" class="pagination_box"> + <div + style="margin-top: 10px" + class="pagination_box" + > <el-pagination @size-change="handleLoaderSizeChange" @current-change="handleLoaderCurrentChange" @@ -543,7 +610,10 @@ </div> </div> </el-dialog> - <div class="downloadBox box_div subpage_Div" v-if="showCodeBox"> + <div + class="downloadBox box_div subpage_Div" + v-if="showCodeBox" + > <h4 style="padding: 20px">{{ $t("common.passworld") }}</h4> <el-form :model="codeForm" @@ -552,14 +622,20 @@ label-width="100px" class="codeForm" > - <el-form-item :label="$t('common.passworld')" prop="password"> + <el-form-item + :label="$t('common.passworld')" + prop="password" + > <el-input type="password" v-model="codeForm.password" show-password ></el-input> </el-form-item> - <el-form-item :label="$t('common.SPassword')" prop="repassword"> + <el-form-item + :label="$t('common.SPassword')" + prop="repassword" + > <el-input type="password" v-model="codeForm.repassword" @@ -567,11 +643,17 @@ ></el-input> </el-form-item> <el-form-item> - <el-button class="primary" size="small" @click="download('codeForm')" - >{{ $t("common.confirm") }} + <el-button + class="primary" + size="small" + @click="download('codeForm')" + >{{ $t("common.confirm") }} </el-button> - <el-button type="info" size="small" @click="closeDown('codeForm')" - >{{ $t("common.cancel") }} + <el-button + type="info" + size="small" + @click="closeDown('codeForm')" + >{{ $t("common.cancel") }} </el-button> </el-form-item> </el-form> @@ -582,17 +664,30 @@ width="70%" > <div style="height: 65vh; width: 100%"> - <el-form :inline="true" :model="fromQueryMeta" class="demo-form-inline"> + <el-form + :inline="true" + :model="fromQueryMeta" + class="demo-form-inline" + > <el-form-item> - <el-input size="small" v-model="fromQueryMeta.name"></el-input> + <el-input + size="small" + v-model="fromQueryMeta.name" + ></el-input> </el-form-item> <el-form-item> - <el-button type="primary" size="small" @click="setSearchMetaData()" - >鏌ヨ + <el-button + type="primary" + size="small" + @click="setSearchMetaData()" + >鏌ヨ </el-button> - <el-button type="info" size="small" @click="setRestMetaData()" - >閲嶇疆 + <el-button + type="info" + size="small" + @click="setRestMetaData()" + >閲嶇疆 </el-button> </el-form-item> </el-form> @@ -648,7 +743,10 @@ :label="$t('dataManage.dataUpObj.tableName')" > <template slot-scope="scope"> - <a class="scopeRowColor" @click="detail(scope.row)">{{ + <a + class="scopeRowColor" + @click="detail(scope.row)" + >{{ scope.row.tab }}</a> </template> @@ -664,7 +762,10 @@ :label="$t('dataManage.dataUpObj.describe')" /> </el-table> - <div class="pagination_box" style="margin-top: 15px"> + <div + class="pagination_box" + style="margin-top: 15px" + > <el-pagination @size-change="handleMetaSizeChange" @current-change="handMetaCurrentChange" @@ -736,7 +837,10 @@ :label="$t('dataManage.dataUpObj.tableName')" > <template slot-scope="scope"> - <a class="scopeRowColor" @click="detail(scope.row)">{{ + <a + class="scopeRowColor" + @click="detail(scope.row)" + >{{ scope.row.tab }}</a> </template> @@ -762,7 +866,10 @@ width="70%" :close-on-click-modal="false" > - <div v-if="dialog.isPdf" class="pdfClass"> + <div + v-if="dialog.isPdf" + class="pdfClass" + > <iframe :src="dialog.src" type="application/x-google-chrome-pdf" @@ -771,7 +878,10 @@ > </iframe> </div> - <div v-if="dialog.isJpg" class="pdfClass"> + <div + v-if="dialog.isJpg" + class="pdfClass" + > <el-image style="width: 100%; height: 100%" :src="dialog.src" @@ -789,7 +899,11 @@ :close-on-click-modal="false" :show-close="false" > - <el-form ref="form" :model="fileFrom" label-width="100px"> + <el-form + ref="form" + :model="fileFrom" + label-width="100px" + > <el-form-item label="瀹℃牳鍗曚綅"> <div> <ul> @@ -815,14 +929,12 @@ class="primary" size="small" @click="getFileInsertApply()" - >{{ $t("common.confirm") }}</el-button - > + >{{ $t("common.confirm") }}</el-button> <el-button type="info" size="small" @click="handleInsertFileClose()" - >{{ $t("common.cancel") }}</el-button - > + >{{ $t("common.cancel") }}</el-button> </el-form-item> </el-form> </el-dialog> @@ -907,8 +1019,8 @@ dirid: "", depid: "", verid: "", - depName:"", - + depName: "", + }, behavior: "", initialForm: "", @@ -1016,11 +1128,11 @@ }, watch: { "queryForm.depName"() { - + this.$refs.treeSelect.visible = false; }, "queryForm.dirid"() { - + this.$refs.treeSelect1.visible = false; }, }, @@ -1480,7 +1592,9 @@ showDetail(row) { // console.log(index, row); this.showinfoBox = true; + debugger this.itemdetail = row; + }, // 鍏抽棴鏌ョ湅 closeDetial() { @@ -1506,7 +1620,7 @@ this.editForm = {}; done(); }) - .catch((_) => {}); + .catch((_) => { }); }, // 鎻愪氦淇敼 @@ -1771,5 +1885,8 @@ position: relative; } } + .el-divider--horizontal { + margin: 15px 0; + } } </style> diff --git a/src/views/datamanage/styleManage.vue b/src/views/datamanage/styleManage.vue index 8b9bf09..f07862d 100644 --- a/src/views/datamanage/styleManage.vue +++ b/src/views/datamanage/styleManage.vue @@ -638,7 +638,7 @@ v-model="insertform.type" autocomplete="off" style="width:85%" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.type')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.type')" ></el-input> </el-form-item> <el-form-item @@ -650,7 +650,6 @@ :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.dirid')" style="width:85%" @focus="setOptionWidth" - > <el-option :value="insertform.dirid" @@ -692,10 +691,9 @@ > <el-select v-model="insertform.depid" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.depid')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.depid')" style="width:85%" @focus="setOptionWidth" - > <el-option :value="insertform.depid" @@ -739,7 +737,7 @@ v-model="insertform.ver" autocomplete="off" style="width:85%" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.ver')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.ver')" ></el-input> </el-form-item> <el-form-item @@ -750,7 +748,6 @@ v-model="insertform.status" style="width:85%" :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.styleObj.status')" - > <el-option value="0" @@ -795,7 +792,6 @@ disabled autocomplete="off" style="width:100%" - /> </div> <div> @@ -1557,8 +1553,13 @@ this.upform.vname = this.upform.viewGuid; this.upform.viewGuid = this.viewFile; } - this.upform.status = this.status + if (this.status == '鍚敤') { + this.status = '1' + } else if (this.status == '鍋滅敤') { + this.status = '0' + } + this.upform.status = this.status const data = await updateStyle(this.upform); if (data.code == 200) { this.dialogFormVisible = false; diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue index 0c8703d..a7fa715 100644 --- a/src/views/datamanage/uploadmanage.vue +++ b/src/views/datamanage/uploadmanage.vue @@ -576,6 +576,7 @@ publish_update, publish_insert, } from '../../api/api.js' +import { conditions } from '../Archive/Archive'; export default { components: { @@ -785,6 +786,7 @@ var url = this.editLayer.url; this.editLayer.url = url.replace(iisHost, "{host}"); } + const data = await publish_update(this.editLayer); if (data.code != 200) { this.$message.error("鏁版嵁淇敼澶辫触") @@ -1053,18 +1055,20 @@ if (data.result) { var that = this - var val = data.result.filter((res) => { - if (res.createTime) { - res.createTime = that.format(res.createTime); + var val = data.result.filter((rs) => { + if (rs.createTime) { + rs.createTime = that.format(rs.createTime); } - if (res.updateTime) { - res.updateTime = that.format(res.updateTime); + if (rs.updateTime) { + rs.updateTime = that.format(rs.updateTime); } - if (res.url) { - res.url = res.url.replace("{host}", iisHost); + if (rs.url) { + + rs.url = rs.url.replace("{host}", iisHost); } - return res + return rs }) + this.tableData = val; this.listData.count = data.count; } diff --git a/src/views/userManage/templateManage.vue b/src/views/userManage/templateManage.vue index 1db8df8..6d92a34 100644 --- a/src/views/userManage/templateManage.vue +++ b/src/views/userManage/templateManage.vue @@ -200,7 +200,7 @@ <el-input style="width:85%" v-model=" editForm.name" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.name')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('dataManage.styleObj.name')" ></el-input> </el-form-item> <el-form-item :label="$t('common.templateType')"> @@ -214,7 +214,6 @@ @change="selFileCodeChange" v-model="editForm.code" :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetree')+$t('dataManage.common.templateType')" - > <el-option v-for="item in options" @@ -274,7 +273,6 @@ :accept="selectFileType" style="display: none" @change="geteditFile(1)" - /> <el-button style="margin-left: 6px;" @@ -296,7 +294,7 @@ <el-input style="width:85%" v-model="editForm.bak" - :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('common.bak')" + :placeholder="$t('shuJuGuanLi.shuJuJianSuo.valuetwo')+$t('common.bak')" ></el-input> </el-form-item> </el-form> @@ -538,19 +536,19 @@ .catch((_) => { }); }, codeData(row, column) { - let data = row[column.property]; - if (data == null) { - return data; + + var code = row.code; + let val = this.options.filter(res => { + if (res.value == code) { + return res + } + }) + if (val.length > 0) { + return val[0].label + } else { + return code } - var val; - if (row.code.indexOf("countSizes") != -1) { - val = "鏁版嵁閲忕粺璁�"; - } else if (row.code.indexOf("countServices") != -1) { - val = "鏈嶅姟璋冪敤閲忕粺璁�"; - } else if (row.code.indexOf("countOperates") != -1) { - val = "鐢ㄦ埛娴侀噺缁熻"; - } - return val; + }, //鏌ョ湅 showDetail(index, row) { -- Gitblit v1.9.3