DR.md 122 KB

DR

2 获取软件信息

GET /dr/api/v1/pub/software_info

接口说明

公开接口

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "data": {
    "FPD": "Simulator",
    "GEN": "Simulator",
    "guest": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTY3MjAxMTUsImlkIjoyLCJuYW1lIjoiZ3Vlc3QifQ.cDkkxM2mkiCQf7T87WsCMewITk13c7jSDoniT7gDHXQ",
    "language": ["en", "zh"],
    "product": "DROS",
    "server": {
      "auth": {
        "build": "2025-08-25 17:45:18",
        "desc": "Authentication Server repo",
        "submodule": ["3a167dd4[rpc_idl]"],
        "version": "0.3.0-13-g8b85622"
      },
      "dcmtk": {
        "build": "2025-08-25 13:43:16",
        "desc": "Dcmtk Server repo",
        "submodule": ["0fc2b1e4[rpc_idl]"],
        "version": "0.3.0-12-gff618d4"
      },
      "imgProc": {
        "build": "2025-08-25 13:46:23",
        "desc": "Img Proc Server repo",
        "submodule": [
          "5e507af7[auto_wwwl]",
          "3a75bb1f[collimator_circle]",
          "e7b69785[collimator_rect]",
          "6b7fbbd1[enhance]",
          "5905e001[rpc_idl]"
        ],
        "version": "0.3.0-7-gbb2ee0b"
      },
      "protocol": {
        "build": "2025-08-25 17:45:23",
        "desc": "Protocol Server repo",
        "submodule": ["3a167dd4[rpc_idl]"],
        "version": "0.3.0-7-g1954756"
      },
      "resource": {
        "build": "2025-08-25 17:45:27",
        "desc": "Resource Server repo",
        "submodule": ["0fc2b1e4[rpc_idl]"],
        "version": "0.3.0-12-g60e37c1"
      },
      "study": {
        "build": "2025-08-25 17:45:25",
        "desc": "Study Server repo",
        "submodule": ["3a167dd4[rpc_idl]"],
        "version": "0.3.0-11-g784ba1b"
      },
      "task": {
        "build": "2025-08-25 17:45:29",
        "desc": "Task Server repo",
        "submodule": ["0fc2b1e4[rpc_idl]"],
        "version": "0.3.0-20-ge9ec04a"
      }
    },
    "sn": "2edbc382-044adc78-95bed11b-51c9328a"
  },
  "description": "Success",
  "solution": ""
}

3 获取用户列表

GET /dr/api/v1/pub/users

接口说明

公开接口

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "data": ["service", "admin", "mgr", "tech"],
  "description": "Success",
  "solution": ""
}

4 获取示意图

GET /dr/api/v1/pub/Image/xxx/xxx/xxx

接口说明

公开接口

响应体

● 200: OK 响应数据格式:File

图片数据

5 登陆

POST /dr/api/v1/pub/login

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTAwNTU5MzYsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.LLveItQ_K0vvcmyN4qLQHxaOcz3EzY7ZeUQ97hR9R9w
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
username string admin true
password string 123456 true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc1ODgsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.0qIzacOIf0-YluwAlrkaNJ9lf9w8IKneWEXh_mjUoN4",
    "expire": 1751277588,
    "uid": 1,
    "name": "admin",
    "avatar": ""
  }
}

6 修改密码

POST /api/v1/auth/settings/password

接口说明

修改当前用户自己的密码

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
old_password object true 旧密码
new_password string true 新密码
confirm_new_password string true 确认密码

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {}
}

7 获取选项

GET /dr/api/v1/auth/resource/options

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
group basic 可选项

basic apr_cbo| |flag|sex_full|basic: ---- sex_full ---- patient_size |

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.resource.OptionReply",
    "option": [
      {
        "text": "Male",
        "value": "M"
      },
      {
        "text": "Female",
        "value": "F"
      },
      {
        "text": "Other",
        "value": "O"
      },
      {
        "text": "CM",
        "value": "CM"
      },
      {
        "text": "SF",
        "value": "SF"
      }
    ]
  }
}

8 获取配置项

GET /dr/api/v1/auth/resource/config

接口说明

获取全局配置项

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
uri

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.resource.OptionReply",
    "option": [
      {
        "text": "Male",
        "value": "M"
      },
      {
        "text": "Female",
        "value": "F"
      },
      {
        "text": "Other",
        "value": "O"
      },
      {
        "text": "CM",
        "value": "CM"
      },
      {
        "text": "SF",
        "value": "SF"
      }
    ]
  }
}
uri可用值
  • System/SimulatorGEN 发生器仿真模式
  • System/SimulatorFPD 探测器仿真模式

9 协议

9.1 获取患者类型

GET /dr/api/v1/auth/protocol/patient_type

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
is_enabled true 或 false

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "patient_type_list": [
      {
        "id": "1",
        "patient_type_id": "Human",
        "patient_type_name": "Human",
        "patient_type_local": "Human",
        "patient_type_description": "Human",
        "sort": 1,
        "is_enabled": true,
        "product": "DROC",
        "is_pre_install": true
      },
      {
        "id": "2",
        "patient_type_id": "SpecialType",
        "patient_type_name": "SpecialType",
        "patient_type_local": "SpecialType",
        "patient_type_description": "SpecialType",
        "sort": 2,
        "is_enabled": false,
        "product": "DROC",
        "is_pre_install": true
      }
    ]
  }
}

