|
|
@@ -6,29 +6,31 @@
|
|
|
<el-form-item label="目录名称">
|
|
|
<el-input v-model="boserForm.dirName" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="目录分类">
|
|
|
+ <el-form-item label="目录分类" v-if="thisType.dirType != '2'">
|
|
|
<el-radio-group v-model="boserForm.dirType">
|
|
|
<el-radio :label="1">公开目录</el-radio>
|
|
|
<el-radio :label="2">组织目录</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
- <template v-if="boserForm.dirType === 2">
|
|
|
- <el-form-item label="是否加密" v-if="!(FolderRole && !free )">
|
|
|
+ <template v-if="boserForm.dirType === 2 || thisType.dirType == '2'">
|
|
|
+ <el-form-item label="是否加密" v-if="!FolderRole.levelCode || free">
|
|
|
<el-switch v-model="boserForm.isEncrypt" active-value="Y" inactive-value="N" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="加密等级" v-if="!(FolderRole && !free) && boserForm.isEncrypt === 'Y'">
|
|
|
+ <el-form-item label="加密等级" v-if=" (!FolderRole.levelCode || free) && boserForm.isEncrypt === 'Y'">
|
|
|
<el-radio-group v-model="boserForm.encryptLevel">
|
|
|
<el-radio :label="item.levelCode" v-for="item in levelList" :key="item">{{item.levelName}}</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="成员权限">
|
|
|
- <el-checkbox-group v-model="boserForm.memberRoles">
|
|
|
- <el-checkbox v-for="item in dir_rules" :key="item.value" :label="item.value">{{item.label}}</el-checkbox>
|
|
|
- </el-checkbox-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="选择成员" v-if="boserForm.dirType === 2">
|
|
|
- </el-form-item>
|
|
|
- <CreateTasnsfer v-if="boserForm.dirType === 2" @setUsers="setUsers" :openTrans="openTrans"></CreateTasnsfer>
|
|
|
+ <template v-if="thisRole.length<1 || free">
|
|
|
+ <el-form-item label="成员权限">
|
|
|
+ <el-checkbox-group v-model="boserForm.memberRoles">
|
|
|
+ <el-checkbox v-for="item in dir_rules" :key="item.value" :label="item.value">{{item.label}}</el-checkbox>
|
|
|
+ </el-checkbox-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="选择成员" v-if="boserForm.dirType === 2">
|
|
|
+ </el-form-item>
|
|
|
+ <CreateTasnsfer v-if="boserForm.dirType === 2" @setUsers="setUsers" :openTrans="openTrans"></CreateTasnsfer>
|
|
|
+ </template>
|
|
|
</template>
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
|
@@ -47,6 +49,7 @@
|
|
|
<script>
|
|
|
import { ref, onMounted, toRef,toRaw } from 'vue';
|
|
|
import documents from '../../../api/document/document';
|
|
|
+import {listUser} from '../../../api/biz/user';
|
|
|
import { getLevel } from '@/api/level/level.js';
|
|
|
import { ElMessage } from 'element-plus';
|
|
|
import CreateTasnsfer from '../components/createTasnsfer.vue'
|
|
|
@@ -77,11 +80,20 @@ export default {
|
|
|
type: Number,
|
|
|
required: true
|
|
|
},
|
|
|
+ thisType: {
|
|
|
+ type: String,
|
|
|
+ required: true
|
|
|
+ },
|
|
|
thisFolderRole: {
|
|
|
type: Object,
|
|
|
required: true,
|
|
|
default: ()=>{},
|
|
|
},
|
|
|
+ thisRole: {
|
|
|
+ type: Object,
|
|
|
+ required: true,
|
|
|
+ default: ()=>{},
|
|
|
+ },
|
|
|
getAllTop: Function,
|
|
|
},
|
|
|
setup(props, { emit }) {
|
|
|
@@ -99,8 +111,13 @@ export default {
|
|
|
let newspid = props.newSpaceId
|
|
|
let newdrid = props.newDirId
|
|
|
const FolderRole = props.thisFolderRole
|
|
|
+ const thisRole = props.thisRole
|
|
|
+ const thisType = props.thisType
|
|
|
+ const users = ref()
|
|
|
const openTrans = ref(true)
|
|
|
- // console.log("FolderRole",props);
|
|
|
+ console.log("FolderRole",FolderRole);
|
|
|
+ console.log("thisRole",thisRole);
|
|
|
+ console.log("thisType",thisType);
|
|
|
let addBoser = ref(false)
|
|
|
let boserForm = ref({
|
|
|
dirName: "",
|
|
|
@@ -134,7 +151,7 @@ export default {
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": drId - 0,
|
|
|
"spaceId": spId - 0,
|
|
|
- "dirType":boserForm.value.dirType,
|
|
|
+ "dirType":thisType.dirType=='2'?'2':boserForm.value.dirType,
|
|
|
"dirRole":boserForm.value.memberRoles.join(','),
|
|
|
"users":boserForm.value.users,
|
|
|
"isEncrypt":boserForm.value.isEncrypt,
|
|
|
@@ -145,7 +162,7 @@ export default {
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": drId - 0,
|
|
|
"spaceId": spId - 0,
|
|
|
- "dirType":boserForm.value.dirType
|
|
|
+ "dirType":thisType.dirType=='2'?'2':boserForm.value.dirType,
|
|
|
|
|
|
}
|
|
|
}
|
|
|
@@ -164,14 +181,15 @@ export default {
|
|
|
})
|
|
|
} else {
|
|
|
let query = {}
|
|
|
- if(FolderRole){
|
|
|
- //目前是不可以创建二级目录
|
|
|
+ if(FolderRole.levelCode){
|
|
|
+ //父级有权限自动继承 没有就用添加的值
|
|
|
query={
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": newdrid - 0,
|
|
|
"spaceId": newspid - 0,
|
|
|
- // "isEncrypt":"Y",
|
|
|
- // "encryptLevel":FolderRole.levelCode
|
|
|
+ "dirType":boserForm.value.dirType,
|
|
|
+ "isEncrypt":"Y",
|
|
|
+ "encryptLevel":FolderRole.levelCode
|
|
|
}
|
|
|
console.log('query',query);
|
|
|
console.log('FolderRole',FolderRole);
|
|
|
@@ -180,10 +198,18 @@ export default {
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": newdrid - 0,
|
|
|
"spaceId": newspid - 0,
|
|
|
- // "isEncrypt":boserForm.value.isEncrypt,
|
|
|
- // "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null
|
|
|
+ "dirType":boserForm.value.dirType,
|
|
|
+ "isEncrypt":boserForm.value.isEncrypt,
|
|
|
+ "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null
|
|
|
}
|
|
|
}
|
|
|
+ if(thisRole.length){
|
|
|
+ query.dirRole = thisRole.join(',')
|
|
|
+ }else{
|
|
|
+ query.dirRole = boserForm.value.memberRoles.join(',')
|
|
|
+ query.users = boserForm.value.users
|
|
|
+ }
|
|
|
+ console.log('free0query',query);
|
|
|
documents.addDocument(
|
|
|
query
|
|
|
).then(res => {
|
|
|
@@ -218,9 +244,17 @@ export default {
|
|
|
})
|
|
|
console.log('newArr',boserForm.value.users);
|
|
|
}
|
|
|
+ const getUser =async ()=>{
|
|
|
+ const res = await listUser({dirId:thisType.dirId})
|
|
|
+ console.log('getUser',res);
|
|
|
+ users.value = res.rows
|
|
|
+ }
|
|
|
onMounted(() => {
|
|
|
inital()
|
|
|
getLevelList()
|
|
|
+ if(thisRole.length){
|
|
|
+ getUser()
|
|
|
+ }
|
|
|
})
|
|
|
return {
|
|
|
addBoser,
|
|
|
@@ -240,7 +274,11 @@ export default {
|
|
|
openTrans,
|
|
|
setUsers,
|
|
|
dir_rules,
|
|
|
- proxy
|
|
|
+ proxy,
|
|
|
+ thisRole,
|
|
|
+ thisType,
|
|
|
+ getUser,
|
|
|
+ users
|
|
|
}
|
|
|
},
|
|
|
components: {
|