151 门诊医生站的诊断TAB页通过维护的个人/科室诊断内容双击开单诊断类型字段显示数字11

This commit is contained in:
sindir
2026-03-10 16:33:47 +08:00
parent e46e2be830
commit b26ad75299
4 changed files with 143 additions and 12 deletions

View File

@@ -100,7 +100,7 @@
<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 med_type"
v-for="item in diag_type"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -264,6 +264,7 @@ import {
isFoodDiseasesNew,
saveDiagnosis,
} from '../api';
import { DIAG_TYPE } from '@/utils/medicalConstants';
import diagnosisdialog from '../diagnosis/diagnosisdialog.vue';
import AddDiagnosisDialog from './addDiagnosisDialog.vue';
import diagnosislist from '../diagnosis/diagnosislist.vue';
@@ -293,7 +294,7 @@ const props = defineProps({
const emits = defineEmits(['diagnosisSave']);
const { proxy } = getCurrentInstance();
const userStore = useUserStore();
const { med_type } = proxy.useDict('med_type');
const { diag_type } = proxy.useDict('diag_type');
const { diagnosis_classification } = proxy.useDict('diagnosis_classification');
const { long_term_flag } = proxy.useDict('long_term_flag');
@@ -340,13 +341,15 @@ async function getList() {
});
emits('diagnosisSave', false);
}
maxNo = form.value.diagnosisList.length;
// 获取现有诊断的排序号集合,用于判断是否重复
const existingDiagSrtNoSet = new Set(form.value.diagnosisList.map(item => item.diagSrtNo));
const tcmRes = await getTcmDiagnosis({ encounterId: props.patientInfo.encounterId });
if (tcmRes.code == 200) {
if (tcmRes.data.illness.length > 0) {
tcmRes.data.illness.forEach((item, index) => {
if (item.diagSrtNo <= maxNo) {
// 如果该排序号的诊断已存在,则跳过(避免重复添加)
if (existingDiagSrtNoSet.has(item.diagSrtNo)) {
return;
}
form.value.diagnosisList.push({
@@ -363,7 +366,8 @@ async function getList() {
symptomDefinitionId : tcmRes.data.symptom[index].definitionId,
symptomYbNo: tcmRes.data.symptom[index].ybNo,
});
maxNo = item.diagSrtNo;
// 添加后更新集合
existingDiagSrtNoSet.add(item.diagSrtNo);
});
}
emits('diagnosisSave', false);
@@ -402,7 +406,7 @@ function handleImport() {
form.value.diagnosisList.push({
...item,
...{
medTypeCode: '140104',
medTypeCode: DIAG_TYPE.WESTERN_MEDICINE, // 诊断类型:西医诊断 (值1)
verificationStatusEnum: 4,
definitionId: item.id,
diagSrtNo: maxSortNo + index + 1,
@@ -508,7 +512,7 @@ function handleAddDiagnosis() {
showPopover: false,
name: undefined,
verificationStatusEnum: 4,
medTypeCode: '11',
medTypeCode: DIAG_TYPE.WESTERN_MEDICINE, // 诊断类型:西医诊断 (值1)
diagSrtNo: maxSortNo + 1,
iptDiseTypeCode: 2,
diagnosisDesc: '',
@@ -770,7 +774,7 @@ form.value.diagnosisList.push({
ybNo: data.ybNo,
name: data.name,
verificationStatusEnum: 4,
medTypeCode: '11',
medTypeCode: DIAG_TYPE.WESTERN_MEDICINE, // 诊断类型:西医诊断 (值1)
diagSrtNo: maxSortNo + 1,
definitionId: data.definitionId,
classification: '西医', // 默认为西医