9.2 获取身体部位

GET /dr/api/v1/auth/protocol/body_part

接口说明

根据患者类型获取支持的身体部位

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
modality 暂时只有DX
is_enabled true 或 false

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "body_part_list": [
      {
        "id": "1",
        "body_part_id": "Human_SKULL",
        "body_part_name": "颅骨",
        "body_part_local": "颅骨",
        "body_part_description": "Skull",
        "patient_type": "Human",
        "category": "DX",
        "sort": 1,
        "is_enabled": true,
        "product": "DROC",
        "is_pre_install": true
      },
      {
        "id": "2",
        "body_part_id": "Human_NECK",
        "body_part_name": "颈部",
        "body_part_local": "颈部",
        "body_part_description": "Neck",
        "patient_type": "Human",
        "category": "DX",
        "sort": 2,
        "is_enabled": true,
        "product": "DROC",
        "is_pre_install": true
      }
    ]
  }
}

9.3 获取协议列表

GET /dr/api/v1/auth/protocol/procedure

接口说明

根据身体部位获取协议列表

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
body_part 从身体部位接口获取
procedure_type NORMAL 或 EMERGENCY
is_enabled true 或 false
page 页码
取值范围:>0
page_size 行数
取值范围:1-10000

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.ProcedureList",
    "count": 179,
    "procedures": [
      {
        "id": "2",
        "procedure_id": "P0-0002",
        "procedure_code": "P0-0002",
        "procedure_name": "颅骨前后位 + 侧位",
        "procedure_name_local": "颅骨前后位 + 侧位",
        "procedure_other_name": "Skull AP + LAT",
        "procedure_description": "颅骨前后位 + 侧位",
        "procedure_description_local": "颅骨前后位 + 侧位",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "procedure_type": "NORMAL",
        "fast_search": false,
        "protocol_laterality": "U",
        "procedure_category": "Adult",
        "modality": "DX",
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "id": "3",
        "procedure_id": "P0-0003",
        "procedure_code": "P0-0003",
        "procedure_name": "颅骨后前位 + 侧位",
        "procedure_name_local": "颅骨后前位 + 侧位",
        "procedure_other_name": "Skull PA + LAT",
        "procedure_description": "颅骨后前位 + 侧位",
        "procedure_description_local": "颅骨后前位 + 侧位",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "procedure_type": "NORMAL",
        "fast_search": false,
        "protocol_laterality": "U",
        "procedure_category": "Adult",
        "modality": "DX",
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "id": "4",
        "procedure_id": "P0-0004",
        "procedure_code": "P0-0004",
        "procedure_name": "颅骨前后位",
        "procedure_name_local": "颅骨前后位",
        "procedure_other_name": "Skull AP",
        "procedure_description": "颅骨前后位",
        "procedure_description_local": "颅骨前后位",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "procedure_type": "NORMAL",
        "fast_search": false,
        "protocol_laterality": "U",
        "procedure_category": "Adult",
        "modality": "DX",
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "id": "1",
        "procedure_id": "P0-0001",
        "procedure_code": "P0-0001",
        "procedure_name": "颅骨汤氏位",
        "procedure_name_local": "颅骨汤氏位",
        "procedure_other_name": "Skull Townes View",
        "procedure_description": "颅骨汤氏位",
        "procedure_description_local": "颅骨汤氏位",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "procedure_type": "NORMAL",
        "fast_search": false,
        "protocol_laterality": "U",
        "procedure_category": "Adult",
        "modality": "DX",
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      }
    ]
  }
}

9.4 获取体位列表

GET /dr/api/v1/auth/protocol/view

接口说明

获取体位列表

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
body_part 从身体部位接口获取
is_enabled true 或 false
page 1 页码
取值范围:>0
page_size 10 行数
取值范围:1-10000

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.ViewList",
    "count": 149,
    "views": [
      {
        "internal_id": "View_DX_T_A_SK_Axial_00",
        "view_id": "View_DX_T_A_SK_Axial_00",
        "view_name": "颅骨前后轴位",
        "view_name_local": "",
        "view_other_name": "Skull AP Axial",
        "view_description": "颅骨前后轴位",
        "view_position": "AP",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/m20-063.gif",
        "view_big_icon_name": "/Image/Position/Human/m20-063.large.gif",
        "view_coach_name": "/Image/Position/Human/m20-063.large.gif",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_Axial_00",
        "img_proc_id": "View_DX_T_A_SK_Axial_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "14IN(35CM)X17IN(43CM)",
            "CollimatorSizeLength": "17IN",
            "CollimatorSizeWidth": "14IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "LEFT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_Axial_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "internal_id": "View_DX_T_A_SK_AP_00",
        "view_id": "View_DX_T_A_SK_AP_00",
        "view_name": "颅骨前后位",
        "view_name_local": "",
        "view_other_name": "Skull AP",
        "view_description": "颅骨前后位",
        "view_position": "AP",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_big_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_coach_name": "/Image/Position/Human/skull.ap.table.x.png",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_AP_00",
        "img_proc_id": "View_DX_T_A_SK_AP_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "14IN(35CM)X17IN(43CM)",
            "CollimatorSizeLength": "17IN",
            "CollimatorSizeWidth": "14IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "LEFT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_AP_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      }
    ]
  }
}

9.5 获取体位列表(通过procedure_id)

GET /dr/api/v1/auth/protocol/procedure/{id}/view

