unknown 3 years ago
parent
commit
110dd2edf7
3 changed files with 40 additions and 4 deletions
  1. 8 0
      src/api/article.js
  2. 30 2
      src/pages/other/file-search.vue
  3. 2 2
      vue.config.js

+ 8 - 0
src/api/article.js

@@ -180,3 +180,11 @@ export const publishArtical = (data) => {
         data
     })
 }
+
+export const deleteArtical = (data) => {
+    return service({
+        url: "/api/artical/deleteArtical",
+        method: 'post',
+        data
+    })
+}

+ 30 - 2
src/pages/other/file-search.vue

@@ -69,9 +69,26 @@
               <template slot-scope="{row}">
                 <el-button
                   size="small"
-                  type="primary"
+                  type="text"
                   @click="applyDoc(row)"
                 >详情</el-button>
+
+                <el-button
+                  size="small"
+                  v-if="isLeader(row.departmentId)"
+                  style="color:darkorange"
+                  type="text"
+                  @click="row.visible=true"
+                >删除</el-button>
+
+                <el-popover placement="top" width="160" v-model="row.visible">
+                  <p>删除动作不可逆,你是否确认删除?</p>
+                  <div style="text-align: right; margin: 0">
+                    <el-button size="mini" type="text" @click="row.visible = false">取消</el-button>
+                    <el-button type="primary" size="mini" @click="deleteArtical(row)">确定</el-button>
+                  </div>
+                </el-popover>
+
               </template>
             </el-table-column>
           </el-table>
@@ -96,7 +113,7 @@
 import IHeader from "./components/IHeader";
 import IFooter from "./components/IFooter";
 import data  from '../data/data.js'
-import {getArticalList} from '@/api/article.js'
+import {getArticalList,deleteArtical} from '@/api/article.js'
 import { mapGetters } from "vuex";
 
 export default {
@@ -149,6 +166,9 @@ export default {
     this.getArticalList()
   },
   methods: {
+    isLeader( departmentId ){
+      return data.getLeader(departmentId, this.userDepartments)>1;
+    },
     handleSizeChange(size){
       this.pageSize = size
       this.getArticalList()
@@ -162,6 +182,14 @@ export default {
       localStorage.setItem("@departmentId", this.departmentId)
       this.getArticalList()
     },
+    deleteArtical( row ){
+      deleteArtical( {articalId: row.articalId}).then(res=>{
+        if( res.code == 200){
+          row.status = 4
+          row.isOpen = 2
+        }
+      })
+    },
     applyDoc(item){
         let query= {articalId: item.articalId }
         this.$router.push( {path: '/file-info', query})

+ 2 - 2
vue.config.js

@@ -1,8 +1,8 @@
 'use strict'
 const path = require('path')
 const defaultSettings = require('./src/settings.js')
-// const HOST = "http://smoa.ndjsxh.cn:8888"
-const HOST = "http://localhost:8000"
+const HOST = "http://smoa.ndjsxh.cn:8888"
+// const HOST = "http://localhost:8000"
 function resolve(dir) {
   return path.join(__dirname, dir)
 }