DR.md 117 KB

DR

[toc]

1 环境变量

远程开发环境

参数名 字段值
baseUrl http://101.43.219.60:7700

本地开发本环境

参数名 字段值
baseUrl http://192.168.110.13:6001

2 获取软件信息

GET /dr/api/v1/pub/software_info

接口说明

公开接口

响应体

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

{
	"code": "0x000000",
	"data": {
		"FPD": "Physics",
		"GEN": "Physics",
		"current_locale": "zh_CN",
		"default_locale": "zh_CN",
		"guest": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NjA0OTc2NDksImlkIjoyLCJuYW1lIjoiZ3Vlc3QifQ.hUV5_GOzlWKDeFioJCsHMG2IXa0oJPfNNlPsr69ypqc",
		"language": [
			"en",
			"zh"
		],
		"product": "VETDROS",
		"server": {
			"auth": {
				"build": "2025-10-08 11:06:08",
				"desc": "Authentication Server repo",
				"submodule": [
					"0baa8db0[rpc_idl]"
				],
				"version": "0.4.0-21-g4a37cc7"
			},
			"dcmtk": {
				"build": "2025-09-29 16:35:39",
				"desc": "Dcmtk Server repo",
				"submodule": [
					"c2039235[rpc_idl]"
				],
				"version": "0.4.0-2-g36bc18f"
			},
			"imgProc": {
				"build": "2025-09-29 16:36:36",
				"desc": "Img Proc Server repo",
				"submodule": [
					"d00bfca5[auto_wwwl]",
					"89fd9218[collimator_circle]",
					"c9582bbe[collimator_rect]",
					"98c510bd[enhance]",
					"6f9bf7de[enhance_v3]",
					"5905e001[rpc_idl]"
				],
				"version": "0.4.0-7-gca1c8a4"
			},
			"protocol": {
				"build": "2025-10-08 11:06:13",
				"desc": "Protocol Server repo",
				"submodule": [
					"0baa8db0[rpc_idl]"
				],
				"version": "0.4.0-8-g47990eb"
			},
			"resource": {
				"build": "2025-10-08 11:06:17",
				"desc": "Resource Server repo",
				"submodule": [
					"9725e654[rpc_idl]"
				],
				"version": "0.4.0-9-g10766e8"
			},
			"study": {
				"build": "2025-10-08 11:06:15",
				"desc": "Study Server repo",
				"submodule": [
					"8595ea2d[rpc_idl]"
				],
				"version": "0.5.0-1-g7620712"
			},
			"task": {
				"build": "2025-10-08 11:06:19",
				"desc": "Task Server repo",
				"submodule": [
					"8595ea2d[rpc_idl]"
				],
				"version": "0.4.0-11-g494849d"
			}
		},
		"sn": "19d5d2eb-8b720370-7d617b19-670dd1ae"
	},
	"description": "Success",
	"solution": ""
}

3 获取前端翻译文件

GET /dr/api/v1/pub/trans/zh_CN/zh.js

接口说明

公开接口 en_US/en.js 或 zh_CN/zh.js

响应体

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

