2213980799@qq.com 1 rok temu
rodzic
commit
df74884937

+ 13 - 0
src/api/doc-manage/index.js

@@ -379,6 +379,19 @@ export async function recycleDeleteAPI(id) {
   }
   }
   return Promise.reject(new Error(res.data.message));
   return Promise.reject(new Error(res.data.message));
 }
 }
+/**
+ * 删除
+ * @id id
+ */
+ export async function sendDeleteAPI(data) {
+  console.log(data,'id')
+  const res = await request.delete(`/fm/release_management/delete`,{data});
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
+
 
 
 /**
 /**
  * 归档
  * 归档

+ 1 - 1
src/views/doc/components/file-table-list.vue

@@ -686,7 +686,7 @@ export default {
       this.$refs.fileEditAllRef.open(this.folderList);
       this.$refs.fileEditAllRef.open(this.folderList);
     },
     },
     tabClick(data) {
     tabClick(data) {
-      if (this.$refs[data.name]) {
+      if (this.$refs[data.name]&&this.$refs[data.name].init) {
         this.$refs[data.name].init();
         this.$refs[data.name].init();
       }
       }
     },
     },

+ 55 - 14
src/views/doc/components/power/index.vue

@@ -10,14 +10,28 @@
       cache-key="systemOrgUserTable"
       cache-key="systemOrgUserTable"
       :needPage="false"
       :needPage="false"
     >
     >
-      <template v-for="(item, i) in powerList" v-slot:[item]="{ row }">
+      <template v-for="(item, i) in powerArr" v-slot:[item.name]="{ row }">
         <el-checkbox
         <el-checkbox
           :key="i"
           :key="i"
-          v-model="row[item]"
+          v-model="row[item.name]"
           true-label="1"
           true-label="1"
           false-label="0"
           false-label="0"
         ></el-checkbox>
         ></el-checkbox>
       </template>
       </template>
+      <template
+        v-for="(item, i) in powerArr"
+        v-slot:[item.label]="{ column, $index }"
+      >
+        <span :key="i"
+          >{{ column.label }}
+          <el-checkbox
+            true-label="1"
+            false-label="0"
+            v-model="checkedAll[item.name]"
+            @change="allChange(item.name)"
+          ></el-checkbox>
+        </span>
+      </template>
       <template v-slot:toolbar>
       <template v-slot:toolbar>
         <el-button
         <el-button
           size="small"
           size="small"
@@ -89,8 +103,8 @@ export default {
     isAdd: {
     isAdd: {
       default: true
       default: true
     },
     },
-    height:{
-      default:'calc(70vh - 339px)'
+    height: {
+      default: 'calc(70vh - 339px)'
     }
     }
   },
   },
 
 
@@ -98,13 +112,27 @@ export default {
     return {
     return {
       // 表格列配置
       // 表格列配置
 
 
-      tableList: []
+      tableList: [],
+      checkedAll: {
+        visible:'0',
+        browse: '0',
+        check: '0',
+        revise: '0',
+        del: '0',
+        copy: '0',
+        shear: '0',
+        checkEnter: '0',
+        checkOut: '0',
+        archive: '0',
+        cancelArchive: '0',
+        abolish: '0',
+        download: '0',
+        print: '0'
+      }
     };
     };
   },
   },
+
   computed: {
   computed: {
-    powerList() {
-      return this.powerArr.map((item) => item.name);
-    },
     columns() {
     columns() {
       return [
       return [
         {
         {
@@ -119,7 +147,7 @@ export default {
 
 
         {
         {
           align: 'center',
           align: 'center',
-          prop: 'deptName',
+          prop: 'groupName',
           label: '部门',
           label: '部门',
           showOverflowTooltip: true,
           showOverflowTooltip: true,
           minWidth: 110
           minWidth: 110
@@ -138,7 +166,8 @@ export default {
             align: 'center',
             align: 'center',
             label: item.label,
             label: item.label,
             showOverflowTooltip: true,
             showOverflowTooltip: true,
-            width: 80
+            width: 100,
+            headerSlot: item.label
           };
           };
         }),
         }),
         {
         {
@@ -153,7 +182,13 @@ export default {
       ];
       ];
     }
     }
   },
   },
-
+  mounted() {
+    this.powerArr.forEach(item=>{
+      this.checkedAll[item.name]='0'
+    })
+    
+    
+  },
   methods: {
   methods: {
     openEdit() {
     openEdit() {
       this.$refs.addRef.open(this.tableList.map((item) => item.id));
       this.$refs.addRef.open(this.tableList.map((item) => item.id));
@@ -164,11 +199,17 @@ export default {
     getTableList() {
     getTableList() {
       return JSON.parse(JSON.stringify(this.tableList));
       return JSON.parse(JSON.stringify(this.tableList));
     },
     },
+    allChange(key) {
+      this.tableList.forEach((item,index)=>{
+        this.$set(this.tableList[index],key,this.checkedAll[key])
+      })
+
+    },
     success(data) {
     success(data) {
       data.forEach((item) => {
       data.forEach((item) => {
-        this.powerList.forEach((key) => {
-          if (!item[key]) {
-            item[key] = key == 'visible' ? '1' : '0';
+        this.powerArr.forEach((key) => {
+          if (!item[key.name]) {
+            item[key.name] = key.name == 'visible' ? '1' : '0';
           }
           }
         });
         });
       });
       });

+ 7 - 6
src/views/doc/issue_doc/components/edit.vue

@@ -52,6 +52,7 @@
               format="yyyy-MM-dd HH:mm:ss"
               format="yyyy-MM-dd HH:mm:ss"
               value-format="yyyy-MM-dd HH:mm:ss"
               value-format="yyyy-MM-dd HH:mm:ss"
               style="width: 60%"
               style="width: 60%"
+
             >
             >
             </el-date-picker>
             </el-date-picker>
             <el-checkbox
             <el-checkbox
@@ -157,7 +158,7 @@
         </el-col>
         </el-col>
       </el-form>
       </el-form>
       <el-form
       <el-form
-        ref="form"
+        ref="form1"
         :model="form"
         :model="form"
         :rules="rules"
         :rules="rules"
         label-width="82px"
         label-width="82px"
@@ -243,7 +244,7 @@ const defaultForm = {
   name: '', //名称
   name: '', //名称
   fileList: [], //文档集合json
   fileList: [], //文档集合json
   userAuthority: [], //用户权限集合json
   userAuthority: [], //用户权限集合json
-  releaseTime: '', //发布时间
+  releaseTime: new Date(), //发布时间
   failureTime: '', //失效时间
   failureTime: '', //失效时间
   isAuthority: '', //是否回收权限 0 1
   isAuthority: '', //是否回收权限 0 1
   remark: '',
   remark: '',
@@ -497,10 +498,10 @@ export default {
           this.$message.error('请选择文档位置');
           this.$message.error('请选择文档位置');
           return;
           return;
         }
         }
-        if (this.form.userAuthority.length == 0 && this.type != 'power') {
-          this.$message.error('请选择通知用户');
-          return;
-        }
+        // if (this.form.userAuthority.length == 0 && this.type != 'power') {
+        //   this.$message.error('请选择通知用户');
+        //   return;
+        // }
         this.loading = true;
         this.loading = true;
         if (this.type == 'add') {
         if (this.type == 'add') {
           delete this.form.id;
           delete this.form.id;

+ 6 - 1
src/views/doc/sendReceive/receive/components/edit.vue

@@ -195,6 +195,7 @@ import { receiveSave } from '@/api/doc-manage';
 import power from '@/views/doc/components/power/index.vue';
 import power from '@/views/doc/components/power/index.vue';
 import send from '@/views/doc/sendReceive/send/components/sendList.vue';
 import send from '@/views/doc/sendReceive/send/components/sendList.vue';
 import bpmDetail from '@/views/bpm/processInstance/detail.vue';
 import bpmDetail from '@/views/bpm/processInstance/detail.vue';
+import { mapGetters } from 'vuex';
 
 
 const defaultForm = {
 const defaultForm = {
   name: '',
   name: '',
@@ -213,6 +214,7 @@ export default {
       default: true
       default: true
     }
     }
   },
   },
+
   data() {
   data() {
     return {
     return {
       // 表单数据
       // 表单数据
@@ -322,8 +324,11 @@ export default {
     // 是否开启响应式布局
     // 是否开启响应式布局
     styleResponsive() {
     styleResponsive() {
       return this.$store.state.theme.styleResponsive;
       return this.$store.state.theme.styleResponsive;
-    }
+    },
+    ...mapGetters(['user'])
+
   },
   },
+
   created() {},
   created() {},
   methods: {
   methods: {
     open(type, row) {
     open(type, row) {

+ 2 - 2
src/views/doc/sendReceive/send/send.vue

@@ -89,7 +89,7 @@ import edit from '@/views/doc/issue_doc/components/edit.vue';
 import receiveEdit from '@/views/doc/sendReceive/receive/components/edit.vue';
 import receiveEdit from '@/views/doc/sendReceive/receive/components/edit.vue';
 import { mapGetters } from 'vuex';
 import { mapGetters } from 'vuex';
 import dictMixins from '@/mixins/dictMixins';
 import dictMixins from '@/mixins/dictMixins';
-import { sendPage, recycleDeleteAPI } from '@/api/doc-manage';
+import { sendPage, sendDeleteAPI } from '@/api/doc-manage';
 import processSubmitDialog from '@/components/processSubmitDialog/processSubmitDialog.vue';
 import processSubmitDialog from '@/components/processSubmitDialog/processSubmitDialog.vue';
 
 
 export default {
 export default {
@@ -247,7 +247,7 @@ export default {
       });
       });
     },
     },
     remove(row) {
     remove(row) {
-      recycleDeleteAPI(row.id)
+      sendDeleteAPI([row.id])
         .then((message) => {
         .then((message) => {
           this.$message.success(message);
           this.$message.success(message);
           this.done();
           this.done();