diff --git a/src/views/Charge/Charge.vue b/src/views/Charge/Charge.vue
index 4c9bd7f..b710cac 100644
--- a/src/views/Charge/Charge.vue
+++ b/src/views/Charge/Charge.vue
@@ -445,23 +445,17 @@ const fetchPatientsByDate = async () => {
medicalDateTime: [
`${formatDate(startDate)} 00:00:00`,
`${formatDate(endDate)} 23:59:59`
- ]
+ ],
+ // 添加收费状态筛选参数
+ chargeStatus: chargeStatus.value === 'unpaid' ? '0' : '1',
+ // 添加搜索关键词
+ pname: searchQuery.value || undefined
}
const res = await PatientApi.getPatientPage(params)
- originalPatients.value = res.list
+ patients.value = res.list
+ total.value = res.total
- // 根据当前选中的收费状态过滤患者列表
- patients.value = res.list.filter(patient => {
- if (chargeStatus.value === 'unpaid') {
- return !patient.chargeType
- } else {
- return patient.chargeType
- }
- })
-
- total.value = patients.value.length
-
// 如果没有查询到患者,清除选中状态
if (!patients.value.length) {
selectedPatient.value = null
@@ -472,6 +466,12 @@ const fetchPatientsByDate = async () => {
}
}
+// 添加搜索处理方法
+const handleSearch = () => {
+ pageNo.value = 1 // 重置到第一页
+ fetchPatientsByDate()
+}
+
// 修改收费状态切换处理方法
const handleChargeStatusChange = (status) => {
// 清除选中状态
@@ -479,17 +479,16 @@ const handleChargeStatusChange = (status) => {
patientData.value = {}
chargeStatus.value = status
- // 从原始数据中筛选
- if (originalPatients.value.length) {
- patients.value = originalPatients.value.filter(patient => {
- if (status === 'unpaid') {
- return !patient.chargeType
- } else {
- return patient.chargeType
- }
- })
- total.value = patients.value.length
- }
+ pageNo.value = 1 // 重置到第一页
+
+ // 重新获取数据
+ fetchPatientsByDate()
+}
+
+// 添加分页切换处理方法
+const handleCurrentChange = (page) => {
+ pageNo.value = page
+ fetchPatientsByDate()
}
// 修改时间周期切换处理方法
@@ -508,6 +507,7 @@ const handlePeriodChange = (period) => {
endDate = new Date(today.setHours(23, 59, 59, 999))
customDateRange.value = [startDate, endDate]
showDatePicker.value = false
+ pageNo.value = 1 // 重置到第一页
fetchPatientsByDate()
break
@@ -518,6 +518,7 @@ const handlePeriodChange = (period) => {
endDate.setDate(startDate.getDate() + 6)
customDateRange.value = [startDate, endDate]
showDatePicker.value = false
+ pageNo.value = 1 // 重置到第一页
fetchPatientsByDate()
break
@@ -526,13 +527,12 @@ const handlePeriodChange = (period) => {
endDate = new Date(today.getFullYear(), today.getMonth() + 1, 0)
customDateRange.value = [startDate, endDate]
showDatePicker.value = false
+ pageNo.value = 1 // 重置到第一页
fetchPatientsByDate()
break
case 'custom':
showDatePicker.value = !showDatePicker.value
- patients.value = [] // 清空患者列表
- customDateRange.value = [] // 清空日期范围
break
case 'reset':
@@ -541,6 +541,7 @@ const handlePeriodChange = (period) => {
const todayEnd = new Date(today.setHours(23, 59, 59, 999))
customDateRange.value = [todayStart, todayEnd]
showDatePicker.value = false
+ pageNo.value = 1 // 重置到第一页
fetchPatientsByDate()
break
}
@@ -654,27 +655,7 @@ const handleSubmitCharge = async () => {
ElMessage.success('收费成功')
// 重新获取患者列表数据
- const params = {
- pageNo: pageNo.value,
- pageSize: pageSize.value,
- medicalDateTime: customDateRange.value ? [
- `${formatDate(customDateRange.value[0])} 00:00:00`,
- `${formatDate(customDateRange.value[1])} 23:59:59`
- ] : undefined
- }
-
- const listRes = await PatientApi.getPatientPage(params)
- originalPatients.value = listRes.list
-
- // 根据当前收费状态过滤并更新患者列表
- patients.value = listRes.list.filter(patient => {
- if (chargeStatus.value === 'unpaid') {
- return !patient.chargeType
- } else {
- return patient.chargeType
- }
- })
- total.value = patients.value.length
+ fetchPatientsByDate()
// 重新获取并更新当前选中患者的信息
const patientRes = await PatientApi.getPatient(selectedPatient.value.id)
@@ -719,6 +700,11 @@ const formatDateTime = (datetime) => {
return `${year}-${month}-${day} ${hour}:${minute}:${second}`
}
+// 添加读取身份证方法
+const readCardId = () => {
+ ElMessage.info('身份证读取功能开发中')
+}
+
// ... 其他方法实现
diff --git a/src/views/inspect/physicalEnroll/index.vue b/src/views/inspect/physicalEnroll/index.vue
index ef03a0c..8324531 100644
--- a/src/views/inspect/physicalEnroll/index.vue
+++ b/src/views/inspect/physicalEnroll/index.vue
@@ -35,10 +35,43 @@