export default {
  greeting: '你好,世界!',
  name: '张三',
  patient: '患者管理',
  register: '注册',
  tasklist: '任务清单',
  historylist: '历史清单',
  archivelist: '归档清单',
  bin: '回收站',
  outputlist: '传输清单',
  exam: '检查',
  examlist: '检查清单',
  process: '处理',
  print: '打印',
  printlist: '打印清单',
  worklist: '任务清单',
  'worklist.operationPanel': '操作面板',
  'register.basicInfoPanel': '基本信息表单区域',
  'register.protocolListPanel': '待选择协议列表区域',
  'register.selectedProtocolListPanel': '已选择协议列表区域',
  'worklistTable.patientId': '患者编号22',
  'worklistTable.name': '患者姓名',
  'worklistTable.alias': '曾用名',
  'worklistTable.englishName': '英文名',
  'worklistTable.registrationId': '登记号',
  'worklistTable.birthDate': '出生日期',
  'worklistTable.age': '年龄',
  'worklistTable.gender': '性别',
  'worklistTable.bodyType': '病人体型',
  'worklistTable.weight': '体重',
  'worklistTable.height': '身高',
  'worklistTable.pregnancyStatus': '怀孕状态',
  'worklistTable.referringDoctor': '转诊医师',
  'searchPanel.name': '按姓名查询',
  'searchPanel.patientId': '按患者编号查询',
  'searchPanel.registrationId': '按登记号查询',
  'searchPanel.startDate': '开始日期',
  'searchPanel.endDate': '结束日期',
  'searchPanel.search': '查询',
  // register.form
  'register.patientId': '患者编号',
  'register.patientId.placeholder': '请输入患者编号',
  'register.patientName': '患者姓名',
  'register.patientName.placeholder': '请输入患者姓名',
  'register.previousName': '曾用名',
  'register.previousName.placeholder': '请输入曾用名',
  'register.englishName': '英文名',
  'register.englishName.placeholder': '请输入英文名',
  'register.registrationNo': '登记号',
  'register.registrationNo.placeholder': '请输入登记号',
  'register.dateOfBirth': '出生日期',
  'register.age': '年龄',
  'register.gender': '性别',
  'register.gender.male': '男',
  'register.gender.female': '女',
  'register.bodyType': '病人体型',
  'register.bodyType.slim': '瘦',
  'register.bodyType.average': '平均',
  'register.bodyType.fat': '重',
  'register.weight': '体重',
  'register.height': '身高',
  'register.pregnancyStatus': '怀孕状态',
  'register.pregnancyStatus.yes': '是',
  'register.pregnancyStatus.no': '否',
  'register.pregnancyStatus.na': '不适用',
  'register.referringPhysician': '转诊医师',
  'register.referringPhysician.placeholder': '请输入转诊医师姓名',
  'register.bodyPart': '身体部位',
  'register.bodyPart.head': '头部',
  'register.bodyPart.chest': '胸部',
  'register.accessionNumber': '登记号',
  'register.accessionNumber.placeholder': '请输入登记号',
  // 协议列表
  'register.protocol.A': '协议A',
  'register.protocol.B': '协议B',
  'register.protocol.C': '协议C',
  'register.protocol.D': '协议D',
  'register.protocol.E': '协议E',
  'register.protocol.F': '协议F',
  // 已选协议
  'register.selectedProtocol.A': '已选协议A',
  'register.selectedProtocol.B': '已选协议B',
  'register.selectedProtocol.C': '已选协议C',
  'register.selectedProtocol.remove': '移除',
  // OutputTable
  'outputTable.name': '病人姓名',
  'outputTable.id': '病人ID',
  'outputTable.priority': '优先级',
  'outputTable.status': '状态',
  'outputTable.retryCount': '重试次数',
  'outputTable.target': '目标',
  // OutputActionPanel
  'outputAction.retry': '重试',
  'outputAction.delete': '删除',
  // BinActionPanel
  'bin.diskCapacity': '磁盘容量:',
  'bin.freeSpace': '剩余空间:',
  'bin.binCapacity': '回收站容量:',
  'bin.delete': '删除',
  'bin.restore': '恢复',
  'bin.empty': '清空',
  // DicomNodeDetailPanel
  'dicomNodeDetail.title': 'DICOM节点详情',
  'dicomNodeDetail.nodeList': 'DICOM节点列表',
  'dicomNodeDetail.selectNode': '请选择DICOM节点',
  'dicomNodeDetail.host': '主机名称',
  'dicomNodeDetail.ip': '主机IP',
  'dicomNodeDetail.port': '主机端口',
  'dicomNodeDetail.calledAET': '被叫实体名',
  'dicomNodeDetail.callingAET': '主叫实体名',
  'dicomNodeDetail.testConnection': '测试连接状态',
  'dicomNodeDetail.archive': '归档',
  // ActionPanel
  'actionPanel.deleteTask': '删除检查任务',
  'actionPanel.editPatient': '编辑患者信息',
  'actionPanel.lockTask': '锁定任务',
  'actionPanel.risSync': 'RIS同步',
  'actionPanel.reRegister': '再登记',
  'actionPanel.saveLocal': '保存本地',
  'actionPanel.importXLS': '从XLS导入',
  'actionPanel.sortList': '列表排序',
  'actionPanel.cloudShare': '云分享',
  'actionPanel.imageExchange': '图像交换',
  'actionPanel.qrPrint': '二维码打印',
  'actionPanel.send': '发送',
  'actionPanel.burn': '刻录',
  'actionPanel.export': '导出',
  'actionPanel.import': '导入',
  'Small': '小',
  'Medium': '中',
  'Large': '大',
  'workstation.free': '自由位',
  'workstation.direct': '传统位',
  'workstation.table': '卧位',
  'workstation.wall': '立位',
  // 'register.patientId': '患者编号',
  // 'register.patientId.placeholder': '请输入患者编号',
  // 'register.patientName': '患者姓名',
  // 'register.patientName.placeholder': '请输入患者姓名',
  'register.patientSize': '患者体型',
  'register.patientSize.placeholder': '请输入患者体型',
  // 'register.age': '年龄',
  // 'register.dateOfBirth': '出生日期',
  // 'register.gender': '性别',
  'register.sexNeutered': '性别绝育',
  'register.sexNeutered.placeholder': '请输入性别绝育',
  // 'register.pregnancyStatus': '怀孕状态',
  'register.chipNumber': '芯片编号',
  'register.chipNumber.placeholder': '请输入芯片编号',
  'register.variety': '品种',
  'register.variety.placeholder': '请输入品种',
  'register.patientType': '患者类型',
  'register.patientType.placeholder': '请输入患者类型',
  // 'register.referringPhysician': '转诊医师',
  // 'register.referringPhysician.placeholder': '请输入转诊医师姓名',
  'register.operatorId': '操作员ID',
  'register.operatorId.placeholder': '请输入操作员ID',
  'register.modality': '物理疗法',
  'register.modality.placeholder': '请输入物理疗法',
  // 'register.weight': '体重',
  'register.thickness': '厚度',
  // 'register.height': '身高',
  'register.studyType': '检查类型',
  'register.studyType.placeholder': '请输入检查类型',
  'register.comment': '备注',
  'register.comment.placeholder': '请输入备注',
  'worklistTable.StudyInstanceUID': '检查实例UID',
  'worklistTable.StudyID': '检查ID',
  'worklistTable.SpecificCharacterSet': '特定字符集',
  'worklistTable.AccessionNumber': '登记号',
  'worklistTable.PatientID': '患者ID',
  'worklistTable.PatientName': '患者姓名',
  'worklistTable.DisplayPatientName': '显示患者姓名',
  'worklistTable.PatientSize': '患者体型',
  'worklistTable.PatientAge': '患者年龄',
  'worklistTable.PatientSex': '患者性别',
  'worklistTable.AdmittingTime': '入院时间',
  'worklistTable.RegSource': '登记来源',
  'worklistTable.StudyStatus': '检查状态',
  'worklistTable.RequestedProcedureID': '请求的程序ID',
  'worklistTable.PerformedProtocolCodeValue': '执行的协议代码值',
  'worklistTable.PerformedProtocolCodeMeaning': '执行的协议代码含义',
  'worklistTable.PerformedProcedureStepID': '执行的程序步骤ID',
  'worklistTable.StudyDescription': '检查描述',
  'worklistTable.StudyStartDatetime': '检查开始日期时间',
  'worklistTable.ScheduledProcedureStepStartDate': '计划的程序步骤开始日期',
  'worklistTable.StudyLock': '检查锁定',
  'worklistTable.OperatorID': '操作员ID',
  'worklistTable.Modality': '模态',
  'worklistTable.Views': '视图',
  'worklistTable.Thickness': '厚度',
  'worklistTable.PatientType': '患者类型',
  'worklistTable.StudyType': '检查类型',
  'worklistTable.QRCode': '二维码',
  'worklistTable.IsExported': '是否已导出',
  'worklistTable.IsEdited': '是否已编辑',
  'worklistTable.WorkRef': '工作参考',
  'worklistTable.IsAppended': '是否已附加',
  'worklistTable.CreationTime': '创建时间',
  'worklistTable.MappedStatus': '映射状态',
  'worklistTable.IsDelete': '是否已删除',
};

