|
@@ -221,23 +221,16 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="权限名称" width="200">
|
|
|
- <template #header>
|
|
|
- <span>权限名称</span>
|
|
|
- <el-tooltip class="box-item" effect="dark" placement="top">
|
|
|
- <template #content>注:<br />含临床技能、病历书写与审核、处方权限、值班、会诊、门诊开设、分级麻醉、分级手术/操作授权、麻精处方、抗菌素处方分级。</template>
|
|
|
- <el-icon color="red" size="14"><QuestionFilled /></el-icon>
|
|
|
- </el-tooltip>
|
|
|
- </template>
|
|
|
<template v-slot="scope">
|
|
|
<div v-if="scope.row.isEdit">
|
|
|
- <el-select v-model="scope.row.name" clearable placeholder="请选择权限名称">
|
|
|
- <el-option v-for="option in permissionsOptions" :key="option.code" :label="option.name"
|
|
|
+ <el-select v-model="scope.row.name" clearable placeholder="请选择权限名称" @change="fqxChange(scope.row)">
|
|
|
+ <el-option v-for="option in fqxList" :key="option.code" :label="option.name"
|
|
|
:value="option.code"></el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
|
<div v-else>
|
|
|
<el-select v-model="scope.row.name" disabled placeholder="请选择权限名称">
|
|
|
- <el-option v-for="option in permissionsOptions" :key="option.code" :label="option.name"
|
|
|
+ <el-option v-for="option in fqxList" :key="option.code" :label="option.name"
|
|
|
:value="option.code"></el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
@@ -245,8 +238,18 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="content" label="权限内容" width="350" show-overflow-tooltip>
|
|
|
<template v-slot="scope">
|
|
|
- <el-input v-if="scope.row.isEdit" size="small" v-model="scope.row.content"></el-input>
|
|
|
- <span v-else>{{ scope.row.content }}</span>
|
|
|
+ <div v-if="scope.row.isEdit">
|
|
|
+ <el-select v-model="scope.row.content" clearable placeholder="请选择权限内容">
|
|
|
+ <el-option v-for="option in zqx1List" :key="option.code" :label="option.name"
|
|
|
+ :value="option.code"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <el-select v-model="scope.row.content" disabled placeholder="请选择权限内容">
|
|
|
+ <el-option v-for="option in zqx1List" :key="option.code" :label="option.name"
|
|
|
+ :value="option.code"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="delFlag" label="权限资格" width="120">
|
|
@@ -302,6 +305,7 @@ import {
|
|
|
selectTechnologyArchives15, saveTechnologyArchives15, delTechnologyArchives15ByCode, selectTechnologyArchivesMainDict
|
|
|
} from "@/api/technology-archives/technology-archives";
|
|
|
import {useUserStore} from "@/pinia/user-store";
|
|
|
+import {selectDictByCode} from "@/api/dictionary/selection-options";
|
|
|
|
|
|
const editableTabsValue = ref('eighthInfo')
|
|
|
const userInfo = useUserStore().userInfo
|
|
@@ -317,6 +321,8 @@ onMounted(() => {
|
|
|
nextTick(() => {
|
|
|
queryTechnologyArchivesMainDict()
|
|
|
queryTechnologyArchives8()
|
|
|
+ queryDict1ByCode()
|
|
|
+ queryDict2ByCode()
|
|
|
})
|
|
|
})
|
|
|
|
|
@@ -330,6 +336,40 @@ const queryTechnologyArchivesMainDict = () => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+let fqxList = ref([])
|
|
|
+let zqxList = ref([])
|
|
|
+// 父权限
|
|
|
+const queryDict1ByCode = () => {
|
|
|
+ selectDictByCode('t_pp')
|
|
|
+ .then((res) => {
|
|
|
+ if(res){
|
|
|
+ fqxList.value = res
|
|
|
+ } else {
|
|
|
+ fqxList.value = []
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+// 子权限
|
|
|
+const queryDict2ByCode = () => {
|
|
|
+ selectDictByCode('t_cp')
|
|
|
+ .then((res) => {
|
|
|
+ if(res){
|
|
|
+ zqxList.value = res
|
|
|
+ } else {
|
|
|
+ zqxList.value = []
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+// 父权限变更
|
|
|
+const zqx1List = ref([])
|
|
|
+const fqxChange = (row) => {
|
|
|
+ if(row.name){
|
|
|
+ zqx1List.value = zqxList.value.filter((item) => {
|
|
|
+ return item.pyCode === row.name
|
|
|
+ })
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
const authorCharge = (row) => {
|
|
|
if(row.accountAuthor){
|
|
|
let ac = baseInfoList.value.filter((item) => {
|
|
@@ -444,6 +484,8 @@ const onAddItem = () => {
|
|
|
content: '',
|
|
|
delFlag: '',
|
|
|
comment: '',
|
|
|
+ nameStr: '',
|
|
|
+ contentStr: '',
|
|
|
isEdit: true,
|
|
|
isAdd: true,
|
|
|
})
|
|
@@ -663,7 +705,19 @@ const updateFifteenthInfo = (row) => {
|
|
|
callSaveFifteenthInfo(row)
|
|
|
}
|
|
|
|
|
|
+const dataF = ref({
|
|
|
+ socialNo: '',
|
|
|
+ time: '',
|
|
|
+ name: '',
|
|
|
+ content: '',
|
|
|
+ delFlag: '',
|
|
|
+ nameStr: '',
|
|
|
+ contentStr: '',
|
|
|
+ accountAuthor: '',
|
|
|
+ accountName: '',
|
|
|
+})
|
|
|
const callSaveFifteenthInfo = (row) => {
|
|
|
+ dataF.value = {}
|
|
|
let permissionsData = permissionsOptions.filter((item) => {
|
|
|
return item.code === row.name
|
|
|
})
|
|
@@ -675,6 +729,18 @@ const callSaveFifteenthInfo = (row) => {
|
|
|
distinguishCancelAndClose: true,
|
|
|
dangerouslyUseHTMLString: true
|
|
|
}).then(() => {
|
|
|
+ let fqx = fqxList.value.filter((item) => {
|
|
|
+ return item.code === row.name
|
|
|
+ })
|
|
|
+ if(fqx){
|
|
|
+ row.nameStr = fqx[0].name
|
|
|
+ }
|
|
|
+ let zqx = zqxList.value.filter((item) => {
|
|
|
+ return item.code === row.content
|
|
|
+ })
|
|
|
+ if(zqx){
|
|
|
+ row.contentStr = zqx[0].name
|
|
|
+ }
|
|
|
saveTechnologyArchives15(row).then((res) => {
|
|
|
ElMessage({
|
|
|
type: "success",
|