admin、oa 后台权限配置
continuous-integration/drone/push Build is passing Details

main
wangxiaoshuang 2024-05-14 09:59:40 +08:00
parent 1f50eb9f16
commit 1eea3c8af7
1 changed files with 57 additions and 41 deletions

View File

@ -1,80 +1,96 @@
<template>
<div class="question-wrapper">
<el-tabs v-model="activeTab" @tab-click="clickTab">
<el-tab-pane label="QC问题配置" name="qc">
<el-tab-pane
v-for="item in tabPaneList"
:key="item.value"
:label="item.label"
:name="item.value"
>
<qc-questions v-if="activeTab == 'qc'" />
</el-tab-pane>
<el-tab-pane label="阅片标准配置" name="criterions">
<criterions-tmp v-if="activeTab == 'criterions'" />
</el-tab-pane>
<el-tab-pane label="临床数据配置" name="clinicalData">
<clinical-data v-if="activeTab == 'clinicalData'" />
</el-tab-pane>
<el-tab-pane label="医学审核问题配置" name="medicalAudit">
<medical-audit v-if="activeTab == 'medicalAudit'" />
</el-tab-pane>
<el-tab-pane label="DICOM字段匿名化配置" name="anonymization">
<Anonymization v-if="activeTab == 'anonymization'" />
</el-tab-pane>
<el-tab-pane label="DICOM字段新增配置" name="increasefields">
<IncreaseFields v-if="activeTab == 'increasefields'" />
</el-tab-pane>
<el-tab-pane label="邮件管理" name="email">
<Email v-if="activeTab == 'email'" />
</el-tab-pane>
<el-tab-pane label="签名管理" name="sign">
<Sign v-if="activeTab == 'sign'" />
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import QcQuestions from './components/QcQuestions.vue'
import CriterionsTmp from './components/CriterionsTmp'
import ClinicalData from './components/ClinicalDataConfig'
import MedicalAudit from './components/MedicalAudit'
import Anonymization from './components/Anonymization'
import IncreaseFields from './components/IncreaseFields'
import Email from './email/index.vue'
import Sign from './sign/index.vue'
import QcQuestions from "./components/QcQuestions.vue";
import CriterionsTmp from "./components/CriterionsTmp";
import ClinicalData from "./components/ClinicalDataConfig";
import MedicalAudit from "./components/MedicalAudit";
import Anonymization from "./components/Anonymization";
import IncreaseFields from "./components/IncreaseFields";
import Email from "./email/index.vue";
import Sign from "./sign/index.vue";
export default {
name: 'Questions',
name: "Questions",
components: {
QcQuestions, CriterionsTmp, ClinicalData, Anonymization, IncreaseFields, Email, Sign,
MedicalAudit
QcQuestions,
CriterionsTmp,
ClinicalData,
Anonymization,
IncreaseFields,
Email,
Sign,
MedicalAudit,
},
data() {
return {
activeTab: 'qc'
}
}, mounted() {
activeTab: null,
defaultTabPaneList: [
{ label: "QC问题配置", name: "qc" },
{ label: "阅片标准配置", name: "criterions" },
{ label: "临床数据配置", name: "clinicalData" },
{ label: "医学审核问题配置", name: "medicalAudit" },
{ label: "DICOM字段匿名化配置", name: "anonymization" },
{ label: "DICOM字段匿名化配置", name: "increasefields" },
{ label: "邮件管理", name: "email" },
{ label: "签名管理", name: "sign" },
],
tabPaneList: [],
};
},
created() {
if (this.$route.query.tabActive) {
this.activeTab = this.$route.query.tabActive
} else {
this.activeTab = 'qc'
this.activeTab = this.$route.query.tabActive;
}
this.tabPaneList = [];
this.$d.Common_Template_Type.forEach((item) => {
if (this.hasPermi([`dictionary:template:${item.value}`])) {
if (!this.activeTab) {
this.activeTab = item.value;
}
this.tabPaneList.push(item);
}
});
},
methods: {
clickTab(tab, event) {
this.$router.push({ path: `/dictionary/template?tabActive=${tab.name}` })
}
}
}
this.$router.push({ path: `/dictionary/template?tabActive=${tab.name}` });
},
},
};
</script>
<style lang="scss">
.question-wrapper{
.el-tabs{
.question-wrapper {
.el-tabs {
height: 100%;
display: flex;
flex-direction: column;
}
.el-tabs__header {
height: 40px;
margin-bottom:5px;
margin-bottom: 5px;
}
.el-tabs__content{
.el-tabs__content {
flex: 1;
.el-tab-pane{
.el-tab-pane {
height: 100%;
}
}