Skip to content

迪迅实验室 LIS 系统 API 文档

1. 基础说明

1.1 BaseUrl

1.2 请求方式

除了登录接口,其他接口需要在请求 header 中添加 Tenant-IdAuthorization 两个参数。例如:

  • Tenant-Id: 1
  • Authorization: Bearer 4f82b35998f64e7fb8fc058672cbce43

其中 Tenant-Id 固定为 1Authorization 为登录接口返回的 accessToken

1.3 响应格式

迪迅实验室的返回体格式如下

  • code:状态码,0 表示成功,其他表示失败。每一个失败的场景对应一个失败码。
  • data:返回数据,根据接口不同,数据结构不同。
  • msg:请求失败时, msg 将有具体的说明。

例如,请求成功时,返回体如下:

json
{
  "code": 0,
  "data": {
    "hello": "world"
  },
  "msg": ""
}

例如,请求失败时,返回体如下:

json
{
  "code": 1014100001,
  "msg": "样本已签收"
}

2. 名词解释 (Glossary)

在调用和理解本 API 文档前,建议先了解系统中几个核心的领域模型。以下核心对象在后端 lab-server 中均有对应的 Java 实体类(例如 LtmSampleDOLtmProductDO 等),它们构成了整个 LIS 系统的底层数据流转骨架。

2.1 Sample (样本)

代表实验室接收到的一个具体物理检测样本。

  • 核心属性id (系统主键)、code (样本内部编号)、barcode (样本条形码)、sampleType (样本类型,如静脉血)。
  • 业务意义:一切检测流程的源头。在系统中,通过扫码或导入录入样本后,它将作为后续所有检测任务的基础载体。

2.2 Good (检测项目)

代表实验室可提供的一项标准检测服务或检测套餐(例如“精神类疾病易感基因检测”或“食物特异性抗体 IgG 4 项”)。

  • 核心属性idcodenamepipelineId (绑定的检测流水线)、reportTemplate (绑定的报告模板)。
  • 业务意义:属于基础配置数据(字典项)。它规定了这个项目需要经过哪条流水线,以及最终出具什么样式的报告。

2.3 Product (检测任务 / 产品实例)

代表“某个 样本 (Sample) 正在进行的某项 检测项目 (Good)” 的实例化任务。

  • 核心属性idsampleId (关联的样本)、goodId (关联的检测项目)、status (检测状态)、rawDataFileId (关联的原始数据文件 ID)。
  • 业务意义:它是 SampleGood 的结合体。当一个样本被要求做某项检测时,系统会生成一个 Product。流水线的流转、工单的分配、检测数据和文件的挂载,都是以 Product 为主要维度的。

2.4 Indicator (检测指标)

代表某项具体的化验指标基础数据(例如“免疫球蛋白G1”、“白细胞计数”)。

  • 核心属性idcodenameunit (单位)、dataType (数据类型,如数值型、枚举型)。
  • 业务意义:属于基础配置数据。一个 Good (检测项目) 通常会包含多个 Indicator (检测指标)。

2.5 IndicatorRecord (指标记录 / 检测结果)

代表“某个 检测任务 (Product) 中,某项 检测指标 (Indicator) 实际测得的结果数据”。

  • 核心属性idproductId (关联的检测任务)、indicatorId (关联的指标字典)、value (实际测得的值)、result (结果判定,如偏高、偏低、正常)。
  • 业务意义:它是 ProductIndicator 的结合体。对于免疫等会产生明细数值的流水线,检测完成后系统会批量生成多条 IndicatorRecord 记录。

3. 常见业务流程说明

3.1 样本结果查询流程(指标记录或原始文件)

在实际业务中,通常需要根据样本内部编号(code)查询最终的检测结果(指标记录 indicator-record 或原始文件 Excel)。由于底层数据存在关联关系,完整的调用流程如下:

1. 通过“样本编号”获取“样本系统 ID”

首先需要将业务侧的 code 转换成系统内部主键 id

  • 接口GET /admin-api/ltm/sample/page
  • 参数:传入 pageNopageSize,并在 code 参数中传入样本内部编号(支持通过逗号、空格或换行符分隔传入多个)。
  • 提取数据:从响应体的 data.list 数组中,提取所需样本的 id 字段(即后续的 sampleId)。

