From 801f2d76b4b6f41247ebe33da59a0981c08bf63b Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期六, 18 三月 2023 14:03:20 +0800 Subject: [PATCH] 数据发布预览 --- src/views/datamanage/uploadmanage.vue | 177 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 142 insertions(+), 35 deletions(-) diff --git a/src/views/datamanage/uploadmanage.vue b/src/views/datamanage/uploadmanage.vue index 19436aa..3107a46 100644 --- a/src/views/datamanage/uploadmanage.vue +++ b/src/views/datamanage/uploadmanage.vue @@ -37,7 +37,7 @@ class="demo-form-inline" > <!-- 鍗曚綅 --> - <el-form-item> + <el-form-item v-if="active == 'first'"> <el-select size="small" v-model="formInline.depid" @@ -58,7 +58,7 @@ </el-select> </el-form-item> <!-- 鐩綍 --> - <el-form-item> + <el-form-item v-if="active == 'first'"> <el-select size="small" v-model="formInline.dirid" @@ -79,7 +79,7 @@ </el-select> </el-form-item> <!-- 鐗堟湰 --> - <el-form-item> + <el-form-item v-if="active == 'first'"> <el-select size="small" v-model="formInline.verid" @@ -94,7 +94,7 @@ </el-select> </el-form-item> <!-- 绫诲瀷 --> - <el-form-item> + <el-form-item v-if="active == 'first'"> <el-select size="small" v-model="formInline.type" @@ -128,6 +128,13 @@ size="small" icon="el-icon-s-promotion" >{{$t('common.publish')}}</el-button> + <!-- 鍒櫎 --> + <el-button + type="danger" + size="small" + icon="el-icon-delete" + @click="setPageDelete" + >{{$t('common.delete')}}</el-button> <!-- 閲嶇疆 --> <el-button type="info" @@ -169,6 +176,7 @@ align="center" /> <el-table-column + v-if="active == 'first'" prop="sizes" :label="$t('dataManage.vmobj.size')" :formatter="stateFormatSizes" @@ -191,30 +199,57 @@ align="center" /> <el-table-column - prop="layer" + prop="url" :label="$t('common.publishAddress')" align="center" /> <el-table-column + v-if="active == 'first'" prop="uname" - :label="$t('common.releaseTime')" + :label="$t('common.rublisher')" align="center" + :key="Math.random()" + /> + <el-table-column + v-if="active != 'first'" + prop="createName" + :label="$t('common.rublisher')" + align="center" + :key="Math.random()" /> <el-table-column prop="createTime" - :label="$t('common.rublisher')" - :formatter="formatData" + :label="$t('common.releaseTime')" align="center" /> + <el-table-column min-width="150" :label="$t('common.operate')" > <template slot-scope="scope"> <el-button - v-if="scope.row.layer" + v-if="scope.row.url" size="small" type="success" + plain + @click="setPreviewLayer(scope.row)" + >{{$t('common.preview')}} + + </el-button> + <el-button + v-if="scope.row.url" + size="small" + type="warning" + plain + @click="setPreviewLayer(scope.row)" + >{{$t('common.preview')}} + + </el-button> + <el-button + v-if="scope.row.url" + size="small" + type="info" plain @click="setPreviewLayer(scope.row)" >{{$t('common.preview')}} @@ -232,7 +267,7 @@ @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="listData.pageIndex" - :page-sizes="[100, 200, 500, 1000]" + :page-sizes="showPageSize" :page-size="listData.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="listData.count" @@ -259,7 +294,14 @@ <script> import mapview from '../../components/preview_map.vue' import MyBread from "../../components/MyBread.vue" -import { selectdepTab, selectdirTab, meta_selectVerByDirid, publish_selectMetasByPage } from '../../api/api.js' +import { + selectdepTab, + selectdirTab, + meta_selectVerByDirid, + publish_selectMetasByPage, + publish_selectByPage, + publish_deletes +} from '../../api/api.js' export default { components: { MyBread, mapview }, @@ -307,23 +349,43 @@ }, dialogVisible: false, showMapView: false, + showPageSize: [], } }, methods: { + async setPageDelete() { + if (this.multipleSelection.length == 0) { + return this.$message.error("璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁") + } else { + var std = []; + for (var i in this.multipleSelection) { + std.push(this.multipleSelection[i].id); + } + const data = await publish_deletes(std); + if (data.code != 200) { + this.$message.error("鍗曚綅鍒楄〃鑾峰彇澶辫触") + return + } else { + this.$message({ + message: '鍒犻櫎鎴愬姛', + type: 'success' + }); + this.getTableData(); + } + } + + }, //棰勮寮圭獥鎵撳紑 setPreviewLayer(res) { this.$store.state.previewLayer = res; this.dialogVisible = true; this.showMapView = true; - }, - //棰勮寮圭獥鍏抽棴 handleClose() { this.dialogVisible = false; this.showMapView = false; - }, // 鑾峰彇澶氶�夐�変腑鐨勫璞� @@ -392,11 +454,22 @@ name: "", type: "" } - this.listData = { - pageIndex: 1, - pageSize: 100, - count: 0 + if (this.active == "first") { + this.listData = { + pageIndex: 1, + pageSize: 100, + count: 0 + } + this.showPageSize = [100, 200, 500, 1000] + } else { + this.listData = { + pageIndex: 1, + pageSize: 10, + count: 0 + } + this.showPageSize = [10, 20, 50, 100] } + this.formInline.type = this.typeOption[0].value; this.getDepTreeList(); this.getDirTreeList(); @@ -449,27 +522,61 @@ }, //鑾峰彇Table琛ㄦ牸鏁版嵁 async getTableData() { - this.listData.depcode = this.formInline.depid; - this.listData.dircode = this.formInline.dirid; - this.listData.name = this.formInline.name; - this.listData.type = this.formInline.type; - this.listData.verid = this.formInline.verid; - const data = await publish_selectMetasByPage(this.listData) - if (data.code != 200) { + this.tableData = []; + this.listData.count = 0; + if (this.active == "first") { + this.listData.depcode = this.formInline.depid; + this.listData.dircode = this.formInline.dirid; + this.listData.name = this.formInline.name; + this.listData.type = this.formInline.type; + this.listData.verid = this.formInline.verid; + const data = await publish_selectMetasByPage(this.listData) + if (data.code != 200) { + + } + if (data.result) { + + + var that = this + + var val = data.result.filter((res) => { + if (res.createTime) { + res.createTime = that.format(res.createTime); + } + + if (res.url) { + res.url = res.url.replace("{host}", iisHost); + } + return res + }) + this.tableData = val; + this.listData.count = data.count; + } } - var that = this - var val = data.result.filter((res) => { - if (res.createTime) { - res.createTime = that.format(res.createTime); + else { + if (this.formInline.name) { + this.listData.name = this.formInline.name } - if (res.layer) { - res.layer = res.layer.replace("{host}", iisHost); + + const data = await publish_selectByPage(this.listData); + debugger + if (data.result) { + var that = this + var val = data.result.filter((res) => { + if (res.createTime) { + res.createTime = that.format(res.createTime); + } + + if (res.url) { + res.url = res.url.replace("{host}", iisHost); + } + return res + }) + this.tableData = val; + this.listData.count = data.count; } - return res - }) - this.tableData = val; - this.listData.count = data.count; + } }, //鏍煎紡鍖栨椂闂� format(shijianchuo) { -- Gitblit v1.9.3