|
@@ -22,6 +22,9 @@
|
|
|
<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="私有访问码" v-if=" (!FolderRole.levelCode || free) && boserForm.isEncrypt === 'Y' && needCode">
|
|
|
+ <el-input v-model="boserForm.accessCode" type="password" show-password />
|
|
|
+ </el-form-item>
|
|
|
</template>
|
|
|
<template v-if="(thisRole.length<1 || free) && (free || (!free && thisType.dirType != '2' ))">
|
|
|
<el-form-item v-if="!FolderRole.levelCode || free" label="成员权限">
|
|
@@ -52,11 +55,12 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { ref, onMounted, toRef,toRaw,inject } from 'vue';
|
|
|
+import { ref, onMounted, toRef,toRaw,inject ,watch} 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 { sm3 ,sm2} from "sm-crypto";
|
|
|
import CreateTasnsfer from '../components/createTasnsfer.vue'
|
|
|
|
|
|
export default {
|
|
@@ -138,9 +142,11 @@ export default {
|
|
|
isEncrypt:upFolderData?upFolderData.isEncrypt:"Y",
|
|
|
encryptLevel:upFolderData?upFolderData.encryptLevel:"L1",
|
|
|
memberRoles:upFolderData?upFolderData.dirRole.split(','):[],
|
|
|
- users:upFolderData?upFolderData.users:[]
|
|
|
+ users:upFolderData?upFolderData.users:[],
|
|
|
+ accessCode:upFolderData?upFolderData.accessCode:''
|
|
|
})
|
|
|
const levelList = ref([])
|
|
|
+ const needCode = ref(false) // 需要私有码
|
|
|
function inital() {
|
|
|
console.log(free, 'free');
|
|
|
addBoser.value = result
|
|
@@ -158,8 +164,15 @@ export default {
|
|
|
})
|
|
|
} else {
|
|
|
if (free === 1) {
|
|
|
+ if (boserForm.value.accessCode === '' && needCode) {
|
|
|
+ ElMessage({
|
|
|
+ type: "error",
|
|
|
+ message: "私有访问码不能为空"
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
let query = {}
|
|
|
- if(boserForm.value.dirType === 2){
|
|
|
+ if(boserForm.value.dirType === 2){ // 组织目录
|
|
|
query = {
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": drId - 0,
|
|
@@ -168,7 +181,8 @@ export default {
|
|
|
"dirRole":boserForm.value.memberRoles.join(','),
|
|
|
"users":boserForm.value.users,
|
|
|
"isEncrypt":boserForm.value.isEncrypt,
|
|
|
- "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null
|
|
|
+ "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null,
|
|
|
+ "accessCode":boserForm.value.accessCode?sm3(boserForm.value.accessCode):''
|
|
|
}
|
|
|
}else{
|
|
|
query = {
|
|
@@ -204,11 +218,19 @@ export default {
|
|
|
"isEncrypt":"Y",
|
|
|
"encryptLevel":FolderRole.levelCode,
|
|
|
"users":thisType.dirType === "1"?boserForm.value.users:users.value,
|
|
|
- "dirRole":thisRole.length?thisRole.join(','):''
|
|
|
+ "dirRole":thisRole.length?thisRole.join(','):'',
|
|
|
+ "accessCode":FolderRole.accessCode
|
|
|
}
|
|
|
console.log('query',query);
|
|
|
console.log('FolderRole',FolderRole);
|
|
|
}else{
|
|
|
+ if (boserForm.value.accessCode === '' && needCode) {
|
|
|
+ ElMessage({
|
|
|
+ type: "error",
|
|
|
+ message: "私有访问码不能为空"
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
query={
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": newdrid - 0,
|
|
@@ -217,7 +239,8 @@ export default {
|
|
|
"isEncrypt":boserForm.value.isEncrypt,
|
|
|
"encryptLevel":(boserForm.value.isEncrypt == "Y" && boserForm.value.dirType == "2")?boserForm.value.encryptLevel:null,
|
|
|
"users":thisType.dirType === "1"?boserForm.value.users:users.value,
|
|
|
- "dirRole":thisType.dirType === "1"?boserForm.value.memberRoles.join(','):thisRole.join(',')
|
|
|
+ "dirRole":thisType.dirType === "1"?boserForm.value.memberRoles.join(','):thisRole.join(','),
|
|
|
+ "accessCode":boserForm.value.accessCode?sm3(boserForm.value.accessCode):''
|
|
|
}
|
|
|
}
|
|
|
console.log('free0query',query);
|
|
@@ -247,6 +270,13 @@ export default {
|
|
|
}
|
|
|
let query = {}
|
|
|
if(free === 1){
|
|
|
+ if (boserForm.value.accessCode === '' && needCode) {
|
|
|
+ ElMessage({
|
|
|
+ type: "error",
|
|
|
+ message: "私有访问码不能为空"
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
query ={
|
|
|
"dirName": boserForm.value.dirName,
|
|
|
"parentId": drId - 0,
|
|
@@ -256,7 +286,8 @@ export default {
|
|
|
"dirRole":boserForm.value.memberRoles.join(','),
|
|
|
"users":boserForm.value.users,
|
|
|
"isEncrypt":boserForm.value.isEncrypt,
|
|
|
- "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null
|
|
|
+ "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null,
|
|
|
+ "accessCode":boserForm.value.accessCode?sm3(boserForm.value.accessCode):''
|
|
|
}
|
|
|
}else{
|
|
|
query ={
|
|
@@ -268,7 +299,8 @@ export default {
|
|
|
"dirRole":boserForm.value.memberRoles.join(','),
|
|
|
"users":boserForm.value.users,
|
|
|
"isEncrypt":boserForm.value.isEncrypt,
|
|
|
- "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null
|
|
|
+ "encryptLevel":boserForm.value.isEncrypt == "Y"?boserForm.value.encryptLevel:null,
|
|
|
+ "accessCode":boserForm.value.accessCode?sm3(boserForm.value.accessCode):''
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -303,13 +335,25 @@ export default {
|
|
|
delete item['disabled']
|
|
|
return item
|
|
|
})
|
|
|
- console.log('newArr',boserForm.value.users);
|
|
|
+ // console.log('newArr',boserForm.value.users);
|
|
|
}
|
|
|
const getUser =async ()=>{
|
|
|
const res = await listUser({dirId:thisType.dirId})
|
|
|
- console.log('getUser',res);
|
|
|
+ // console.log('getUser',res);
|
|
|
users.value = res.rows
|
|
|
}
|
|
|
+ //监听加密等级
|
|
|
+ watch(() => boserForm.value.encryptLevel, (newValue, oldValue) => {
|
|
|
+ const thisRole = levelList.value.find(item=>item.levelCode == newValue)
|
|
|
+ // console.log('thisRole',thisRole);
|
|
|
+ if(thisRole.roles.l0700){
|
|
|
+ needCode.value = true
|
|
|
+ }else{
|
|
|
+ needCode.value = false
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ deep: true
|
|
|
+ });
|
|
|
onMounted(() => {
|
|
|
inital()
|
|
|
getLevelList()
|
|
@@ -341,7 +385,8 @@ export default {
|
|
|
getUser,
|
|
|
users,
|
|
|
sureUpBoser,
|
|
|
- upFirstFolderData
|
|
|
+ upFirstFolderData,
|
|
|
+ needCode
|
|
|
}
|
|
|
},
|
|
|
components: {
|