4 获取多语言列表

GET /dr/api/v1/pub/language

接口说明

公开接口

响应体

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

{
	"code": "0x000000",
	"data": [
		{
			"language": "en_US",
			"display": "English"
		},
		{
			"language": "zh_CN",
			"display": "简体中文"
		}
	],
	"description": "Success",
	"solution": ""
}

5 获取用户列表

GET /dr/api/v1/pub/users

接口说明

公开接口

响应体

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

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

6 获取示意图

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

接口说明

公开接口

响应体

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

图片数据

7 登陆

POST /dr/api/v1/pub/login

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTAwNTU5MzYsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.LLveItQ_K0vvcmyN4qLQHxaOcz3EzY7ZeUQ97hR9R9w
Language en_US 或 zh_CN
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": ""
    }
}

8 修改密码

POST /api/v1/auth/settings/password

接口说明

修改当前用户自己的密码

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
}

9 获取选项

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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"
			}
		]
	}
}

10 获取配额

GET /dr/api/v1/pub/quota

请求头

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

响应体

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

{
	"code": "0x000000",
	"data": {
		"total": 50,
		"available": 50,
		"online": true,
		"overdue": false
	},
	"description": "Success",
	"solution": ""
}

total: 总配额 available: 可用配额 online: 是否可连通云端 overdue: 是否超过一个月未连通云端

11 修改系统语言

POST /api/v1/auth/manage/language

接口说明

修改系统语言

请求头

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

请求体(Request Body)

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

响应体

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

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

lang可选项: en_US zh_CN

12 获取配置项

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

接口说明

获取全局配置项

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en en_US 或 zh_CN
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 探测器仿真模式

13 管理平台

13.1 获取PACS节点列表

GET /api/v1/auth/manage/pacs

接口说明

获取PACS节点列表

请求头

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

响应体

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

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.ScpList",
    "scp": [
      {
        "id": 3,
        "name": "pacs2",
        "type": "PACS",
        "address": "192.168.1.4",
        "port": 6299,
        "aet": "testscp",
        "aec": "testscu",
        "is_enabled": true,
        "is_default": false,
        "params": {
          "a": "b"
        }
      },
      {
        "id": 1,
        "name": "pacs1",
        "type": "PACS",
        "address": "192.168.1.3",
        "port": 6299,
        "aet": "testscp",
        "aec": "testscu",
        "is_enabled": true,
        "is_default": false,
        "params": {
          "a": "b"
        }
      }
    ]
  }
}

请求示例

13.2 增加PACS节点

POST /api/v1/auth/manage/pacs

接口说明

增加PACS节点

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
name string true 长度3~16
type string PACS true 固定值 PACS
address string true IPv4地址,且不能为0.0.0.0
port number true 端口,1~65536
aet string true 被叫节点名,长度1~16
aec string true 主叫节点名,长度1~16
is_enabled boolean true
is_default boolean true

响应体

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

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

请求示例

13.3 修改PACS节点

PUT /api/v1/auth/manage/pacs/{id}

接口说明

修改PACS节点

地址参数(Path Variable)

参数名称 默认值 描述
id 节点id

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
name string true 长度3~16
type string PACS true 固定值 PACS
address string true IPv4地址,且不能为0.0.0.0
port number true 端口,1~65536
aet string true 被叫节点名,长度1~16
aec string true 主叫节点名,长度1~16
is_enabled boolean true
is_default boolean true

响应体

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

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

请求示例

13.4 删除PACS节点

DELETE /api/v1/auth/manage/pacs/{id}

接口说明

删除PACS节点

地址参数(Path Variable)

参数名称 默认值 描述
id 节点id

请求头

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

响应体

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

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

14 协议

14.1 获取患者类型

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
            }
        ]
    }
}

14.2 获取身体部位

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

接口说明

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
            }
        ]
    }
}

14.3 获取协议列表

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

接口说明

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
			}
		]
	}
}

14.4 获取体位列表

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

接口说明

获取体位列表

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
			}
		]
	}
}

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

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

接口说明

获取体位列表(通过procedure_id)

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
			}
		]
	}
}

14.6 获取体位详情

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

接口说明

根据ID获取体位详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
	}
}

14.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_US 或 zh_CN
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
	}
}

14.8 获取APR详情

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

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
	}
}

14.9 获取APR设备信息

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

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
			}
		}
	}
}

14.10 获取APR默认曝光参数

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

接口说明

根据ID获取APR详情

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
		}
	}
}

14.11 通过厚度获取APR

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

接口说明

通过厚度获取APR

地址参数(Path Variable)

参数名称 默认值 描述
thickness 厚度,取值范围1~50

请求头

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

响应体

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