接口说明

获取体位列表(通过procedure_id)

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.ViewList",
    "count": 2,
    "views": [
      {
        "internal_id": "View_DX_T_A_SK_AP_00",
        "view_id": "View_DX_T_A_SK_AP_00",
        "view_name": "颅骨前后位",
        "view_name_local": "",
        "view_other_name": "Skull AP",
        "view_description": "颅骨前后位",
        "view_position": "AP",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_big_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_coach_name": "/Image/Position/Human/skull.ap.table.x.png",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_AP_00",
        "img_proc_id": "View_DX_T_A_SK_AP_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "14IN(35CM)X17IN(43CM)",
            "CollimatorSizeLength": "17IN",
            "CollimatorSizeWidth": "14IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "LEFT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_AP_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "internal_id": "View_DX_T_A_SK_LAT_00",
        "view_id": "View_DX_T_A_SK_LAT_00",
        "view_name": "颅骨左侧位",
        "view_name_local": "",
        "view_other_name": "Skull LAT,left",
        "view_description": "颅骨左侧位",
        "view_position": "LAT",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/Skull_T_lat_left.gif",
        "view_big_icon_name": "/Image/Position/Human/Skull_T_lat_left.x.gif",
        "view_coach_name": "/Image/Position/Human/Skull_T_lat_left.x.gif",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_LAT_00",
        "img_proc_id": "View_DX_T_A_SK_LAT_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "8IN(20CM)X10IN(25CM)",
            "CollimatorSizeLength": "10IN",
            "CollimatorSizeWidth": "8IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "RIGHT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_LAT_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      }
    ]
  }
}

9.6 获取体位详情

GET /dr/api/v1/auth/protocol/view/{id}

接口说明

根据ID获取体位详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
body_part 从身体部位接口获取
is_enabled true 或 false
procedure_id 从协议列表接口获取

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.View",
    "internal_id": "View_DX_T_A_SK_Axial_04",
    "view_id": "View_DX_T_A_SK_Axial_04",
    "view_name": "下颌骨, 闭口",
    "view_name_local": "",
    "view_other_name": "Mandible,jaw close",
    "view_description": "下颌骨, 闭口",
    "view_position": "Axial",
    "application": "RAD",
    "anatomic_region": "Facial bones",
    "patient_type": "Human",
    "body_part_id": "Human_SKULL",
    "view_icon_name": "/Image/Position/Human/m21-082.gif",
    "view_big_icon_name": "/Image/Position/Human/m21-082.large.gif",
    "view_coach_name": "/Image/Position/Human/m21-082.gif",
    "modality": "DX",
    "work_station_id": 1,
    "apr_id": "View_DX_T_A_SK_Axial_04",
    "img_proc_id": "View_DX_T_A_SK_Axial_04",
    "config_object": {
      "DX": {
        "CollimatorCenter": "1",
        "CollimatorFilter": "0",
        "CollimatorNoChange": false,
        "CollimatorSize": "14IN(35CM)X17IN(43CM)",
        "CollimatorSizeLength": "17IN",
        "CollimatorSizeWidth": "14IN",
        "ImageHorizontalFlip": "NO",
        "ImageLaterality": "U",
        "ImageRotate": "0",
        "LabelPosition": "LEFT TOP",
        "LabelStyle": "",
        "PatientOrientationColumn": "R",
        "PatientOrientationRow": "L",
        "RatioFactorLength": 0,
        "RatioFactorSize": 0,
        "RatioFactorThickness": 0,
        "RatioFactorWeight": 0,
        "StandPos": "43",
        "TargetEXI": 250,
        "ViewID": "View_DX_T_A_SK_Axial_04"
      }
    },
    "sort": 1,
    "is_enabled": true,
    "product": "DROS",
    "is_pre_install": true
  }
}

9.7 获取APR详情(通过view_id)

GET /dr/api/v1/auth/protocol/view/{id}/apr

接口说明

根据体位ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
body_part 从身体部位接口获取
is_enabled true 或 false
procedure_id 从协议列表接口获取

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.AprReply",
    "apr_id": "View_DX_T_A_HD_OBL_01",
    "apr_name": "View_DX_T_A_HD_OBL_01",
    "apr_description": "右手斜位",
    "patient_type": "Human",
    "body_part_id": "Human_UPPER LIMB",
    "view_position": "OBL",
    "category": "EXTREMITIES_MEDIUM",
    "modality": "DX",
    "exposures": [
      {
        "work_station_id": 0,
        "patient_size": "Large",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 55,
            "mA": 80,
            "mAs": 3.2,
            "ms": 40
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Medium",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Paediatric",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 1.6,
            "ms": 20
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Small",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Large",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 55,
            "mA": 80,
            "mAs": 3.2,
            "ms": 40
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Medium",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Paediatric",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 1.6,
            "ms": 20
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Small",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      }
    ],
    "sort": 0,
    "is_enabled": true,
    "product": "DROS",
    "is_pre_install": true
  }
}

9.8 获取APR详情

