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