2. 通过“样本 ID”查询“检测任务列表”

一个样本可能关联一个或多个检测任务(产品),需获取任务详情以确定是否有指标数据或原始文件。

  • 接口GET /admin-api/ltm/product/list
  • 参数:传入上一步获取的 sampleId
  • 提取数据:从响应体的 data 数组中,提取检测任务对象的 id(即 productId)和 rawDataFileId(原始数据文件 ID)。

3. 根据业务类型分流获取最终结果

根据检测流水线的不同,结果的形式可能不同(例如免疫检测有具体指标,而基因检测通常只有原始 Excel 文件),需分情况处理:

  • 分支 A:获取具体指标记录(如免疫检测、mRNA 等)

    • 接口GET /admin-api/ltm/indicator-record/list
    • 参数:传入第二步获取的 productId(或使用 productIds 批量查询)。
    • 结果:响应的 data 数组即为各项指标的具体记录数值(value)、异常状态(result)及关联的指标基础信息。
  • 分支 B:获取原始 Excel 文件(如基因检测等)

    • 条件:第二步获取的任务对象中 rawDataFileId 不为空。
    • 接口GET /admin-api/infra/file/get
    • 参数:传入 id 为提取到的 rawDataFileId
    • 结果:响应体中的 data.url 字段即为该原始 Excel 文件的下载或查看地址(通常为预签名的 OSS 临时访问 URL)。

4. 流程全景图

text
用户输入 [样本内部编号 code 列表]


调用 /admin-api/ltm/sample/page

      ├─ 提取出 => [样本主键 ID (sampleId)]


调用 /admin-api/ltm/product/list (传入 sampleId)

      ├─ 提取出 => 任务ID (productId)
      ├─ 提取出 => 原始文件ID (rawDataFileId)


 业务判断(获取指标记录 还是 原始文件?)

   ├─👉 【获取指标】调用 /admin-api/ltm/indicator-record/list (传入 productId)
   │       ┗━ 获得各项指标具体记录数值

   └─👉 【获取文件】调用 /admin-api/infra/file/get (传入 rawDataFileId)
           ┗━ 获得文件的真实下载地址 URL

4. 核心业务 API 列表

本章节包含了与样本流转、检测结果查询等核心业务强相关的接口。

4.1 分页查询样本列表

该接口用于分页查询实验室样本列表,支持多条件联合筛选,并返回当前页的样本基础信息、关联的检测项目、送检人以及送检机构等详细数据。

请求地址

URL:/admin-api/ltm/sample/page

请求方式

GET

请求参数

参数名类型必传说明示例
pageNoInteger请求的当前页码1
pageSizeInteger每页显示的记录条数10
codeString样本编号。支持传入通过逗号、空格或换行符分隔的多个编号,用于批量精准查询"200100419"
barcodeString样本条形码。支持传入通过逗号、空格或换行符分隔的多个条码,用于批量查询"20260416021"
purposesArray<Integer>样本用途筛选(1-检验,2-科研,3-质控)[1, 2]
userIdLong送检人 ID10504
groupIdLong机构 ID334
sampleTypeString样本类型"venous_blood"

响应参数