GET /dr/api/v1/auth/protocol/apr/{id}

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
patient_type 从患者类型接口获取
body_part 从身体部位接口获取
is_enabled true 或 false
procedure_id 从协议列表接口获取

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.AprReply",
    "apr_id": "View_DX_T_A_HD_OBL_01",
    "apr_name": "View_DX_T_A_HD_OBL_01",
    "apr_description": "右手斜位",
    "patient_type": "Human",
    "body_part_id": "Human_UPPER LIMB",
    "view_position": "OBL",
    "category": "EXTREMITIES_MEDIUM",
    "modality": "DX",
    "exposures": [
      {
        "work_station_id": 0,
        "patient_size": "Large",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 55,
            "mA": 80,
            "mAs": 3.2,
            "ms": 40
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Medium",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Paediatric",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 1.6,
            "ms": 20
          }
        }
      },
      {
        "work_station_id": 0,
        "patient_size": "Small",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Large",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 55,
            "mA": 80,
            "mAs": 3.2,
            "ms": 40
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Medium",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Paediatric",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 1.6,
            "ms": 20
          }
        }
      },
      {
        "work_station_id": 1,
        "patient_size": "Small",
        "config_object": {
          "Common": {
            "AECDensity": 0,
            "AECField": "010",
            "AECFilm": 1,
            "Dose": 0,
            "ExposureMode": 0,
            "Focus": 0,
            "TOD": 0,
            "TubeLoad": 0,
            "kV": 50,
            "mA": 80,
            "mAs": 2,
            "ms": 25
          }
        }
      }
    ],
    "sort": 0,
    "is_enabled": true,
    "product": "DROS",
    "is_pre_install": true
  }
}

9.9 获取APR设备信息

GET /dr/api/v1/auth/protocol/apr/{id}/device

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
work_station_id 工作位 0 或 1

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.AprDevice",
    "work_station_id": 1,
    "config_object": {
      "Common": {
        "APRNumber": "5",
        "DetectorAngle": 0,
        "FpdAcquisitionMode": "101",
        "FrameRate": 0,
        "GridSpeed": 0,
        "GridType": 2,
        "PositionNumber": "2",
        "SID": 115,
        "Thickness": 1,
        "TubeAngle": 0
      }
    }
  }
}

9.10 获取APR默认曝光参数

GET /dr/api/v1/auth/protocol/apr/{id}/tech

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
work_station_id 工作位 0 或 1
patient_size 体型 Large 或 Medium 或 Small

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.TechParam",
    "dp": {
      "SID": 115,
      "GridType": 2,
      "GridSpeed": 0,
      "DetectorAngle": 0,
      "TubeAngle": 0,
      "TubeHeight": 0,
      "APRNumber": "5",
      "PositionNumber": "2",
      "Thickness": 1,
      "FrameRate": 0,
      "LongTimeExp": 0
    },
    "ep": {
      "kV": 70,
      "mA": 125,
      "ms": 100,
      "mAs": 12.5,
      "ExposureMode": 0,
      "Focus": 0,
      "AECFilm": 1,
      "AECField": "010",
      "AECDensity": 0,
      "Dose": 0,
      "TubeLoad": 0,
      "TOD": 0,
      "CompressionThickness": 0
    }
  }
}

10 登记检查信息

POST /dr/api/v1/auth/study

接口说明

登记检查信息

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
accession_number string ACC0012345 true 登记号
patient_id string PET007 true 患者ID
patient_name object Buddy true 患者名称
patient_english_name string false 英文名
patient_former_name string false 曾用名
patient_size string Large true 患者体型
patient_age string 5Y true 患者年龄
patient_dob string 2025-06-10T03:12:36.181739Z true 生日
patient_sex string false 性别 M、F、O、U
sex_neutered string false 仅宠物 绝育状态
ALTERED (绝育)
UNALTERED (未绝育)
pregnancy_status string false 仅人医 妊娠状态
0001
not pregnant
0002
possibly pregnant
0003
definitely pregnant
0004
unknown
owner_name string false 仅宠物 主人
chip_number object CHIP123456789 false 仅宠物
芯片号
variety string Golden Retriever false 仅宠物
品种描述
is_anaesthesia string false false bool
麻醉状态
is_sedation string false false bool
镇定状态
patient_type string Human true 患者种类
ref_physician string Dr. Smith (Vet) false 医师
operator_id string OP987 false 操作者
modality string DX true
weight int32 25 false 体重
thickness int32 15 false 厚度
length int32 60 false 身高
study_type string Normal true 类型
Normal 普通
Emergency 紧急
comment string Patient presented with limping in right hind leg. Sedation administered. false 备注
views array[object] true 体位列表
⇥ view_id string View_DX_T_A_SK_AP_00 true 体位id
⇥ procedure_id string P0-0002 true 协议id
如果直接选择的体位,协议id填空字符串

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.Study",
    "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
    "study_id": "20250625143339389",
    "public_study_id": "",
    "specific_character_set": "ISO_IR 192",
    "accession_number": "ACC0012345",
    "ref_physician": "Dr. Smith (Vet)",
    "patient_id": "PET007",
    "patient_name": "Buddy (Dog)",
    "patient_english_name": "Buddy en",
    "patient_former_name": "Buddy f",
    "patient_size": "Large",
    "other_patient_ids": "",
    "other_patient_names": "",
    "patient_age": "5Y",
    "patient_dob": "2025-06-10T03:12:36.181739Z",
    "patient_sex": "M",
    "patient_state": "",
    "admitting_time": null,
    "priority": "",
    "reg_source": "",
    "study_description": "",
    "study_start_datetime": "2025-06-25T06:33:39.420606Z",
    "study_end_datetime": null,
    "scheduled_procedure_step_start_date": null,
    "performed_physician": "",
    "study_lock": "Unlocked",
    "folder_path": "",
    "operator_name": "OP987",
    "modality": "DX",
    "weight": 25,
    "thickness": 15,
    "length": 60,
    "patient_type": "Human",
    "study_type": "Normal",
    "owner_name": "owner1",
    "chip_number": "CHIP123456789",
    "variety": "Golden Retriever",
    "is_anaesthesia": true,
    "is_sedation": true,
    "mwl": "",
    "is_exported": false,
    "is_edited": false,
    "is_appended": false,
    "department": "",
    "mapped_status": false,
    "qc_result": false,
    "comment": "Patient presented with limping in right hind leg. Sedation administered.",
    "study_status": "Arrived",
    "sort": 0,
    "product": "DROS",
    "series": [
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482098",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
        "study_id": "20250625143339389",
        "procedure_id": "P0-0002",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "颅骨前后位 + 侧位",
        "performed_protocol_code_value": "P0-0002",
        "sort": 1,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482099",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482098",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
            "secondary_sop_uid": "",
            "study_id": "20250625143339389",
            "view_id": "View_DX_T_A_SK_AP_00",
            "view_description": "颅骨前后位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 1,
            "product": "DROS",
            "is_pre_install": true
          },
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482100",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482098",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
            "secondary_sop_uid": "",
            "study_id": "20250625143339389",
            "view_id": "View_DX_T_A_SK_LAT_00",
            "view_description": "颅骨左侧位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 2,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      },
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482101",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
        "study_id": "20250625143339389",
        "procedure_id": "",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "",
        "performed_protocol_code_value": "",
        "sort": 2,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482102",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482101",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750833219.482097",
            "secondary_sop_uid": "",
            "study_id": "20250625143339389",
            "view_id": "View_DX_T_A_SK_Special_04",
            "view_description": "颅骨汤氏位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 3,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      }
    ]
  }
}

