fix(ui): 已登记入院表格事件修复与布局优化

- handleRadioChange({newValue}→{row}): 修复 vxe-table radio-change
    事件参数错误,selectedRow 始终为 undefined,打印住院证功能失效
  - queryParams 初始定义与 resetQuery 对齐,补全缺失字段
  - 表格布局重构:
    · 移除 height="100%"(解除横向滚动条位置漂移)
    · table min-width="1600px" + 容器 overflow-x:auto
    · 固定列 width / 信息列 min-width 差异化约束
This commit is contained in:
wangjian963
2026-06-17 11:37:14 +08:00
parent cfc7ca9b4e
commit d792f03bbd

View File

@@ -54,8 +54,7 @@
<vxe-table <vxe-table
ref="tableRef" ref="tableRef"
:data="treatHospitalizedData" :data="treatHospitalizedData"
style="width: 100%" min-width="1600px"
height="100%"
show-overflow="title" show-overflow="title"
@radio-change="handleRadioChange" @radio-change="handleRadioChange"
> >
@@ -68,6 +67,7 @@
/> />
<vxe-column <vxe-column
field="patientName" field="patientName"
min-width="120"
align="center" align="center"
title="申请患者" title="申请患者"
/> />
@@ -85,6 +85,7 @@
/> />
<vxe-column <vxe-column
field="busNo" field="busNo"
min-width="140"
align="center" align="center"
title="患者住院号" title="患者住院号"
> >
@@ -94,6 +95,7 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="contractNo" field="contractNo"
min-width="140"
align="center" align="center"
title="费用性质" title="费用性质"
> >
@@ -105,7 +107,7 @@
field="idCard" field="idCard"
align="center" align="center"
title="身份证号码" title="身份证号码"
width="180" width="200"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.idCard || '-' }} {{ scope.row.idCard || '-' }}
@@ -113,9 +115,9 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="organizationName" field="organizationName"
min-width="140"
align="center" align="center"
title="入院科室" title="入院科室"
width="120"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.organizationName || '-' }} {{ scope.row.organizationName || '-' }}
@@ -125,10 +127,11 @@
field="requestTime" field="requestTime"
align="center" align="center"
title="登记时间" title="登记时间"
width="160" width="170"
/> />
<vxe-column <vxe-column
field="admitSourceCode" field="admitSourceCode"
min-width="100"
align="center" align="center"
title="入院类型" title="入院类型"
> >
@@ -149,6 +152,7 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="sourceName" field="sourceName"
min-width="120"
align="center" align="center"
title="申请来源" title="申请来源"
> >
@@ -159,11 +163,13 @@
<vxe-column <vxe-column
field="wardName" field="wardName"
min-width="120"
align="center" align="center"
title="入院病区" title="入院病区"
/> />
<vxe-column <vxe-column
field="registrar" field="registrar"
min-width="100"
align="center" align="center"
title="登记员" title="登记员"
/> />
@@ -269,6 +275,10 @@ const queryParams = ref({
pageSize: 10, pageSize: 10,
registeredFlag: '1', registeredFlag: '1',
searchKey: '', searchKey: '',
idCard: '',
organizationId: '',
startTime: '',
endTime: '',
}); });
const treatHospitalizedData = ref([]); const treatHospitalizedData = ref([]);
@@ -326,8 +336,8 @@ const doVoid = (row) => {
.catch(() => {}); .catch(() => {});
}; };
const handleRadioChange = ({ newValue }) => { const handleRadioChange = ({ row }) => {
selectedRow.value = newValue; selectedRow.value = row;
}; };
const handlePrintCertificate = async () => { const handlePrintCertificate = async () => {
@@ -508,6 +518,7 @@ const getList = () => {
} }
.table-container { .table-container {
padding: 8px 16px; padding: 8px 16px;
overflow-x: auto;
} }
} }
</style> </style>