{
	"code": "0x000000",
	"description": "成功",
	"solution": "",
	"data": {
		"@type": "type.googleapis.com/dr.protocol.ThicknessApr",
		"thickness": 50,
		"kV": 140,
		"mA": 0,
		"ms": 0,
		"mAs": 20
	}
}

15 传输队列

15.1 节点连通性测试

POST /api/v1/auth/scp/echo

接口说明

节点连通性测试

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
verbose boolean false true 返回详细信息
debug boolean false true 返回调试信息
address string true IPv4地址,且不能为0.0.0.0
port number true 端口,1~65536
aet string true 被叫节点名,长度1~16
aec string true 主叫节点名,长度1~16

响应体

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

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.task.EchoReply",
    "ok": true,
    "output": "I: Requesting Association\nI: Association Accepted (Max Send PDV: 16372)\nI: Sending Echo Request (MsgID 1)\nI: Received Echo Response (Success)\nI: Releasing Association\n"
  }
}

请求示例

15.2 获取PACS节点列表

GET /api/v1/auth/scp/pacs

接口说明

获取PACS节点列表

请求头

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

响应体

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

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.study.ScpList",
    "scp": [
      {
        "id": 3,
        "name": "pacs2",
        "type": "PACS",
        "address": "192.168.1.4",
        "port": 6299,
        "aet": "testscp",
        "aec": "testscu",
        "is_enabled": true,
        "is_default": false,
        "params": {
          "a": "b"
        }
      },
      {
        "id": 1,
        "name": "pacs1",
        "type": "PACS",
        "address": "192.168.1.3",
        "port": 6299,
        "aet": "testscp",
        "aec": "testscu",
        "is_enabled": true,
        "is_default": false,
        "params": {
          "a": "b"
        }
      }
    ]
  }
}

请求示例

15.3 获取发送队列(PACS)

GET /api/v1/auth/scp/store

接口说明

获取发送队列(PACS)

请求头

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

请求参数(Query Param)

参数名称 默认值 描述
start_time RFC3339Nano格式
end_time RFC3339Nano格式

响应体

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

{
	"code": "0x000000",
	"data": [
		{
			"task_id": "0199cd46-82f0-76c5-b1d3-9399668a1a05",
			"patient_name": "1update3",
			"patient_id": "1update2",
			"priority": "Medium",
			"status": "ARRIVED",
			"destination": "pacs3"
		},
		{
			"task_id": "0199cd46-460d-770e-ac8e-549939a4a7d4",
			"patient_name": "1update3",
			"patient_id": "1update2",
			"priority": "Medium",
			"status": "ARRIVED",
			"destination": "pacs3"
		},
		{
			"task_id": "0199cd45-dff6-70e4-92e3-2339f0bee57a",
			"patient_name": "1update3",
			"patient_id": "1update2",
			"priority": "Medium",
			"status": "ARRIVED",
			"destination": "pacs3"
		}
	],
	"description": "Success",
	"solution": ""
}

请求示例

15.4 删除发送任务

DELETE /api/v1/auth/scp/task

接口说明

删除发送任务

请求头

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

响应体

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

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

请求示例

15.5 发送图像

POST /api/v1/auth/scp/store

接口说明

发送图像

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
sop_instance_uid string true 图像id
pacs_name string true pacs节点名称

响应体

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

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.task.StoreReply",
    "ok": true,
    "output": "...D: ======================= END DIMSE MESSAGE =======================\nI: Releasing Association\n"
  }
}

请求示例

15.6 重试发送任务

POST /api/v1/auth/scp/store_reply

接口说明

重试发送任务

请求头

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

请求体(Request Body)

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

响应体

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

{
  "code": "0x000000",
  "description": "Success",
  "solution": "",
  "data": {
    "@type": "type.googleapis.com/dr.task.StoreReply",
    "ok": true,
    "output": "...D: ======================= END DIMSE MESSAGE =======================\nI: Releasing Association\n"
  }
}

请求示例

16 登记检查信息

POST /dr/api/v1/auth/study

接口说明

登记检查信息

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
					}
				]
			}
		]
	}
}

17 变更登记信息

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

接口说明

变更检查信息 :id 任务ID

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
					}
				]
			}
		]
	}
}

18 锁定检查信息(不可删除)

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

接口说明

锁定检查信息(不可删除) :id 任务ID

地址参数(Path Variable)

参数名称 默认值 描述
id

请求头

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

请求体(Request Body)

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

响应体

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

{
	"code": "0x000000",
	"data": {},
	"description": "成功",
	"solution": ""
}

lock可选项 Locked Unlocked

19 获取检查信息列表

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

接口说明

获取检查信息列表

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTYzOTExNjUsImlkIjozLCJuYW1lIjoiYWRtaW4ifQ.ivwjTzeMXLwJry1iHN8a9hV90ftSgDZF6n8lEfOtTOQ
Language en en_US 或 zh_CN
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
			}
		]
	}
}

20 获取检查信息

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

接口说明

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

地址参数(Path Variable)

参数名称 默认值 描述
id study_id

请求头

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

响应体

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