11 变更登记信息

PUT /dr/api/v1/auth/study/{id}

接口说明

变更检查信息 :id 任务ID

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
accession_number string ACC0012345 true 登记号
patient_id string PET007 true 患者ID
patient_name object Buddy true 患者名称
patient_english_name object false 患者英文名
patient_former_name string false 曾用名
patient_size string Large true 患者体型
patient_age string 5Y true 患者年龄
patient_dob string 2025-06-10T03:12:36.181739Z true 生日
patient_sex string true 性别 M、F、O、U
owner_name string false 仅宠物
主人
chip_number string CHIP123456789 false 仅宠物
芯片号
variety string Golden Retriever false 仅宠物
品种描述
is_anaesthesia string false false bool
麻醉状态
is_sedation string false false bool
镇定状态
ref_physician string Dr. Smith (Vet) false 医师
operator_id string OP987 false 操作者
weight int32 25 false 体重
thickness int32 15 false 厚度
length int32 60 false 身高
comment string Patient presented with limping in right hind leg. Sedation administered. false 备注

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.Study",
    "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
    "study_id": "20250625140057649",
    "public_study_id": "",
    "specific_character_set": "ISO_IR 192",
    "accession_number": "ACC00123451",
    "ref_physician": "Dr. Smith (Vet)1",
    "patient_id": "PET0071",
    "patient_name": "Buddy (Dog)g",
    "patient_english_name": "Buddy ee",
    "patient_former_name": "Buddy ff",
    "patient_size": "Small",
    "other_patient_ids": "",
    "other_patient_names": "",
    "patient_age": "4Y",
    "patient_dob": "2025-06-11T03:12:36.181739Z",
    "patient_sex": "F",
    "patient_state": "",
    "admitting_time": null,
    "priority": "",
    "reg_source": "",
    "study_description": "",
    "study_start_datetime": "2025-06-25T06:00:57.401703Z",
    "study_end_datetime": null,
    "scheduled_procedure_step_start_date": null,
    "performed_physician": "",
    "study_lock": "Unlocked",
    "folder_path": "",
    "operator_name": "OP9871",
    "modality": "DX",
    "weight": 35,
    "thickness": 25,
    "length": 70,
    "patient_type": "Human",
    "study_type": "Normal",
    "owner_name": "owner11",
    "chip_number": "CHIP1234567891",
    "variety": "Golden Retriever1",
    "is_anaesthesia": false,
    "is_sedation": false,
    "mwl": "",
    "is_exported": false,
    "is_edited": false,
    "is_appended": false,
    "department": "",
    "mapped_status": false,
    "qc_result": false,
    "comment": "1Patient presented with limping in right hind leg. Sedation administered.",
    "study_status": "Arrived",
    "sort": 0,
    "product": "DROS",
    "series": [
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482081",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
        "study_id": "20250625140057649",
        "procedure_id": "P0-0002",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "颅骨前后位 + 侧位",
        "performed_protocol_code_value": "P0-0002",
        "sort": 1,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482082",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482081",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
            "secondary_sop_uid": "",
            "study_id": "20250625140057649",
            "view_id": "View_DX_T_A_SK_AP_00",
            "view_description": "颅骨前后位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 1,
            "product": "DROS",
            "is_pre_install": true
          },
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482083",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482081",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
            "secondary_sop_uid": "",
            "study_id": "20250625140057649",
            "view_id": "View_DX_T_A_SK_LAT_00",
            "view_description": "颅骨左侧位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 2,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      },
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482084",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
        "study_id": "20250625140057649",
        "procedure_id": "",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "",
        "performed_protocol_code_value": "",
        "sort": 2,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482085",
            "series_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482084",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.33458.1750831257.482080",
            "secondary_sop_uid": "",
            "study_id": "20250625140057649",
            "view_id": "View_DX_T_A_SK_Special_04",
            "view_description": "颅骨汤氏位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 3,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      }
    ]
  }
}

