|
|
1 week ago | |
|---|---|---|
| .. | ||
| .vs | 1 week ago | |
| Properties | 1 month ago | |
| bin | 1 month ago | |
| obj | 1 month ago | |
| Config.cs | 1 month ago | |
| DRGInterfaceClient.csproj | 1 month ago | |
| DRGInterfaceClient.sln | 1 month ago | |
| DrgApiClient.cs | 1 month ago | |
| HeadlessRunner.cs | 1 month ago | |
| Logger.cs | 1 month ago | |
| MainForm.cs | 1 month ago | |
| Program.cs | 1 month ago | |
| README.md | 1 month ago | |
| SchedulerService.cs | 1 month ago | |
| SessionBuilder.cs | 1 month ago | |
| TaskSchedulerHelper.cs | 1 month ago | |
| TrayIcon.cs | 1 month ago | |
| appsettings.json | 1 month ago | |
独立的 Windows 桌面小程序(.NET Framework 4.8 WinForms,无第三方 NuGet 包),用于按机构 + 按配置调用 DRG 平台接口完成住院数据同步。它取代了原 HISAutoSyncService 程序。
DRGInterfaceClient.log(程序目录,超 MaxLogSizeMB 滚动),记录每次调用的接口码 / HTTP 状态码 / 耗时 / 响应摘要;界面内嵌面板可查看,并可「打开日志」「清空日志」。appsettings.json 的 Endpoint,可随时修改;为空时调用会提示"接口地址不能为空"并中断。01010064 填充机构勾选列表(CheckedListBox,支持多选、CheckOnClick 直接勾选),并提供「全选 / 全否」按钮与「已选 N 家」计数;勾选状态在「设为定时机构」后会持久化,下次「加载机构」自动恢复勾选。选中机构后 session 机构字段来自该机构。02010079 配置(syncType/frequency/scheduledTime/lookbackDays/enabled/synFlag/warningFlag/status,中文显示);实际批量同步时每家机构各自实时取自己的配置。02010079 取配置 → 按 syncType+lookbackDays 计算日期区间 → 调 02010067(GetInpatientData);逐家写日志,结束汇总"成功 X 家 / 失败 Y 家"。未勾选任何机构会提示"请至少勾选一家医疗机构"。02010067);daily/weekly 外部定时请用「注册任务计划」。「停止调度」停止轮询并删除已注册的计划任务。DRGInterfaceClient.exe --sync 由 Windows 任务计划程序触发;读取 ScheduledHospCodes(按机构 code 医保编码匹配),遍历所有勾选机构各完成一次同步后退出(退出码:全部成功 0,有失败 1)。code 写入 appsettings.json 的 ScheduledHospCodes,供 --sync 及任务计划使用。DRGInterfaceClient.exe。DRGInterfaceClient.exe --sync(建议由 Windows 任务计划程序调用,配合「设为定时机构」+「开始调度(daily/weekly)」注册的任务)。生产端点如需指向
172.16.2.15:52773,在窗体「接口地址」中修改,或改appsettings.json的Endpoint。
| 项 | 说明 |
|---|---|
Endpoint |
DRG 平台 CSP 地址 |
AuthToken |
Basic 鉴权令牌(_SYSTEM:pryk@2020 的 base64) |
ScheduledHospCodes |
--sync 模式匹配的机构 code(医保编码)列表,支持多机构 |
TaskName |
注册的计划任务名 |
MaxLogSizeMB |
日志滚动阈值 |
FullSyncStartDays |
syncType=full 时 stDate = 今天 - N 天 |
SessionDefaults |
session 非机构字段默认值 |
01010064 QueryHospitalInfo → 机构列表(首次加载,带默认空 session)。02010079 GetSyncConfig(hospCode) → 同步配置(带机构 session)。02010067 GetInpatientData(admID,hospID,stDate,endDate,SynFlag) → 住院数据同步(带机构 session)。hospYBCode=code、hospCode=hospCode、hospDesc=descripts、hospID=id、medinsLv=MedinsLv;其余字段取 SessionDefaults。{ "code", "params":[{}], "session":[{}] },Header Authorization: Basic <AuthToken>。