编辑 | blame | 历史 | 原始文档

ServiceDonatebaseinfoReportController - add 接口文档

接口概述

  • 接口路径POST /project/donatebaseinforeport/add
  • 接口描述:新增捐献上报基础
  • API标签:捐献上报基础管理

请求信息

  • 请求方式:POST
  • 请求路径/project/donatebaseinforeport/add
  • 内容类型:application/json
  • 认证要求:需要登录认证(基于系统权限控制)
  • 防重复提交:使用 @RepeatSubmit 注解防止重复提交

请求参数

Body 参数

参数名 类型 必填 示例值 描述

| serviceDonatebaseinfoReport | ServiceDonatebaseinfoReport | 是 | - | 捐献上报基础信息对象 |

ServiceDonatebaseinfoReport 参数详情

参数名 类型 必填 默认值 描述

| id | Long | 否 | - | 主键ID(新增时不需要传) |
| caseNo | String | 否 | - | 案例编号(系统自动生成,无需传入) |
| name | String | 是 | - | 姓名 |
| sex | String | 是 | - | 性别(根据字典sys_user_sex) |
| idcardtype | Long | 否 | - | 证件类型(根据字典sys_IDType) |
| idcardno | String | 是 | - | 证件号码 |
| age | Long | 否 | - | 年龄 |
| ageunit | String | 否 | - | 年龄单位(根据字典sys_AgeUnit) |
| birthday | Date | 否 | - | 出生日期(格式:yyyy-MM-dd) |
| phone | String | 是 | - | 联系电话 |
| nationality | String | 否 | - | 国籍 |
| nativeplace | String | 否 | - | 籍贯 |
| nation | String | 否 | - | 民族(根据字典sys_nation) |
| occupation | String | 否 | - | 职业(根据字典sys_occupation) |
| education | String | 否 | - | 学历(根据字典sys_education) |
| residenceaddress | String | 否 | - | 现住地址 |
| residenceprovince | String | 否 | - | 现住地址省代码 |
| residenceprovincename | String | 否 | - | 现住地址省名称 |
| residencetownname | String | 否 | - | 现住地址所属街道(镇)名称 |
| residencecommunity | String | 否 | - | 现住地址社区(村)编号 |
| residencecommunityname | String | 否 | - | 现住地址社区(村)名称 |
| residencecountycode | String | 否 | - | 现住地址所属区域编号 |
| residencecountyname | String | 否 | - | 现住地址所属区域名称 |
| registeraddress | String | 否 | - | 户籍地址 |
| registerprovince | String | 否 | - | 户籍地址省编号 |
| registerprovincename | String | 否 | - | 户籍地址省名称 |
| registercityname | String | 否 | - | 户籍地址市名称 |
| registertownname | String | 否 | - | 户籍地址所属街道(镇)名称 |
| registercommunityname | String | 否 | - | 户籍地址社区(村)名称 |
| treatmenthospitalname | String | 否 | - | 治疗医院名称 |
| treatmentdeptname | String | 否 | - | 治疗科室名称 |
| diagnosisname | String | 否 | - | 疾病诊断名称 |
| inpatientno | String | 否 | - | 住院号 |
| illnessoverview | String | 否 | - | 病情概况 |
| infectious | String | 否 | - | 传染病情况 |
| infectiousOther | String | 否 | - | 传染病其他情况 |
| patientstate | String | 否 | - | 病人状况 |
| infoNo | String | 是 | - | 报告者编号 |
| infoName | String | 是 | - | 报告者姓名 |
| reporterphone | String | 否 | - | 报告者联系电话 |
| reporttime | Date | 否 | - | 报告时间(格式:yyyy-MM-dd HH:mm:ss) |
| terminationCase | Integer | 否 | 0 | 终止案例:0开启 1终止 |
| deptNo | String | 否 | - | 部门编号 |
| deptName | String | 否 | - | 部门名称 |
| gcsScore | String | 否 | - | GSC评分 |
| bloodType | String | 否 | - | 血型(根据字典sys_BloodType) |
| rhYin | String | 否 | - | Rh阴性(0:否 1:是) |
| isTransport | String | 否 | 1 | 是否需要转运(1:不需要 2:需要) |
| reportStatus | String | 否 | - | 上报状态(1:已上报 2:已阅读 3:已同意 4:已驳回) |
| annexfilesList | List<ServiceDonatebaseinfoReportFile> | 否 | - | 附件文件地址集合 |
| serviceTransport | List<ServiceTransport> | 否 | - | 转运信息 |
| coordinatorNo | String | 否 | - | 协调员编号(系统自动获取,无需传入) |
| coordinatorName | String | 否 | - | 协调员姓名(系统自动获取,无需传入) |
| toHospital | String | 是 | - | 上报的医院(患者需要转运到的医院)(新增必传) |
| searchValue | String | 否 | - | 搜索值(继承自BaseEntity) |
| createBy | String | 否 | - | 创建者(继承自BaseEntity) |
| createTime | Date | 否 | - | 创建时间(继承自BaseEntity) |
| updateBy | String | 否 | - | 更新者(继承自BaseEntity) |
| updateTime | Date | 否 | - | 更新时间(继承自BaseEntity) |
| remark | String | 否 | - | 备注(继承自BaseEntity) |
| delFlag | Integer | 否 | - | 状态(0正常 1删除)(继承自BaseEntity) |
| pageNum | Integer | 否 | - | 页码(继承自BaseEntity) |
| pageSize | Integer | 否 | - | 每页显示数量(继承自BaseEntity) |
| params | Map<String, Object> | 否 | - | 请求参数(继承自BaseEntity) |