12 获取检查信息列表

GET /dr/api/v1/auth/study/

接口说明

获取检查信息列表

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTYzOTExNjUsImlkIjozLCJuYW1lIjoiYWRtaW4ifQ.ivwjTzeMXLwJry1iHN8a9hV90ftSgDZF6n8lEfOtTOQ
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求参数(Query Param)

参数名称 默认值 描述
id 模糊搜索
name 模糊搜索
acc_no 模糊搜索
start_time RFC3339Nano格式
例:2025-06-19T00:00:00.000+08:00
end_time RFC3339Nano格式
例:2025-06-19T23:59:59.999+08:00
status Arrived,InProgress 逗号分隔的字符串列表

可选值: Arrived InProgress Completed| |page|1|页码 取值范围:>0| |page_size|10|行数 取值范围:1-10000|

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.protocol.ViewList",
    "count": 149,
    "views": [
      {
        "internal_id": "View_DX_T_A_SK_Axial_00",
        "view_id": "View_DX_T_A_SK_Axial_00",
        "view_name": "颅骨前后轴位",
        "view_name_local": "",
        "view_other_name": "Skull AP Axial",
        "view_description": "颅骨前后轴位",
        "view_position": "AP",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/m20-063.gif",
        "view_big_icon_name": "/Image/Position/Human/m20-063.large.gif",
        "view_coach_name": "/Image/Position/Human/m20-063.large.gif",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_Axial_00",
        "img_proc_id": "View_DX_T_A_SK_Axial_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "14IN(35CM)X17IN(43CM)",
            "CollimatorSizeLength": "17IN",
            "CollimatorSizeWidth": "14IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "LEFT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_Axial_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      },
      {
        "internal_id": "View_DX_T_A_SK_AP_00",
        "view_id": "View_DX_T_A_SK_AP_00",
        "view_name": "颅骨前后位",
        "view_name_local": "",
        "view_other_name": "Skull AP",
        "view_description": "颅骨前后位",
        "view_position": "AP",
        "application": "RAD",
        "anatomic_region": "SKULL",
        "patient_type": "Human",
        "body_part_id": "Human_SKULL",
        "view_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_big_icon_name": "/Image/Position/Human/skull.ap.table.x.png",
        "view_coach_name": "/Image/Position/Human/skull.ap.table.x.png",
        "modality": "DX",
        "work_station_id": 0,
        "apr_id": "View_DX_T_A_SK_AP_00",
        "img_proc_id": "View_DX_T_A_SK_AP_00",
        "config_object": {
          "DX": {
            "CollimatorCenter": "1",
            "CollimatorFilter": "0",
            "CollimatorNoChange": false,
            "CollimatorSize": "14IN(35CM)X17IN(43CM)",
            "CollimatorSizeLength": "17IN",
            "CollimatorSizeWidth": "14IN",
            "ImageHorizontalFlip": "NO",
            "ImageLaterality": "U",
            "ImageRotate": "0",
            "LabelPosition": "LEFT TOP",
            "LabelStyle": "",
            "PatientOrientationColumn": "R",
            "PatientOrientationRow": "L",
            "RatioFactorLength": 0,
            "RatioFactorSize": 0,
            "RatioFactorThickness": 0,
            "RatioFactorWeight": 0,
            "StandPos": "43",
            "TargetEXI": 250,
            "ViewID": "View_DX_T_A_SK_AP_00"
          }
        },
        "sort": 1,
        "is_enabled": true,
        "product": "DROS",
        "is_pre_install": true
      }
    ]
  }
}

13 获取检查信息

GET /dr/api/v1/auth/study/{id}

接口说明

:id -- 检查信息ID(study_id) 例:20250619164137632

地址参数(Path Variable)

