工伤费用上传精简流程: ┌─────────────────┐ │ 前端调用工伤接口 │ │ /uploadWorkInjuryFees │ │ 📝 接收前端批量上传请求,包含患者信息 │ │ 📝 创建Socket任务用于进度反馈 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ uploadWorkInjury│ │ FeeDetail │ │ 📝 处理单个工伤患者的费用上传 │ │ 📝 验证患者工伤在院信息有效性 │ │ 📝 设置账本号、中间结算标志 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ beforeWorkInjury│ │ Upload │ ← 工伤预处理 │ - 修改费用时间 │ │ - 正负相抵逻辑 │ │ 📝 将超出出院时间的费用时间修改为出院时间 │ │ 📝 处理正负费用相抵,避免重复计算 │ │ 📝 更新费用明细的抵消状态 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ getAllFeesNot │ │ Uploaded │ ← 获取未上传费用 │ - 正费用查询 │ │ - 负费用查询 │ │ 📝 从t_fee_dtle表查询未上传的正费用 │ │ 📝 从t_fee_dtle表查询未上传的负费用 │ │ 📝 按费用发生时间排序,分批处理 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ prepareWorkInjury│ │ UploadFees │ │ 📝 构建工伤费用上传请求头 │ │ 📝 设置医生编码、科室编码等必要信息 │ │ 📝 将费用明细转换为工伤中心格式 │ │ 📝 批量处理,每次最多100条明细 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ executeWorkInjury│ │ UploadFees │ │ 📝 执行工伤费用上传核心逻辑 │ │ 📝 构建符合工伤接口文档的请求参数 │ │ 📝 调用工伤中心2204接口 │ │ 📝 处理上传结果,记录成功/失败明细 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 调用工伤接口 │ │ (2204) │ │ 📝 调用工伤费用上传接口 │ │ 📝 URL: http://130.150.161.72:9206/thyy/api/public/injury/workinjury │ │ 📝 传递费用明细数组,包含单价、数量、金额等信息 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 处理上传结果 │ │ - 解析返回数据 │ │ - 记录成功/失败 │ │ 📝 解析工伤中心返回的JSON结果 │ │ 📝 提取成功上传的明细流水号 │ │ 📝 记录失败明细及错误信息 │ │ 📝 更新本地数据库的上传状态 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 更新数据库 │ │ - t_si_charge_temp │ │ - 更新trans_flag │ │ 📝 将成功上传的明细插入t_si_charge_temp表 │ │ 📝 更新t_fee_dtle表的trans_flag为已上传 │ │ 📝 记录上传日志到t_si_log表 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 工伤预结算 │ │ (2206) │ │ 📝 调用工伤费用预结算接口 │ │ 📝 获取工伤报销金额和自费金额 │ │ 📝 更新预结算信息到数据库 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ workInjuryPreSettlement │ │ 📝 构建工伤预结算请求参数 │ │ 📝 包含患者信息、费用总额等 │ │ 📝 调用工伤中心2206预结算接口 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 调用工伤预结算接口│ │ exec.executeWorkInjuryTrade │ │ 📝 发送预结算请求到工伤中心 │ │ 📝 传递患者就医ID、费用信息等 │ │ 📝 接收预结算结果 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 处理预结算结果 │ │ - 获取报销金额 │ │ - 更新数据库 │ │ 📝 解析预结算返回的报销金额 │ │ 📝 更新t_zy_pre_setlmt表的预结算信息 │ │ 📝 记录预结算日志 │ └─────────┬───────┘ ↓ ┌─────────────────┐ │ 返回成功消息 │ │ "工伤费用预结算成功" │ │ 📝 向前端返回处理结果 │ │ 📝 包含上传成功数量和预结算金额 │ │ 📝 发送Socket消息通知前端更新 │ └─────────────────┘ ## 工伤接口调用 ### 主要接口: 1. **2204 - 工伤费用上传** - **URL**: `http://130.150.161.72:9206/thyy/api/public/injury/workinjury` - **功能**: 上传工伤费用明细 2. **2206 - 工伤预结算** - **URL**: `http://130.150.161.72:9206/thyy/api/public/injury/workinjury` - **功能**: 工伤费用预结算 ### 数据库操作: - **查询**: `t_si_pat_info`, `t_fee_dtle`, `t_zy_patient_info` - **更新**: `t_fee_dtle`, `t_si_charge_temp` - **插入**: `t_si_charge_temp`