{
	"code": "0x000000",
	"description": "成功",
	"solution": "",
	"data": {
		"@type": "type.googleapis.com/dr.study.Study",
		"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
		"study_id": "250929163817805",
		"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": "008Y",
		"patient_dob": "2025-06-10T03:12:36.181739Z",
		"patient_sex": "M",
		"sex_neutered": "",
		"pregnancy_status": "",
		"patient_state": "",
		"admitting_time": null,
		"priority": "",
		"reg_source": "",
		"study_description": "",
		"study_start_datetime": "2025-09-29T08:38:17.283651Z",
		"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": "一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四",
		"study_status": "Arrived",
		"sort": 0,
		"product": "DROS",
		"create_time": "2025-09-29T08:38:17.353598Z",
		"series": [
			{
				"series_instance_uid": "2.25.156.999999.0000.1.3.8323328.269954.1759135097.323785",
				"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
				"study_id": "250929163817805",
				"procedure_id": "P0-0002",
				"patient_type": "Human",
				"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,
				"create_time": "2025-09-29T08:38:17.359308Z",
				"images": [
					{
						"sop_instance_uid": "2.25.156.999999.0000.1.4.8323328.269954.1759135097.323786",
						"series_instance_uid": "2.25.156.999999.0000.1.3.8323328.269954.1759135097.323785",
						"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
						"secondary_sop_uid": "",
						"study_id": "250929163817805",
						"view_id": "View_DX_T_A_SK_AP_00",
						"view_description": "颅骨前后位",
						"patient_type": "Human",
						"body_part_id": "Human_SKULL",
						"anatomic_region": "Skull",
						"image_type": "expose",
						"image_file_path": "",
						"image_file": "",
						"thumbnail_file": "",
						"acquisition_mode": "RAD",
						"acquisition_context": null,
						"img_proc_context": null,
						"comment": "",
						"expose_status": "Unexposed",
						"expose_time": null,
						"judged_status": "NotJudged",
						"send_status": "Unsent",
						"export_status": "NotExported",
						"storage_status": "NotSaved",
						"ticket": "",
						"sort": 1,
						"product": "DROS",
						"is_pre_install": true,
						"create_time": "2025-09-29T08:38:17.361002Z"
					},
					{
						"sop_instance_uid": "2.25.156.999999.0000.1.4.8323328.269954.1759135097.323787",
						"series_instance_uid": "2.25.156.999999.0000.1.3.8323328.269954.1759135097.323785",
						"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
						"secondary_sop_uid": "",
						"study_id": "250929163817805",
						"view_id": "View_DX_T_A_SK_LAT_00",
						"view_description": "颅骨左侧位",
						"patient_type": "Human",
						"body_part_id": "Human_SKULL",
						"anatomic_region": "Skull",
						"image_type": "expose",
						"image_file_path": "",
						"image_file": "",
						"thumbnail_file": "",
						"acquisition_mode": "RAD",
						"acquisition_context": null,
						"img_proc_context": null,
						"comment": "",
						"expose_status": "Unexposed",
						"expose_time": null,
						"judged_status": "NotJudged",
						"send_status": "Unsent",
						"export_status": "NotExported",
						"storage_status": "NotSaved",
						"ticket": "",
						"sort": 2,
						"product": "DROS",
						"is_pre_install": true,
						"create_time": "2025-09-29T08:38:17.362195Z"
					}
				]
			},
			{
				"series_instance_uid": "2.25.156.999999.0000.1.3.8323328.269954.1759135097.323788",
				"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
				"study_id": "250929163817805",
				"procedure_id": "",
				"patient_type": "Human",
				"body_part": "Human_UPPER LIMB",
				"performed_datetime": null,
				"performed_protocol_code_meaning": "",
				"performed_protocol_code_value": "",
				"sort": 2,
				"product": "DROS",
				"is_pre_install": true,
				"create_time": "2025-09-29T08:38:17.360412Z",
				"images": [
					{
						"sop_instance_uid": "2.25.156.999999.0000.1.4.8323328.269954.1759135097.323789",
						"series_instance_uid": "2.25.156.999999.0000.1.3.8323328.269954.1759135097.323788",
						"study_instance_uid": "2.25.156.999999.0000.1.2.8323328.269954.1759135097.323784",
						"secondary_sop_uid": "",
						"study_id": "250929163817805",
						"view_id": "View_DX_T_A_HD_PA_02",
						"view_description": "左手后前位",
						"patient_type": "Human",
						"body_part_id": "Human_UPPER LIMB",
						"anatomic_region": "Hand",
						"image_type": "expose",
						"image_file_path": "",
						"image_file": "",
						"thumbnail_file": "",
						"acquisition_mode": "RAD",
						"acquisition_context": null,
						"img_proc_context": null,
						"comment": "",
						"expose_status": "Unexposed",
						"expose_time": null,
						"judged_status": "NotJudged",
						"send_status": "Unsent",
						"export_status": "NotExported",
						"storage_status": "NotSaved",
						"ticket": "",
						"sort": 3,
						"product": "DROS",
						"is_pre_install": true,
						"create_time": "2025-09-29T08:38:17.362846Z"
					}
				]
			}
		]
	}
}

21 获取检查信息状态

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_US 或 zh_CN
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
	}
}

22 删除检查信息(批量)

DELETE /dr/api/v1/auth/study

接口说明

批量删除检查信息

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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"
]

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

POST /api/v1/auth/study/portrait

接口说明

存储拍摄的急诊患者影像

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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"
	}
}

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

POST /dr/api/v1/auth/image

接口说明

添加体位和协议

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": ""
    }
  ]
}

25 [Study]复制体位

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

接口说明

复制选中的体位

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
					}
				]
			}
		]
	}
}

26 [Study]体位重新排序

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

接口说明

体位排序

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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"
	]
}

27 [Study]删除体位

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

接口说明

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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

28 [Study]存储后处理dcm

POST /api/v1/auth/image/post_proc

接口说明

存储后处理dcm

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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图片文件
window_center int32 true 窗位
window_wdith int32 true 窗宽

响应体

● 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"
	}
}

29 报告预览

POST /dr/api/v1/auth/report/preview

接口说明