参数名称 默认值 描述
id study_id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTYxOTU0MDIsImlkIjozLCJuYW1lIjoiYWRtaW4ifQ.jK86cKyAMwfgxPsE6mpvSE1PF99jHrppGJZdB8G9uEw
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.StudyReply",
    "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
    "study_id": "20250619164137632",
    "public_study_id": "",
    "specific_character_set": "ISO_IR 192",
    "accession_number": "ACC0012346",
    "ref_physician": "Dr. Smith (Vet)",
    "patient_id": "PET007",
    "patient_name": "Tom",
    "patient_size": "Large",
    "other_patient_ids": "",
    "other_patient_names": "",
    "owner_name": "",
    "patient_age": "5Y",
    "patient_dob": "2025-06-10T03:12:36.181739Z",
    "patient_sex": "M",
    "patient_state": "",
    "admitting_time": null,
    "priority": "",
    "reg_source": "",
    "study_description": "",
    "study_start_datetime": "2025-06-19T08:41:37.894Z",
    "study_end_datetime": null,
    "scheduled_procedure_step_start_date": null,
    "performed_physician": "",
    "study_lock": "Unlocked",
    "folder_path": "",
    "operator_name": "",
    "modality": "DX",
    "weight": 25,
    "thickness": 15,
    "length": 60,
    "patient_type": "Human",
    "study_type": "Normal",
    "mwl": "",
    "is_exported": false,
    "is_edited": false,
    "is_appended": false,
    "department": "",
    "mapped_status": false,
    "qc_result": false,
    "comment": "Patient presented with limping in right hind leg. Sedation administered.",
    "study_status": "Completed",
    "sort": 0,
    "product": "DROS",
    "series": [
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.34708.1750322497.870196",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
        "study_id": "20250619164137632",
        "procedure_id": "P0-0002",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "颅骨前后位 + 侧位",
        "performed_protocol_code_value": "P0-0002",
        "sort": 1,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.34708.1750322497.870197",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.34708.1750322497.870196",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
            "secondary_sop_uid": "",
            "study_id": "20250619164137632",
            "view_id": "View_DX_T_A_SK_AP_00",
            "view_description": "颅骨前后位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 1,
            "product": "DROS",
            "is_pre_install": true
          },
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.34708.1750322497.870198",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.34708.1750322497.870196",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
            "secondary_sop_uid": "",
            "study_id": "20250619164137632",
            "view_id": "View_DX_T_A_SK_LAT_00",
            "view_description": "颅骨左侧位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 2,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      },
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.34708.1750322497.870199",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
        "study_id": "20250619164137632",
        "procedure_id": "",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "",
        "performed_protocol_code_value": "",
        "sort": 2,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.34708.1750322497.870200",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.34708.1750322497.870199",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.34708.1750322497.870195",
            "secondary_sop_uid": "",
            "study_id": "20250619164137632",
            "view_id": "View_DX_T_A_SK_Special_04",
            "view_description": "颅骨汤氏位",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "expose_status": "Unexposed",
            "judged_status": "NotJudged",
            "send_status": "Unsent",
            "storage_status": "NotSaved",
            "sort": 3,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      }
    ]
  }
}

14 获取检查信息状态

GET /dr/api/v1/auth/study/{id}/stat

接口说明

:id -- 检查信息ID(study_id) 例:20250619164137632

地址参数(Path Variable)

参数名称 默认值 描述
id study_id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.Stat",
    "total": 3,
    "exposed": 1
  }
}

15 删除检查信息(批量)

DELETE /dr/api/v1/auth/study

接口说明

批量删除检查信息

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.Stat",
    "total": 3,
    "exposed": 1
  }
}

请求body示例

[
	"20250623110433242",
	"20250623110436888"
]

16 [Study]存储拍摄的急诊患者影像

POST /api/v1/auth/study/portrait

接口说明

存储拍摄的急诊患者影像

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
instance_uid string 1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668671 true study_id
data file true PNG图片文件

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.task.DcmPath",
    "path": "1.2.276.0.1000000.5.1.5.701601461.33458.1750830395.482043.dcm"
  }
}

17 [Study]批量添加体位和协议

POST /dr/api/v1/auth/image

接口说明

添加体位和协议

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
study_id string 20250610164933314 true
views array[object] true
⇥ view_id string View_DX_T_A_SK_Special_05 true
⇥ procedure_id string true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.CreateImageReply",
    "series": [
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.11229.1750069146.245933",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
        "study_id": "20250610164933314",
        "procedure_id": "P0-0002",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "颅骨前后位 + 侧位",
        "performed_protocol_code_value": "P0-0002",
        "sort": 5,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.11229.1750069146.245934",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.11229.1750069146.245933",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
            "secondary_sop_uid": "",
            "study_id": "20250610164933314",
            "view_id": "View_DX_T_A_SK_AP_00",
            "view_description": "颅骨前后位",
            "image_status": "QUEUING",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "sort": 8,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      },
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.11229.1750069146.245935",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
        "study_id": "20250610164933314",
        "procedure_id": "",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "",
        "performed_protocol_code_value": "",
        "sort": 6,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.11229.1750069146.245936",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.11229.1750069146.245935",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
            "secondary_sop_uid": "",
            "study_id": "20250610164933314",
            "view_id": "View_DX_T_A_SK_Special_05",
            "view_description": "颅骨斯氏位",
            "image_status": "QUEUING",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "sort": 9,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      }
    ]
  }
}

示例请求body

{
  "study_id": "20250610164933314",
  "views": [
    {
      "view_id": "View_DX_T_A_SK_AP_00",
      "procedure_id": "P0-0002"
    },
    {
      "view_id": "View_DX_T_A_SK_Special_05",
      "procedure_id": ""
    }
  ]
}

18 [Study]复制体位

POST /dr/api/v1/auth/image/copy

接口说明

复制选中的体位

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
instance_uid string 1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668671 true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.CreateImageReply",
    "series": [
      {
        "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.19649.1749545373.668669",
        "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
        "study_id": "20250610164933314",
        "procedure_id": "P0-0002",
        "body_part": "Human_SKULL",
        "performed_datetime": null,
        "performed_protocol_code_meaning": "颅骨前后位 + 侧位",
        "performed_protocol_code_value": "P0-0002",
        "sort": 1,
        "product": "DROS",
        "is_pre_install": true,
        "images": [
          {
            "sop_instance_id": "1.2.276.0.1000000.5.1.4.701601461.11229.1750068918.245928",
            "series_instance_uid": "1.2.276.0.1000000.5.1.3.701601461.19649.1749545373.668669",
            "study_instance_uid": "1.2.276.0.1000000.5.1.2.701601461.19649.1749545373.668668",
            "secondary_sop_uid": "",
            "study_id": "20250610164933314",
            "view_id": "View_DX_T_A_SK_LAT_00",
            "view_description": "颅骨左侧位",
            "image_status": "QUEUING",
            "image_file_path": "",
            "acquisition_mode": "RAD",
            "acquisition_context": null,
            "img_proc_context": null,
            "sort": 3,
            "product": "DROS",
            "is_pre_install": true
          }
        ]
      }
    ]
  }
}

