- 修复诊断组件中el-popover模板语法错误,添加template标签 - 优化患者历史数据处理逻辑,确保数组类型安全并正确构建树形结构 - 完善住院办理流程中的组织机构数据获取和筛选逻辑 - 添加详细的控制台日志用于调试住院办理功能 - 修复办理住院按钮的禁用状态计算逻辑 - 优化患者卡片点击事件处理,确保就诊ID正确传递 - 添加诊断信息完整性检查并提供用户引导 - 修复检验申请组件中的监听器和暴露方法逻辑
651 lines
20 KiB
Vue
651 lines
20 KiB
Vue
<template>
|
||
<div>
|
||
<el-row :gutter="24">
|
||
<el-col :span="4" :xs="24">
|
||
<el-input v-model="diagnosis" placeholder="诊断名称" clearable style="width: 100%; margin-bottom: 10px"
|
||
@keyup.enter="queryDiagnosisUse">
|
||
<template #append>
|
||
<el-button icon="Search" @click="queryDiagnosisUse" />
|
||
</template>
|
||
</el-input>
|
||
<el-tree
|
||
ref="treeRef"
|
||
:data="tree"
|
||
node-key="id"
|
||
:props="{ label: 'name', children: 'children' }"
|
||
highlight-current
|
||
default-expand-all
|
||
:filter-node-method="filterNode"
|
||
class="tree-with-scrollbar"
|
||
@node-click="handleNodeClick"
|
||
max-height="650"
|
||
>
|
||
<template #default="{ node, data }">
|
||
<div class="custom-tree-node">
|
||
<span>{{ node.label }}</span>
|
||
<span class="tree-node-actions">
|
||
<template v-if="node.level === 1 && data.name != '常用' && data.name != '历史'">
|
||
<el-button
|
||
style="color: #000000"
|
||
type="text"
|
||
size="small"
|
||
@click.stop="addChild(data)"
|
||
>
|
||
<el-icon>
|
||
<Plus />
|
||
</el-icon>
|
||
</el-button>
|
||
</template>
|
||
<el-popconfirm width="200" :hide-after="10" title="确认删除此常用诊断吗" placement="top-start"
|
||
@confirm="deleteChild(data)">
|
||
<template #reference>
|
||
<el-button
|
||
style="color: #000000"
|
||
v-if="
|
||
node.level === 2 &&
|
||
node.parent.data.name != '常用' &&
|
||
node.parent.data.name != '历史'
|
||
"
|
||
type="text"
|
||
size="small"
|
||
@click.stop=""
|
||
>
|
||
<el-icon>
|
||
<Minus />
|
||
</el-icon>
|
||
</el-button>
|
||
</template>
|
||
</el-popconfirm>
|
||
</span>
|
||
</div>
|
||
</template>
|
||
</el-tree>
|
||
</el-col>
|
||
<el-col :span="20" :xs="24">
|
||
<div style="margin-bottom: 10px">
|
||
<el-button type="primary" plain @click="handleAddDiagnosis()"> 新增诊断 </el-button>
|
||
<el-button type="primary" plain @click="handleSaveDiagnosis()"> 保存诊断 </el-button>
|
||
<el-button type="primary" plain @click="handleAddTcmDiagonsis()"> 中医诊断 </el-button>
|
||
<el-button type="primary" plain @click="handleImport()"> 导入慢性病诊断 </el-button>
|
||
<span style="font-size: 12px; margin-left: 10px"
|
||
>注意 : 若使用电子处方,请不要导入慢性病诊断</span
|
||
>
|
||
</div>
|
||
|
||
<el-form :model="form" :rules="rules" ref="formRef">
|
||
<el-table ref="diagnosisTableRef" :data="form.diagnosisList" height="650">
|
||
<el-table-column label="序号" type="index" width="50" />
|
||
<el-table-column label="诊断排序" align="center" prop="diagSrtNo" width="120">
|
||
<template #default="scope">
|
||
<el-form-item :prop="`diagnosisList.${scope.$index}.diagSrtNo`" :rules="rules.diagSrtNo">
|
||
<el-input-number v-model="scope.row.diagSrtNo" controls-position="right" :controls="false"
|
||
style="width: 80px" />
|
||
</el-form-item>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="诊断类别" align="center" prop="diagSrtNo" width="180">
|
||
<template #default="scope">
|
||
<el-form-item :prop="`diagnosisList.${scope.$index}.medTypeCode`" :rules="rules.medTypeCode">
|
||
<el-select v-model="scope.row.medTypeCode" placeholder=" " style="width: 150px">
|
||
<el-option
|
||
v-for="item in diag_type"
|
||
:key="item.value"
|
||
:label="item.label"
|
||
:value="item.value"
|
||
/>
|
||
</el-select>
|
||
</el-form-item>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="诊断名称" align="center" prop="name">
|
||
<template #default="scope">
|
||
<el-form-item :prop="`diagnosisList.${scope.$index}.name`" :rules="rules.name">
|
||
<el-popover
|
||
:popper-style="{ padding: '0' }"
|
||
placement="bottom-start"
|
||
:visible="scope.row.showPopover"
|
||
trigger="manual"
|
||
:width="800"
|
||
>
|
||
<template #default>
|
||
<diagnosislist
|
||
:diagnosisSearchkey="diagnosisSearchkey"
|
||
@selectDiagnosis="handleSelsectDiagnosis"
|
||
/>
|
||
</template>
|
||
<template #reference>
|
||
<el-input v-model="scope.row.name" placeholder="请选择诊断" @input="handleChange"
|
||
@focus="handleFocus(scope.row, scope.$index)" @blur="handleBlur(scope.row)" />
|
||
</template>
|
||
</el-popover>
|
||
</el-form-item>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="医保码" align="center" prop="ybNo" width="180" />
|
||
<el-table-column label="类别" align="center" prop="typeName" width="100" />
|
||
<el-table-column label="诊断类型" align="center" prop="maindiseFlag">
|
||
<template #default="scope">
|
||
<div style="display:flex;flex-direction:column;align-items:center;gap:5px;">
|
||
<el-checkbox
|
||
label="主诊断"
|
||
:true-value="1"
|
||
:false-value="0"
|
||
v-model="scope.row.maindiseFlag"
|
||
border
|
||
size="small"
|
||
@change="(value) => handleMaindise(value, scope.$index)"
|
||
/>
|
||
<el-select
|
||
v-model="scope.row.verificationStatusEnum"
|
||
placeholder=" "
|
||
style="width: 100%; padding-bottom: 5px; padding-left: 10px"
|
||
size="small"
|
||
>
|
||
<el-option
|
||
v-for="item in diagnosisOptions"
|
||
:key="item.value"
|
||
:label="item.label"
|
||
:value="item.value"
|
||
/>
|
||
</el-select>
|
||
</div>
|
||
</template>
|
||
</el-table-column>
|
||
<el-table-column label="操作" align="center" width="130">
|
||
<template #default="scope">
|
||
<el-button link type="primary" @click="handleDeleteDiagnosis(scope.row, scope.$index)">
|
||
删除
|
||
</el-button>
|
||
</template>
|
||
</el-table-column>
|
||
</el-table>
|
||
</el-form>
|
||
</el-col>
|
||
</el-row>
|
||
<diagnosisdialog
|
||
:openDiagnosis="openDiagnosis"
|
||
@close="closeDiagnosisDialog"
|
||
:radio="orgOrUser"
|
||
/>
|
||
<AddDiagnosisDialog
|
||
:openAddDiagnosisDialog="openAddDiagnosisDialog"
|
||
:updateZy="updateZy"
|
||
:patientInfo="props.patientInfo"
|
||
@close="closeDiagnosisDialog"
|
||
/>
|
||
</div>
|
||
</template>
|
||
|
||
<script setup>
|
||
import {getCurrentInstance} from 'vue';
|
||
import useUserStore from '@/store/modules/user';
|
||
import {
|
||
delEncounterDiagnosis,
|
||
deleteDiagnosisBind,
|
||
deleteTcmDiagnosis,
|
||
diagnosisInit,
|
||
getChronicDisease,
|
||
getConditionDefinitionInfo,
|
||
getEmrDetail,
|
||
getEncounterDiagnosis,
|
||
getTcmDiagnosis,
|
||
isFoodDiseasesNew,
|
||
saveDiagnosis,
|
||
} from '../api';
|
||
import diagnosisdialog from '../diagnosis/diagnosisdialog.vue';
|
||
import AddDiagnosisDialog from './addDiagnosisDialog.vue';
|
||
import diagnosislist from '../diagnosis/diagnosislist.vue';
|
||
// const diagnosisList = ref([]);
|
||
const allowAdd = ref(false);
|
||
const tree = ref([]);
|
||
const openDiagnosis = ref(false);
|
||
const updateZy = ref([]);
|
||
const openAddDiagnosisDialog = ref(false);
|
||
const diagnosisSearchkey = ref('');
|
||
const diagnosisOptions = ref([]);
|
||
const rowIndex = ref();
|
||
const diagnosis = ref();
|
||
const orgOrUser = ref();
|
||
const form = ref({
|
||
diagnosisList: [],
|
||
isDataLoaded: false,
|
||
});
|
||
const props = defineProps({
|
||
patientInfo: {
|
||
type: Object,
|
||
required: true,
|
||
},
|
||
});
|
||
const emits = defineEmits(['diagnosisSave']);
|
||
const { proxy } = getCurrentInstance();
|
||
const userStore = useUserStore();
|
||
const { diag_type } = proxy.useDict('diag_type');
|
||
const rules = ref({
|
||
name: [{ required: true, message: '请选择诊断', trigger: 'change' }],
|
||
medTypeCode: [{ required: true, message: '请选择诊断类型', trigger: 'change' }],
|
||
diagSrtNo: [{ required: true, message: '请输入诊断序号', trigger: 'change' }],
|
||
});
|
||
|
||
watch(
|
||
() => form.value.diagnosisList,
|
||
() => {
|
||
emits('diagnosisSave', false);
|
||
},
|
||
{ deep: true }
|
||
);
|
||
|
||
function getDetail(encounterId) {
|
||
if (!encounterId) {
|
||
console.warn('未提供有效的就诊ID,无法获取病历详情');
|
||
return;
|
||
}
|
||
|
||
getEmrDetail(encounterId).then((res) => {
|
||
allowAdd.value = res.data ? true : false;
|
||
});
|
||
}
|
||
|
||
function refreshData() {
|
||
getList();
|
||
}
|
||
let maxNo = 99;
|
||
function getList() {
|
||
getEncounterDiagnosis(props.patientInfo.encounterId)
|
||
.then((res) => {
|
||
if (res.code == 200) {
|
||
// 过滤掉中医诊断,只保留西医诊断
|
||
form.value.diagnosisList = res.data.filter(item => item.typeName !== '中医诊断');
|
||
emits('diagnosisSave', false);
|
||
}
|
||
maxNo = form.value.diagnosisList.length;
|
||
})
|
||
.then(() => {
|
||
getTcmDiagnosis({ encounterId: props.patientInfo.encounterId }).then((res) => {
|
||
if (res.code == 200) {
|
||
if (res.data.illness.length > 0) {
|
||
res.data.illness.forEach((item, index) => {
|
||
if (item.diagSrtNo <= maxNo) {
|
||
return;
|
||
}
|
||
form.value.diagnosisList.push({
|
||
name: item.name + '-' + res.data.symptom[index].name,
|
||
diagSrtNo: item.diagSrtNo,
|
||
ybNo: item.ybNo,
|
||
medTypeCode: item.medTypeCode,
|
||
syndromeGroupNo: item.syndromeGroupNo,
|
||
typeName: '中医诊断',
|
||
updateId:item.encounterDiagnosisId+'-'+res.data.symptom[index].encounterDiagnosisId,
|
||
illnessDefinitionId : item.definitionId,
|
||
symptomDefinitionId : res.data.symptom[index].definitionId,
|
||
symptomYbNo: res.data.symptom[index].ybNo,
|
||
});
|
||
maxNo = item.diagSrtNo;
|
||
});
|
||
}
|
||
emits('diagnosisSave', false);
|
||
}
|
||
});
|
||
});
|
||
getTree();
|
||
}
|
||
|
||
init();
|
||
function init() {
|
||
diagnosisInit().then((res) => {
|
||
if (res.code == 200) {
|
||
diagnosisOptions.value = res.data.verificationStatusOptions;
|
||
}
|
||
});
|
||
}
|
||
|
||
function handleImport() {
|
||
if (!props.patientInfo || !props.patientInfo.encounterId) {
|
||
console.warn('患者就诊信息不完整,无法导入慢性病信息');
|
||
return;
|
||
}
|
||
|
||
if (props.patientInfo.contractName != '自费') {
|
||
// 获取患者慢性病信息
|
||
getChronicDisease({ encounterId: props.patientInfo.encounterId }).then((res) => {
|
||
if (res.data && res.data.length > 0) {
|
||
// 计算现有最大排序号
|
||
const maxSortNo = form.value.diagnosisList.length > 0
|
||
? Math.max(...form.value.diagnosisList.map(item => item.diagSrtNo || 0))
|
||
: 0;
|
||
|
||
res.data.forEach((item, index) => {
|
||
form.value.diagnosisList.push({
|
||
...item,
|
||
...{
|
||
medTypeCode: '140104',
|
||
verificationStatusEnum: 4,
|
||
definitionId: item.id,
|
||
diagSrtNo: maxSortNo + index + 1,
|
||
iptDiseTypeCode: 2,
|
||
diagnosisDesc: '',
|
||
diagnosisDoctor: props.patientInfo.practitionerName || props.patientInfo.doctorName || props.patientInfo.physicianName || userStore.name,
|
||
diagnosisTime: new Date().toLocaleString('zh-CN')
|
||
},
|
||
});
|
||
});
|
||
|
||
// 导入完成后按排序号排序
|
||
form.value.diagnosisList.sort((a, b) => (a.diagSrtNo || 0) - (b.diagSrtNo || 0));
|
||
emits('diagnosisSave', false);
|
||
}
|
||
});
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 添加子节点
|
||
*/
|
||
function addChild(data) {
|
||
orgOrUser.value = data.name;
|
||
openDiagnosis.value = true;
|
||
}
|
||
|
||
/**
|
||
* 删除子节点
|
||
*/
|
||
function deleteChild(data) {
|
||
deleteDiagnosisBind(data.id).then((res) => {
|
||
if (res.code == 200) {
|
||
proxy.$modal.msgSuccess('删除成功');
|
||
getTree();
|
||
}
|
||
});
|
||
}
|
||
watch(diagnosis, (val) => {
|
||
proxy.$refs['treeRef'].filter(val);
|
||
});
|
||
|
||
/** 通过条件过滤节点 */
|
||
const filterNode = (value, data) => {
|
||
console.log('filterNode', value, data);
|
||
|
||
if (!value) return true;
|
||
return data.name.indexOf(value) !== -1;
|
||
};
|
||
|
||
/**
|
||
* 获取诊断树列表
|
||
*/
|
||
function getTree() {
|
||
const patientId = props.patientInfo?.patientId || '';
|
||
getConditionDefinitionInfo(patientId).then((res) => {
|
||
if (res.code == 200) {
|
||
// 确保数据结构正确,避免直接修改数组对象
|
||
const patientHistoryList = Array.isArray(res.data.patientHistoryList) ? res.data.patientHistoryList : [];
|
||
const doctorCommonUseList = Array.isArray(res.data.doctorCommonUseList) ? res.data.doctorCommonUseList : [];
|
||
const userPersonalList = Array.isArray(res.data.userPersonalList) ? res.data.userPersonalList : [];
|
||
const organizationList = Array.isArray(res.data.organizationList) ? res.data.organizationList : [];
|
||
|
||
// 手动构造树列表;
|
||
tree.value[0] = {
|
||
id: '1',
|
||
name: '历史',
|
||
children: patientHistoryList,
|
||
};
|
||
tree.value[1] = {
|
||
id: '2',
|
||
name: '常用',
|
||
children: doctorCommonUseList,
|
||
};
|
||
tree.value[2] = {
|
||
id: '3',
|
||
name: '个人',
|
||
children: userPersonalList,
|
||
};
|
||
tree.value[3] = {
|
||
id: '4',
|
||
name: '科室',
|
||
children: organizationList,
|
||
};
|
||
console.log(tree.value);
|
||
}
|
||
});
|
||
}
|
||
|
||
/**
|
||
* 添加西医诊断
|
||
*/
|
||
function handleAddDiagnosis() {
|
||
proxy.$refs.formRef.validate((valid) => {
|
||
if (valid) {
|
||
const maxSortNo = form.value.diagnosisList.length > 0
|
||
? Math.max(...form.value.diagnosisList.map(item => item.diagSrtNo || 0))
|
||
: 0;
|
||
|
||
form.value.diagnosisList.push({
|
||
showPopover: false,
|
||
name: undefined,
|
||
verificationStatusEnum: 4,
|
||
medTypeCode: '初诊诊断',
|
||
diagSrtNo: maxSortNo + 1,
|
||
iptDiseTypeCode: 2,
|
||
diagnosisDesc: '',
|
||
diagnosisDoctor: props.patientInfo.practitionerName || props.patientInfo.doctorName || props.patientInfo.physicianName || userStore.name,
|
||
diagnosisTime: new Date().toLocaleString('zh-CN')
|
||
});
|
||
|
||
// 添加后按排序号排序
|
||
form.value.diagnosisList.sort((a, b) => (a.diagSrtNo || 0) - (b.diagSrtNo || 0));
|
||
|
||
if (form.value.diagnosisList.length == 1) {
|
||
form.value.diagnosisList[0].maindiseFlag = 1;
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
// 添加中医诊断
|
||
function handleAddTcmDiagonsis() {
|
||
updateZy.value = [];
|
||
openAddDiagnosisDialog.value = true;
|
||
}
|
||
|
||
/**
|
||
* 删除诊断
|
||
*/
|
||
function handleDeleteDiagnosis(row, index) {
|
||
if (row.conditionId) {
|
||
delEncounterDiagnosis(row.conditionId).then((res) => {
|
||
if (res.code == 200) {
|
||
proxy.$modal.msgSuccess('删除成功');
|
||
getList();
|
||
getTree();
|
||
}
|
||
});
|
||
} else if (row.syndromeGroupNo) {
|
||
deleteTcmDiagnosis(row.syndromeGroupNo).then(() => {
|
||
getList();
|
||
getTree();
|
||
});
|
||
} else {
|
||
form.value.diagnosisList.splice(index, 1);
|
||
// 删除后不重新计算排序号,保持用户设置的排序不变
|
||
emits('diagnosisSave', false);
|
||
}
|
||
}
|
||
|
||
function handleMaindise(value, index) {
|
||
if (value == 1) {
|
||
let flag = 0;
|
||
form.value.diagnosisList.forEach((item) => {
|
||
if (item.maindiseFlag == 1) {
|
||
flag++;
|
||
}
|
||
});
|
||
if (flag > 1) {
|
||
form.value.diagnosisList[index].maindiseFlag = 0;
|
||
proxy.$modal.msgWarning('只能有一条主诊断');
|
||
}
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 保存诊断
|
||
*/
|
||
function handleSaveDiagnosis() {
|
||
proxy.$refs.formRef.validate((valid) => {
|
||
if (valid) {
|
||
if (form.value.diagnosisList.length == 0) {
|
||
proxy.$modal.msgWarning('诊断不能为空');
|
||
return false;
|
||
} else if (!form.value.diagnosisList.some((diagnosis) => diagnosis.maindiseFlag === 1)) {
|
||
proxy.$modal.msgWarning('至少添加一条主诊断');
|
||
return false;
|
||
} else {
|
||
// 保存前按排序号排序
|
||
form.value.diagnosisList.sort((a, b) => (a.diagSrtNo || 0) - (b.diagSrtNo || 0));
|
||
|
||
saveDiagnosis({
|
||
patientId: props.patientInfo.patientId,
|
||
encounterId: props.patientInfo.encounterId,
|
||
diagnosisChildList: form.value.diagnosisList,
|
||
}).then((res) => {
|
||
if (res.code == 200) {
|
||
getTree();
|
||
getList();
|
||
emits('diagnosisSave', false);
|
||
proxy.$modal.msgSuccess('诊断已保存并按排序号排序');
|
||
//食源性疾病病例数据智能采集 ---START---
|
||
isFoodDiseasesNew({
|
||
encounterId: props.patientInfo.encounterId,
|
||
}).then((res) => {
|
||
if (res.code == 200) {
|
||
let jumpUrl = res.data;
|
||
if (jumpUrl) {
|
||
window.open(jumpUrl, '_blank');
|
||
}
|
||
}
|
||
});
|
||
//食源性疾病病例数据智能采集 ---END---
|
||
}
|
||
});
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
/**
|
||
* 关闭诊断弹窗
|
||
*/
|
||
function closeDiagnosisDialog(str) {
|
||
if (str === 'success') {
|
||
proxy.$modal.msgSuccess('操作成功');
|
||
}
|
||
openAddDiagnosisDialog.value = false;
|
||
openDiagnosis.value = false;
|
||
getList();
|
||
getTree();
|
||
}
|
||
|
||
function queryDiagnosisUse(value) { }
|
||
|
||
function handleChange(value) {
|
||
diagnosisSearchkey.value = value;
|
||
}
|
||
/**
|
||
* 选择诊断并赋值到列表
|
||
*/
|
||
function handleSelsectDiagnosis(row) {
|
||
console.log(row);
|
||
form.value.diagnosisList[rowIndex.value].ybNo = row.ybNo;
|
||
form.value.diagnosisList[rowIndex.value].name = row.name;
|
||
form.value.diagnosisList[rowIndex.value].definitionId = row.id;
|
||
}
|
||
/**获取焦点时 打开列表 */
|
||
function handleFocus(row, index) {
|
||
if(row.typeName==='中医诊断'){
|
||
updateZy.value = [];
|
||
updateZy.value.push({
|
||
illnessDefinitionId: row.illnessDefinitionId,
|
||
symptomDefinitionId: row.symptomDefinitionId,
|
||
syndromeGroupNo: row.syndromeGroupNo,
|
||
symptomYbNo:row.symptomYbNo,
|
||
ybNo:row.ybNo,
|
||
updateId: row.updateId,
|
||
diagSrtNo: row.diagSrtNo,
|
||
name:row.name,
|
||
});
|
||
openAddDiagnosisDialog.value = true;
|
||
}else{
|
||
rowIndex.value = index;
|
||
row.showPopover = true;
|
||
}
|
||
|
||
}
|
||
/**失去焦点时 关闭列表 */
|
||
function handleBlur(row) {
|
||
row.showPopover = false;
|
||
}
|
||
|
||
function handleNodeClick(data) {
|
||
console.log(data.children);
|
||
// 检查节点是否为根节点
|
||
if (data.children != undefined) {
|
||
// 如果是根节点,不执行任何操作
|
||
return;
|
||
}
|
||
// if (!allowAdd.value) {
|
||
// proxy.$modal.msgWarning('请先填写病历');
|
||
// return;
|
||
// }
|
||
const isDuplicate = form.value.diagnosisList.some(
|
||
(diagnosis) => diagnosis.ybNo === data.ybNo || diagnosis.name === data.name
|
||
);
|
||
if (isDuplicate) {
|
||
proxy.$modal.msgWarning('该诊断项已存在');
|
||
return;
|
||
}
|
||
|
||
// 计算现有最大排序号
|
||
const maxSortNo = form.value.diagnosisList.length > 0
|
||
? Math.max(...form.value.diagnosisList.map(item => item.diagSrtNo || 0))
|
||
: 0;
|
||
|
||
form.value.diagnosisList.push({
|
||
ybNo: data.ybNo,
|
||
name: data.name,
|
||
verificationStatusEnum: 4,
|
||
medTypeCode: '11',
|
||
diagSrtNo: maxSortNo + 1,
|
||
definitionId: data.definitionId,
|
||
diagnosisDoctor: props.patientInfo.practitionerName || props.patientInfo.doctorName || props.patientInfo.physicianName || userStore.name,
|
||
diagnosisTime: new Date().toLocaleString('zh-CN')
|
||
});
|
||
|
||
// 添加后按排序号排序
|
||
form.value.diagnosisList.sort((a, b) => (a.diagSrtNo || 0) - (b.diagSrtNo || 0));
|
||
|
||
if (form.value.diagnosisList.length == 1) {
|
||
form.value.diagnosisList[0].maindiseFlag = 1;
|
||
}
|
||
}
|
||
|
||
defineExpose({ getList, getDetail, handleSaveDiagnosis });
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
.el-checkbox.is-bordered.el-checkbox--small {
|
||
background-color: #ffffff;
|
||
}
|
||
.tree-with-scrollbar {
|
||
max-height: 650px;
|
||
overflow-y: auto;
|
||
}
|
||
.custom-tree-node {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
width: 100%;
|
||
}
|
||
|
||
.tree-node-actions {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
</style>
|