这个编辑按钮功能展示的数据为什么会不全,已确认状态下的数据展示不全。
This commit is contained in:
@@ -134,7 +134,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="结束" width="70" align="center">
|
<el-table-column label="结束" width="70" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-checkbox :model-value="scope.row.consultationStatus >= 40" disabled />
|
<el-checkbox :model-value="scope.row.consultationStatus === 40" disabled />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" width="200" fixed="right" align="center">
|
<el-table-column label="操作" width="200" fixed="right" align="center">
|
||||||
@@ -387,22 +387,36 @@ const queryParams = reactive({
|
|||||||
const formData = ref({
|
const formData = ref({
|
||||||
id: null,
|
id: null,
|
||||||
consultationId: '',
|
consultationId: '',
|
||||||
|
patientId: null,
|
||||||
patientName: '',
|
patientName: '',
|
||||||
genderEnum: null,
|
genderEnum: null,
|
||||||
age: null,
|
age: null,
|
||||||
|
patientBusNo: '',
|
||||||
patientIdentifierNo: '',
|
patientIdentifierNo: '',
|
||||||
requestingPhysician: '',
|
encounterId: null,
|
||||||
consultationDate: '',
|
departmentId: null,
|
||||||
department: '',
|
department: '',
|
||||||
provisionalDiagnosis: '',
|
requestingPhysicianId: null,
|
||||||
consultationPurpose: '',
|
requestingPhysician: '',
|
||||||
invitedObject: '',
|
invitedObject: '',
|
||||||
|
consultationDate: '',
|
||||||
|
consultationRequestDate: null,
|
||||||
|
consultationPurpose: '',
|
||||||
|
provisionalDiagnosis: '',
|
||||||
|
consultationActivityId: null,
|
||||||
|
consultationActivityName: '',
|
||||||
|
consultationUrgency: '',
|
||||||
|
consultationStatus: 0,
|
||||||
consultationOpinion: '',
|
consultationOpinion: '',
|
||||||
|
consultingPhysicians: '',
|
||||||
|
signingPhysicianId: null,
|
||||||
|
signingPhysicianName: '',
|
||||||
|
signingTime: null,
|
||||||
|
invitedPhysiciansText: '',
|
||||||
attendingPhysician: '',
|
attendingPhysician: '',
|
||||||
representDepartment: '',
|
representDepartment: '',
|
||||||
signPhysician: '',
|
signPhysician: '',
|
||||||
signTime: null,
|
signTime: null
|
||||||
consultationRequestDate: null
|
|
||||||
})
|
})
|
||||||
|
|
||||||
const formRules = {
|
const formRules = {
|
||||||
@@ -515,13 +529,81 @@ const handleEdit = (row) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
isViewMode.value = false
|
isViewMode.value = false
|
||||||
formData.value = { ...row }
|
// 确保所有字段都复制到formData中
|
||||||
|
formData.value = {
|
||||||
|
id: row.id || null,
|
||||||
|
consultationId: row.consultationId || '',
|
||||||
|
patientId: row.patientId || null,
|
||||||
|
patientName: row.patientName || '',
|
||||||
|
genderEnum: row.genderEnum || null,
|
||||||
|
age: row.age || null,
|
||||||
|
patientBusNo: row.patientBusNo || '',
|
||||||
|
patientIdentifierNo: row.patientIdentifierNo || '',
|
||||||
|
encounterId: row.encounterId || null,
|
||||||
|
departmentId: row.departmentId || null,
|
||||||
|
department: row.department || '',
|
||||||
|
requestingPhysicianId: row.requestingPhysicianId || null,
|
||||||
|
requestingPhysician: row.requestingPhysician || '',
|
||||||
|
invitedObject: row.invitedObject || '',
|
||||||
|
consultationDate: row.consultationDate || '',
|
||||||
|
consultationRequestDate: row.consultationRequestDate || null,
|
||||||
|
consultationPurpose: row.consultationPurpose || '',
|
||||||
|
provisionalDiagnosis: row.provisionalDiagnosis || '',
|
||||||
|
consultationActivityId: row.consultationActivityId || null,
|
||||||
|
consultationActivityName: row.consultationActivityName || '',
|
||||||
|
consultationUrgency: row.consultationUrgency || '',
|
||||||
|
consultationStatus: row.consultationStatus || 0,
|
||||||
|
consultationOpinion: row.consultationOpinion || '',
|
||||||
|
consultingPhysicians: row.consultingPhysicians || '',
|
||||||
|
signingPhysicianId: row.signingPhysicianId || null,
|
||||||
|
signingPhysicianName: row.signingPhysicianName || '',
|
||||||
|
signingTime: row.signingTime || null,
|
||||||
|
invitedPhysiciansText: row.invitedPhysiciansText || '',
|
||||||
|
attendingPhysician: row.attendingPhysician || '',
|
||||||
|
representDepartment: row.representDepartment || '',
|
||||||
|
signPhysician: row.signPhysician || '',
|
||||||
|
signTime: row.signTime || null
|
||||||
|
}
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleView = (row) => {
|
const handleView = (row) => {
|
||||||
isViewMode.value = true
|
isViewMode.value = true
|
||||||
formData.value = { ...row }
|
// 确保所有字段都复制到formData中
|
||||||
|
formData.value = {
|
||||||
|
id: row.id || null,
|
||||||
|
consultationId: row.consultationId || '',
|
||||||
|
patientId: row.patientId || null,
|
||||||
|
patientName: row.patientName || '',
|
||||||
|
genderEnum: row.genderEnum || null,
|
||||||
|
age: row.age || null,
|
||||||
|
patientBusNo: row.patientBusNo || '',
|
||||||
|
patientIdentifierNo: row.patientIdentifierNo || '',
|
||||||
|
encounterId: row.encounterId || null,
|
||||||
|
departmentId: row.departmentId || null,
|
||||||
|
department: row.department || '',
|
||||||
|
requestingPhysicianId: row.requestingPhysicianId || null,
|
||||||
|
requestingPhysician: row.requestingPhysician || '',
|
||||||
|
invitedObject: row.invitedObject || '',
|
||||||
|
consultationDate: row.consultationDate || '',
|
||||||
|
consultationRequestDate: row.consultationRequestDate || null,
|
||||||
|
consultationPurpose: row.consultationPurpose || '',
|
||||||
|
provisionalDiagnosis: row.provisionalDiagnosis || '',
|
||||||
|
consultationActivityId: row.consultationActivityId || null,
|
||||||
|
consultationActivityName: row.consultationActivityName || '',
|
||||||
|
consultationUrgency: row.consultationUrgency || '',
|
||||||
|
consultationStatus: row.consultationStatus || 0,
|
||||||
|
consultationOpinion: row.consultationOpinion || '',
|
||||||
|
consultingPhysicians: row.consultingPhysicians || '',
|
||||||
|
signingPhysicianId: row.signingPhysicianId || null,
|
||||||
|
signingPhysicianName: row.signingPhysicianName || '',
|
||||||
|
signingTime: row.signingTime || null,
|
||||||
|
invitedPhysiciansText: row.invitedPhysiciansText || '',
|
||||||
|
attendingPhysician: row.attendingPhysician || '',
|
||||||
|
representDepartment: row.representDepartment || '',
|
||||||
|
signPhysician: row.signPhysician || '',
|
||||||
|
signTime: row.signTime || null
|
||||||
|
}
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -530,22 +612,36 @@ const handleDialogClose = () => {
|
|||||||
formData.value = {
|
formData.value = {
|
||||||
id: null,
|
id: null,
|
||||||
consultationId: '',
|
consultationId: '',
|
||||||
|
patientId: null,
|
||||||
patientName: '',
|
patientName: '',
|
||||||
genderEnum: null,
|
genderEnum: null,
|
||||||
age: null,
|
age: null,
|
||||||
|
patientBusNo: '',
|
||||||
patientIdentifierNo: '',
|
patientIdentifierNo: '',
|
||||||
requestingPhysician: '',
|
encounterId: null,
|
||||||
consultationDate: '',
|
departmentId: null,
|
||||||
department: '',
|
department: '',
|
||||||
provisionalDiagnosis: '',
|
requestingPhysicianId: null,
|
||||||
consultationPurpose: '',
|
requestingPhysician: '',
|
||||||
invitedObject: '',
|
invitedObject: '',
|
||||||
|
consultationDate: '',
|
||||||
|
consultationRequestDate: null,
|
||||||
|
consultationPurpose: '',
|
||||||
|
provisionalDiagnosis: '',
|
||||||
|
consultationActivityId: null,
|
||||||
|
consultationActivityName: '',
|
||||||
|
consultationUrgency: '',
|
||||||
|
consultationStatus: 0,
|
||||||
consultationOpinion: '',
|
consultationOpinion: '',
|
||||||
|
consultingPhysicians: '',
|
||||||
|
signingPhysicianId: null,
|
||||||
|
signingPhysicianName: '',
|
||||||
|
signingTime: null,
|
||||||
|
invitedPhysiciansText: '',
|
||||||
attendingPhysician: '',
|
attendingPhysician: '',
|
||||||
representDepartment: '',
|
representDepartment: '',
|
||||||
signPhysician: '',
|
signPhysician: '',
|
||||||
signTime: null,
|
signTime: null
|
||||||
consultationRequestDate: null
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -136,7 +136,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="会诊确认参加医师">
|
<el-form-item label="会诊确认参加医师">
|
||||||
<el-input v-model="formData.confirmingPhysician" type="textarea" disabled />
|
<el-input v-model="formData.confirmingPhysicianText" type="textarea" :rows="3" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="会诊意见" required>
|
<el-form-item label="会诊意见" required>
|
||||||
@@ -249,6 +249,7 @@ const formData = ref({
|
|||||||
consultationPurpose: '',
|
consultationPurpose: '',
|
||||||
provisionalDiagnosis: '',
|
provisionalDiagnosis: '',
|
||||||
confirmingPhysician: '',
|
confirmingPhysician: '',
|
||||||
|
confirmingPhysicianText: '', // 显示所有参与确认的医师
|
||||||
consultationOpinion: '',
|
consultationOpinion: '',
|
||||||
confirmingPhysicianName: '',
|
confirmingPhysicianName: '',
|
||||||
confirmingDeptName: '',
|
confirmingDeptName: '',
|
||||||
@@ -329,6 +330,7 @@ const applyRowToForm = (row) => {
|
|||||||
consultationPurpose: row.consultationPurpose,
|
consultationPurpose: row.consultationPurpose,
|
||||||
provisionalDiagnosis: row.provisionalDiagnosis,
|
provisionalDiagnosis: row.provisionalDiagnosis,
|
||||||
confirmingPhysician: row.confirmingPhysician || '',
|
confirmingPhysician: row.confirmingPhysician || '',
|
||||||
|
confirmingPhysicianText: '', // 初始化为空,稍后根据opinionList设置
|
||||||
consultationOpinion: '', // 先清空,后面从 opinionList 中获取
|
consultationOpinion: '', // 先清空,后面从 opinionList 中获取
|
||||||
confirmingPhysicianName: row.confirmingPhysicianName || '',
|
confirmingPhysicianName: row.confirmingPhysicianName || '',
|
||||||
confirmingDeptName: row.confirmingDeptName || '',
|
confirmingDeptName: row.confirmingDeptName || '',
|
||||||
@@ -339,8 +341,13 @@ const applyRowToForm = (row) => {
|
|||||||
consultationStatus: row.consultationStatus
|
consultationStatus: row.consultationStatus
|
||||||
}
|
}
|
||||||
|
|
||||||
// 从会诊意见列表中获取当前医生的信息
|
// 从会诊意见列表中获取所有确认医师的信息,并生成显示文本
|
||||||
if (opinionList.value.length > 0) {
|
if (opinionList.value.length > 0) {
|
||||||
|
// 生成所有参与确认医师的文本(格式:科室-医生姓名;科室-医生姓名)
|
||||||
|
const allConfirmingPhysicians = opinionList.value.map(op => `${op.deptName}-${op.physicianName}`).join(';')
|
||||||
|
formData.value.confirmingPhysicianText = allConfirmingPhysicians
|
||||||
|
|
||||||
|
// 从会诊意见列表中获取当前医生的信息
|
||||||
const currentPhysicianId = userStore.practitionerId || userStore.user?.practitionerId
|
const currentPhysicianId = userStore.practitionerId || userStore.user?.practitionerId
|
||||||
const myOpinion = opinionList.value.find(op => op.physicianId === currentPhysicianId)
|
const myOpinion = opinionList.value.find(op => op.physicianId === currentPhysicianId)
|
||||||
|
|
||||||
|
|||||||
@@ -47,7 +47,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" width="180" align="center" fixed="right">
|
<el-table-column label="操作" width="180" align="center" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<!-- 新开状态:显示提交和删除按钮 -->
|
<!-- 新开状态:显示提交和作废按钮 -->
|
||||||
<template v-if="row.consultationStatus === 0">
|
<template v-if="row.consultationStatus === 0">
|
||||||
<el-button type="primary" size="small" @click="handleSubmitRow(row)">
|
<el-button type="primary" size="small" @click="handleSubmitRow(row)">
|
||||||
提交
|
提交
|
||||||
@@ -1062,10 +1062,10 @@ const handleCancel = async () => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// 删除行
|
// 作废行
|
||||||
const handleDeleteRow = async (row) => {
|
const handleDeleteRow = async (row) => {
|
||||||
try {
|
try {
|
||||||
await ElMessageBox.confirm('确定要删除这条会诊申请吗?', '提示', {
|
await ElMessageBox.confirm('确定要作废这条会诊申请吗?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
@@ -1073,21 +1073,21 @@ const handleDeleteRow = async (row) => {
|
|||||||
|
|
||||||
const res = await cancelConsultation({
|
const res = await cancelConsultation({
|
||||||
consultationId: row.consultationId,
|
consultationId: row.consultationId,
|
||||||
cancelReason: '删除',
|
cancelReason: '作废',
|
||||||
});
|
});
|
||||||
|
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
ElMessage.success('删除成功');
|
ElMessage.success('作废成功');
|
||||||
loadConsultationList();
|
loadConsultationList();
|
||||||
if (selectedRow.value?.consultationId === row.consultationId) {
|
if (selectedRow.value?.consultationId === row.consultationId) {
|
||||||
handleNew();
|
handleNew();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.msg || '删除失败');
|
ElMessage.error(res.msg || '作废失败');
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (error !== 'cancel') {
|
if (error !== 'cancel') {
|
||||||
console.error('删除失败:', error);
|
console.error('作废失败:', error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user