Skip to content

灵医智惠CDSS标准版C/S SDK开发指南v2——HIS/EMR系统

SDK初始化

客户端安装

在医生电脑上,下载灵医智惠CDSS程序01cdss.exe,按照提示安装即可。

动态库引用

在HIS/EMR等医疗信息系统代码中引入01cdss.dll动态库,动态库不可与01cdss.exe文件放置同一目录。 以csharp为例,引入动态库代码如下:

[DllImport("01cdss.dll", EntryPoint = "SetSecurityKeys",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void SetSecurityKeys(string ak, string sk);

[DllImport("01cdss.dll", EntryPoint = "UserLogin",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void UserLogin(string userInfo);

[DllImport("01cdss.dll", EntryPoint = "OpenCDSSByPath",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void OpenCDSSByPath(string cdssPath);
//以上方法在用户登录后调用一次即可

[DllImport("01cdss.dll", EntryPoint = "SetReceiveHandle",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void SetReceiveHandle(string systemType, int handleNum);

[DllImport("01cdss.dll", EntryPoint = "SendMessageToCDSS",
    CallingConvention = CallingConvention.Cdecl)]
public static extern int SendMessageToCDSS(string message, int handleNum, int trigger);

[DllImport("01cdss.dll", EntryPoint = "BroadcastMessageToCDSS",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void BroadcastMessageToCDSS(string msg, int handleNum);

[DllImport("01cdss.dll", EntryPoint = "CloseCDSS",
    CallingConvention = CallingConvention.Cdecl)]
public static extern void CloseCDSS();

注册aksk

// ak和sk请联系灵医智惠CDSS技术人员提供
SetSecurityKeys(string ak, string sk);

调用DLL提供的SetSecurityKeys(string ak, string sk)方法注册密钥信息,ak和sk请联系灵医智惠CDSS技术人员提供。

用户登录

// userInfo: 用户信息,值为JSON字符串,用户包括医生/护士/药师等
//  {
//    "name": "医生/护士/药师姓名",
//    "id": "医生/护士/药师ID",
//    "department": "科室",
//    "hospital": "医院名称"
//  }
UserLogin(string userInfo);

当用户登录HIS系统时,调用DLL提供的UserLogin(string userInfo)方法注册用户基本信息。

开启CDSS程序

//cdssPath : 01cdss程序所在路径,如:c:\\xxx\\
OpenCDSSByPath(string cdssPath);

HIS/EMR等信息系统程序启动后,可调用DLL的OpenCDSSByPath(string cdssPath)方法打开CDSS程序,不使用此方法也可设置CDSS程序开机启动;

注册窗体句柄号(不对接回填业务可不调用此方法)

// systemType: 信息系统类型
//    | HIS  | 医生工作站(医嘱) |
//    | EMR  | 电子病历系统 |
//    | RIS  | 检查系统 |
//    | LIS  | 检验系统 |
//    | OAMS | 手术系统 |
// handleNum: 窗口句柄号
SetReceiveHandle(string systemType, int handleNum);

HIS/EMR等信息系统程序启动后: 调用DLL提供的SetReceiveHandle(string systemType, int handleNum)方法注册程序信息,用于告知接收Windows消息(医嘱回填数据)的窗体,若接受回传数据的界面在同一个窗体内,则只需要注册一次即可。

SDK接口定义

灵医智惠CDSS支持多种触发方式,见下方表格:

trigger取值 触发类型 触发交互逻辑 是否可选
0 人工手动触发 点击新增的CDSS按钮 必选
11 后台自动触发 打开医嘱/病历 必选
12 后台自动触发 关闭医嘱/病历 必选
13 后台自动触发 保存医嘱/病历 必选
14 后台自动触发 提交医嘱/病历 必选
20 后台自动触发 智能问诊 必选

新增按钮手动触发

// message: 患者数据,必须符合《患者数据规范》
// handleNum: 窗口句柄号
// trigger=0: 触发方式为按钮手动触发
string message = "{\"xx\":\"xx\"}";
SendMessageToCDSS(message, handleNum, 0);

当医生编辑病历过程中,点击新增的按钮手动触发,将当前病历数据按规定的Json格式通过异步接口发送给CDSS程序。新增按钮的样式与文案由医院、HIS厂商、灵医智惠三方共同讨论确定。

打开病历/切换患者时触发

// message: 患者数据,必须符合《患者数据规范》
// handleNum: 窗口句柄号
// trigger=11: 触发方式为打开病历文档时自动触发
string message = "{\"xx\":\"xx\"}";
SendMessageToCDSS(message, handleNum, 11);

当医生**打开一份病历时/或者切换患者时触发**,将当前病历数据按规定的Json格式通过异步接口发送给CDSS程序。 触发条件包括:1) 打开新的病历文档窗口或选项卡,2) 切换到已经存在的病历文档窗口或选项卡,3) 切换新患者。 注意切换患者时如未打开病历,入参中包含患者信息和工作人员信息即可。

关闭病历文档时自动触发

// message: ""
// handleNum: 窗口句柄号
// trigger=12: 触发方式为关闭病历文档时自动触发
SendMessageToCDSS("", handleNum, 12);

当医生**关闭病历窗口时后台自动触发**,通过异步接口发送给CDSS程序。切换到已经存在的病历文档窗口或选项卡时,先执行trigger=12告知当前窗口或选项卡已关闭,再执行trigger=11发送新窗口或选项卡中的病历内容。

保存病历文档时自动触发

// message: 患者数据,必须符合《患者数据规范》
// handleNum: 窗口句柄号
// trigger=13: 触发方式为保存病历文档时自动触发
string message = "{\"xx\":\"xx\"}";
SendMessageToCDSS(message, handleNum, 13);

当医生完成病历编辑后,点击保存按钮时后台自动触发,将当前病历数据按规定的Json格式通过异步接口发送给CDSS程序。

提交病历文档时自动触发

// message: 患者数据,必须符合《患者数据规范》
// handleNum: 窗口句柄号
// trigger=14: 触发方式为提交病历文档时自动触发
string message = "{\"xx\":\"xx\"}";
SendMessageToCDSS(message, handleNum, 14);

当医生完成病历编辑后,点击提交按钮时后台自动触发,将当前病历数据按规定的Json格式通过异步接口发送给CDSS程序。

打开智能问诊页面

// message: 患者与医生信息
// handleNum: 窗口句柄号
// trigger=20: 打开智能问诊页面
string message = "{\"姓名\":\"xx\",\"性别\":\"xx\",\"年龄\":\"xx\",\"医生\":\"xx\",\"科室\":\"xx\",\"医院\":\"xx\"}";
SendMessageToCDSS(message, handleNum, 20);

点击智能问诊按钮时触发,将患者信息与医生信息按照规定的Json格式通过异步接口发送给CDSS程序。

关闭CDSS程序

CloseCDSS();

当用户关闭HIS/EMR系统时,调用DLL提供的CloseCDSS()方法关闭CDSS程序,如设置开机启动,不需调用此方法。

点击CDSS悬浮图标手动触发与回填信息

1)当医生**点击灵医智惠CDSS程序的悬浮窗时**,灵医智惠CDSS程序会主动给HIS/EMR程序发送windows消息,请求最新的病历数据。

2)当医生**勾选灵医智惠CDSS程序推荐的病例模板、诊断结果、治疗方案结果时**,灵医智惠CDSS程序会主动给HIS/EMR程序发送windows消息,将病例、诊断和治疗方案发送给HIS/EMR程序,HIS/EMR程序可以完成回填操作。

private static int WMA_InterPro = 0x004A;
public struct CopyData
{
  public IntPtr dwData;
  public int cbData;
  [MarshalAs(UnmanagedType.LPStr)]
  public string lpData;
}
protected override void DefWndProc(ref System.Windows.Forms.Message m)
{
  if (m.Msg == WMA_InterPro) {
    string msg = ((CopyData)Marshal.PtrToStructure(m.LParam, typeof(CopyData))).lpData;
    JObject jo = (JObject)JsonConvert.DeserializeObject(msg);
    // type=CDSS/诊断/药物/手术/检验/检查/中药
    string type = jo.ContainsKey("type") ? jo["type"].ToString() : "";
    // updateType=add/delete, add表示新增,delete表示删除
    string updateType = jo.ContainsKey("updateType") ? jo["updateType"].ToString() : "";

    if ("CDSS".Equals(type)) {
      // 当type="CDSS"时,将最新的病历数据广播给CDSS程序
        // message: 患者数据,符合规定格式的JSON字符串
        // handleNum: 窗口句柄号
      BroadcastMessageToCDSS(message, handleNum);
    } else if ("诊断".Equals(type)) {
      // 西医诊断名称
      string name = jo.ContainsKey("name")? jo["name"].ToString():"";
      // 西医诊断编码
      string hospitalCode = jo.ContainsKey("hospitalCode")? jo["hospitalCode"].ToString():"";

    }else if ("中医诊断".Equals(type)) {
      string data = jo.ContainsKey("data") ? jo["data"].ToString() : "{}";
      JObject joData = (JObject)JsonConvert.DeserializeObject(data);
      // 中医诊断名称
      string diagnoseName = joData.ContainsKey("中医疾病")?joData["中医疾病"]["名称"].ToString();
      // 中医诊断编码
      string diagnoseCode = joData.ContainsKey("中医疾病")?joData["中医疾病"]["代码"].ToString();
      JArray syndromeTypeArry = joData.ContainsKey("中医证型")?(JArray)joData["中医证型"]:new JArray();
      foreach(JToken syndromeType in syndromeTypeArry){
        //证型编码
        string syndromeTypeCode = ((JObject)syndromeType)["代码"].ToString();
        //证型名称
        string syndromeTypeName = ((JObject)syndromeType)["名称"].ToString();
      }

    else if ("药物".Equals(type)) {
      // 回填西药名称
      string name = jo.ContainsKey("name")? jo["name"].ToString():"";
      // 回填西药编码
      string hospitalCode = jo.ContainsKey("hospitalCode")? jo["hospitalCode"].ToString():"";

    }else if ("方药".Equals(type)) {
      string data = jo.ContainsKey("data") ? jo["data"].ToString() : "{}";
      JObject joData = (JObject)JsonConvert.DeserializeObject(data);
      // 回填方剂名称
      string name = joData.ContainsKey("name")? joData["name"].ToString():"";
      JArray detailsArry = joData.ContainsKey("details")?(JArray)joData["details"]:new JArray();
      foreach(JToken detailData in detailsArry){
        // 药品编码
        string medicineHospitalCode = ((JObject)detailData)["medicine"]["hospital_code"].ToString();
        // 药品名称
        string medicineName = ((JObject)detailData)["medicine"]["name"].ToString();
        // 药品机构
        string medicineHospitalId = ((JObject)detailData)["medicine"]["hospital_id"].ToString();
        // 数量
        string value = ((JObject)detailData)["value"].ToString();
        // 单位
        string unit = ((JObject)detailData)["unit"].ToString();
        // 煎制法编码
        string decoctionHospitalCode = ((JObject)detailData)["decoction"]["hospital_code"].ToString();
        // 煎制法名称
        string decoctionName = ((JObject)detailData)["decoction"]["name"].ToString();
        // 煎制法机构id
        string decoctionHospitalId = ((JObject)detailData)["decoction"]["hospital_id"].ToString();
      }

    } else if ("手术".Equals(type)) {
      // 回填手术名称
      string name = jo.ContainsKey("name")? jo["name"].ToString():"";
      // 回填手术编码
      string hospitalCode = jo.ContainsKey("hospitalCode")? jo["hospitalCode"].ToString():"";

    } else if ("检验".Equals(type)) {
      // 回填检验名称
      string name = jo.ContainsKey("name")? jo["name"].ToString():"";
      // 回填检验编码
      string hospitalCode = jo.ContainsKey("hospitalCode")? jo["hospitalCode"].ToString():"";

    } else if ("检查".Equals(type)) {
      // 回填检查名称
      string name = jo.ContainsKey("name")? jo["name"].ToString():"";
      // 回填检查编码
      string hospitalCode = jo.ContainsKey("hospitalCode")? jo["hospitalCode"].ToString():"";

    }else if ("smart".Equals(type)) {
      // 回填智能问诊病历信息
      string data = jo.ContainsKey("data") ? jo["data"].ToString() : "{}";
      // 回填智能问诊病历信息
      JObject joData = (JObject)JsonConvert.DeserializeObject(data);
      // 回填主诉信息
      string chief_complaint = joData.ContainsKey("chief_complaint") ? joData["chief_complaint"].ToString() : "";
      // 回填现病史信息
      string present_illness = joData.ContainsKey("present_illness") ? joData["present_illness"].ToString() : "";

    }else if ("reminder-emr".Equals(type)) {
      string data = jo.ContainsKey("data") ? jo["data"].ToString() : "[]";
      // 质控提醒信息返回
      JArray reminderArry = JArray.Parse(data);
      foreach(JToken reminderData in reminderArry){
        // 质控提醒项目ID(医嘱ID)
        string reminderDocId = ((JObject)reminderData)["doc_id"].ToString();
        // 质控提醒项目名称(医嘱项目)
        string reminderName = ((JObject)reminderData)["name"].ToString();
        // 质控提醒级别(notice/warning/error)
        string reminderLevel = ((JObject)reminderData)["level"].ToString();
        // 质控提醒信息
        string reminderMessage = ((JObject)reminderData)["message"].ToString();
        // 质控提醒类型(文书/检验/检查/手术/治疗)
        string reminderType = ((JObject)reminderData)["type"].ToString();
      }
  } else {
    base.DefWndProc(ref m);
  }
}

SDK入参:患者数据规范

医嘱可以和门诊记录/入院记录支持同时提交,也支持分开提交。

门诊记录

请点击箭头查看内容
{
  "场景": ["门诊记录"],
  "trigger": "保存/提交/CDSS",   // 触发CDSS的方式
                                //  1) 保存:点击保存时自动触发;
                                //  2) 提交:点击提交时自动触发;
                                //  3) CDSS:点击单独新增的CDSS按钮触发。
  "工作人员信息": {
    "医院": "",               // [必填]医院名称
    "科室": "",               // [必填]科室名称
    "科室ID": "",             // [必填]科室ID 
    "姓名": "",               // [必填]工作人员姓名
    "账号ID": "",             // [必填]医疗信息系统账号
    "角色": "医生/护士/药师/等",
    "职称": "",
    "ip": ""                  //  医生电脑ip地址
  },
  "患者信息": {
    "就诊类型": "门诊/急诊/体检",      // [必填]
    "就诊次数": "",           // "1":初诊,大于1表示复诊
    "就诊ID": "",            // [必填] 门诊号(一次就诊有唯一ID)
    "患者ID": "",            // [必填] (一个患者有唯一ID)
    "姓名": "",              // [必填]
    "年龄": "28岁",          // [必填] xx岁/xx月/xx天/xx小时
    "性别": "男/女",         // [必填] 
    "出生日期": "",          // yyyy-MM-dd
    "职业": "",
    "民族": "",
    "出生地": "",
    "现住地": "",
    "费用类型": "医保/商保/自费/公费/等",
    "身高": "180cm",
    "体重": "70kg",
    "ABO血型": "A/B/AB/O",
    "Rh血型": "阴/阳",
    "婚姻状态": "未婚/已婚/离异/丧偶",
    "特殊人群": [""],
    "生理状态": "月经期/妊娠期/哺乳期/孕早期/孕中期/孕晚期/卵泡期/黄体期/排卵期"
  },
  "门诊记录": {
    "是否复诊": "",         //是/否
    "科室": "",            // 门诊科室
    "记录ID": "",          // 门诊记录ID
    "记录内容": "",     // 无结构化纯文本内容, 仅用于无法提供结构化数据的厂商使用
    "记录时间": "yyyy-MM-dd HH:mm:ss",         // 门诊记录书写时间
    "就诊时间": "yyyy-MM-dd HH:mm:ss",         // 患者就诊时间
    "怀孕状态": "未孕/已孕/已育",
    "主诉": "",
    "现病史": "",
    "既往史": "",
    "个人史": "",
    "月经史": "",
    "婚育史": "",
    "家族史": "",
    "过敏史": "",
    "接种史": "",
    "体格检查": "",
    "辅助检查": "",
    "专科检查": "",
    "嘱咐": "",              // 医生对患者建议的注意事项
    "诊断": [
      {
        "诊断类型": "初步诊断/补充诊断/确诊诊断/其他诊断/门诊诊断",
        "诊断项": "",
        "主要诊断": "是/否",
        "诊断ICD编码": ""
      }
    ],
    "中医诊断": [
      {
        "诊断类型": "初步诊断/补充诊断/确诊诊断/其他诊断/门诊诊断",
        "主要诊断": "是/否",   
        "中医疾病" : {                  
          "名称": "",
          "代码": ""
        },
        "中医证型": [
          {
            "名称": "",
            "代码": ""
          }
        ]
      }
    ]
  }
}

入院记录

请点击箭头查看内容
{
  "场景": ["入院记录"],
  "trigger": "保存/提交/CDSS",   // 触发CDSS的方式
                                //  1) 保存:点击保存时自动触发;
                                //  2) 提交:点击提交时自动触发;
                                //  3) CDSS:点击单独新增的CDSS按钮触发。
  "工作人员信息": {
    "医院": "",               // [必填]医院名称
    "科室": "",               // [必填]科室名称
    "科室ID": "",             // [必填]科室ID 
    "姓名": "",               // [必填]工作人员姓名
    "账号ID": "",             // [必填]医疗信息系统账号
    "角色": "医生/护士/药师/等",
    "职称": "",
    "ip": ""                  //  医生电脑ip地址
  },
  "患者信息": {
    "就诊类型": "住院",       // [必填]
    "就诊次数": "",           // "1":初诊,大于1表示复诊
    "就诊ID": "",            // [必填] 住院号(一次就诊有唯一ID)
    "患者ID": "",            // [必填] (一个患者有唯一ID)
    "姓名": "",              // [必填]
    "年龄": "28岁",          // [必填] xx岁/xx月/xx天/xx小时
    "性别": "男/女",         // [必填]
    "出生日期": "",          // yyyy-MM-dd
    "职业": "",
    "民族": "",
    "出生地": "",
    "现住地": "",
    "费用类型": "医保/商保/自费/公费/等",
    "身高": "180cm",
    "体重": "70kg",
    "ABO血型": "A/B/AB/O",
    "Rh血型": "阴/阳",
    "婚姻状态": "未婚/已婚/离异/丧偶",
    "特殊人群": [""],
    "生理状态": "月经期/妊娠期/哺乳期/孕早期/孕中期/孕晚期/卵泡期/黄体期/排卵期"
  },
  "入院记录": {
    "科室": "",            // 入院科室
    "记录ID": "",          // 入院记录ID
    "记录内容": "",     // 无结构化纯文本内容, 仅用于无法提供结构化数据的厂商使用
    "记录时间": "yyyy-MM-dd HH:mm:ss",         // 入院记录书写时间
    "入院时间": "yyyy-MM-dd HH:mm:ss",         // 患者入院时间
    "怀孕状态": "未孕/已孕/已育",
    "病史陈述者": "",
    "主诉": "",
    "现病史": "",
    "既往史": "",
    "个人史": "",
    "月经史": "",
    "婚育史": "",
    "家族史": "",
    "过敏史": "",
    "接种史": "",
    "体格检查": "",
    "辅助检查": "",
    "专科检查": "",
    "诊断": [
      {
        "诊断类型": "初步诊断/入院诊断/补充诊断/确诊诊断/其他诊断/鉴别诊断/出院诊断",
        "诊断项": "",
        "主要诊断": "是/否",
        "诊断ICD编码": ""
      }
    ],
    "中医诊断": [
      {
        "诊断类型": "初步诊断/入院诊断/补充诊断/确诊诊断/其他诊断/鉴别诊断/出院诊断",
        "主要诊断": "是/否",   
        "中医疾病" : {                  
          "名称": "",
          "代码": ""
        },
        "中医证型": [
          {
            "名称": "",
            "代码": ""
          }
        ]
      }
    ]
  }
}

医嘱

请点击箭头查看内容
{
  "场景": ["医嘱"],
  "trigger": "保存/提交/CDSS",   // 触发CDSS的方式
                                //  1) 保存:点击保存时自动触发;
                                //  2) 提交:点击提交时自动触发;
                                //  3) CDSS:点击单独新增的CDSS按钮触发。
  "工作人员信息": {
    "医院": "",               // [必填]医院名称
    "科室": "",               // [必填]科室名称
    "科室ID": "",             // [必填]科室ID  
    "姓名": "",               // [必填]工作人员姓名
    "账号ID": "",             // [必填]医疗信息系统账号
    "角色": "医生/护士/药师/等",
    "职称": "",
    "ip": ""                  //  医生电脑ip地址
  },
  "患者信息": {
    "就诊类型": "门诊/住院/急诊/体检",      // [必填]
    "就诊次数": "",           // "1":初诊,大于1表示复诊
    "就诊ID": "",            // [必填] 住院号 或者 门诊号(一次就诊有唯一ID)
    "患者ID": "",            // [必填] (一个患者有唯一ID)
    "姓名": "",              // [必填]
    "年龄": "28岁",          // [必填] xx岁/xx月/xx天/xx小时
    "性别": "男/女",         // [必填] 
    "出生日期": "",          // yyyy-MM-dd
    "职业": "",
    "出生地": "",
    "现住地": "",
    "费用类型": "医保/商保/自费/公费/等",
    "身高": "180cm",
    "体重": "70kg",
    "ABO血型": "A/B/AB/O",
    "Rh血型": "阴/阳",
    "婚姻状态": "未婚/已婚/离异/丧偶",
    "特殊人群": [""],
    "生理状态": "月经期/妊娠期/哺乳期/孕早期/孕中期/孕晚期/卵泡期/黄体期/排卵期"
  },
  "医嘱": [
    {
      "处方ID": "",                              // 处方号
      "医嘱ID": "",                              // [必填] 医嘱项目的唯一ID,一个门诊处方下的药品之间医嘱ID不同,处方ID相同,请注意:医嘱ID是全局唯一的,不是医嘱项目院内编码
      "医嘱分组": "",                            // 可以代表医嘱分组的信息即可,比如父医嘱名、父医嘱序号、父医嘱ID
      "医嘱类型": "用药/检验/检查/诊疗/手术/护理/出院带药/材料",  // [必填] 
      "医嘱项目": "",                            // [必填] 
      "长期或临时": "长期/临时",                   // [必填] 
      "医嘱状态": "新开/执行/停止/取消",            // [必填] 
      "录入时间": "yyyy-MM-dd HH:mm:ss",         // 医嘱开立时间
      "审核时间": "yyyy-MM-dd HH:mm:ss",         // 医嘱审核时间
      "开始时间": "yyyy-MM-dd HH:mm:ss",         // 医嘱下达的预期开始时间
      "结束时间": "yyyy-MM-dd HH:mm:ss",         // 医嘱下达的预期结束时间
      "医嘱开立科室": "",
      "医嘱开立者": "",
      "医嘱审核科室": "",
      "医嘱审核者": "",

      //以下为检验医嘱独有字段
      "标本":"",

      // 以下为用药医嘱独有字段
      "用药天数":"", 
      "药物商品名": "",                          // 医嘱类型=用药时 [必填]
      "药物通用名": "",
      "国药准字号": "",                          // 医嘱类型=用药时 [必填] 
      "药物编码": "",
      "药物类别": "电解质平衡调节药",
      "药物剂型": "注射剂/片剂/胶囊剂/丸剂/散剂/气雾剂/等",           // 医嘱类型=用药时 [必填]
      "用药途径": "口服/皮下注射/肌肉注射/静脉注射/外用/雾化吸入/等",   // 医嘱类型=用药时 [必填]
      "使用频率": "",                           // 医嘱类型=用药时 [必填]
      "单次剂量": "",                           // 医嘱类型=用药时 [必填]
      "总剂量": "",                             // 医嘱类型=用药时 [必填]
      "剂量单位": "",                           // 医嘱类型=用药时 [必填]
      // 皮试医嘱有2种常见方式: 1)用药医嘱之外单独开一项皮试医嘱;2)开用药医嘱,标记"需要皮试",护士做完皮试后填写"皮试结果"
      "需要皮试": "是/否",

      // 以下为护理医嘱、诊疗医嘱独有字段
      "执行频率": "",
      "护理级别": "",

      // 以下为检查医嘱、检验医嘱独有字段
      "报告ID": "",                            // 检验报告ID或者检查报告ID

      // 以下为手术医嘱独有字段
      "麻醉方式": "",

      // 以下为检查
      "检查部位": ["胸部","腹部"],
      "检查方法": ["平扫","正位"]
    }
  ]
}

过敏记录

请点击箭头查看内容
  {
    "场景": ["过敏记录"],
    "trigger": "提交", 
    "工作人员信息": {
      "医院": "",               // [必填]医院名称
      "科室": "",               // [必填]科室名称
      "科室ID": "",             // [必填]科室ID  
      "姓名": "",               // [必填]工作人员姓名
      "账号ID": "",             // [必填]医疗信息系统账号
      "角色": "医生/护士/药师/等",
      "职称": "",
      "ip": ""                  //  医生电脑ip地址
    },
    "患者信息": {
      "就诊类型": "门诊/住院/急诊/体检",      // [必填]
      "就诊次数": "",           // "1":初诊,大于1表示复诊
      "就诊ID": "",            // [必填] 住院号 或者 门诊号(一次就诊有唯一ID)
      "患者ID": "",            // [必填] (一个患者有唯一ID)
      "姓名": "",              // [必填]
      "年龄": "28岁",          // [必填] xx岁/xx月/xx天/xx小时
      "性别": "男/女",         // [必填] 
      "出生日期": "",          // yyyy-MM-dd
      "职业": "",
      "出生地": "",
      "现住地": "",
      "费用类型": "医保/商保/自费/公费/等",
      "身高": "180cm",
      "体重": "70kg",
      "ABO血型": "A/B/AB/O",
      "Rh血型": "阴/阳",
      "婚姻状态": "未婚/已婚/离异/丧偶",
      "特殊人群": [""],
      "生理状态": "月经期/妊娠期/哺乳期/孕早期/孕中期/孕晚期/卵泡期/黄体期/排卵期"
    },
    "过敏记录": [
      {
        "记录ID": "",
        "记录时间": "yyyy-MM-dd HH:mm:ss",// 来源类型=过敏源测试,一般由护士根据皮试结果录入,或者医生根据检验报告结果录入
                                          // 来源类型=过敏史,一般由医生根据患者病史录入
                                          // 来源类型=过敏源检测,可选字段
        "来源类型": "过敏史/过敏源检测",
        "检测名称": "皮肤点刺试验/皮内注射试验/斑贴试验/IgE检测/IgG检测",
        "过敏源类型": "药物/食物/环境/其他",
        "过敏源": "青霉素类抗生素/磺胺类抗生素/待皮试的药物名称等",
        "阴阳性": "阴/阳/未做",
        "过敏症状": "",
        "严重程度": "",
      }
    ]
  }

回填数据规范

诊断回填数据规范

请点击箭头查看内容
{
  "type": "诊断",
  "hospitalCode": "诊断编码",
  "name": "诊断名称",
  "patientId": "患者id",
  "updateType": "add/delete"
}

诊疗项目回填数据规范

请点击箭头查看内容
{
  "type": "检查/检验/药物/手术",
  "hospitalCode": "诊疗项目编码",
  "name": "诊疗项目名称",
  "patientId": "患者id",
  "updateType": "add/delete"
}

中药方剂回填数据规范

请点击箭头查看内容
{
  "type": "方药",
  "data": {
    "details": [
      {
        "decoction": {
          "hospital_code": "煎法编码",
          "name": "煎法名称"
        },
        "medicine": {
          "hospital_code": "草药编码",
          "name": "草药名称"
        },
        "unit": "单位",
        "value": "数量"
      }
    ],
    "name": "方剂名称",
  },
  "patientId": "患者id",
  "updateType": "add/delete"
}

质控消息

请点击箭头查看内容
{
  "type": "reminder-emr",
  "data": [
    {     
      "level": "error/warning/notice",
      "message": "警告消息内容",
      "type": "文书/检查/检验/手术/治疗"
    }
  ]
}

问诊病历数据回填(上线问诊功能时需对接此功能)

请点击箭头查看内容
{
  "type": "smart-inquiry-hillback",
  "data": {
      "主诉": "",
      "现病史": "",
      "既往史": "",
      "体格检查": "",
      "过敏史": "",
      "身高": "",
      "体重": "",
      "体温": "",
      "脉搏": "",
      "呼吸": "",
      "血压": "",
  }
}