参数名类型说明示例
codeInteger状态码,0 表示成功,其他表示失败0
dataObject包含分页主体数据的对象-
data.totalInteger符合查询条件的数据总条数2
data.listArray<Object>当前页返回的样本数据列表-
data.list[].idLong样本的系统内部主键 ID10946
data.list[].codeString样本的系统编号"200100419"
data.list[].barcodeString打印在实体样本管上的条形码"20260416021"
data.list[].userIdLong关联的送检人(患者)的用户 ID10504
data.list[].sampleTypeString样本类型"venous_blood"
data.list[].sampleTimeLong实际采样的时间戳null
data.list[].receiveTimeLong实验室接收(签收)样本的时间戳1776268800000
data.list[].statusString样本的质量状态(如 normal 合格、溶血等)"normal"
data.list[].stateInteger样本的流程状态(1 代表正常签收,2 代表拒收)1
data.list[].purposeInteger当前样本的具体用途(1-检验,2-科研,3-质控)1
data.list[].originIdString外部来源系统的原始 ID"22"
data.list[].createTimeLong该样本记录在系统中的创建时间戳1776391563000
data.list[].goodsArray<Object>关联的检测项目列表-
data.list[].goods[].idLong检测项目的主键 ID58
data.list[].goods[].codeString检测项目的代码"2010"
data.list[].goods[].cateString项目大类"GENE"
data.list[].goods[].nameString具体的检测项目名称"精神类疾病易感基因+药物基因检测(NGS)"
data.list[].goods[].turnaroundDaysInteger检测周期(TAT)21
data.list[].goods[].pipelineIdLong对应的检测流水线 ID7
data.list[].goods[].sampleTypesArray<String>支持的标本类型["venous_blood"]
data.list[].goods[].reportTemplateString对应的报告模板标识"MentalIllnessGenes"
data.list[].goods[].reportNameString正式的报告名称"神经精神类疾病基因检测报告"
data.list[].memberObject送检人/患者信息-
data.list[].member.nameString患者姓名"黄琳"
data.list[].member.codeString患者的唯一病历号/就诊号"00123541/20260303/01"
data.list[].member.sexInteger性别(1 为男,2 为女)1
data.list[].member.mobileString联系电话"18969018021"
data.list[].member.birthdayLong出生日期时间戳-590450037000
data.list[].groupObject送检机构/医院信息-
data.list[].group.idLong机构主键 ID334
data.list[].group.nameString送检单位名称"杭州市第七人民医院"
data.list[].group.apiEnabledBoolean是否开启了与本系统的外部 API 对接能力false
msgString错误或提示信息""

请求返回示例:

json
{
  "code": 0,
  "data": {
    "list": [
      {
        "id": 10946,
        "code": 200100419,
        "barcode": "20260416021",
        "userId": 10504,
        "sampleType": "venous_blood",
        "sampleTime": null,
        "receiveTime": 1776268800000,
        "status": "normal",
        "state": 1,
        "purpose": 1,
        "remark": "",
        "images": null,
        "goods": [
          {
            "id": 58,
            "code": "2010",
            "cate": "GENE",
            "name": "精神类疾病易感基因+药物基因检测(NGS)",
            "description": "",
            "turnaroundDays": 21,
            "pipelineId": 7,
            "sampleTypes": [
              "venous_blood",
              "nucleic_acid_dna",
              "saliva",
              "peripheral_blood",
              "oral_mucosa_cells"
            ],
            "sort": 10,
            "reportTemplate": "MentalIllnessGenes",
            "reportName": "神经精神类疾病基因检测报告",
            "createTime": 1750408523000,
            "updateTime": 1752661785000,
            "pipeline": null,
            "props": {
              "grades": []
            },
            "valid": true,
            "strict": true,
            "subGoods": null
          }
        ],
        "member": {
          "id": 10504,
          "nickname": "黄琳",
          "name": "黄琳",
          "code": "00123541/20260303/01",
          "groupId": 334,
          "sex": 1,
          "birthday": -590450037000,
          "status": 0,
          "avatar": "",
          "mobile": "18969018021",
          "idCardNo": null,
          "createTime": 1776391563000,
          "levelId": null,
          "point": 0,
          "nationality": null,
          "address": null
        },
        "group": {
          "id": 334,
          "name": "杭州市第七人民医院",
          "code": null,
          "status": 0,
          "apiEnabled": false,
          "logoUrl": null,
          "smallLogoUrl": null
        },
        "product": null,
        "createTime": 1776391563000,
        "count": null,
        "originId": "22"
      }
    ],
    "total": 2
  },
  "msg": ""
}

4.2 查询检测产品列表

该接口用于查询实验室检测产品列表(即检测任务或项目实例),常用于根据样本 ID 等条件筛选关联的检测任务。

请求地址

URL:/admin-api/ltm/product/list

请求方式

GET

请求参数

参数名类型必传说明示例
sampleIdLong样本 ID,用于查询指定样本关联的所有检测任务10766
statusInteger检测任务状态(0-检测失败,1-待检测,2-检测中,3-已完成,4-已取消)1
statusesArray<Integer>检测状态列表,用于批量状态查询[1, 2]
pipelineIdLong流水线 ID,用于查询分配到指定流水线的检测任务7
readyForTestingBoolean是否准备好进行检测(需结合 pipelineId 使用)true
readyForGeneAnalysisBoolean是否准备好进行基因分析(需结合 pipelineId 使用)false