19 [Study]体位重新排序

POST /dr/api/v1/auth/image/sort

接口说明

体位排序

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
study_id string 20250610164933314 true
sop_instance_uids array[string] true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}
示例请求body
{
  "study_id": "20250610164933314",
  "sop_instance_uids": [
		"1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668670",
		"1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668671",
		"1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668673",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750068819.245927",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750068918.245928",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750069085.245930",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750069085.245932",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750069146.245934",
		"1.2.276.0.1000000.5.1.4.701601461.11229.1750069146.245936"
	]
}

20 [Study]删除体位

DELETE /dr/api/v1/auth/image/:id

接口说明

删除study中的体位,:id为image的sop_instance_uid

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

示例请求 DELETE {{drurl}}/api/v1/auth/image/1.2.276.0.1000000.5.1.4.701601461.19649.1749539018.668478

21 [Device]打开设备

POST /api/v1/auth/device/open

接口说明

打开设备

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
deviceUri string DIOS/DEVICE/Generator true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

22 [Device]执行Action

POST /api/v1/auth/device/action

接口说明

执行Action

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
deviceUri string DIOS/DEVICE/Generator true
reqName string IncParam_KV true
reqParam string true
reqTransaction string true
reqClientID string true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

23 [Task]开始检查

POST /api/v1/auth/task/inspection/start

接口说明

进入曝光页面时调用,告知后端当前开始的是哪个检查

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
instance_uid string 1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668671 true sop_instance_uid

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

24 [Task]获取全局状态

GET /api/v1/auth/task/inspection/status

接口说明

获取当前发生器、探测器和后端服务的状态

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "成功",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.task.TaskGlobalStatus",
    "gen_status": "GENERATOR_STATUS_STANDBY",
    "gen_ready": true,
    "fpd_status": "DETECTOR_STATUS_STANDBY",
    "fpd_ready": true,
    "insp_status": "TASK_Ready",
    "insp_ready": true,
    "all_ready": true
  }
}
状态变化时会推送mqtt消息

Topic: MODULE/TASK/STATUS/GLOBAL

{
  "GENStatus": "GENERATOR_STATUS_STANDBY",
  "GENReady": true,
  "FPDStatus": "DETECTOR_STATUS_STANDBY",
  "FPDReady": true,
  "InspStatus": "TASK_Ready",
  "InspReady": true,
  "AllReady": true
}

25 [Task]软曝光(包含状态推送说明)

POST /api/v1/auth/task/inspection/trigger

接口说明

曝光页面调用触发曝光

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "data": {},
  "description": "Success",
  "solution": ""
}

图像处理过程会通过mqtt推送进度和状态,会按顺序推送以下状态,重点关注成功和失败状态,其他状态按需使用

  • TASK_RecvRaw 已获取原图
  • TASK_RecvMask 已获取mask
  • TASK_RecvEnhance 已完成增强
  • TASK_RecvForeground 已获取前景mask
  • TASK_RecvApply 已完成遮罩mask
  • TASK_Success 成功存储dcm
  • TASK_Failure 失败 message包含失败原因

主题(topic):**MODULE/TASK/IMGPROC/PROGRESS**

举例:(已获取原图)
{
  "message": "",
  "sop": "20250801150247",
  "status": "TASK_RecvRaw"
}

成功:dcm字段为结果文件名,thumbnail字段为缩略图

{
  "dcm": "20250801150247.dcm",
  "message": "",
  "sop": "20250801150247",
  "status": "TASK_Success",
  "thumbnail": "20250801150247.webp"
}

失败:message包含失败原因

{
  "message": "open testfile/circle_3072_3072_11.tif: The system cannot find the file specified.",
  "sop": "20250801150942",
  "status": "TASK_Failure"
}

26 [Task]接受拒绝图像

POST /api/v1/auth/task/inspection/judge

接口说明

接受或者拒绝当前图像

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
instance_uid object 1.2.276.0.1000000.5.1.4.701601461.19649.1749545373.668671 true sop_instance_uid
accept boolean false true

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

27 [Task]挂起或完成study

POST /api/v1/auth/task/inspection/leave

接口说明

挂起或完成study

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
study_id object 20250625143339389 true study_id
study_status boolean Completed true InProgress 或 Completed

响应体

● 200: OK 响应数据格式:JSON

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/google.protobuf.Empty",
    "value": {}
  }
}

28 获取dcm文件

GET /api/v1/auth/image/dcm/{dcmfilename}

接口说明

获取dcm文件

地址参数(Path Variable)

参数名称 默认值 描述
dcmfilename dcm文件名

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:File

文件

29 获取缩略图文件

GET /api/v1/auth/image/thumbnail/{filename}

接口说明

获取缩略图文件

地址参数(Path Variable)

参数名称 默认值 描述
filename 缩略图文件名

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en 或 zh
Product DROS DROS 或 VETDROS
Source Electron Electron 或 Browser 或 Android

响应体

● 200: OK 响应数据格式:File

文件