报告预览

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
headers object true
⇥ name object true 姓名
⇥ sex string true 性别
⇥ age string true 年龄
⇥ medical_record_number string true 病历号(人医)
⇥ hospitalization_number string true 住院号(人医)
⇥ bed_number string true 床号(人医)
⇥ requesting_department string true 申请科室
⇥ inspection_number string true 检查号
⇥ inspection_method string true 检查描述
⇥ patient_type string true 宠物类别(宠物)
⇥ owner_name string true 主人姓名(宠物)
findings string true 影像所见
impression string true 诊断意见
radiologist string true 报告医师
review_physician string true 审核医师

响应体

● 200: OK 响应数据格式:File 请求示例(人医)

{
	"headers": {
		"name": "张三",
		"sex": "男",
		"age": "18",
		"medical_record_number": "病历号",
		"hospitalization_number": "住院号",
		"bed_number": "床号",
		"requesting_department": "申请科室",
		"inspection_number": "检查号",
		"inspection_method": "颅脑CT平扫,胸部CT平扫,盆腔CT平扫,CT平扫-薄层扫描(加收)[头颅CT,胸部CT,骨盆CT+三维重建]"
	},
	"findings": "脑干及双侧基底节区见斑片状低密度影,脑室系统扩张,脑沟加深、脑裂增宽,中线结构居中,颅骨骨质结构完整。\n胸廓对称,两肺纹理增多,两下肺见多发索条影,两肺门无增大,气管支气管通畅,纵隔未见肿大淋巴结,心影增大,心包见弧形液体密度影,胸腔内见不规则胃组织影,双侧胸膜肥厚。胸8椎体变扁。\n右侧股骨粗隆间见骨质断裂影,断端错位成角,髋关节对位尚可,邻近软肿胀肿胀,右侧骶髂关节间隙较对侧增宽,左髋关节呈置换术后改变,左侧耻骨上下支变形,余未见明显骨折。",
	"impression": "1.脑千及双侧基底节区腔隙性梗塞灶,脑萎缩。\n2.两下肺多发索条影;心影增大,心包积液;双侧胸膜肥厚粘连;食管裂孔疝;胸8椎体变扁,请结合临床及其他检查。\n3.右侧股骨粗隆间骨折;右侧骶髂关节间隙较对侧增宽,请结合临床。\n4.左髋关节术后改变;左侧耻骨上下支陈旧外伤改变。",
	"radiologist": "Tom",
	"review_physician": "Jerry"
}

返回示例  微信图片_20250919094641_103_2.png 宠物示例:

30 保存报告

POST /dr/api/v1/auth/study/{id}/report

接口说明

保存报告

地址参数(Path Variable)

参数名称 默认值 描述
id studyID

请求头

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

请求体(Request Body)

参数名称 数据类型 默认值 不为空 描述
headers object true
⇥ name object true 姓名
⇥ sex string true 性别
⇥ age string true 年龄
⇥ medical_record_number string true 病历号
⇥ hospitalization_number string true 住院号
⇥ bed_number string true 床号
⇥ requesting_department string true 申请科室
⇥ inspection_number string true 检查号
⇥ inspection_method string true 检查描述
findings string true 影像所见
impression string true 诊断意见
radiologist string true 报告医师
review_physician string true 审核医师

响应体

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

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

请求示例

{
	"headers": {
		"name": "张三",
		"sex": "男",
		"age": "18",
		"medical_record_number": "病历号",
		"hospitalization_number": "住院号",
		"bed_number": "床号",
		"requesting_department": "申请科室",
		"inspection_number": "检查号",
		"inspection_method": "颅脑CT平扫,胸部CT平扫,盆腔CT平扫,CT平扫-薄层扫描(加收)[头颅CT,胸部CT,骨盆CT+三维重建]"
	},
	"findings": "脑干及双侧基底节区见斑片状低密度影,脑室系统扩张,脑沟加深、脑裂增宽,中线结构居中,颅骨骨质结构完整。\n胸廓对称,两肺纹理增多,两下肺见多发索条影,两肺门无增大,气管支气管通畅,纵隔未见肿大淋巴结,心影增大,心包见弧形液体密度影,胸腔内见不规则胃组织影,双侧胸膜肥厚。胸8椎体变扁。\n右侧股骨粗隆间见骨质断裂影,断端错位成角,髋关节对位尚可,邻近软肿胀肿胀,右侧骶髂关节间隙较对侧增宽,左髋关节呈置换术后改变,左侧耻骨上下支变形,余未见明显骨折。",
	"impression": "1.脑千及双侧基底节区腔隙性梗塞灶,脑萎缩。\n2.两下肺多发索条影;心影增大,心包积液;双侧胸膜肥厚粘连;食管裂孔疝;胸8椎体变扁,请结合临床及其他检查。\n3.右侧股骨粗隆间骨折;右侧骶髂关节间隙较对侧增宽,请结合临床。\n4.左髋关节术后改变;左侧耻骨上下支陈旧外伤改变。",
	"radiologist": "Tom",
	"review_physician": "Jerry"
}

示例

31 获取报告

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

接口说明

获取报告

地址参数(Path Variable)

参数名称 默认值 描述
id studyID

请求头

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

响应体

● 200: OK 响应数据格式:File 请求示例 /api/v1/auth/study/20250912063732016/report

32 [Device]打开设备

POST /api/v1/auth/device/open

接口说明

打开设备

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
	}
}

33 [Device]执行Get

POST /api/v1/auth/device/get

接口说明

执行Get

请求头

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

请求体(Request Body)

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

响应体

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