响应参数

参数名类型说明示例
codeInteger状态码,0 表示成功,其他表示失败0
dataArray<Object>包含检测任务数据的数组-
data[].idLong检测任务的系统内部主键 ID3212
data[].codeString检测任务(产品)编号"63e2607472fc"
data[].sampleIdLong关联的样本 ID10766
data[].userIdLong关联的送检人(患者)的用户 ID10328
data[].goodIdLong关联的检测项目 ID79
data[].pipelineIdLong关联的流水线 ID5
data[].workOrderIdLong当前正在处理该任务的工单 IDnull
data[].rawDataFileIdLong原始数据文件 IDnull
data[].statusInteger检测状态(0-检测失败,1-待检测,2-检测中,3-已完成,4-已取消)3
data[].processTimeLong开始检测的时间戳1775632529000
data[].completeTimeLong检测完成的时间戳1775632529000
data[].purposeInteger检测目的(1-检验,2-科研,3-质控)2
data[].abnormalCountInteger异常指标数量0
data[].createTimeLong任务创建的时间戳1775632529000
data[].updateTimeLong任务更新的时间戳1775632528000
data[].goodObject关联的检测项目对象信息(如项目代码、名称等)-
data[].pipelineObject关联的流水线对象信息-
data[].sampleObject关联的样本对象信息-
data[].productStepsArray<Object>检测步骤列表-
data[].subGoodsArray<Object>子检测项目/指标列表null
msgString错误或提示信息""

请求返回示例:

json
{
  "code": 0,
  "data": [
    {
      "id": 3212,
      "code": "63e2607472fc",
      "sampleId": 10766,
      "userId": 10328,
      "goodId": 79,
      "pipelineId": 5,
      "workOrderId": null,
      "rawDataFileId": null,
      "status": 3,
      "good": {
        "id": 79,
        "code": "IgG-4",
        "cate": "IMMUNE",
        "name": "IFC-IgG subclass",
        "description": "",
        "turnaroundDays": 10,
        "pipelineId": 5,
        "sampleTypes": ["venous_plasma"],
        "sort": 1,
        "reportTemplate": "IgG",
        "reportName": "食物特异性抗体IgG 检测和健康咨询报告",
        "createTime": 1775623532000,
        "updateTime": 1775623532000,
        "pipeline": null,
        "props": {
          "grades": []
        },
        "valid": true,
        "strict": true,
        "subGoods": null
      },
      "pipeline": {
        "id": 5,
        "name": "免疫学检测",
        "permission": "ltm:pipeline:immune",
        "type": 1,
        "valid": true
      },
      "sample": {
        "id": 10766,
        "code": 100006514,
        "barcode": "108002000033",
        "userId": 10328,
        "sampleType": "venous_plasma",
        "sampleTime": null,
        "receiveTime": 1774195200000,
        "status": "normal",
        "state": 1,
        "purpose": 2,
        "remark": "",
        "images": null,
        "goods": null,
        "member": {
          "id": 10328,
          "nickname": "33",
          "name": "33",
          "code": null,
          "groupId": 330,
          "sex": 0,
          "birthday": null,
          "status": 0,
          "avatar": "",
          "mobile": null,
          "idCardNo": null,
          "createTime": 1775632421000,
          "levelId": null,
          "point": 0,
          "nationality": null,
          "address": null
        },
        "group": {
          "id": 330,
          "name": "上海翃圣-西门子-免疫球蛋白IgG1-IgG4",
          "code": null,
          "status": 0,
          "apiEnabled": false,
          "logoUrl": null,
          "smallLogoUrl": null
        },
        "product": null,
        "createTime": 1775632421000,
        "count": null,
        "originId": null
      },
      "purpose": 2,
      "abnormalCount": 0,
      "processTime": 1775632529000,
      "completeTime": 1775632529000,
      "createTime": 1775632529000,
      "updateTime": 1775632528000,
      "productSteps": [
        {
          "id": 10957,
          "productId": 3212,
          "stepId": 7,
          "status": 2,
          "remark": "导入自动完成",
          "sort": 1,
          "completeTime": 1775632529000,
          "createTime": 1775632528000,
          "updateTime": 1775632528000,
          "sample": null,
          "product": null,
          "nucleicAcid": null,
          "sequencingLibrary": null
        },
        {
          "id": 10958,
          "productId": 3212,
          "stepId": 8,
          "status": 2,
          "remark": "导入自动完成",
          "sort": 2,
          "completeTime": 1775632529000,
          "createTime": 1775632528000,
          "updateTime": 1775632528000,
          "sample": null,
          "product": null,
          "nucleicAcid": null,
          "sequencingLibrary": null
        },
        {
          "id": 10959,
          "productId": 3212,
          "stepId": 9,
          "status": 2,
          "remark": "导入自动完成",
          "sort": 3,
          "completeTime": 1775632529000,
          "createTime": 1775632528000,
          "updateTime": 1775632528000,
          "sample": null,
          "product": null,
          "nucleicAcid": null,
          "sequencingLibrary": null
        }
      ],
      "subGoods": null
    }
  ],
  "msg": ""
}

