From 17411ae609d8c9a21be20bbffe2cf52c6efd9b80 Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期四, 07 九月 2023 14:29:58 +0800 Subject: [PATCH] 发布管理页面修改,接口调试 --- src/views/datamanage/uploadmanage.vue | 483 +++++++++++++++++++++++++++-------------------------- 1 files changed, 245 insertions(+), 238 deletions(-) diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue index c65f8b0..9ffd19a 100644 --- a/src/views/datamanage/uploadmanage.vue +++ b/src/views/datamanage/uploadmanage.vue @@ -30,17 +30,7 @@ <span> {{$t('dataManage.uploadObj.releaseList')}}</span> </div> </div> - <div - class="tabs_pane" - @click="setTabsChange(3)" - > - <div - class="tabsSpan" - :class="{ changetabs : active == 'third'}" - > - <span> {{$t('dataManage.uploadObj.modelAttachMount')}}</span> - </div> - </div> + </div> <div v-if="active != 'third'" @@ -51,39 +41,22 @@ :model="formInline" class="demo-form-inline" > - <!-- 鍗曚綅 --> - <el-form-item v-if="active == 'first'"> - <el-select - size="small" - v-model="formInline.depid" - > - <el-option - :value="formInline.depid" - :label="formInline.depName" - style="height: auto" - > - <el-tree - ref="tree" - :data="depOption" - node-key="id" - :props="defaultProps" - @node-click="handleDepChange" - /> - </el-option> - </el-select> - </el-form-item> <!-- 鐩綍 --> - <el-form-item v-if="active == 'first'"> + <el-form-item> + <el-select + ref="tree" size="small" + :popper-append-to-body="false" v-model="formInline.dirid" > <el-option :value="formInline.dirid" :label="formInline.dirName" - style="height: auto" + style=" height:auto" > <el-tree + class="elTreeData" ref="tree" :data="dirOption" node-key="id" @@ -104,6 +77,22 @@ :key="item.id" :label="item.name" :value="item.id" + > + </el-option> + </el-select> + </el-form-item> + <!-- 绫诲瀷 --> + <el-form-item> + <el-select + size="small" + v-model="formInline.serType" + @change="handleTypeChange" + > + <el-option + v-for="item in serverOption" + :key="item.value" + :label="item.label" + :value="item.value" > </el-option> </el-select> @@ -208,12 +197,7 @@ align="center" key="5" /> - <el-table-column - prop="depName" - :label="$t('dataManage.vmobj.depName')" - align="center" - key="6" - /> + <el-table-column prop="dirName" :label="$t('dataManage.vmobj.dirName')" @@ -327,12 +311,7 @@ </el-pagination> </div> </div> - <div - v-if="active == 'third'" - class="content_box" - > - <mapview v-if="active == 'third'"></mapview> - </div> + <!-- 鍦板潃棰勮 --> <el-dialog :title="$t('common.preview')" @@ -357,23 +336,7 @@ <mapview v-if="showMapView"></mapview> </div> </el-dialog> - <!-- <el-dialog - :title="$t('common.preview')" - :visible.sync="dialogVisible" - width="70%" - :before-close="handleClose" - top="13vh" - :lock-scroll="false" - :close-on-press-escape="false" - :close-on-click-modal="false" - v-el-drag-dialog - > - <div - id="MapDiv" - style="background:red;widht:100%;height:calc(100% - 10px)" - ></div> - - </el-dialog> --> + <!-- 淇敼鏁版嵁 --> <el-dialog :title="$t('common.update')" @@ -382,43 +345,86 @@ :show-close="false" :close-on-click-modal="false" > - <div style="width:100%;height:50vh"> + <div style="width:100%; "> <el-form ref="form" :model="editLayer" label-width="150px" > + <!-- 鍚嶇О --> <el-form-item :label="$t('dataManage.vmobj.name')"> - <el-input v-model="editLayer.name"></el-input> - </el-form-item> - <el-form-item :label="$t('dataManage.vmobj.format')"> <el-input - disabled - v-model="editLayer.type" + v-model="editLayer.name" + :placeholder="$t('dataManage.vmobj.name')" ></el-input> </el-form-item> - <el-form-item :label="$t('dataManage.vmobj.depName')"> - <el-input - disabled - v-model="editLayer.depName" - ></el-input> - </el-form-item> + <!-- 鎷変几鏂瑰紡 --> + <el-form-item :label="$t('dataManage.vmobj.labe15')"> + <el-select + size="small" + :disabled="true" + v-model="editLayer.enhanceType" + style="width: 100%;" + > + <el-option + v-for="item in enhanceOption" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> - <el-form-item :label="$t('dataManage.vmobj.dirName')"> + </el-form-item> + <!-- 鍧愭爣绯� --> + <!-- <el-form-item + v-show="editLayer.showFactor" + :label="$t('dataManage.vmobj.labe17')" + > + <el-input - disabled - v-model="editLayer.dirName" - ></el-input> + style="width: 100%;" + v-model="editLayer.url" + :disabled='true' + size="small" + > + + </el-input> + </el-form-item> --> + <!-- 鍧愭爣绯� --> + <el-form-item :label="$t('dataManage.vmobj.labe16')"> + <el-select + size="small" + v-model="editLayer.epsg" + style="width: 100%;" + :disabled="true" + > + <el-option + v-for="item in epsgOption" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item> - <el-form-item :label="$t('dataManage.vmobj.versionNumber')"> - <el-input - disabled - v-model="editLayer.verName" - ></el-input> - </el-form-item> - <el-form-item :label="$t('common.publishAddress')"> - <el-input v-model="editLayer.url"></el-input> - </el-form-item> + <!-- 鍘婚櫎鏃犳晥鍊� --> + <!-- <el-form-item :label="$t('dataManage.vmobj.labe14')"> + <el-select + size="small" + v-model="editLayer.nodata" + style="width: 100%;" + :disabled="true" + > + <el-option + v-for="item in noDataOption" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> --> <el-form-item> <el-button size="small" @@ -431,6 +437,7 @@ @click="setEditLayerCancle" >{{$t('common.cancel')}}</el-button> </el-form-item> + </el-form> </div> </el-dialog> @@ -441,7 +448,7 @@ width="50%" :close-on-click-modal="false" > - <div style="width:100%;height:50vh"> + <div style="width:100%;height:50vh;color: white;"> <p>{{ $t("dataManage.vmobj.name") }}锛歿{ itemdetail.name }}</p> <el-divider></el-divider> <p>{{ $t("dataManage.vmobj.format") }}锛歿{ itemdetail.type }}</p> @@ -478,51 +485,54 @@ :model="insertLayer" label-width="150px" > + <!-- 鍚嶇О --> <el-form-item :label="$t('dataManage.vmobj.name')"> <el-input v-model="insertLayer.name" :placeholder="$t('dataManage.vmobj.name')" ></el-input> </el-form-item> - <el-form-item :label="$t('dataManage.vmobj.numberFiles')"> - <el-input - disabled - v-model="insertLayer.number" - ></el-input> - </el-form-item> - <el-form-item - :label="$t('dataManage.vmobj.labe14')" - v-show="formInline.type =='DOM'" - > + <!-- 鎷変几鏂瑰紡 --> + <el-form-item :label="$t('dataManage.vmobj.labe15')"> <el-select - style="width:100%" - v-model="insertLayer.noData" + size="small" + v-model="insertLayer.enhanceType" + style="width: 100%;" + @change="setEnhanceTypeChange()" > <el-option - label="榛戣壊" - value="0" - ></el-option> - <el-option - label="鐧借壊" - value="255" - ></el-option> + v-for="item in enhanceOption" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> </el-select> + </el-form-item> + <!-- 鍧愭爣绯� --> <el-form-item - v-show="formInline.type !='DEM'" - :label="$t('dataManage.vmobj.minLevel')" + v-show="insertLayer.showFactor" + :label="$t('dataManage.vmobj.labe17')" > - <!-- <el-input - v-model="insertLayer.min" - :placeholder="$t('dataManage.vmobj.labe11')" - ></el-input> --> + <el-input-number + v-model="insertLayer.enhanceFactor" + controls-position="right" + :min="insertLayer.min" + :step="insertLayer.step" + :max="insertLayer.max" + style="width: 100%;" + ></el-input-number> + </el-form-item> + <!-- 鍧愭爣绯� --> + <el-form-item :label="$t('dataManage.vmobj.labe16')"> <el-select - style="width:100%" - v-model="insertLayer.min" - :placeholder="$t('dataManage.vmobj.labe11')" + size="small" + v-model="insertLayer.epsg" + style="width: 100%;" > <el-option - v-for="item in options" + v-for="item in epsgOption" :key="item.value" :label="item.label" :value="item.value" @@ -530,21 +540,15 @@ </el-option> </el-select> </el-form-item> - <el-form-item - :label="$t('dataManage.vmobj.maxLevel')" - v-show="formInline.type !='DEM'" - > - <!-- <el-input - v-model="insertLayer.max" - :placeholder="$t('dataManage.vmobj.labe12')" - ></el-input> --> + <!-- 鍘婚櫎鏃犳晥鍊� --> + <el-form-item :label="$t('dataManage.vmobj.labe14')"> <el-select - style="width:100%" - v-model="insertLayer.max" - :placeholder="$t('dataManage.vmobj.labe12')" + size="small" + v-model="insertLayer.nodata" + style="width: 100%;" > <el-option - v-for="item in options" + v-for="item in noDataOption" :key="item.value" :label="item.label" :value="item.value" @@ -649,9 +653,9 @@ </template> <script> -import axios from 'axios'; + import dialogHeader from './dialogHeader.vue' -import mapview from '../../components/preview_map.vue' +import mapview from '../../components/MapView/moonMap.vue' import MyBread from "../../components/MyBread.vue" import { selectdepTab, @@ -659,11 +663,12 @@ meta_selectVerByDirid, publish_selectMetasByPage, publish_selectByPage, - publish_deletes, + publish_deletesSjServices, publish_update, - publish_insert, + publish_insertSjService, } from '../../api/api.js' import { conditions } from '../Archive/Archive'; +import { method_option, nodata_Option, server_option, system_Option, type_option } from './js/layerManage'; export default { components: { @@ -680,7 +685,9 @@ verid: null, depName: null, name: "", - type: "" + type: "", + serType: '', + }, listData: { pageIndex: 1, @@ -693,25 +700,7 @@ dirOption: [], verOption: [], modelOptions: [], - typeOption: [{ - value: 'DOM', - label: '褰卞儚鏁版嵁(.tif, .img)' - }, { - value: 'DEM', - label: '楂樼▼鏁版嵁(.tif)' - }, { - value: 'MPT', - label: '鍦烘櫙鏁版嵁(.mpt)' - }, { - value: 'CPT', - label: '鐐逛簯鏁版嵁(.cpt)' - }, { - value: '3DML', - label: '涓夌淮妯″瀷(.3dml)' - }, { - value: 'BIM', - label: '涓夌淮妯″瀷(.fbx, .ifc, .rvt)' - }], + typeOption: [], defaultProps: { label: "name", value: "id", @@ -722,17 +711,30 @@ dialogVisible: false, showMapView: false, showPageSize: [], - editLayer: {}, + editLayer: { + enhanceType: null + }, updateLayer: {}, editDialogVisible: false, detailsDialogVisible: false, itemdetail: {}, insertDialogVisible: false, insertModelVisible: false, - insertLayer: { name: '', number: null, min: 4, max: 18, noData: '0' }, + insertLayer: { + name: '', + enhanceType: null, + enhanceFactor: null, + showFactor: false, + epsg: null, + nodata: null + }, loadDialogVisible: false, options: [], isFullscreen: false, + serverOption: [], + enhanceOption: [], + epsgOption: [], + noDataOption: [] } }, methods: { @@ -816,37 +818,20 @@ }, setinsertLayerCancel() { this.insertDialogVisible = false; - this.insertLayer = { name: '', number: null, min: 4, max: 18 }; + this.insertLayer = { + name: '', + enhanceType: null, + enhanceFactor: null, + showFactor: false, + epsg: null, + nodata: null + }; }, //鍙戝竷鎻愪氦 async setinsertLayerSubmit() { - - var min = this.insertLayer.min; - var max = this.insertLayer.max; var name = this.insertLayer.name; - if (this.formInline.type == 'DEM') { - min = 0; - max = 18; - } if (!name) { this.$message.error("鍚嶇О涓嶈兘涓虹┖") - return - } - - - if (parseInt(min) < 0 || parseInt(min) > 20) { - this.$message.error("鏈�灏忕骇鍒笉鑳藉皬浜� 0 鎴栧ぇ浜� 20 ") - return - } - - - if (parseInt(max) < 0 || parseInt(max) > 20) { - this.$message.error(" 鏈�澶х骇鍒笉鑳藉皬浜� 0 鎴栧ぇ浜� 20 ") - return - } - - if (parseInt(min) > parseInt(max)) { - this.$message.error("鏈�灏忕骇鍒笉寰楀ぇ浜庢渶澶х骇鍒�") return } var std = []; @@ -855,18 +840,19 @@ } var obj = { dircode: this.formInline.dirid, - depcode: this.formInline.depid, - min: min, - max: max, name: name, ids: std, + enhanceType: this.insertLayer.enhanceType, + enhanceFactor: this.insertLayer.enhanceFactor, + epsg: this.insertLayer.epsg, type: this.formInline.type, - noData: this.insertLayer.noData + noData: this.insertLayer.nodata } + this.loadDialogVisible = true this.insertDialogVisible = false; - const data = await publish_insert(obj); + const data = await publish_insertSjService(obj); if (data.code == 200 && data.result > 0) { this.$message({ @@ -879,59 +865,45 @@ this.loadDialogVisible = false this.getTableData(); }, + setEnhanceTypeChange(res) { + var val = this.enhanceOption.filter((res) => { + if (res.value == this.insertLayer.enhanceType) { + return res; + } + }) + this.insertLayer.enhanceFactor = val[0].enhanceFactor; + if (val[0].enhanceFactor != 0) { + this.insertLayer.min = val[0].min; + this.insertLayer.max = val[0].max; + this.insertLayer.step = val[0].step; + this.insertLayer.showFactor = true; + } else { + this.insertLayer.showFactor = false; + } + }, //鏁版嵁鍙戝竷 async setPagePublish() { if (this.multipleSelection.length == 0) { this.$message("璇烽�夋嫨瑕佸彂甯冪殑鏁版嵁") return } - if (this.formInline.type == "DOM" || this.formInline.type == "DEM") { - - this.insertLayer.name = this.multipleSelection[0].name.split('.')[0]; - this.insertLayer.number = this.multipleSelection.length - this.insertLayer.noData = '0'; - this.insertDialogVisible = true; - } else if (this.formInline.type == "3DML" || this.formInline.type == "BIM") { - var val = JSON.parse(JSON.stringify(this.multipleSelection)) - for (var i in val) { - val[i].isModel = null - } - this.modelOptions = val; - - this.insertModelVisible = true; - - - + this.insertLayer.name = null + var val = this.enhanceOption[0] + this.insertLayer.enhanceType = val.value; + this.insertLayer.epsg = this.epsgOption[0].value; + this.insertLayer.nodata = this.noDataOption[0].value + this.insertLayer.enhanceFactor = val.enhanceFactor; + if (val.enhanceFactor != 0) { + this.insertLayer.min = val.min; + this.insertLayer.max = val.max; + this.insertLayer.step = val.step; + this.insertLayer.showFactor = true; } else { - var std = []; - for (var i in this.multipleSelection) { - std.push(this.multipleSelection[i].id) - } - - var obj = { - dircode: this.formInline.dirid, - depcode: this.formInline.depid, - ids: std, - type: this.formInline.type - } - - this.loadDialogVisible = true - this.insertDialogVisible = false; - - const data = await publish_insert(obj); - if (data.code != 200) { - this.$message.error("鏁版嵁鍙戝竷澶辫触") - - } else { - this.$message({ - message: '鏁版嵁鍙戝竷鎴愬姛', - type: 'success' - }); - } - this.loadDialogVisible = false - this.getTableData(); + this.insertLayer.showFactor = false; } + this.insertDialogVisible = true; + }, //鏁版嵁璇︽儏 setPreviewDetails(res) { @@ -964,18 +936,30 @@ } else { this.$confirm('纭鍏抽棴锛�') .then(_ => { - done(); - }) - .catch(_ => { this.editLayer = JSON.parse(this.updateLayer) this.editDialogVisible = false; + }) + .catch(_ => { + }); } }, //淇敼寮圭獥 setPreviewEdit(res) { this.updateLayer = JSON.stringify(res) //澶囦唤; - this.editLayer = JSON.parse(JSON.stringify(res)); + var val = JSON.parse(JSON.stringify(res)); + + this.editLayer = val; + this.editLayer.epsg = val.epsg.toString(); + var result = this.enhanceOption.filter((res) => { + if (res.value == val.enhanceType) { + return res; + } + }) + if (result[0].enhanceFactor != 0) { + this.editLayer.showFactor = true + } + this.editDialogVisible = true; }, //鍒犻櫎 @@ -998,7 +982,7 @@ for (var i in this.multipleSelection) { std.push(this.multipleSelection[i].id); } - const data = await publish_deletes({ ids: std.toString() }); + const data = await publish_deletesSjServices({ ids: std.toString() }); if (data.code != 200) { this.$message.error("鍗曚綅鍒楄〃鑾峰彇澶辫触") return @@ -1122,9 +1106,11 @@ this.showPageSize = [10, 50, 100, 200] } + this.formInline.serType = this.serverOption[0].value; this.formInline.type = this.typeOption[0].value; - this.getDepTreeList(); + // this.getDepTreeList(); this.getDirTreeList(); + }, //鑾峰彇鐩綍鍒楄〃 async getDirTreeList() { @@ -1215,9 +1201,9 @@ if (this.formInline.name) { this.listData.name = this.formInline.name } - + this.listData.dircode = this.formInline.dirid; + this.listData.type = this.formInline.type; const data = await publish_selectByPage(this.listData); - if (data.result) { var that = this var val = data.result.filter((rs) => { @@ -1291,8 +1277,15 @@ }, mounted() { this.active = 'first'; + this.typeOption = type_option; + this.serverOption = server_option; + this.epsgOption = system_Option; + this.noDataOption = nodata_Option; + this.enhanceOption = method_option this.setPageStart(); this.setOptions(); + + } } </script> @@ -1366,5 +1359,19 @@ /deep/.el-dialog__header { padding: 10px !important; } + /deep/.el-input-number__increase, + .el-input-number__decrease { + background: transparent !important; + } + .el-input-number__increase, + .el-input-number__decrease { + background: transparent !important; + } +} +.elTreeData { + color: white !important; + background: transparent !important; + font-size: 15px !important; + font-family: Microsoft YaHei !important; } </style> \ No newline at end of file -- Gitblit v1.9.3