{
	"code": "0x000000",
	"data": "{\"SupportSyncMode\":{\"Level\":\"Public\",\"DescKey\":\"SupportSyncMode\",\"Value\":{\"SingleRAD\":{\"HWS\":\"1\",\"CMD\":\"2\",\"FRE\":\"3\"},\"SerialRAD\":{\"HWS\":\"4\",\"CMD\":\"5\",\"FRE\":\"6\"},\"Fluoro\":{\"HWS\":\"7\",\"CMD\":\"8\",\"FRE\":\"9\"},\"DDR\":{\"HWS\":\"10\",\"CMD\":\"11\",\"FRE\":\"12\"},\"DualEnergy\":{\"HWS\":\"13\",\"CMD\":\"14\",\"FRE\":\"15\"},\"TOMO\":{\"HWS\":\"16\",\"CMD\":\"17\",\"FRE\":\"18\"},\"Stitch\":{\"HWS\":\"19\",\"CMD\":\"20\",\"FRE\":\"21\"}}},\"IsDemo\":{\"Level\":\"Public\",\"DescKey\":\"IsDemo\",\"Value\":\"1\"},\"GENERATORSTATUS\":{\"Level\":\"Public\",\"DescKey\":\"GENERATORSTATUS\",\"Value\":\"4\"},\"GENERATORSYNCSTATE\":{\"Level\":\"Public\",\"DescKey\":\"GENERATORSYNCSTATE\",\"Value\":\"0\"},\"ErrorList\":{\"Level\":\"Public\",\"DescKey\":\"ErrorList\",\"Value\":\"\"},\"TUBEHEAT\":{\"Level\":\"Public\",\"DescKey\":\"TUBEHEAT\",\"Value\":\"0\"},\"TubeAngle\":{\"Level\":\"Public\",\"DescKey\":\"TubeAngle\",\"Value\":\"0.000000\"},\"FOCUSSIZE\":{\"Level\":\"ZSKK\",\"DescKey\":\"FOCUSSIZE\",\"Value\":\"0.1\"},\"TubeTargetMaterial\":{\"Level\":\"ZSKK\",\"DescKey\":\"TubeTargetMaterial\",\"Value\":\"MO\"},\"BatteryChargeState\":{\"Level\":\"Public\",\"DescKey\":\"BatteryChargeState\",\"Value\":\"0\"},\"BatteryPowerState\":{\"Level\":\"Public\",\"DescKey\":\"BatteryPowerState\",\"Value\":\"2\"},\"MaxPower\":{\"Level\":\"Private\",\"DescKey\":\"kV*mA\",\"Value\":\"5\"},\"MaxHeatContent\":{\"Level\":\"Private\",\"DescKey\":\"kV*mAs\",\"Value\":\"225\"},\"KV\":{\"Level\":\"Public\",\"DescKey\":\"KV\",\"min\":\"0.00\",\"max\":\"150.00\",\"Value\":\"0.000000\"},\"MA\":{\"Level\":\"Public\",\"DescKey\":\"MA\",\"min\":\"0.00\",\"max\":\"1000.00\",\"Value\":\"0.000000\"},\"MS\":{\"Level\":\"Public\",\"DescKey\":\"MS\",\"min\":\"0.00\",\"max\":\"10000.00\",\"Value\":\"0.000000\"},\"MAS\":{\"Level\":\"Public\",\"DescKey\":\"MAS\",\"min\":\"0.00\",\"max\":\"1000.00\",\"Value\":\"0.000000\"},\"FOCUS\":{\"Level\":\"Public\",\"DescKey\":\"FOCUS\",\"Value\":\"1\"},\"WORKSTATION\":{\"Level\":\"Public\",\"DescKey\":\"WORKSTATION\",\"Value\":\"1\"},\"AECDENSITY\":{\"Level\":\"Public\",\"DescKey\":\"AECDENSITY\",\"Value\":\"0\"},\"AECFIELD\":{\"Level\":\"Public\",\"DescKey\":\"AECFIELD\",\"Value\":\"0\"},\"AECFILM\":{\"Level\":\"Public\",\"DescKey\":\"AECFILM\",\"Value\":\"0\"},\"TECHMODE\":{\"Level\":\"Public\",\"DescKey\":\"TECHMODE\",\"Value\":\"1\"},\"FrameRate\":{\"Level\":\"Public\",\"DescKey\":\"FrameRate\",\"Value\":\"0.000000\"},\"EXAMMODE\":{\"Level\":\"Public\",\"DescKey\":\"EXAMMODE\",\"Value\":\"MANUAL\"},\"EXPMODE\":{\"Level\":\"Public\",\"DescKey\":\"EXPMODE\",\"Value\":\"Single\"},\"POSTKV\":{\"Level\":\"Public\",\"DescKey\":\"POSTKV\",\"Value\":\"0.000000\"},\"POSTMA\":{\"Level\":\"Public\",\"DescKey\":\"POSTMA\",\"Value\":\"0.000000\"},\"POSTMAS\":{\"Level\":\"Public\",\"DescKey\":\"POSTMAS\",\"Value\":\"0.000000\"},\"POSTMS\":{\"Level\":\"Public\",\"DescKey\":\"POSTMS\",\"Value\":\"0.000000\"},\"FLUKV\":{\"Level\":\"Public\",\"DescKey\":\"FLUKV\",\"Value\":\"0.000000\"},\"FLUMA\":{\"Level\":\"Public\",\"DescKey\":\"FLUMA\",\"Value\":\"0.000000\"},\"FLUMS\":{\"Level\":\"Public\",\"DescKey\":\"FLUMS\",\"Value\":\"0.000000\"},\"FLUMode\":{\"Level\":\"Public\",\"DescKey\":\"FLUMode\",\"Value\":\"0\"},\"FLUPPS\":{\"Level\":\"Public\",\"DescKey\":\"FLUPPS\",\"Value\":\"0\"},\"FLUAccTime\":{\"Level\":\"Public\",\"DescKey\":\"FLUAccTime\",\"Value\":\"2.000000\"},\"FLUIntTime\":{\"Level\":\"Public\",\"DescKey\":\"FLUIntTime\",\"Value\":\"2.000000\"},\"FLUpulseWidth\":{\"Level\":\"Public\",\"DescKey\":\"FLUpulseWidth\",\"Value\":\"0.00\"},\"FLUABSStatus\":{\"Level\":\"Public\",\"DescKey\":\"FLUABSStatus\",\"Value\":\"0.00\"},\"FLUDoseLevel\":{\"Level\":\"Public\",\"DescKey\":\"FLUDoseLevel\",\"Value\":\"0.00\"},\"FLUCurve\":{\"Level\":\"Public\",\"DescKey\":\"FLUCurve\",\"Value\":\"0.00\"},\"FLUCineKV\":{\"Level\":\"Public\",\"DescKey\":\"FLUCineKV\",\"Value\":\"0.00\"},\"FLUCineMA\":{\"Level\":\"Public\",\"DescKey\":\"FLUCineMA\",\"Value\":\"0.00\"},\"FLUCineMS\":{\"Level\":\"Public\",\"DescKey\":\"FLUCineMS\",\"Value\":\"0.00\"},\"connections\":{\"Level\":\"Public\",\"DescKey\":\"connections\",\"Value\":{\"type\":\"COM\",\"port\":\"COM1\",\"baudrate\":\"19200\",\"bytesize\":\"8\",\"parity\":\"0\",\"stopbits\":\"0\"}},\"FocusSmall\":{\"Level\":\"ZSKK\",\"DescKey\":\"FocusSmall\",\"Value\":\"0.1\"},\"FocusLarge\":{\"Level\":\"ZSKK\",\"DescKey\":\"FocusLarge\",\"Value\":\"0.3\"},\"logEnable\":{\"Level\":\"Private\",\"DescKey\":\"logEnable\",\"Value\":\"1\"},\"loopEnable\":{\"Level\":\"Private\",\"DescKey\":\"loopEnable\",\"Value\":\"1\"},\"loopTime\":{\"Level\":\"Private\",\"DescKey\":\"loopTime\",\"Value\":\"2000\"},\"ReConnect\":{\"Level\":\"Private\",\"DescKey\":\"ReConnect\",\"Value\":\"1\"},\"WSTable\":{\"Level\":\"ZSKK\",\"DescKey\":\"WSTable\",\"Value\":\"1\"},\"WSWall\":{\"Level\":\"ZSKK\",\"DescKey\":\"WSWall\",\"Value\":\"1\"},\"WSFree\":{\"Level\":\"ZSKK\",\"DescKey\":\"WSFree\",\"Value\":\"1\"},\"WSTomo\":{\"Level\":\"ZSKK\",\"DescKey\":\"WSTomo\",\"Value\":\"1\"},\"WSConventional\":{\"Level\":\"ZSKK\",\"DescKey\":\"WSConventional\",\"Value\":\"1\"},\"SYNTable\":{\"Level\":\"ZSKK\",\"DescKey\":\"SYNTable\",\"Value\":\"1\"},\"SYNWall\":{\"Level\":\"ZSKK\",\"DescKey\":\"SYNWall\",\"Value\":\"1\"},\"SYNFree\":{\"Level\":\"ZSKK\",\"DescKey\":\"SYNFree\",\"Value\":\"1\"},\"SYNTomo\":{\"Level\":\"ZSKK\",\"DescKey\":\"SYNTomo\",\"Value\":\"1\"},\"SYNConventional\":{\"Level\":\"ZSKK\",\"DescKey\":\"SYNConventional\",\"Value\":\"1\"},\"DeviceNumber\":{\"Level\":\"Private\",\"DescKey\":\"DeviceNumber\",\"Value\":\"3\"},\"StateChangeInterval\":{\"Level\":\"Private\",\"DescKey\":\"StateChangeInterval\",\"Value\":\"200\"},\"AutoExpActWaitTime\":{\"Level\":\"Private\",\"DescKey\":\"AutoExpActWaitTime\",\"Value\":\"100\"},\"Manufacturer\":{\"Level\":\"Public\",\"DescKey\":\"Manufacturer\",\"Value\":\"ZSKK\"},\"Model\":{\"Level\":\"Public\",\"DescKey\":\"Model\",\"Value\":\"demo\"},\"Modality\":{\"Level\":\"Public\",\"DescKey\":\"Modality\",\"Value\":\"demo\"}}\n",
	"description": "成功",
	"solution": ""
}

34 [Device]执行Action

POST /api/v1/auth/device/action

接口说明

执行Action

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
	}
}

35 [Task]开始检查

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

接口说明

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

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
	}
}

36 [Task]获取全局状态

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

接口说明

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

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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
}

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

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

接口说明

曝光页面调用触发曝光

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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"
}

38 [Task]接受拒绝图像

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

接口说明

接受或者拒绝当前图像

地址参数(Path Variable)

参数名称 默认值 描述
drurl

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
	}
}

39 [Task]挂起或完成study

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

接口说明

挂起或完成study

请求头

参数名称 默认值 描述
Authorization Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTEyNzc5NzAsImlkIjoxLCJuYW1lIjoiYWRtaW4ifQ.ooTGwBXaNhtunbKbpqteWbjDwJLjnRmSIl80r5dp1pY
Language en_US 或 zh_CN
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": {}
	}
}

40 获取dcm文件

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

接口说明

获取dcm文件

地址参数(Path Variable)

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

请求头

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

响应体

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

文件

41 获取缩略图文件

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

接口说明

获取缩略图文件

地址参数(Path Variable)

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

请求头

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

响应体

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

文件