1.4 KiB
1.4 KiB
修复门诊预约界面专家号查询结果显示问题
问题分析
- 前端传递的参数正确:
type=expert,后端正确转换为ticketType=专家 - 实际查询返回了5条记录,但COUNT查询只返回了1条记录
- 这导致前端只显示了1条记录,而不是全部5条
- 原因:MyBatis-Plus自动生成的COUNT查询和实际查询使用了不同的条件,特别是逻辑删除条件
解决方案
- 修改TicketMapper.xml中的自定义COUNT查询,显式添加
delete_flag = '0'条件 - 在selectTicketPage和selectTicketPage_mpCount查询中都添加逻辑删除条件
- 确保两个查询使用完全相同的WHERE条件
修复步骤
- 修改
selectTicketPage查询,添加逻辑删除条件and delete_flag = '0' - 修改
selectTicketPage_mpCount查询,添加逻辑删除条件and delete_flag = '0' - 确保两个查询的WHERE条件完全一致
- 测试修复后的功能,确保专家号能正确显示全部5条记录
代码修改点
- 文件:
d:/work/openhis-server-new/openhis-domain/src/main/resources/mapper/clinical/TicketMapper.xml - 查询:
selectTicketPage和selectTicketPage_mpCount - 修改内容:添加逻辑删除条件
and delete_flag = '0'
预期效果
修复后,COUNT查询和实际查询将使用完全相同的条件,包括逻辑删除条件,从而确保COUNT查询返回正确的总记录数,前端能显示所有5条专家号记录。