fix(surgery): 解决手术申请中的数据绑定和字段映射问题

- 修复了手术申请组件中 userStore 初始化问题,确保 applyDoctorName 和 applyDeptName 正确赋值
- 添加了 surgeryApplication 组件的 saved 事件发射,用于通知父组件刷新医嘱列表
- 修复了手术项目选择变更时 surgeryName 的正确设置和空值处理
- 添加了手术名称和编码的验证逻辑,防止提交时出现空值错误
- 修复了手术排班页面中就诊卡号字段的属性映射(visitId 改为 patientCardNo)
- 在后端 DTO 中添加了 patientCardNo 字段支持
- 修复了数据库查询中就诊卡号的关联查询逻辑,通过患者标识表获取正确的就诊卡号
- 优化了手术医嘱的 contentJson 设置,确保手术名称和编码正确存储
This commit is contained in:
2026-04-02 17:54:07 +08:00
parent 09fdfa294a
commit b497eb853c
8 changed files with 132 additions and 9 deletions

View File

@@ -89,7 +89,7 @@
</el-table-column>
<el-table-column label="卫生机构" align="center" prop="orgName" width="120" show-overflow-tooltip />
<el-table-column label="姓名" align="center" prop="patientName" width="100" />
<el-table-column label="就诊卡号" align="center" prop="visitId" width="120" />
<el-table-column label="就诊卡号" align="center" prop="patientCardNo" width="120" />
<el-table-column label="手术名称" align="center" prop="operName" min-width="140" show-overflow-tooltip />
<el-table-column label="申请科室" align="center" prop="applyDeptName" width="100" show-overflow-tooltip>
<template #default="scope">
@@ -161,9 +161,9 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="就诊卡号" prop="visitId">
<el-tooltip :content="form.visitId" placement="top" :disabled="!form.visitId">
<el-input v-model="form.visitId" :disabled="true" style="width: 100%" />
<el-form-item label="就诊卡号" prop="patientCardNo">
<el-tooltip :content="form.patientCardNo" placement="top" :disabled="!form.patientCardNo">
<el-input v-model="form.patientCardNo" :disabled="true" style="width: 100%" />
</el-tooltip>
</el-form-item>
</el-col>
@@ -1783,6 +1783,7 @@ function confirmApply() {
form.applyId=selectedRow.applyId// 手术申请id
form.patientId = selectedRow.patientId// 患者id
form.visitId = selectedRow.encounterId // id对应填入就诊id
form.patientCardNo = selectedRow.patientCardNo // 就诊卡号
form.operCode = selectedRow.surgeryNo // 手术单号作为手术编码
form.operName = selectedRow.descJson?.surgeryName//手术名称
form.preoperativeDiagnosis = selectedRow.preoperativeDiagnosis || selectedRow.descJson?.preoperativeDiagnosis