4.3 查询指标记录

该接口用于查询检测产品(任务)关联的各项检测指标的记录结果。

请求地址

URL:/admin-api/ltm/indicator-record/list

请求方式

GET

请求参数

支持 Query 传参(注意:productIdproductIdsoperationId 必须至少填写一个,优先以 operationId 为准,其次是 productId,最后是 productIds):

参数名类型必传说明示例
productIdLong检测产品(任务)的 ID3212
productIdsArray<Long>检测产品(任务)的 ID 列表,用于批量查询[3212, 3213]
operationIdLong操作 ID1

响应参数

参数名类型说明示例
codeInteger状态码,0 表示成功,其他表示失败0
dataArray<Object>包含指标记录数据的数组-
data[].idLong指标记录的主键 ID165084
data[].valueString检测指标的记录值"4872"
data[].userIdLong记录人的用户 ID10328
data[].testTimeLong检测时间戳1775632529000
data[].productIdLong关联的检测产品 ID3212
data[].resultInteger结果状态标识。数值类型(0-正常,-1-偏低预警,1-偏高预警,2-偏高异常,-2-偏低异常,10-危机值);枚举类型(3-正常,-3-异常)0
data[].indicatorIdLong关联的指标基础数据 ID939
data[].refRangeIdLong关联的参考范围 ID1585
data[].sortInteger排序值201
data[].indicatorObject关联的指标基础信息对象-
data[].indicator.idLong指标基础信息的主键 ID939
data[].indicator.codeString指标代码"IgG1"
data[].indicator.nameString指标名称"免疫球蛋白G1"
data[].indicator.unitString指标单位"μg/mL"
data[].indicator.dataTypeInteger数据类型1
data[].refRangeObject关联的参考范围对象-
data[].refRange.idLong参考范围的主键 ID1585
data[].refRange.normalUpperDouble正常上限null
data[].refRange.normalLowerDouble正常下限null
data[].createTimeLong记录创建时间戳1775632529000
data[].updateTimeLong记录更新时间戳1775632529000
msgString错误或提示信息""

请求返回示例:

json
{
  "code": 0,
  "data": [
    {
      "id": 165084,
      "value": "4872",
      "userId": 10328,
      "testTime": null,
      "productId": 3212,
      "result": 0,
      "indicatorId": 939,
      "refRangeId": 1585,
      "sort": 201,
      "indicator": {
        "id": 939,
        "code": "IgG1",
        "name": "免疫球蛋白G1",
        "nameEn": "IgG1",
        "unit": "μg/mL",
        "description": "免疫球蛋白G1",
        "dataPrecision": 0,
        "dataType": 1,
        "enumValues": [],
        "valid": true,
        "filters": null,
        "sort": 201
      },
      "refRange": {
        "id": 1585,
        "filters": null,
        "indicatorId": 939,
        "wideType": null,
        "mutantType": null,
        "warningUpper": null,
        "warningLower": null,
        "normalUpper": null,
        "normalLower": null,
        "dangerUpper": null,
        "dangerLower": null,
        "createTime": 1775623196000,
        "updateTime": 1775623196000
      },
      "createTime": 1775632529000,
      "updateTime": 1775632529000
    },
    {
      "id": 165085,
      "value": "2333",
      "userId": 10328,
      "testTime": null,
      "productId": 3212,
      "result": 0,
      "indicatorId": 940,
      "refRangeId": 1586,
      "sort": 202,
      "indicator": {
        "id": 940,
        "code": "IgG2",
        "name": "免疫球蛋白G2",
        "nameEn": "IgG2",
        "unit": "μg/mL",
        "description": "免疫球蛋白G2",
        "dataPrecision": 0,
        "dataType": 1,
        "enumValues": [],
        "valid": true,
        "filters": null,
        "sort": 202
      },
      "refRange": {
        "id": 1586,
        "filters": null,
        "indicatorId": 940,
        "wideType": null,
        "mutantType": null,
        "warningUpper": null,
        "warningLower": null,
        "normalUpper": null,
        "normalLower": null,
        "dangerUpper": null,
        "dangerLower": null,
        "createTime": 1775623221000,
        "updateTime": 1775623645000
      },
      "createTime": 1775632529000,
      "updateTime": 1775632529000
    },
    {
      "id": 165086,
      "value": "237",
      "userId": 10328,
      "testTime": null,
      "productId": 3212,
      "result": 0,
      "indicatorId": 941,
      "refRangeId": 1587,
      "sort": 203,
      "indicator": {
        "id": 941,
        "code": "IgG3",
        "name": "免疫球蛋白G3",
        "nameEn": "IgG3",
        "unit": "μg/mL",
        "description": "免疫球蛋白G3",
        "dataPrecision": 0,
        "dataType": 1,
        "enumValues": [],
        "valid": true,
        "filters": null,
        "sort": 203
      },
      "refRange": {
        "id": 1587,
        "filters": null,
        "indicatorId": 941,
        "wideType": null,
        "mutantType": null,
        "warningUpper": null,
        "warningLower": null,
        "normalUpper": null,
        "normalLower": null,
        "dangerUpper": null,
        "dangerLower": null,
        "createTime": 1775623244000,
        "updateTime": 1775623244000
      },
      "createTime": 1775632529000,
      "updateTime": 1775632529000
    },
    {
      "id": 165087,
      "value": null,
      "userId": 10328,
      "testTime": null,
      "productId": 3212,
      "result": null,
      "indicatorId": 942,
      "refRangeId": 1588,
      "sort": 204,
      "indicator": {
        "id": 942,
        "code": "IgG4",
        "name": "免疫球蛋白G4",
        "nameEn": "IgG4",
        "unit": "μg/mL",
        "description": "免疫球蛋白G4\n",
        "dataPrecision": 0,
        "dataType": 1,
        "enumValues": [],
        "valid": true,
        "filters": null,
        "sort": 204
      },
      "refRange": {
        "id": 1588,
        "filters": null,
        "indicatorId": 942,
        "wideType": null,
        "mutantType": null,
        "warningUpper": null,
        "warningLower": null,
        "normalUpper": null,
        "normalLower": null,
        "dangerUpper": null,
        "dangerLower": null,
        "createTime": 1775623266000,
        "updateTime": 1775623266000
      },
      "createTime": 1775632529000,
      "updateTime": 1775632529000
    }
  ],
  "msg": ""
}

4.4 获得文件信息

该接口用于根据文件 ID 获得该文件在系统中的详细信息,比如原始文件名、文件在 OSS 中的预签名 URL 等信息。

请求地址

URL:/admin-api/infra/file/get

请求方式

GET

请求参数

支持 Query 传参:

参数名类型必传说明示例
idLong文件的主键 ID1326

响应参数

参数名类型说明示例
codeInteger状态码,0 表示成功,其他表示失败0
dataObject包含文件详细信息的对象-
data.idLong文件的主键 ID1326
data.configIdLong关联的文件配置 ID24
data.pathString文件在 OSS 等存储器中的相对路径"products/41-200100018_李孟夏.xlsx"
data.nameString原文件名"200100018_李孟夏.xlsx"
data.urlString文件可直接访问的 URL(如果是私有读写 OSS,通常是带有预签名的可临时访问地址)"https://dixun-private.oss-cn-hangzhou.aliyuncs.com/products/41-200100018_%E6%9D%8E%E5%AD%9F%E5%A4%8F.xlsx?X-Amz-Algorithm=..."
data.typeString文件 MIME 类型"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
data.sizeInteger文件大小(字节)19640
data.createTimeLong文件记录创建时间戳1732223678000
msgString错误或提示信息""

