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