From d91f0dfcd2ef95fb3624d94ade24fe69a9169a58 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期日, 04 二月 2024 15:15:00 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.20.92:8888/r/P2022036_Web2 --- src/views/datamanage/uploadmanage.vue | 649 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 500 insertions(+), 149 deletions(-) diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue index f185022..0b88751 100644 --- a/src/views/datamanage/uploadmanage.vue +++ b/src/views/datamanage/uploadmanage.vue @@ -32,13 +32,24 @@ </div> <div class="tabs_pane" + @click="setTabsChange(4)" + > + <div + class="tabsSpan" + :class="{ changetabs : active == 'fourth'}" + > + <span> {{$t('dataManage.uploadObj.publishTask')}}</span> + </div> + </div> + <div + class="tabs_pane" @click="setTabsChange(3)" > <div class="tabsSpan" :class="{ changetabs : active == 'third'}" > - <span> {{$t('dataManage.uploadObj.modelAttachMount')}}</span> + <span> {{$t('dataManage.uploadObj.attachMount')}}</span> </div> </div> </div> @@ -93,6 +104,28 @@ </el-option> </el-select> </el-form-item> + <!-- 鐩綍 --> + <el-form-item v-if="active == 'second'"> + <el-select + size="small" + v-model="formInline.dirid2" + placeholder="璇烽�夋嫨椤圭洰鐩綍..." + > + <el-option + :value="formInline.dirid2" + :label="formInline.dirName2" + style="height: auto" + > + <el-tree + ref="tree" + :data="dirOption2" + node-key="id" + :props="defaultProps" + @node-click="handleDirChange2" + /> + </el-option> + </el-select> + </el-form-item> <!-- 鐗堟湰 --> <el-form-item v-if="active == 'first'"> <el-select @@ -117,6 +150,38 @@ > <el-option v-for="item in typeOption" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item v-if="active == 'second' || active == 'fourth'"> + <el-select + size="small" + v-model="formInline.type1" + @change="handleTypeChange1" + placeholder="璇烽�夋嫨鏁版嵁绫诲埆..." + > + <el-option + v-for="item in typeOption1" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item v-if="active == 'fourth'"> + <el-select + size="small" + v-model="formInline.status" + @change="handleTypeChange2" + placeholder="璇烽�夋嫨鏁版嵁绫诲埆..." + > + <el-option + v-for="item in typeOption2" :key="item.value" :label="item.label" :value="item.value" @@ -168,6 +233,7 @@ <div class="dividing-line"></div> <div class="table_box content_Table"> <el-table + v-if="active !='fourth'" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange" @@ -222,6 +288,7 @@ key="7" /> <el-table-column + v-if="active == 'first'" prop="verName" :label="$t('dataManage.vmobj.versionNumber')" align="center" @@ -253,6 +320,7 @@ align="center" key="12" /> + <el-table-column v-if="active == 'first'" prop="createTime" @@ -265,6 +333,20 @@ </template> </el-table-column> + <el-table-column + prop="updateName" + :label="$t('dataManage.vmobj.updateonuser')" + align="center" + key="14" + /> + <el-table-column + prop="updateTime" + :label="$t('dataManage.vmobj.updateontime')" + :formatter="formatData" + align="center" + key="15" + /> + <el-table-column min-width="150" :label="$t('common.operate')" @@ -306,6 +388,92 @@ plain >宸插彂甯� + </el-button> + </template> + </el-table-column> + </el-table> + <el-table + v-if="active == 'fourth'" + :data="tableData" + style="width: 100%" + height="calc(100% - 1px)" + ref="tableBox" + > + <!-- <el-table-column + prop="name" + :label="$t('dataManage.vmobj.name')" + align="center" + key="1" + ></el-table-column> --> + <el-table-column + prop="name" + :label="$t('dataManage.vmobj.name')" + align="center" + key="3" + ></el-table-column> + <el-table-column + prop="status" + :label="$t('dataManage.styleObj.status')" + align="center" + key="4" + :formatter="stateFormatStatus" + ></el-table-column> + <el-table-column + prop="type" + :label="$t('dataManage.styleObj.type')" + align="center" + key="5" + ></el-table-column> + <el-table-column + prop="descr" + :label="$t('dataManage.styleObj.descr')" + align="center" + key="6" + ></el-table-column> + <el-table-column + prop="err" + :label="$t('common.err')" + align="center" + key="7" + ></el-table-column> + <el-table-column + prop="createName" + :label="$t('common.rublisher')" + align="center" + key="8" + /> + <el-table-column + prop="createTime" + :label="$t('common.releaseTime')" + :formatter="formatData" + align="center" + key="9" + /> + <el-table-column + prop="updateName" + :label="$t('dataManage.vmobj.updateonuser')" + align="center" + key="10" + /> + <el-table-column + prop="updateTime" + :label="$t('dataManage.vmobj.updateontime')" + :formatter="formatData" + align="center" + key="11" + /> + <el-table-column + min-width="80" + :label="$t('common.operate')" + > + <template slot-scope="scope"> + <el-button + v-if="scope.row.status == '1'" + size="small" + type="danger" + plain + @click="setCannelTask(scope.row)" + >{{$t('common.endTask')}} </el-button> </template> </el-table-column> @@ -639,68 +807,27 @@ <div v-for="item in osgbLasOption" - style="margin-top: 10px; display: flex; align-items: center; justify-content: space-around; " + style="margin-top: 10px; display: flex; justify-content: center; align-items: center; " > - <div - class="contLable" - style=" margin: 0px 10px;" - > + + <div style=" text-align: center; "> {{ item.name }} </div> - <div> - <div style="display: flex; align-items: center; margin: 0px 10px;"> - <label class="contLable">楂樺害鍋忕Щ閲忥細</label> - <el-input - size="small" - v-model="item.zs" - > - <i slot="suffix">m</i></el-input> - </div> - - </div> - - <div v-show="formInline.type =='LAS'"> - <div style="display: flex; align-items: center; margin: 0px 10px;"> - <label class="contLable">鍧愭爣绯伙細</label> - <el-select - v-if="!item.lids" - v-model="item.srids" - style="width: 100%;" - size="small" - > - <el-option - v-for="item in stridOption" - :key="item.id" - :label="item.coordinate" - :value="item.epsgcode" - > - </el-option> - </el-select> - <el-input - v-if="item.lids" - v-model="item.srids" - size="small" - disabled - ></el-input> - </div> - - </div> - - </div> - <!-- <el-form-item :label="$t('dataManage.vmobj.heightOffset')"> + <!-- <div style="display: flex; align-items: center; margin: 0px 10px;"> + <label class="contLable">楂樺害鍋忕Щ閲忥細</label> <el-input - :placeholder="$t('dataManage.vmobj.label1')" - v-model="osgbLasLayer.z" - ></el-input> - </el-form-item> --> - <!-- <el-form-item - v-if="formInline.type == 'LAS'" - :label="$t('dataManage.vmobj.coordinateSystemID')" - > + size="small" + v-model="item.zs" + > + <i slot="suffix">m</i></el-input> + </div> + <div style="display: flex; align-items: center; "> + <label class="contLable">鍧愭爣绯伙細</label> <el-select - v-model="osgbLasLayer.strid" - :placeholder="$t('dataManage.vmobj.label2')" + v-if="!item.lids" + v-model="item.srids" style="width: 100%;" + size="small" > <el-option v-for="item in stridOption" @@ -710,8 +837,14 @@ > </el-option> </el-select> - </el-form-item> --> - + <el-input + v-if="item.lids" + v-model="item.srids" + size="small" + disabled + ></el-input> + </div> --> + </div> <div style="display: flex; justify-content: end;margin-top:10px;"> <el-button size="small" @@ -741,11 +874,26 @@ <div v-loading="true" element-loading-background="rgba(0, 0, 0, 0.0) " - element-loading-text="鏁版嵁鍙戝竷涓�" + :element-loading-text="loadingText" style="margin: 0px 20px;widht:100%;height:calc(100% - 80px); " > </div> </div> + <el-dialog + :title="$t('common.details')" + :visible.sync="rasterCsVisible" + :close-on-click-modal="false" + width="35%" + > + <div class="rasterCsBox"> + <div v-for="(item,index) in rasterCsOption"> + <div class="rasterCsContent"> + <label>{{ item.name }} : </label> + <label>{{ item.bak }}</label> + </div> + </div> + </div> + </el-dialog> </div> </template> @@ -765,7 +913,10 @@ publish_update, publish_insert, dataUpload_selectCoords, - publish_selectLasCs + publish_selectLasCs, + task_selectByPageAndCount, + task_deleteTask, + publish_selectRasterCs } from '../../api/api.js' import { conditions } from '../Archive/Archive'; @@ -779,12 +930,16 @@ active: 'first', formInline: { dirid: null, + dirid2: null, dirName: null, + dirName2: null, depid: null, verid: null, depName: null, name: "", - type: "" + type: "", + type1: "All", + status: 'All' }, listData: { pageIndex: 1, @@ -794,6 +949,7 @@ multipleSelection: [], tableData: [], depOption: [], + dirOption2: [], dirOption: [], verOption: [], modelOptions: [], @@ -821,6 +977,53 @@ }, { value: 'BIM', label: '涓夌淮妯″瀷(.fbx, .ifc, .rvt)' + }], + typeOption1: [{ + value: 'All', + label: '鍏ㄩ儴' + }, { + value: 'DOM', + label: '褰卞儚鏁版嵁(.tif, .img)' + }, { + value: 'DEM', + label: '楂樼▼鏁版嵁(.tif)' + }, { + value: 'MPT', + label: '鍦烘櫙鏁版嵁(.mpt)' + }, { + value: 'OSGB', + label: '鍊炬枩鏁版嵁(.osgb)' + }, { + value: 'LAS', + label: '鐐逛簯鏁版嵁(.las, .laz)' + }, { + value: 'CPT', + label: '鐐逛簯鏁版嵁(.cpt)' + }, { + value: '3DML', + label: '涓夌淮妯″瀷(.3dml)' + }, { + value: 'BIM', + label: '涓夌淮妯″瀷(.fbx, .ifc, .rvt)' + }], + typeOption2: [{ + label: '鍏ㄩ儴', + value: 'All' + }, { + label: '鏈紑濮�', + value: 0 + }, { + label: '杩涜涓�', + value: 1 + }, { + label: '姝e父缁撴潫', + value: 2 + }, { + label: '鐢ㄦ埛缁撴潫', + value: 3 + }, { + label: '杩愯鍑洪敊', + value: 4 }], defaultProps: { label: "name", @@ -850,9 +1053,13 @@ }, stridOption: [], osgbLasOption: [], + loadingText: '鏁版嵁鍙戝竷涓�', + rasterCsVisible: false, + rasterCsOption: [] } }, methods: { + setOsgbCanel() { this.insertOsgbVisible = false; this.osgbLasLayer = { @@ -864,24 +1071,32 @@ var ids = []; var zs = [] - for (var i in this.osgbLasOption) { - ids.push(this.osgbLasOption[i].id) - zs.push(this.osgbLasOption[i].zs) - } + var models = [] var srids = []; var lerro = []; + for (var i in this.osgbLasOption) { + ids.push(this.osgbLasOption[i].id) + // zs.push(this.osgbLasOption[i].zs) + zs.push(0) + srids.push(0) + models.push(0) + } + var name = this.osgbLasOption[0].name + if (this.formInline.type == 'LAS') { for (var i in this.osgbLasOption) { - if (this.osgbLasOption[i].srids) { - var epsg = this.osgbLasOption[i].srids.replace('EPSG:', '') - srids.push(epsg) - } else { - lerro.push(this.osgbLasOption[i].name) - } + // if (this.osgbLasOption[i].srids) { + // //var epsg = this.osgbLasOption[i].srids.replace('EPSG:', '') + // // srids.push(epsg) + // srids.push("00") + // } else { + // lerro.push(this.osgbLasOption[i].name) + // } + srids.push(0) } - if (lerro.length > 0) { - return this.$message(lerro + '鏈�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴'); - } + // if (lerro.length > 0) { + // return this.$message(lerro + '鏈�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴'); + // } // if (!this.osgbLasLayer.strid) { // return this.$message('璇烽�夋嫨鍙戝竷鏁版嵁鐨勫潗鏍囩郴'); @@ -892,30 +1107,18 @@ var obj = { dircode: this.formInline.dirid, depcode: this.formInline.depid, - min: null, - max: null, - name: null, + min: 0, + max: 0, + name: name, type: this.formInline.type, - noData: null, + noData: 0, ids: ids, - models: null, - srids: srids, - zx: zs + models: models, + srids: [], + zs: zs } - this.loadDialogVisible = true - this.setOsgbCanel(); - const data = await publish_insert(obj); + this.setPublish_insert(obj) - if (data.code == 200 && data.result > 0) { - this.$message({ - message: '鏁版嵁鍙戝竷鎴愬姛', - type: 'success' - }); - } else { - this.$message.error("鏁版嵁鍙戝竷澶辫触") - } - this.loadDialogVisible = false - this.getTableData(); }, setModelCanel() { @@ -955,21 +1158,7 @@ models: models } - this.loadDialogVisible = true - this.insertModelVisible = false; - - const data = await publish_insert(obj); - - if (data.code == 200 && data.result > 0) { - this.$message({ - message: '鏁版嵁鍙戝竷鎴愬姛', - type: 'success' - }); - } else { - this.$message.error("鏁版嵁鍙戝竷澶辫触") - } - this.loadDialogVisible = false - this.getTableData(); + this.setPublish_insert(obj) }, @@ -994,7 +1183,9 @@ this.options = std; }, setloadDialogVisible() { - this.loadDialogVisible = false + + this.loadDialogVisible = false; + this.loadingText = '鏁版嵁鍙戝竷涓�'; }, setinsertLayerCancel() { this.insertDialogVisible = false; @@ -1035,6 +1226,21 @@ for (var i in this.multipleSelection) { std.push(this.multipleSelection[i].id) } + + // if (this.formInline.type == 'DOM') { + // const data1 = await publish_selectRasterCs({ + // ids: std.toString() + // }) + // if (data1.code == 200 && data1.result.length == 0) { + // } else { + // this.rasterCsOption = data1.result; + // this.insertDialogVisible = false; + // this.rasterCsVisible = true; + // return + // } + // } + + var obj = { dircode: this.formInline.dirid, depcode: this.formInline.depid, @@ -1045,22 +1251,11 @@ type: this.formInline.type, noData: this.insertLayer.noData } - this.loadDialogVisible = true - this.insertDialogVisible = false; - - const data = await publish_insert(obj); - - if (data.code == 200 && data.result > 0) { - this.$message({ - message: '鏁版嵁鍙戝竷鎴愬姛', - type: 'success' - }); - } else { - this.$message.error("鏁版嵁鍙戝竷澶辫触") - } - this.loadDialogVisible = false - this.getTableData(); + this.setPublish_insert(obj) }, + + + //鏁版嵁鍙戝竷 async setPagePublish() { @@ -1068,7 +1263,6 @@ this.$message("璇烽�夋嫨瑕佸彂甯冪殑鏁版嵁") return } - if (this.formInline.type == "DOM" || this.formInline.type == "DEM") { this.insertLayer.name = this.multipleSelection[0].name.split('.')[0]; @@ -1140,23 +1334,40 @@ type: this.formInline.type } - this.loadDialogVisible = true - this.insertDialogVisible = false; - const data = await publish_insert(obj); - if (data.code == 200 && data.result > 0) { - this.$message({ - message: '鏁版嵁鍙戝竷鎴愬姛', - type: 'success' - }); - } else { - this.$message.error("鏁版嵁鍙戝竷澶辫触") - } - - this.loadDialogVisible = false - this.getTableData(); + this.setPublish_insert(obj) } }, + + async setPublish_insert(obj) { + this.insertDialogVisible = false; + this.insertModelVisible = false; + this.insertOsgbVisible = false; + var std = []; + + + + this.loadingText = '鏁版嵁鍙戝竷涓�'; + this.loadDialogVisible = true + this.insertDialogVisible = false; + const data = await publish_insert(obj); + if (data.code == 200 && data.result > 0) { + this.$message({ + message: '鏁版嵁鍙戝竷鎴愬姛', + type: 'success' + }); + } else { + this.$message.error("鏁版嵁鍙戝竷澶辫触") + } + this.loadDialogVisible = false + this.getTableData(); + + + }, + + + + //鏁版嵁璇︽儏 setPreviewDetails(res) { this.itemdetail = res; @@ -1196,6 +1407,24 @@ }); } }, + + async setCannelTask(res) { + + const data = await task_deleteTask({ id: res.id }) + if (data.result == 200) { + this.$message({ + message: '浠诲姟缁撴潫鎴愬姛', + type: 'success' + }); + } else { + this.$message.error({ + message: '浠诲姟缁撴潫澶辫触', + }); + } + this.getTableData(); + + }, + //淇敼寮圭獥 setPreviewEdit(res) { this.updateLayer = JSON.stringify(res) //澶囦唤; @@ -1210,6 +1439,7 @@ var that = this this.$confirm('纭畾鏄惁鍒犻櫎鎵�閫夊唴瀹�?') .then(_ => { + that.deletePage() }) .catch(_ => { @@ -1218,6 +1448,8 @@ } }, async deletePage() { + this.loadingText = '鏁版嵁鍒犻櫎涓�'; + this.loadDialogVisible = true; var std = []; for (var i in this.multipleSelection) { std.push(this.multipleSelection[i].id); @@ -1233,9 +1465,11 @@ }); this.getTableData(); } + this.loadDialogVisible = false; }, //棰勮寮圭獥鎵撳紑 setPreviewLayer(res) { + res.stype= 'yl' this.$store.state.previewLayer = res; this.dialogVisible = true; this.showMapView = true; @@ -1262,6 +1496,26 @@ return val + " GB" } else { return row.sizes + " MB" + } + }, + stateFormatStatus(row, column) { + + switch (row.status) { + case 0: + return '鏈紑濮�'; + break; + case 1: + return '杩涜涓�'; + break; + case 2: + return '姝e父缁撴潫'; + break; + case 3: + return '鐢ㄦ埛缁撴潫'; + break; + case 4: + return '杩愯鍑洪敊'; + break; } }, //鏍煎紡鍖栧湴鍧� @@ -1309,6 +1563,10 @@ } this.active = 'third'; break; + case 4: + this.active = 'fourth'; + this.setPageStart(); + break; @@ -1323,14 +1581,25 @@ setPageStart() { this.formInline = { dirid: null, + dirid2: null, dirName: null, + dirName2: null, depid: null, verid: null, depName: null, name: "", - type: "" + type: "", + type1: "All", + status: 'All' } if (this.active == "first") { + this.listData = { + pageIndex: 1, + pageSize: 10, + count: 0 + } + this.showPageSize = [10, 50, 100, 200] + } if (this.active == "fourth") { this.listData = { pageIndex: 1, pageSize: 10, @@ -1343,7 +1612,14 @@ pageSize: 10, count: 0 } - this.showPageSize = [10, 50, 100, 200] + this.showPageSize = [10, 50, 100, 200, 500] + this.formInline.type1 = this.typeOption1[0].value; + if (this.dirOption2.length > 0) { + this.formInline.dirid2 = this.dirOption2[0].code; + + this.formInline.dirName2 = this.dirOption2[0].name; + } + } this.formInline.type = this.typeOption[0].value; @@ -1357,9 +1633,25 @@ this.$message.error("鍗曚綅鍒楄〃鑾峰彇澶辫触") return } + var res = JSON.parse(JSON.stringify(data.result)); + var res_val = res.filter((rs) => { + if (rs.pid == 0) { + return rs + } + }) + + res_val.unshift({ + name: '鍏ㄩ儴', + id: 'All', + pid: 0, + code: "All" + }) + this.dirOption2 = this.treeData(res_val) this.dirOption = this.treeData(data.result); this.formInline.dirid = this.dirOption[0].code; this.formInline.dirName = this.dirOption[0].name; + this.formInline.dirid2 = this.dirOption2[0].code; + this.formInline.dirName2 = this.dirOption2[0].name; this.getVerList(this.dirOption[0].id) }, //鑾峰彇鐗堟湰鍒楄〃 @@ -1375,13 +1667,22 @@ }, //鐗堟湰鍒楄〃鍒囨崲 handleVerChange(value) { - this.formInline.verid = value; this.getTableData(); }, //鏈嶅姟绫诲瀷鍒楄〃鍒囨崲 handleTypeChange(value) { this.formInline.type = value; + this.getTableData(); + }, + handleTypeChange1(value) { + this.formInline.type1 = value; + this.getTableData(); + }, + + + handleTypeChange2(value) { + this.formInline.status = value; this.getTableData(); }, //鍗曚綅鍒楄〃鍒囨崲 @@ -1395,6 +1696,12 @@ this.formInline.dirid = data.code this.formInline.dirName = data.name this.getVerList(data.id) + }, + //鐩綍鍒楄〃鍒囨崲 + handleDirChange2(data, node, nodeData) { + this.formInline.dirid2 = data.code + this.formInline.dirName2 = data.name + this.getTableData(); }, //鑾峰彇Table琛ㄦ牸鏁版嵁 async getTableData() { @@ -1434,11 +1741,45 @@ this.tableData = val; this.listData.count = data.count; } - } - else { - if (this.formInline.name) { - this.listData.name = this.formInline.name + } else if (this.active == "fourth") { + if (this.formInline.status == 'All') { + this.listData.status = null; + + } else { + this.listData.status = this.formInline.status } + + if (this.formInline.type1 == 'All') { + this.listData.type = null; + } else { + this.listData.type = this.formInline.type1 + } + + if (this.formInline.name) { + this.listData.name = this.formInline.name; + } + this.tableData = []; + const data = await task_selectByPageAndCount(this.listData) + if (data.code != 200) { + + } + this.tableData = data.result; + this.listData.count = data.count; + + + } else { + this.listData.name = this.formInline.name + if (this.formInline.dirid2 == 'All') { + this.listData.dircode = this.formInline.dirid2.replace('All', ''); + } else { + this.listData.dircode = this.formInline.dirid2 + } + if (this.formInline.type1 == 'All') { + this.listData.type = this.formInline.type1.replace('All', ''); + } else { + this.listData.type = this.formInline.type1 + } + const data = await publish_selectByPage(this.listData); @@ -1591,7 +1932,17 @@ padding: 10px !important; } .contLable { - width: 160px; + width: 140px; + text-align: right; + } + .rasterCsBox { + max-height: 60vh; + overflow: auto; + .rasterCsContent { + padding: 10px; + font-size: 16px; + font-family: Source Han Sans CN; + } } } </style> \ No newline at end of file -- Gitblit v1.9.3