请求返回示例:

json
{
  "code": 0,
  "data": {
    "id": 1326,
    "configId": 24,
    "path": "products/41-200100018_李孟夏.xlsx",
    "name": "200100018_李孟夏.xlsx",
    "url": "https://dixun-private.oss-cn-hangzhou.aliyuncs.com/products/41-200100018_%E6%9D%8E%E5%AD%9F%E5%A4%8F.xlsx?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=LTAI5tA4hZ86HaHu7ScuCRzT%2F20260417%2Foss-cn-hangzhou%2Fs3%2Faws4_request&X-Amz-Date=20260417T031706Z&X-Amz-Expires=600&X-Amz-SignedHeaders=host&X-Amz-Signature=d646845d651baf4fd9c21bea2cdf7e9c49e601c854f463d959d1a4bb39cf803d",
    "type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
    "size": 19640,
    "createTime": 1732223678000
  },
  "msg": ""
}

5. 实验数据导入 API 列表

本章节包含了各条检测流水线在流转过程中涉及的 Excel 数据导入接口。

5.1 基因检测相关导入

导入 1.1 gDNA 提取记录单

调用该接口,需已经创建对应的核酸提取工单。

导入 2.1 建库记录单

调用该接口,需已经创建对应的文库构建工单。

导入 3.1.1 杂交捕获 Pooling 记录单

调用该接口,需已经创建对应的杂交捕获工单。

导入 3.1.2 杂交捕获 QC 记录单

调用该接口,需已经创建对应的杂交捕获工单。

导入 4.1 测序文库 Pooling 单

调用该接口,需已经创建对应的基因测序工单 。

导入 5.1 测序结果信息单

调用该接口,需已经创建对应的基因测序工单 。

5.2 免疫检测相关导入

导入检测数据

5.3 mRNA 相关导入

导入检测数据

该接口与免疫检测的导入检测数据接口相同,但导入模板不同。

6. 系统与资源管理 API 列表

6.1 用户登录

该接口用于生信分析接入本系统时用户通过 API 登录本系统。登录的用户需具备 "基因检测" 流水线权限。

请求地址

URL:admin-api/system/auth/login

请求参数

  • tenantName:租户名称,固定为 迪迅实验室
  • username:用户名,由系统管理员注册后分配。
  • password:密码,由系统管理员注册后分配,首次登录需更换自己的默认密码。
  • rememberMe:是否记住我,固定为 false

请求体示例

json
{
  "tenantName": "迪迅实验室",
  "username": "demo",
  "password": "DEMO_PASSWORD",
  "rememberMe": false
}

响应参数

  • code:状态码,0 表示成功,其他表示失败。
  • data:登录成功后返回的数据,包含 userIdaccessTokenrefreshTokenexpiresTime
    • userId:用户 ID
    • accessToken:访问令牌
    • refreshToken:刷新令牌
    • expiresTime:令牌过期时间
  • msg:状态码对应的提示信息。

请求返回示例

json
{
  "code": 0,
  "data": {
    "userId": 1,
    "accessToken": "6b2d******126027",
    "refreshToken": "31d286*******571423abe",
    "expiresTime": 1736142177721
  },
  "msg": ""
}

6.2 查询设备信息

分页查询设备信息及状态。

status:设备状态,Integer 类型,含义如下:

  • 1: 使用中,
  • 2: 维修中,
  • 3: 故障,
  • 4: 暂停,
  • 5: 仪器丢失,
  • 6: 备用设备,
  • 7: 退回厂商,
  • 0: 报废;

文档地址:http://dx-api.ming-kuai.com/doc.html#/erp/实验室 - 仪器设备管理/getPage_1

6.3 查询设备维护记录

文档: http://dx-api.ming-kuai.com/doc.html#/erp/实验室 - 设备维护管理/getPage