|
|
3 meses atrás | |
|---|---|---|
| src | 3 meses atrás | |
| .gitignore | 3 meses atrás | |
| CHANGELOG.md | 3 meses atrás | |
| FLOW_COMPARISON.md | 3 meses atrás | |
| LOGO_PATH_FIX.md | 3 meses atrás | |
| QUICK_START.md | 3 meses atrás | |
| README.md | 3 meses atrás | |
| README_SUMMARY.md | 3 meses atrás | |
| TECHNICAL_NOTES.md | 3 meses atrás | |
| TEST_GUIDE.md | 3 meses atrás | |
| UPDATE_3S_PROMPT.md | 3 meses atrás | |
| UPDATE_CONFIRM_STEP.md | 3 meses atrás | |
| UPDATE_LOGO.md | 3 meses atrás | |
| UPDATE_SUMMARY.md | 3 meses atrás | |
| pom.xml | 3 meses atrás | |
| start.bat | 3 meses atrás | |
| start.sh | 3 meses atrás |
一个模拟医院建档流程的前后端演示项目,使用 SpringBoot + 阿里云百炼 SDK + Vue.js 构建。
establish_medical_demo/
├── pom.xml # Maven 配置文件
├── README.md # 项目文档
├── data/ # 数据存储目录(自动创建)
│ └── patients.csv # 患者数据文件
└── src/
└── main/
├── java/com/medical/demo/
│ ├── HospitalRegistrationApplication.java # 启动类
│ ├── config/ # 配置类
│ │ └── AppConfig.java # 应用配置
│ ├── controller/ # 控制器
│ │ ├── AppController.java # 页面控制器
│ │ └── PatientController.java # 患者建档控制器
│ ├── entity/ # 实体类
│ │ ├── ApiResponse.java # 统一响应
│ │ ├── IdCardRecognitionResult.java # 识别结果
│ │ └── PatientInfo.java # 患者信息
│ └── service/ # 服务层
│ ├── IdCardRecognitionService.java # 身份证识别服务(百炼 SDK)
│ └── PatientDataService.java # 数据存储服务
└── resources/
├── application.yml # 应用配置
└── static/
└── index.html # 前端页面(Vue.js)
编辑 src/main/resources/application.yml 文件:
bailian:
api-key: YOUR_API_KEY_HERE # 替换为你的百炼平台 API Key
获取百炼平台 API Key:
# 进入项目目录
cd establish_medical_demo
# 清理并编译项目
mvn clean compile
# 启动项目
mvn spring-boot:run
HospitalRegistrationApplication.java 文件# 打包项目
mvn clean package
# 运行 jar 包
java -jar target/hospital-registration-demo-1.0.0.jar
启动成功后,在浏览器中访问:
http://localhost:8080
访问系统后,会看到欢迎页面,点击"开始建档"按钮。
保存成功后会显示成功页面,点击"返回首页"可以继续为其他患者建档。
接口:POST /api/patient/recognize
参数:
file:身份证图片文件(multipart/form-data)响应:
{
"code": 200,
"message": "身份证识别成功",
"data": {
"isIdCard": true,
"idCardNumber": "110101199001011234",
"errorMessage": null
}
}
接口:GET /api/patient/info
参数:
idCardNumber:身份证号响应:
{
"code": 200,
"message": "操作成功",
"data": {
"idCardNumber": "110101199001011234",
"name": "张三",
"gender": "男",
"birthDate": "1990-01-01",
"address": "北京市东城区某某街道",
"maritalStatus": "已婚",
"education": "本科",
"registrationTime": "2026-01-08 10:00:00",
"updateTime": "2026-01-08 10:00:00"
}
}
接口:POST /api/patient/save
请求体:
{
"idCardNumber": "110101199001011234",
"name": "张三",
"gender": "男",
"birthDate": "1990-01-01",
"address": "北京市东城区某某街道",
"maritalStatus": "已婚",
"education": "本科"
}
响应:
{
"code": 200,
"message": "建档成功",
"data": null
}
接口:GET /api/patient/exists
参数:
idCardNumber:身份证号响应:
{
"code": 200,
"message": "操作成功",
"data": true
}
接口:GET /api/patient/all
响应:
{
"code": 200,
"message": "操作成功",
"data": [
{
"idCardNumber": "110101199001011234",
"name": "张三",
"gender": "男",
"birthDate": "1990-01-01",
"address": "北京市东城区某某街道",
"maritalStatus": "已婚",
"education": "本科",
"registrationTime": "2026-01-08 10:00:00",
"updateTime": "2026-01-08 10:00:00"
}
]
}
患者信息以 CSV 格式存储在 ./data/patients.csv 文件中。
CSV 文件格式:
身份证号,姓名,性别,出生日期,家庭住址,婚姻状况,学历,建档时间,更新时间
110101199001011234,张三,男,1990-01-01,北京市东城区某某街道,已婚,本科,2026-01-08 10:00:00,2026-01-08 10:00:00
可以使用 Excel 或文本编辑器直接查看和编辑数据。
# 服务器配置
server:
port: 8080 # 服务端口,可以修改为其他端口
# 百炼平台配置
bailian:
api-key: YOUR_API_KEY_HERE # 必填:百炼平台 API Key
base-url: https://dashscope.aliyuncs.com/compatible-mode/v1 # 百炼平台 API 地址
model: qwen-vl-max # 使用的模型名称
temperature: 0.3 # 温度参数(0-1,越低越确定性)
max-tokens: 1000 # 最大输出 token 数
# 应用配置
app:
hospital-name: 甘肃省中医院 # 医院名称
data-file-path: ./data/patients.csv # 数据存储路径
访问 阿里云百炼平台,登录后在"API-KEY 管理"中创建。
数据存储在项目根目录的 ./data/patients.csv 文件中,可以直接查看。
编辑 src/main/resources/application.yml 文件,修改 app.hospital-name 配置项。
编辑 src/main/resources/application.yml 文件,修改 server.port 配置项。
前端页面位于 src/main/resources/static/index.html,使用 Vue.js 3 + Element Plus 构建。
controller、service、entity 包中添加对应的类index.html 中添加新的页面和交互逻辑application.yml 中调整 logging.level 配置如有问题,请检查:
本项目仅供学习和演示使用。
祝您使用愉快! 🏥