AutoLoader是一个专为铜陵市人民医院开发的医疗流程自动化工具,通过扫描患者标识码获取信息并自动填入医疗检查软件,减少人工录入错误,提高工作效率。
-
下载此项目:
- 点击页面上方绿色的"Code"按钮
- 选择"Download ZIP"
- 解压下载的ZIP文件到任意位置
-
运行自动安装脚本:
- 双击解压后文件夹中的
setup_and_build.bat文件 - 脚本将自动完成以下步骤:
- 下载Oracle客户端
- 安装所需的Python依赖
- 构建可执行文件
- 双击解压后文件夹中的
-
运行程序:
- 构建完成后,可执行文件将位于
dist目录中 - 双击
auto_loader.exe运行程序
- 构建完成后,可执行文件将位于
- 首次运行脚本需要下载约300MB的Oracle客户端,请确保网络连接稳定
- 如果下载Oracle客户端失败,脚本会提示手动下载方法
- 整个过程可能需要5-10分钟,取决于您的网络和计算机速度
- 如遇问题,请查看
logs目录中的日志文件
- Windows 10或更高版本
- Python 3.8或更高版本
- 二维码/条形码扫描器(串口连接)
- 网络连接(用于访问医院信息系统)
项目提供了两种安装脚本,请根据您的需求选择合适的脚本:
使用setup_and_build.bat进行完整的一键式安装:
- 功能:下载Oracle客户端、安装Python依赖、自动创建配置文件、构建可执行文件
- 用时:约5-10分钟(取决于网络速度)
- 适用于:首次部署、非技术人员、需要完整环境的用户
- 使用方法:双击
setup_and_build.bat并按提示操作
使用install_dependencies.bat仅安装Python依赖:
- 功能:仅安装Python包依赖
- 用时:约1-2分钟
- 适用于:开发人员、已有Oracle客户端的用户、仅需更新依赖的情况
- 使用方法:双击
install_dependencies.bat
安装完成后,根据实际情况修改config.py中的配置:
- 串口设置(扫描器)
- 数据库连接参数
- 其他系统配置
-
运行
auto_loader.py启动程序:python auto_loader.py或直接双击
dist目录中的auto_loader.exe(如果已构建) -
系统会在系统托盘显示AutoLoader图标
-
使用扫描器扫描患者的二维码/条形码
-
系统会自动从医院信息系统或体检系统获取患者信息
-
信息会自动填入相应的医疗检查软件
如果您在macOS或Linux等非Windows环境进行开发:
- 安装所有依赖:
pip install -r requirements.txt - 使用开发模式版本运行程序:
python auto_loader_dev.py
开发版本特点:
- 不需要Tkinter、串口设备或其他Windows特定组件
- 使用控制台输入模拟扫描器输入
- 在控制台显示界面交互而不是实际操作界面
- 自动使用模拟数据代替实际API调用
- 数据库连接失败时自动使用模拟数据
优化数据库连接: 如果您在开发环境中遇到数据库连接超时问题,可以:
- 使用
config_dev.py替代config.py(已自动尝试导入) - 在
config_dev.py中设置POSTGRES_HOST = "127.0.0.1"使连接快速失败 - 确保
DEV_MODE = True以启用短连接超时
通过VPN连接到医院数据库: 如需通过VPN连接到实际的医院数据库进行开发测试:
- 安装并配置VPN客户端(联系医院IT部门获取VPN访问权限)
- 连接到医院VPN网络
- 修改
config_dev.py中的VPN_MODE = True - 运行开发版本程序:
python auto_loader_dev.py
注意事项:
- VPN模式下连接超时设置为10秒,可根据网络情况适当调整
- 如连接失败,请检查VPN连接是否正常,或切换回普通开发模式
在开发版本中测试:
- 输入
TJ12345等体检号码模拟体检系统流程 - 输入其他字符串模拟医院HIS系统流程
- 输入
AutoLoaderRollback测试编号回退功能 - 输入
exit退出程序
在Windows环境中运行以下命令构建独立的可执行文件:
powershell -ExecutionPolicy Bypass -File build_exe.ps1
生成的可执行文件将位于dist目录中。
- 自动编号:系统会为每个样本自动生成编号
- 编号回退:扫描特定二维码"AutoLoaderRollback"可将样本编号减少1
- 如果扫描器无法连接,请检查
config.py中的串口设置是否正确 - 如果数据库连接失败,请确认网络连接和数据库配置
- 如果自动输入过程中出错,确保鼠标光标不要移动到屏幕四角
使用本软件期间,建议不要操作扫描过程中的计算机,以免干扰自动化进程。