annexfilesList 附件列表字段说明

参数名 类型 必填 描述
name String 文件名称
url String 文件地址

响应信息

成功响应 (200)

{
  "code": 200,
  "msg": "操作成功",
  "rows": 1
}

失败响应 (非200)

{
  "code": 500,
  "msg": "操作失败"
}

响应字段说明

字段名 类型 描述
code Integer 响应状态码,200表示成功
msg String 响应消息
rows Integer 影响的行数(成功新增的记录数)

业务逻辑说明

  1. 接收捐献上报基础信息对象 ServiceDonatebaseinfoReport
  2. 系统自动生成案例编号(使用雪花算法ID生成器)
  3. 从当前登录用户信息中自动获取协调员编号和姓名
  • 根据登录用户的用户名查询协调员信息
  • 将协调员编号和姓名自动填充到上报信息中
  1. 保存捐献上报基础信息到数据库
  2. 如果附件列表不为空,将附件信息保存到附件表中
  • 关联案例编号
  • 记录操作人昵称
  1. 返回操作结果

使用场景

此接口主要用于:
1. 医疗机构上报潜在捐献者信息
2. 记录患者的基本信息和医疗信息
3. 上传相关附件材料
4. 发起捐献案例的初始登记
5. 协调员提交捐献上报申请

请求示例

{
  "name": "张三",
  "sex": "1",
  "idcardtype": 1,
  "idcardno": "110101199001011234",
  "age": 34,
  "ageunit": "岁",
  "birthday": "1990-01-01",
  "phone": "13800138000",
  "nationality": "中国",
  "nation": "汉族",
  "occupation": "工人",
  "education": "本科",
  "residenceaddress": "北京市朝阳区某街道123号",
  "residenceprovincename": "北京市",
  "registeraddress": "北京市海淀区某街道456号",
  "registerprovincename": "北京市",
  "treatmenthospitalname": "某三甲医院",
  "treatmentdeptname": "神经外科",
  "diagnosisname": "脑外伤",
  "inpatientno": "IN20240129001",
  "illnessoverview": "患者因交通事故导致重度脑外伤",
  "patientstate": "危重",
  "gcsScore": "3分",
  "bloodType": "1",
  "rhYin": "0",
  "isTransport": "1",
  "reportStatus": "1",
  "infoName": "李医生",
  "infoNo": "DOC001",
  "reporterphone": "13900139000",
  "reporttime": "2024-01-29 10:30:00",
  "toHospital": "某器官获取医院",
  "annexfilesList": [
    {
      "name": "患者病历.pdf",
      "url": "http://localhost:8093/upload/2024/01/29/patient_record.pdf"
    },
    {
      "name": "影像资料.jpg",
      "url": "http://localhost:8093/upload/2024/01/29/ct_scan.jpg"
    }
  ]
}

注意事项

  1. 自动生成字段
  • caseNo(案例编号)由系统自动生成,无需传入
  • coordinatorNo(协调员编号)和 coordinatorName(协调员姓名)从登录用户信息中自动获取
  1. 防重复提交:接口使用 @RepeatSubmit 注解,防止用户重复提交相同的上报请求
  2. 操作日志:接口会自动记录操作日志(标题:捐献上报基础,业务类型:INSERT)
  3. 附件处理
  • 附件列表通过 annexfilesList 字段传入
  • 附件信息会单独保存到附件表中
  • 附件格式示例:[{ "name": "文件名", "url": "文件地址" }]
  1. 协调员信息:系统会根据当前登录用户查询对应的协调员信息并自动填充
  2. 日期格式
  • birthday 使用 yyyy-MM-dd 格式
  • reporttime 使用 yyyy-MM-dd HH:mm:ss 格式
  1. 字典值参考
  • 性别:参考字典 sys_user_sex
  • 证件类型:参考字典 sys_IDType
  • 年龄单位:参考字典 sys_AgeUnit
  • 民族:参考字典 sys_nation
  • 职业:参考字典 sys_occupation
  • 学历:参考字典 sys_education
  • 血型:参考字典 sys_BloodType
  1. 默认值
  • terminationCase 默认值为 0(开启)
  • isTransport 默认值为 1(不需要转运)
  1. 必需认证:接口需要用户登录认证才能访问
  2. 转运信息:如果 isTransport 为 2(需要转运),需要填写 toHospital(转运目标医院)和 serviceTransport(转运详细信息)