项目文档
华西急救项目文档
华西急救项目文档
医院nginx需要配置
proxy_set_header Host $host; # 转发真实的域名 proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # Set X-Forwarded-Proto header 保证http和https的schema是对的 这样内外网图片url拼接完整地址返回才能正确
如果医院给的是域名下的某个目录 那么nginx需要重写规则如下
location / { rewrite ^/dottmed(/.*)$ $1 break; proxy_pass http://192.168.9.61/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
导出url /api/patient/batch_download_preinfo/?token=登录的token&patient_ids=1,2,3&eme_type=急救的类型 例如胸痛传1 默认导出选中的档案传参为 /api/patient/batch_download_preinfo/?token=登录的token&patient_ids=1,2,3 不需要传eme_type 默认导出某个类型急救的病历传参为 /api/patient/batch_download_preinfo/?token=登录的token&eme_type==急救的类型 例如胸痛传1 不需要传patient_ids
保证有序进行安装
使用2to3转换所有文件 重新安装suds from django.utils.encoding import smart_unicode 修改localsettings urlpase 删除所有的迁移 重新生成 做fake迁移 最后卸载drf-safe-jack 和django-m2m-fix后重新安装 使用code inspect code功能查找错误进行修复 修复time.clock 为 time.perf_counter() 替换 urllibe.quote 为 urllib.parse.quote 使用code inspect code功能查找错误进行修复 删除 import sys reload(sys) sys.setdefaultencoding('utf-8')
会诊列表和详情修改 /huizhen/mine 过滤条件由patient__id 改为 huizhen__patient__id 列表返回结构原来的每个item现在嵌套在 huizhen字段里面 未读消息不使用 'unread_num' 改为使用unread_msg_count字段 最新消息时间不使用 'time' 改为使用 latest_msg_time
传参示例 same_name=True 勾选传True 否则不传 same_name 同名查询 same_pat_no 同登记号查询
1. 急诊床位 patient.eme_bed_no
2. 病历创建流程
创建流程为 点击保存时候 如果有登记号 --》 调用/api/common/get_his_info/?pat_med_card=就诊号 ---》 1. 查询返回200则显示弹窗选择同步项目,选择同步项后调用/api/common/sync_his_info/?admid=就诊id&only_basic=true 拿到患者基本信息和admid, 请求创建病历的接口 把admid也传过来给patient.admid 创建完成关闭弹窗
获取就诊id和其他就诊信息接口 /api/common/sync_his_info/?admid=153301977&only_basic=true // 注意:接口不需要传id=xx only_basic传true 其他同对接his内的同步请求 返回 参数含 患者基本信息 { "admdate": "2021-02-03", "job": "", "admid": "153301977", "name": "小李子", "has_his_inpatient_no": true, "credentials_type": "1", "mobile": "15607679596", "gender": "1", "reg_dept": "急诊住院部医生", "inpatient_no": "", "phone": "15607679596", "nation": "01", "pat_med_card": null, "idno": "46000319951215021X", "bed_doctor": "杰克", "address": "四川仁寿视高老君街13388242632", "birth_date": "1995-12-15", "bed_no": "15" } ``` 否则显示 ### 2021-12-29 #### 创伤病历柱状图 ```python “严重创伤急救例数”统计 在原来月份里面 detail返回 { "month":"xxx", "count":"xxx", "detail": {"critical": 严重创伤的数量, "normal": 一般的数量 } 对应到跳转搜索条件为 critical=True critical=False } api/trauma_rescue/count/?count_type=blood_ready&count_period=month count_type: "transfer_count" 院前急救转运趋势图 blood_ready 急诊输血准备平均时间趋势图 airway_ready 工气道建立平均时间趋势图 advice_eme_surg_time 紧急手术术前准备平均时间趋势图
严重创伤搜索字段 critical 传True False
/api/trauma_rescue/count/?count_type=rate&count_period=all 返回 { "gcs": 创伤病人GCS评分完成比例, "ti": 创伤病人TI评分完成比例, "iss": 创伤病人ISS评分完成比例, "transfusion": 转诊治疗的创伤病人比例, "dead": 创伤病人病死率, "critical_micu_mean": 严重创伤病人MICU平均住院时间, "critical_hosday_mean":严重创伤病人平均住院时间 , "critical_dead":严重创伤病人病死率, "first_ct_mean":完成首张CT图像平均用时 , "first_cxray":胸痛X片平均用时, "first_pxray": 完成骨盆X片平均用时, "first_fast":完成FAST检查平均用时, "doctor_ready_waste": 急诊准备平均时间, "info_alert": 信息预警比例, "tranfer_mean": 院前急救转运平均时间, }
注意在对应模块添加以下两个字段 这两个字段创伤质控必须用到 创伤中毒常规消化道的的病历需要加一下 patient.inside_roadmap.eme_trans_depart_time 转科时间 patient.leave_hospital.dead_time 死亡时间 """创伤质控接口 get /api/trauma_rescue/quality_control/{创伤id}/""" 返回 { "tranfer": 院前急救转运时间, "eme_get_ready": 急诊准备时间(分钟), "ctnfast": 全身快速CT、胸部X片、骨盆X片和FAST完成时间, "eme_tranfusion_ready": 急诊输血准备时间(分钟), "airway": 人工气道建立时间, "surg_ready": 紧急手术术前准备时间, "eme_stop": 急诊科停留时间, "micu_mean": 严重创伤病人MICU平均住院时间(天), }
"""patient.leave_hospital""" hospital_day = models.IntegerField('住院天数', null=True, blank=True, validators=[validate_postive_real]) hospital_cost = models.IntegerField('费用记录', null=True, blank=True, validators=[validate_postive_real]) leave_hos_time = models.DateTimeField('出院时间', null=True, blank=True) leave_hos_way = models.CharField(u'出院方式', choices=HOS_OUTCOME, max_length=2, null=True, blank=True)
"""这里分成两块 评分的放在patient.disease_evalute""" eme_gcs = models.IntegerField('急诊GCS评分', null=True, blank=True) is_eme_gcs = models.NullBooleanField('急诊GCS评分是否已评', null=True, blank=True) is_eme_iss = models.NullBooleanField('急诊创伤ISS评分是否已评', null=True, blank=True) eme_iss = models.IntegerField('急诊创伤ISS评分', null=True, blank=True) is_eme_ais = models.NullBooleanField('急诊创伤AIS评分是否已评', null=True, blank=True) eme_ais = models.IntegerField('急诊创伤AIS评分', null=True, blank=True) is_eme_ti = models.NullBooleanField('急诊创伤TI评分是否已评', null=True, blank=True) eme_ti = models.IntegerField('急诊创伤TI评分', null=True, blank=True) """时间在 patient.other_info """ advice_transfusion_time = models.DateTimeField('提出输血申请时间', null=True, blank=True) exec_transfusion_time = models.DateTimeField('执行输血的时间', null=True, blank=True) advice_build_airway_time = models.DateTimeField('提出建立气道时间', null=True, blank=True) success_build_airway_time = models.DateTimeField('成功建立人工气道时间', null=True, blank=True) advice_eme_surg_time = models.DateTimeField('提出紧急手术医嘱时间', null=True, blank=True) start_eme_surg_time = models.DateTimeField('损伤控制性手术开始时间', null=True, blank=True)
leave_micu_time = models.DateTimeField('出MICU时间', null=True, blank=True) chest_xray_time = models.DateTimeField('完成胸部X片时间', null=True, blank=True) pelvic_xray_time = models.DateTimeField('完成盆骨X片时间', null=True, blank=True) fast_time = models.DateTimeField('完成FAST检查时间', null=True, blank=True)
td_arrive_eme_time = models.DateTimeField('创伤救治队员到达急诊时间', null=True, blank=True) 安卓端访问update_arrive_time 创伤的快速记录添加前缀 ir_
gib_score = models.IntegerField('GBS评分', null=True, blank=True, validators=[validate_postive]) 评分同之前其他的评分接口 传参web端和安卓端约定一下
# 转归 在inside_roadmap里面 chestpain_outcome = models.CharField('患者胸痛中心转归', choices=CHESTPAIN_OUTCOME, max_length=50, null=True, blank=True) chestpain_outcome_other = models.TextField('患者胸痛中心转归', null=True, blank=True) eme_outcome = models.CharField('患者急诊转归', choices=EME_OUTCOME, max_length=50, null=True, blank=True) eme_trans_to_department = models.TextField('转送去向科室', null=True, blank=True) # 胸痛相关院前 院内溶栓筛查 急诊信息部分--院前溶栓治疗 位于inside_rescue_info_chestpain 院内部分位于 special_treat.stemi 字段名相同 is_sift = models.NullBooleanField('是否有溶栓治疗', null=True) is_nonstop = models.CharField('直达溶栓场所', max_length=2, null=True, blank=True) lysis_place = models.CharField('溶栓场所', max_length=2, choices=Placechoices, null=True, blank=True) lysis_talk_time = models.DateTimeField('溶栓开始知情同意时间', null=True, blank=True) lysis_sign_time = models.DateTimeField('签署知情同意时间', null=True, blank=True) lysis_start_time = models.DateTimeField('开始溶栓时间', null=True, blank=True) lysis_end_time = models.DateTimeField('溶栓结束时间', null=True, blank=True) lysis_affect_time = models.DateTimeField('溶栓后造影时间', null=True, blank=True) lysis_medicine = models.CharField('溶栓药物', max_length=50, choices=LysisMedicineChoice, null=True, blank=True) lysis_dose = models.CharField('剂量', choices=CODE_CHOICES, max_length=2, null=True, blank=True) is_lysis_repatency = models.NullBooleanField('溶栓再通', null=True, blank=True) cannot_lysis = models.NullBooleanField('存在禁忌症', null=True, blank=True)
120 have_call 有无呼救 call_time_unknown 呼救时间不详 外院120转诊相关字段 into_tran_hos_time = models.DateTimeField('转出医院入门时间', null=True, blank=True) un_into_tran_hos_time = models.NullBooleanField('转出医院入门时间不详', null=True, blank=True) decide_tran_hos_time = models.DateTimeField('决定转院时间', null=True, blank=True) un_decide_tran_hos_time = models.NullBooleanField('决定转院时间不详', null=True, blank=True) tran_ambulance_arrive_time = models.DateTimeField('转运救护车到达时间', null=True, blank=True) un_tran_ambulance_arrive_time = models.NullBooleanField('转运救护车到达时间不详', null=True, blank=True) leave_tran_hos_time = models.DateTimeField('离开转出医院时间', null=True, blank=True) un_leave_tran_hos_time = models.NullBooleanField('离开转出医院时间不详', null=True, blank=True) un_first_touch_time = models.DateTimeField('首次医疗接触时间不详', null=True, blank=True) first_touch_doctor = models.TextField('首次医疗接触医护人员', null=True, blank=True) 本院120转诊 和 外院120转诊 导管室/CCU/心内科病房/其他 direct_to_department = models.CharField('直达', choices=DIRECT_ARRIVE, max_length=50, null=True,blank=True) 院间转诊 attack_depart = models.CharField('发病科室', max_length=50, null=True, blank=True) 远程心电传输 位于patient.xxx is_remote_ecg = models.NullBooleanField('是否远程心电传输', null=True, blank=True) remote_ecg_time = models.DateTimeField('远程心电图时间', null=True, blank=True) remote_ecg_way = models.CharField('远程心电传输方式', choices=REMOTE_ECG_WAY, max_length=50, null=True, blank=True) 超声室 ultrasound_check_time = models.DateTimeField('超声检查时间', null=True, blank=True) ultrasound_report_time = models.DateTimeField('超声报告时间', null=True, blank=True) ct室 ct_notice_time = models.DateTimeField('通知CT室时间', null=True, blank=True) ct_doctor_arrive_time = models.DateTimeField('CT人员到达时间', null=True, blank=True) ct_ready_time = models.DateTimeField('CT室完成准备时间', null=True, blank=True) ct_saomiao_time = models.DateTimeField('CT扫描时间', null=True, blank=True) # 主动脉夹层病种方式的内容 notice_cs_time = models.DateTimeField('通知心脏外科会诊时间', null=True, blank=True) cs_consult_time = models.DateTimeField('心脏外科会诊时间', null=True, blank=True) ci_consult_time = models.DateTimeField('心脏内科会诊时间', null=True, blank=True) vs_consult_time = models.DateTimeField('血管外科会诊时间', null=True, blank=True) pci_time = models.DateTimeField('开始介入治疗时间', null=True, blank=True) stent_release_time = models.DateTimeField('支架释放时间', null=True, blank=True) # 手术相关的 surgery_talk_time = models.DateTimeField('知情同意时间', null=True, blank=True) surgery_sign_time = models.DateTimeField('签署手术同意时间', null=True, blank=True) surgery_start_time = models.DateTimeField('手术开始时间', null=True, blank=True) surgery_end_time = models.DateTimeField('手术结束时间', null=True, blank=True) surgery_result = models.CharField('手术结果', choices=, max_length=50, null=True,blank=True) # 药物治疗相关 # 抗血小板治疗药物 aspirin_dose = models.CharField('阿司匹林', max_length=50, null=True, blank=True) clopigrel_dose = models.CharField('氯吡格雷', max_length=50, null=True, blank=True) ticagrelor_dose = models.CharField('替格瑞洛', max_length=50, null=True, blank=True) #初次给药 first_drug_place = models.CharField('初始给药地点', choices=FIRST_DRUG_PLACE, max_length=50, null=True, blank=True) first_drug_time = models.DateTimeField('初始给药时间', null=True, blank=True)
接口 /api/gib_rescue/ 新增字段 消化道出血病史 gib_history 出血症状 inside_rescue_info.bleed_symptom 选项从config拿 消化道出血 emergency_type是 10
注意消化道出血模块 对应的聊天房间前缀是 100
在原来的删除接口基础上批量删除修改为 patient_batch_delete/?ids=1,2,3 使用,分割 如 /api/apoplexy/patient_batch_delete/?ids=1,2,3
批量导出接口 patient_ids传病人id 使用,分隔 post /api/patient/batch_download_preinfo/ 传参 patient_ids 1,2,3
注意:web端只需要改动发起会诊这里的接口,见下图 不要修改会诊管理那里的接口
/api/common/department?limit=1000000
注意权限只对普通用户生效 对admin用户不生效 web端菜单和安卓菜单 如果是admin用户显示全部 普通用户根据 account/mine 拿到的 user_permission_format字段 来匹配显示 没有权限返回 400 "抱歉,您没有该模块的访问权限!"
get /api/account/permission_config/ 查看全局权限配置名称 返回: [ { "perms": [ "胸痛急救", "卒中急救", "创伤急救", "中毒急救", "常规急救" ], "group_name": "急救病历" }, ] put /api/account/users/{id}/ #更新某个用户的权限 传参在原来基础上加上 { "can_view_other_case": true, # 是否可以查看未接诊的病历 "user_permission_format": { "急救病历": [ # 以对象形式传过来 key是 上面的group_name "胸痛急救", # value 是上面的perms的值 用户勾选了哪些就显示哪些 "卒中急救", "创伤急救" ] } } post /api/account/add_perms_batch/ '''can_view_other_case 和 user_permission_format 字段可传可不传 不传则不修改 \n user_id_list 必传''' { "can_view_other_case": true, # 是否可以查看未接诊的病历 "user_permission_format": { "急救病历": [ # 以对象形式传过来 key是 上面的group_name "胸痛急救", # value 是上面的perms的值 用户勾选了哪些就显示哪些 "卒中急救", "创伤急救" ] } "user_id_list" :[1,2,3] }
进入签到tab发送 {"biz":"join_topic","topic":"mdt_sign"} 加入房间获 获取消息 使用topic "mdt_sign" 和 case_detail 进行匹配 { "biz":"topic_msg", "topic": "mdt_sign", # 收到这个topic 说明是签到笑嘻嘻 "case_detail":{"case_type": "9", "case_id": 15}, }
在接口后加参数 ?profile
多传一个参数 hz_type 1是线上会诊 2是床旁会诊 选项从config拿
发起会诊时间 huizhen_created_time 会诊到达耗时 arrive_use_minute 会诊的类型 hz_type
启动任务 { "topic": "patient_gps", # 发送topic "type": "start_car_gps", "car_id": 1, "car_number": "99999", } 释放任务 { "topic": "patient_gps", # 发送topic "type": "release_car_gps", "car_id": 1, "car_number": "99999", }
消息体 { "biz": "send_topic", "topic": "patient_gps", # 发送topic "type": "wait_car_send", # 定位的来源 待命中的车 "new_track": { # 这里获取当前车辆位置 "lat": "30.647016", 纬度 "lon": "104.069100", 经度 "lng": "104.069100", 经度 "getTime": "2021-07-13 15:41:04" # 获取到定位的时间 },, } 离线点消失通知 # 根据救护车id来进行匹配 注意需要把点也加到缩放中 { "topic": "patient_gps", # 发送topic "type": "offline_car_gps", # 离线通知 "tips": "设备已离线!", "ambulance_id": 1 }
/api/patient/get_task_info/ {patient_id}/ 返回内容如下
patient.user_gps_update_time(安卓用) 用户最后发送gps时间 /task/{id}内增加gps最后发送时间和用户返回(web用) 字段: send_gps_user 发送gps用户信息 user_gps_update_time 用户最后发送gps时间 user_gps_info 用户发送gps定位点
接口 post /api/common/get_bd_dstime/ 传参格式 {"patient_id":1} 返回体 {"duration": None, "distance": None} # 直接带公里 分钟单位
发送消息 {"biz":"quit_topic","topic":"patient_gps"}
性别筛选改用字段 gender 传unknown 筛选未选择的病例
修改点: 1.修改 gpswebsocket消息获取方式 新增发送 {"biz":"join_topic","topic":"patient_gps"} 加入房间获取gps数据推送 不加入不会收到推送 2.消息从biz =car_track 修改为使用 topic == patient_gps 进行获取 这里主要增加了 "type" 字段用来区分定位的来源 { "topic": "patient_gps", # 收到这个topic 说明是定位消息 "type":"user_send", # 定位的来源 这里user_send为用户发送的点 car_send 为车载gps发出的点 "case_detail":{"case_type": "9", "case_id": 15},# 返回病例详情做跳转用 "name": "patient.name" #患者姓名, "send_gps_user":{"name":"xxxx", # 位置发送者姓名 } "patient_id": 15, # 用户id "new_track":{ # 这里获取当前车辆位置 "lat": "30.647016", 纬度 "lon": "104.069100", 经度 "lng": "104.069100", 经度 "getTime": "2021-07-13 15:41:04" # 获取到定位的时间 }, "to":'call_place' # 当前前往的目的地 选项有 'hospital'和'call_place' "imei":"xxxx", imei设备编号, "predict_arrive_info":{"duration": "12分钟","distance": "12公里"} } 3.新增获取用户发送的定位点 字段 user_gps_info 内容格式为 {'lat': '104.069100' , 'lon': '30.647016' } 4.增加预到达信息 字段 predict_arrive_info 内容格式为 {"duration": "12分钟", # 预计时间 这里直接显示就行 带了单位的 "distance": "12公里"} # 距离 备注: /api/ambulance/task/{id } to 字段为目的地标识 to返回有两种 'call_place'为发病地 也就是目前是去程 'hospital'为医院 也就是目前是返程
web端地址 https://new.dottmed.com/huaxicenter/ 可用于启动任务测试 只有川AB3Q01这台车是有效的 其他车不可调试 现在web端还没改好 暂时不可调试 1 .gps初始数据获取 从接口 patient内的 下面的都在patient内 car_gps_info:获取车载gps定位数据 user_gps_info:获取用户发送的gps数据 这两个返回null则说明当前无定位数据 格式如下 {'lat': '30.647016' , 'lon': '104.069100' } lat纬度 lon 经度 car_to 为去返程标识 值为'call_place'表示目前是去程 值为'hospital'表示目前是返程 预到达信息字段 predict_arrive_info 内容格式为 {"duration": "12分钟", # 预计时间 这里直接显示就行 带了单位的 "distance": "12公里"} # 距离 send_gps_user 发送定位的用户信息 "send_gps_user": {"username": "jack", "first_name": "", "id": 1} "hospital_location":"30.646886,104.067835" # 医院位置 "scence_location": "30.646886,104.067835" # 发病地点定位 这个可能返回null 2. 上传gps数据 post /api/patient/update_patient_gps/{patient_id}/ 注意这里带患者id到路由 传参内容 {"lat":"xxx","lon":"xxx","send_gps_user":1, # 发送定位的用户id} 3. 监听websocket gps数据 发送 {"biz":"join_topic","topic":"patient_gps"} 加入房间获取gps数据推送 不加入不会收到推送 数据收取 { "topic": "patient_gps", # 收到这个topic 说明是定位消息 "type":"user_send", # 定位的来源 这里user_send为用户发送的点 car_send 为车载gps发出的点 "patient_id": 15, # 用户id "new_track":{ # 这里获取当前车辆位置 "lat": "30.647016", 纬度 "lon": "104.069100", 经度 "lng": "104.069100", 经度 "getTime": "2021-07-13 15:41:04" # 获取到定位的时间 }, "send_gps_user": {"username": "jack", "first_name": "", "id": 1}, # 发送gps的用户信息 "to":'call_place' # 当前前往的目的地 选项有 'hospital'和'call_place' , "predict_arrive_info":{"duration": "12分钟","distance": "12公里"} } # 完整消息示例 {"target": {"lat": "30.664479", "to": "call_place", "lon": "104.072222"}, "getTime": "2021-07-16 10:17:31", "pre_point": {"lat": "30.647016", "getTime": "2021-07-16 10:17:27", "lng": "104.069100"}, "car_number": "6666", "predict_arrive_info": {"duration": "3\u5206\u949f", "distance": "5.3\u516c\u91cc"}, "patient_id": 17, "topic": "patient_gps", "biz": "topic_msg", "imei": "868120260193310", "type": "car_send", "new_track": {"lat": "30.647240", "getTime": "2021-07-16 10:17:31", "lng": "104.068871", "lon": "104.068871"}}
需要监听某个主题的消息 首先websocket发送消息 {"biz":"join_topic","topic":"xxx"} # topic 内容根据业务替换 # 对某个主题发送消息 {"biz":"send_topic","topic":"xxx","data":{"hello":"world"}} data内的内容会原封不动的返回给到客户端 例如这里客户端会收到 {"hello":"world"}
不同病例转换后时间轴 可能会有问题 用getattr
搜索传参说明 布尔值选项的传参 为True 和False 注意首字母大写
注意 必须 WEB_SOCKET_URL 、WEB_SOCKET_TOKEN 两个参数 不然gps推送不起作用
接口地址 http://127.0.0.1:8000/api/patient/count/?count_period=month # 顶部总计 &count_type=total_count # 饼图类型 tran_hos_type 转院类型 is_start_mdt 是否启动mdt come_from 来院方式 emergency_type 病历类型 筛选说明: 这里转院方式 和来院方式无法进行跳转 mdt的跳转需要判断一下name 这里name如果未填写返回null 否返回false字符串 是的话返回病历类型 1 2 3 9等字符串 需要手动拼下参数 mdt筛选字段名 patient__pre_warning__is_start_mdt
# 胸痛新增筛选字段 出车单位 patient__out_car_depart 转院类型 tran_hos_type 绕行急诊 special_treat__is_pass_em 绕行CCU special_treat__is_pass_ccu 院前溶栓筛查 patient__inside_rescue_info_chestpain__lysis_exam 院内溶栓筛查 special_treat__stemi__lysis_exam 再灌注措施 stemi_treat_method 出院诊断 special_treat__out_diagnosis 出院或30天转归 special_treat__outcome # 卒中高级搜索字段 上报状态 sync_china_cz_status 出车单位 转院类型 同胸痛 治疗类型 treatment_type # 其他三个类无新增字段
顶部总计 /api/apoplexy/count/?count_period=month&count_type=total_count 对应筛选使用 treatment_type 关键字如/api/apoplexy/?treatment_type=unknown treatment_type 是id 对照表参考下图 # 其他饼图的统计类型如下 AIS静脉溶栓构成比 ais_rs AIS介入再通构成比 ais_zt DNT平均数变化趋势图 dntmean DNT中位数变化趋势图 dntmedian DPT平均数变化趋势图 dptmean DPT中位数变化趋势图 dptmedian 来院 come_from DNT延误原因构成比 dntdelayreason 转院类型构成比 tran_hos_type TOAST分型构成比 toast AIS介入再通术前HIHSS评分构成比 ais_nihss 出院时NIHSS评分构成比 aneu_nihss
创伤 http://127.0.0.1:8000/api/trauma_rescue/count/?count_period=month 中毒 http://127.0.0.1:8000/api/toxic_rescue/count/?count_period=month
# 初步诊断趋势图 http://127.0.0.1:8000/api/chestpain_rescue/count/?count_period=month 返回:[ { "count": 0, "detail": { # 各个类目详情 "unknown": 0, # unknown 为未填写的 "1": 0, "3": 0, "2": 0, "5": 0, "4": 0, "7": 0, "6": 0, "8": 0 }, "month": "2021-02" } CP_DIAGNOSIS_CODE_CHOICES = ( ("1", 'STEMI'), ("2", 'NSTEMI'), ("3", 'UA'), ("4", '主动脉夹层'), ("5", '肺动脉栓塞'), ("6", '非ACS心源性胸痛'), ("7", '其它非心源性胸痛'), ("8", '待查'), ) # 初步诊断构成比 count_type=first_diagnosis # 每个count_type的值 跟筛选方法的值是一样的 比如 这里是构成比count_type=first_diagnosis # 那么筛选时 对应接口应该为 http://127.0.0.1:8000/api/chestpain_rescue/?first_diagnosis=1 # 1为下面 name返回 ↓↓ http://127.0.0.1:8000/api/chestpain_rescue/count/?count_period=month&count_type=first_diagnosis 返回 [ { "count": 0, "zh_name": "STEMI", # 中文名 "name": "1" # 用来跳转筛选的值 !! }, ] # 构成比的结构都同上 count_type 分别有 come_from 来院方式 tran_hos_type 转院类型 d2wtype d2w构成比 gracescoretype grace评分构成比 d2wdelayreason d2w延误原因构成比 # 平均时间平均费用 count_type 分别有 注意这里跳转不用加筛选条件! hosdaymean 平均住院天数 hosfeemean 平均住院费用 d2wmean d2w平均时间 返回体如下 [ { "count": 0, "month": "2021-02" }, { "count": 0, "month": "2021-03" }, ]
# 接口查询方法 默认访问获得最近12月数据 http://127.0.0.1:8000/api/basic_rescue/count/?count_period=month 返回结构: [ { "count": 0, "detail": { # 各个病种详情 "1": 0, "9": 0, "3": 0, "2": 0, "unknown": 0 # 病种未选择 }, "month": "2020-07" }, ] # DISEASE_TYPE_CHOICES = ( ('1', '消化道出血'), ('2', '房颤'), ('3', 'ECMO'), ('9', '其他'), ) 查找某段时间 http://127.0.0.1:8000/api/basic_rescue/count/?count_period=month&created_time[]=2020-12-01&created_time[]=2021-12-01 跳转到病历 https://new.dottmed.com/huaxiadmin/#/record/other?disease_type=1&month=2021-06-01
查看心电图列表 api/device/ecg_pic/?patient_id=xxx 心电图机图片接口 xxx为 patient.id 注意不要搞错 更新对应的心电图 api/device/ecg_pic/{id} id为上面列表里面返回的id 主要字段为 patient_id = '患者id' created_time = u'心电图时间' diagnosis_time = u'诊断时间' ecg_url_img = '心电图图片文件' 其他字段是心电图机上传用的 忽略不管
获取当前值班护士医生司机的即可偶 get /api/schedule/current_worker/ 返回 { "current_nurse": [ #护士 { "username": "laowu", # 姓名 "first_name": "", "id": 3 # id } ], "current_doctor": [], #医生 "current_driver": [ # 当前值班的司机列表 { "name": "XIAOWU", #姓名 "id": 3 } ] }
post /api/patient/patient/212/withdraw_arch/ 注意:212为patient.id 对应接口名 撤销 withdraw_arch /api/patient/patient/ {patientid}/withdraw_arch/ 审核通过 accept_arch /api/patient/patient/{patientid}/accept_arch / 审核拒绝 refuse_arch 提交归档 ask_arch 返回 { "msg": "已撤销归档申请!", "arch_status": "0" # 归档状态 } 归档状态 ArchChoice = (("0", '未归档'), ("1", '已提交归档审核'), ("2", '归档已通过'), ("3", '归档已拒绝'), )
# 访问接口 http://localhost:8000/api/schedule/driver/ 获取排班列表 默认返回本周的排班 # 使用参数schedule_day[] 获取指定日期范围排班 如 http://localhost:8000/api/schedule/driver/?schedule_day[]=2021-06-25&schedule_day[]=2021-06-25 # 更新特定排班 编辑排班是下拉框选择救护车 传个救护车id过来 http://localhost:8000/api/schedule/driver/{id} # 主要修改传参schedule_detail里列表里面每个ambulance的id
1.任务趋势图
默认start_time[]为空则为12个月的统计数据
时间筛选使用先后顺序的两个start_time[]传参
http://127.0.0.1:8000/api/ambulance/task_count/?count_period=month&start_time[]=2020-12-01&start_time[]=2022-12-01
返回结构
[ { "count": 0, #总数 "start_time": "2020-12" #开始时间 }, { "count": 0, "start_time": "2021-01" }, ]
2.各种饼图 传入 count_type 统计类型
统计类型有 emergency_type 出车急救类型 hospital 医院 nurse 随车护士 doctor 随车医生 car 车两名称 driver 司机名
http://127.0.0.1:8000/api/ambulance/task_count/?count_period=month&start_time[]=2020-12-01&start_time[]=2021-06-20&count_type=car
返回结构 主要字段count 数量 name 返回中文名 如司机名 车牌号 医院名称 注意: 急救类型name返回是1 2 3 .. 9 需要手动做映射成中文名
[ { "count": 1, "ambulance__car_number": "32552", "name": "32552" }, { "count": 1, "ambulance__car_number": "65546", "name": "65546" }, ]
使用原来的api/apoplexy 接口 内容放在patient里面传过来 卒中部分的 列表分诊级别筛选使用 由assist_exam_illness_grade 修改为illness_grade 列表显示的分诊级别的对应字段也需修改 修改同常规病例
patient内 inside_rescue_info_chestpain 包含病情评估和院前溶栓治疗字段 not_into_hospital_reason 未入院原因 与是否入院同个地方
会诊消息显示那里 病例的对照表需要小改一下 api/huizhen/mine/接口内的patient内的patient_case字段 新的对照表如下: 胸痛由chestpain 修改为chestpainrescue 创伤由trauma 修改为 traumarescue 常规的 改成basicrescue 增加 中毒 toxicrescue
中毒 和创伤的接口 目前所有的数据跟常规急救一样 把url地址改一下 中毒 api/toxic_rescue/ 创伤 /api/trauma_rescue/
/device/ecg_trends/?patient_id=xxxx 趋势表接口 /device/ifa/?patient_id=xxxx 荧光仪接口 /device/ecg_pic/?patient_id=xxx 心电图机图片接口 心电图机返回结构 { "result": [ { "created_time": "2021-06-02 14:03:52", # 检查时间 "ecg_url": "http://127.0.0.1:8000/media/ecg/_uuuuuu_20210602140352.jpg" #图片地址 } ] }
patient.pre_ambulance_info 内的 device_video_url 救护车医疗设备盒子视频 transfer_uids 转运id
接口 http://127.0.0.1:8000/api/common/history/?table_name=basic_basicrescue&instance_id=80 通过table_name 表名 + 病例id 查询 table_name 对照表 卒中 apoplexy_apoplexy 常规急救basic_basicrescue 中毒为 传toxic_toxicrescue 胸痛为chestpainx_chestpainrescue 创伤为traumax_traumarescue
安装自写的包 drf-safe-jack==3.9.3 # settins.py INSTALLED_APPS = [ ..., 'track_actions', ] MIDDLEWARE = [ ... , 'track_actions.requestMiddleware.RequestMiddleware', ] python manage.py migrate track_actions # url.py url(u'^api/', include('track_actions.urls')), # 即可在 api/history 目录下获取到所有的历史记录
签到接口 post http://127.0.0.1:8000/api/patient/mdt_sign/ 参数 timestamp 当前时间戳如1622802934.037 patient_id 患者id 查看签到列表 http://127.0.0.1:8000/api/patient/mdt/?patient__id=1 1为患者id web端二维吗生成说明 每隔10秒生成一次二维吗 二维码内容为 患者id+当前时间戳如 “1,1622802934.037” 逗号分割 安卓端扫码后 拿到这个字符串解析
更新会诊意见接口 https://new.dottmed.com/api/huizhen/mine/20336/ 20336为房间号 使用patch方法 内容为 { "opinion": "xxssss" # 会诊意见 }
把所有的put delete方法改成post 请求 并在请求头加入method=put 或者method=delete 同时支持原有的方法
GET /api/ambulance/view/{id}/end_task/
创建救护车任务 /ambulance/task/ 传入司机driver id 救护车ambulance id 目的地经纬度 target_lon target_lat* 目的地完整地址包括省份信息由地图sdk获取 target_address /查看任/ambulance/task/{id}
接口位置 /api/common/score_record/ 这里是所有评分的保存位置 # 查找对应病例患者的评分细节使用 /api/common/score_record/?case_id=65&case_type=9&score_type=MEWS case_id 是病例id case_type是病例类型 score_type是评分的类型 如MEWS 返回结果: { "id": 7, "case_id": 5, "case_type": "9", "score_type": "TRTS", "score_data": "[{\"label\":\"意识状态\",\"value\":3,\"tab\":[{\"name\":\"4 = 13~15分\",\"value\":4},{\"name\":\"3 = 9~12分\",\"value\":3},{\"name\":\"2 = 6~8分\",\"value\":2},{\"name\":\"1 = 4~5分\",\"value\":1},{\"name\":\"0 = 3分\",\"value\":0}]},{\"label\":\"呼吸\",\"value\":3,\"tab\":[{\"name\":\"4 = 10~29\",\"value\":4},{\"name\":\"3 = >29\",\"value\":3},{\"name\":\"2 = 6~9\",\"value\":2},{\"name\":\"1 = 1~5\",\"value\":1},{\"name\":\"0 = 0\",\"value\":0}]},{\"label\":\"收缩压\",\"value\":1,\"tab\":[{\"name\":\"4 = >89\",\"value\":4},{\"name\":\"3 = 76~89\",\"value\":3},{\"name\":\"2 = 50~75\",\"value\":2},{\"name\":\"1 = 1~49\",\"value\":1},{\"name\":\"0 = 0\",\"value\":0}]}]" } 更新对应的评分: 利用上面的id进行put更新即可 # 这里本来是打算web端做通用的网页给安卓调用的 但是现在没做 #所以这个score_type 跟 score_data 的定义跟结构要跟web端对一下 现在是由web端定义的
绘制时长说明
pleth 波形 # 注意pleth 也就是数组一共5*60=300个数据包 50是基准线 每秒推送一次数据 页面长度5秒 ecg波形 # 0是基准线 如果是32767说明没有数据此时数据在基准线 每秒推送一次数据 页面长度为5秒 resp呼吸波形 # 范围为128到-128 超出自动截断 基准点是0 呼吸界面的时间长度是16秒
收到biz是medical_device的消息推送 从里面data拿数据 具体data的内容参考下面一个说明
# websocket收到的格式 {"biz": "medical_device", "data": {}}
data内容的说明
# machine存放机器信息 含有MINDRAY_D-SERIES是心电监护仪 目前只有心电监护仪推数据 # patient放患者信息 通过patient_id来读取指定病人的数据 测试数据patient_id为空 # project_name 是对应的检查项目名称 参考下方检查项目中文名对照表 # project_data 存放检查数据 # msg_type 有两种 plain是普通的数据推送 wave是波形数据 # 1. plain普通数据返回如下 data = {'machine': {'machine_name': 'MINDRAY_D-SERIES-00A0370099002EAB-EUI-64'}, 'patient': {'patient_id': ''}, 'project_name': 'MDC_PRESS_CUFF_SYS', # 对于数据不是波形数据的 msg_type是plain 这个project_name可以不用管 直接从project_data拿数据 'project_data': { 'MDC_PRESS_CUFF_SYS': '106', 'MDC_PRESS_CUFF_MEAN': '86', 'MDC_PRESS_CUFF_DIA': '76'}, 'msg_type': 'plain' } #2.波形数据返回如下 data = {'machine': {'machine_name': 'MINDRAY_D-SERIES-00A0370099002EAB-EUI-64'}, 'patient': {'case_id': ''}, 'project_name': 'MDC_PULS_OXIM_PLETH', 'project_data': { 'start': '2021-05-19T10:41:39', #开始时间 'end': '2021-05-19T10:41:40', # 结束时间 'data': ['59', '57', '55', '53', '51', '49', '47', '45', '43', '41', '39', '37', '35', '33', '29', '27', '24', '22', '20', '17', '14', '11', '7', '3', '0', '2', '2', '5', '12', '21', '33', '46', '58', '69', '77', '83', '85', '86', '85', '84', '83', '82', '81', '78', '76', '74', '73', '71', '70', '70', '69', '69', '68', '67', '66', '64', '61', '59', '56', '54'], 'length': 60 # 每秒内总共给了多少个数据 }, 'msg_type': 'wave' }
中文名对照表
DICTNAME_MAP = { # 缩略词对照表 # 这部分是波形的数据参考名 wave "MDC_IMPED_TTHOR": "用于绘制RESP曲线数据",# "MDC_ECG_ELEC_POTL_I": "I导联电压", "MDC_ECG_ELEC_POTL_II": "II导联电压", "MDC_ECG_ELEC_POTL_III": "III导联电压", "MDC_ECG_ELEC_POTL_AVL": "AVL导联电压", "MDC_ECG_ELEC_POTL_AVR": "AVR导联电压", "MDC_ECG_ELEC_POTL_AVF": "AVF导联电压", "MDC_ECG_ELEC_POTL_V1": "V1导联电压", "MDC_ECG_ELEC_POTL_V2": "V2导联电压", "MDC_ECG_ELEC_POTL_V3": "V3导联电压", "MDC_ECG_ELEC_POTL_V4": "V4导联电压", "MDC_ECG_ELEC_POTL_V5": "V5导联电压", "MDC_ECG_ELEC_POTL_V6": "V6导联电压", "MDC_PULS_OXIM_PLETH": "指尖容积Pleth曲线数据", # 这里是plain里的值 "MDC_ECG_HEART_RATE": "心率HR", "MDC_TTHOR_RESP_RATE": "呼吸RESP", "MDC_PULS_OXIM_SAT_O2": "血氧饱和度spo2", "MDC_PULS_OXIM_PULS_RAT": "脉率PR", "MDC_PRESS_CUFF_SYS": "无创血压NIBP-收缩压(大)", "MDC_PRESS_CUFF_DIA": "无创血压NIBP-舒张压(小)", "MDC_PRESS_CUFF_MEAN": "无创血压NIBP-平均值", }
详见 swagger /common/switchcase/ 说明 目前只有常规到卒中的接口生效,仅基础信息部分能同步,其他后续增加支持
创建多对多后 需要在common/model 里面添加选项 需要在init_data 尾部添加选项 config接口才能搜索到
下面的字段迁移到patient里面
### 这部分字段统统放在patient里面 需要修改一下 对应取config的选项名也需要修改一下 come_from = models.CharField( u'来院方式', choices=COME_FROM_CHOICES, max_length=1, null=True, blank=True) disease_time = models.DateTimeField(u'发病时间(精确到分钟)', null=True, blank=True) is_null_attack_detail_time = models.NullBooleanField( '发病时间无法精确到分钟', null=True, blank=True, choices=COMMON_BOOLEAN_CHOICES) disease_date = models.DateField(u'发病日期', null=True, blank=True) disease_time_type = models.CharField( u'发病时间类型', choices=TIME_TYPES, max_length=2, null=True, blank=True) disease_address = models.CharField( u'发病地址', choices=DISEASE_ADDR_CHOICES, max_length=20, null=True, blank=True) disease_address_other = models.TextField(u'其他发病地址', null=True, blank=True) disease_type = models.CharField( '病种类型', choices=DISEASE_TYPE_CHOICES, max_length=2, null=True, blank=True, default='9')
# 接口1 呼叫管理分类列表 http://127.0.0.1:8000/api/call/typelist/ 返回 { "total": 1, "name": "胸痛急救", "value": "1" },】 # 接口2 呼叫管理 新增 删除 列表 更新 详见swagger 操作同会诊新增删除 http://127.0.0.1:8000/api/call/manager/ 呼叫列表筛洗条件 ?type=1 type是病历类型 值可以用接口1返回的值
# 接口地址 # http://127.0.0.1:8000/api/basic_rescue/data_statistic/data/ #=查询参数 start_time end_time # 返回 { "current_search": [], #搜索的结果 "recent_data": [] # 近一年的统计数据 }
# 如下图所示 在config接口 查找job字段(目前只修改了这个字段,后面新增的字段都会按这个方法来做) # 对于这种单选不确定的选项 我们提供几个默认值 用户可以点选,这部分逻辑跟之前一样没变 # 但是现在可以在点选框下面多加一个输入框 让用户任意输入自定义的选项值传过来
# 数据统计接口 https://new.dottmed.com/api/chestpain/data_screening/ # https://new.dottmed.com/api/chestpain/data_screening_detail/?unit=month&start_time=2020-04-01&end_time=2021-04-01 # 基础急救时间节点 https://new.dottmed.com/api/basic_rescue/time_node/{id}/
'start_time', 'end_time', 'patient__gender', 'come_from', 来院方式 'patient__name', 'patient__pat_med_card', 门诊号 'patient__inpatient_no', 住院号 'is_huizhen', 是否为会诊 'illness_grade', 分诊级别 'disease_type', 疾病类型 "illness_grade", 分诊级别 # 说明illness_grade 为空时传unknown过来!
heart_attack_time = models.DateTimeField('心脏骤停发生时间', null=True, blank=True) witness_start_pcr_time = models.DateTimeField('目击者启动CPR时间', null=True, blank=True) # 注释掉的这部分字段应该是不可更改的 这里我映射对应病历的字段到这里!!! # call_time = models.DateTimeField('呼救时间', null=True, blank=True) # send_car_time = models.DateTimeField('派车时间', null=True, blank=True) # car_start_time = models.DateTimeField('救护车出发时间', null=True, blank=True) # arrive_scene_time = models.DateTimeField('到达现场时间', null=True, blank=True) # leave_scene_time = models.DateTimeField('离开现场时间', null=True, blank=True) # 重复的字段 doctor_start_pcr_time = models.DateTimeField('医务人员启动CPR时间', null=True, blank=True) set_breath_way_time = models.DateTimeField('建立高级气道时间', null=True, blank=True) set_breath_way_method = models.CharField('建立高级气道方式', choices=BREATH_WAY_CHOICES, max_length=50, null=True, blank=True) set_venous_way_time = models.DateTimeField('建立静脉通道时间', null=True, blank=True) set_venous_way_method = models.CharField('建立静脉通道类型', choices=VENOUS_WAY_CHOICES, max_length=50, null=True, blank=True) first_use_drug_time = models.DateTimeField('第一次给药时间', null=True, blank=True) first_use_drug_type = models.CharField('第一次给药类型', choices=USE_DRUG_CHOICES, max_length=50, null=True, blank=True) first_use_drug_dose = models.CharField('第一次给药剂量',max_length=50, null=True, blank=True) first_defibrate_time = models.DateTimeField('第一次除颤时间', null=True, blank=True) first_defibrate_type = models.CharField('第一次除颤频次', choices=DEFIBRATE_CHOICES, max_length=50, null=True, blank=True) rosc_time = models.DateTimeField('ROSC时间', null=True, blank=True) heart_attack_reason = models.TextField('心脏骤停发生原因', null=True,blank=True) heart_attack_patinet_status = models.TextField('心脏骤停发生时患者状态', null=True,blank=True) heart_attack_address = models.CharField('心脏骤停发生地点', choices=HEARTATTACK_ADDRESS_CHOICES, max_length=50, null=True, blank=True) heart_attack_init_hr = models.IntegerField('心脏骤停初始心率', null=True,blank=True)
#路由位置 /api/basic_rescue/ # 新增字段 has_cpr_pre 院前是否进行cpr 返回结构为: { .... 表层为基本信息字段及院前信息字段, "assist_examination":"院内急救部分字段", "vital_signs":"生命体征字段,院前院内都在这里", } ## 表层字段说明: # 基本急诊相关信息 come_from = models.CharField( u'来院方式', choices=COME_FROM_CHOICES, max_length=1, null=True, blank=True) illness_grade = models.CharField( '分诊级别', choices=ILLNESS_GRADE_CHOICES, max_length=2, null=True, blank=True) disease_time = models.DateTimeField(u'发病时间(精确到分钟)', null=True, blank=True) is_null_attack_detail_time = models.NullBooleanField( '发病时间无法精确到分钟', null=True, blank=True, choices=COMMON_BOOLEAN_CHOICES) disease_date = models.DateField(u'发病日期', null=True, blank=True) disease_time_type = models.CharField( u'发病时间类型', choices=TIME_TYPES, max_length=2, null=True, blank=True) disease_address = models.CharField( u'发病地址', choices=DISEASE_ADDR_CHOICES, max_length=20, null=True, blank=True) disease_address_other = models.TextField(u'其他发病地址', null=True, blank=True) disease_type = models.CharField( '病种类型', choices=DISEASE_TYPE_CHOICES, max_length=2, null=True, blank=True) # 这部分字段是院前的统统不要放在这里 这里应该是一个总表 不放太多具体的字段 # 院前部分! call_time = models.DateTimeField('呼救时间', null=True, blank=True) send_car_time = models.DateTimeField('派车时间', null=True, blank=True) car_start_time = models.DateTimeField('救护车出发时间', null=True, blank=True) arrive_scene_time = models.DateTimeField('到达现场时间', null=True, blank=True) leave_scene_time = models.DateTimeField('离开现场时间', null=True, blank=True) car_number = models.CharField('车牌号', max_length=50, null=True, blank=True) car_nurse = models.CharField('随车护士', max_length=50, null=True, blank=True) car_doctor = models.CharField('出车医生', max_length=50, null=True, blank=True) has_cpr_pre = models.NullBooleanField( '是否进行院前心肺复苏', null=True, blank=True, choices=COMMON_BOOLEAN_CHOICES) ## assit_exam 字段 hospital_arrive_time = models.DateTimeField(u'到达本院大门时间', null=True, blank=True) triage_time = models.DateTimeField(u'急诊分诊时间', null=True, blank=True) triage_nurse = models.CharField(u'分诊台护士', max_length=50, null=True, blank=True) register_time = models.DateTimeField(u'挂号时间', null=True, blank=True) last_modified = models.DateTimeField(u'最近更新时间', auto_now=True) # 入院情况部分 # todo patient的 住院科室应该从这里拿 his也是同步到这里 into_hospital_status = models.NullBooleanField('入院情况', blank=True) not_into_hospital_reason = models.CharField( '未入院原因及去向', choices=NOT_INSIDE_CHOICES, max_length=2, null=True, blank=True) leave_emergency_time = models.DateTimeField('离开急诊科时间', null=True, blank=True) into_hospital_time = models.DateTimeField('入院时间', null=True, blank=True) get_certificate_time = models.DateTimeField('开入院证时间', null=True, blank=True) 返回结构如图:
# 发送的数据包内容位 根据biz wrist_arrive 和病人的id来判断是否需要刷新 {'biz': 'wrist_arrive','patient_id':xxx}
hospital_arrive_time 在apoplexy接口内assist_examination字段里面 time_node 接口 返回 ('ODT(发病~到院)', 'ODT'), ODT 为filed_name ('ONT(发病~溶栓)', 'ONT'), ('DNT(入院~溶栓)', 'DNT'), ('DPT(入院~穿刺)', 'DPT'), ('DRT(入院~血管再通)', 'DRT'),
# 查看文章目录 http://127.0.0.1:8000/api/article/article_category/ # 文章列表 http://127.0.0.1:8000/api/article/article/?category_id=2 返回值中的url为文章detail的链接 # web端采用富文本编辑器 具体参考龙洞项目
# 都在apoplexy接口内assist_examination字段里面 ecg_report = models.TextField('心电图报告链接', null=True, blank=True) liver_kidney_electrolyte_report = models.TextField('生化报告链接', null=True, blank=True) coagulation_report = models.TextField('凝血报告链接', null=True, blank=True) blood_report = models.TextField('血常规报告链接', null=True, blank=True) collect_blood_report = models.TextField('快速血糖血气报告链接', null=True, blank=True) biomarker_report = models.TextField('心肌标志物报告链接', null=True, blank=True) color_ct_report = models.TextField('彩超报告链接', null=True, blank=True) ct_report = models.TextField('CT报告链接', null=True, blank=True)
# 这里是从account/user里面进行筛选拿数据 如 https://new.dottmed.com/api/account/users/?teams=488&channel_type=1 teams是病例类型 channel_type是 绿通类型
# 访问地址 https://new.dottmed.com/swagger/
# 具体选项在https://new.dottmed.com/api/common/config/ 这个接口里面查找channel_type # 所有有选项的都是在这里面拿 channel_type = models.CharField( '绿色通道类型', choices=CHANNEL_CHOICES, max_length=2, default='1')
// 前端这里参考胸痛修改即可 is_null_attack_detail_time = models.NullBooleanField( '发病时间无法精确到分钟', null=True, blank=True, choices=COMMON_BOOLEAN_CHOICES) disease_date = models.DateField(u'发病日期', null=True, blank=True) disease_time_type = models.CharField( u'发病时间类型', choices=TIME_TYPES, max_length=2, null=True, blank=True)
('ODT(发病~到院)', 'ODT'),
# apoplexy 接口 disease_address = models.CharField( u'发病地址', choices=DISEASE_ADDR_CHOICES, max_length=20, null=True, blank=True) strok_pre_symptom 发病症状 strok_pre_symptom_other = models.CharField('其他发病症状', max_length=200, null=True, blank=True) # apoplexy接口内 examination字段内 out_center_time = models.DateTimeField('出卒中中心时间', null=True, blank=True) ncx_area = models.IntegerField( '出血大小', validators=[validate_ncx_area_range], null=True, blank=True) ncx_l_site 出血部位左侧 ncx_r_site 出血部位右侧 yx_lnxg_check 颅内血管检查 ncx_cause 脑出血病因诊断
// 接口地址 : http://127.0.0.1:8000/api/common/cdss_info/ {patient_id}/ // 传入patient的id即可 // 示例 var axios = require('axios'); var data = JSON.stringify({ "wristlet": "100", "field": "arrive_emrescue_room_time" }); var config = { method: 'get', url: 'http://127.0.0.1:8000/api/common/cdss_info/16/', headers: { 'authorization': 'Token c0088f3dc7798579d8d356e83587e59e4e75043e', 'Content-Type': 'application/json' }, data : data }; axios(config) .then(function (response) { console.log(JSON.stringify(response.data)); }) .catch(function (error) { console.log(error); });
获取接口返回以下内容
data['illness_grade'] =patient.illness_grade data['case_type'] = 'apoplexy' data['first_nerve_recieve_time'] = patient.apoplexy.assist_examination.first_nerve_recieve_time data['first_nerve_arrive_time'] = patient.apoplexy.assist_examination.first_nerve_arrive_time data['rs_talking_time'] = patient.apoplexy.thrombolysis.talking_time data['rs_sign_time'] = patient.apoplexy.thrombolysis.sign_time data['rs_medication_time'] = patient.apoplexy.thrombolysis.medication_time data['jr_send_to_catheter_time'] = patient.apoplexy.therapy.send_to_catheter_time # 送导管室时间 data['jr_talk_time'] = patient.apoplexy.therapy.talk_time data['jr_sign_time'] = patient.apoplexy.therapy.sign_time data['jr_embolectomy_time'] = patient.apoplexy.therapy.embolectomy_time data['intra_acknowlege_images'] = patient.apoplexy.thrombolysis.intra_acknowlege_images.all() data['inter_acknowlege_images '] = patient.apoplexy.therapy.inter_acknowlege_images.all()
更新接口加入前缀即可!
传值用 pre_ecg_in 取值用pre_ecg 传值inside_ecg_in 取值inside_ecg 救护车出发时间字段car_start_time已修复
溶栓谈话字段加上 rs_ 介入导管字段加上jr_前缀 溶栓、介入知情同意书图片字段位于其他接口 见下
# 溶栓相关字段 talking_time = models.DateTimeField('静脉溶栓开始谈话时间', null=True, blank=True) sign_time = models.DateTimeField('患者/家属签字时间', null=True, blank=True) medication_time = models.DateTimeField('开始静脉溶栓时间', null=True, blank=True) # 介入导管相关字段 send_to_catheter_time = models.DateTimeField('送导管室时间', null=True, blank=True) talk_time = models.DateTimeField('开始知情谈话时间', null=True, blank=True) sign_time = models.DateTimeField('介入治疗家属签字时间', null=True, blank=True) embolectomy_time = models.DateTimeField('开始介入治疗时间', null=True, blank=True)
intra_acknowlege_images 溶栓知情同意书图片 位于apoplexy/thrombolysis接口 inter_acknowlege_images 介入治疗知情同意书图片 位于 apoplexy/threapy接口
使用unknown来筛选分诊等级为空的病例
apoplexy/?assist_examination__illness_grade=unknown
查询腕带信息
http://127.0.0.1:8000/api/chestpain/get_wrist_info/?wristlet=100
更新腕带信息
http://127.0.0.1:8000/api/chestpain/update_arrive_time/ {"wristlet":"100","field":"arrive_emrescue_room_time"}
会诊房间命名 胸痛10开头 卒中20开头 创伤30开头
"patient": { "case_id": 16, // 病例id "illness_grade": null , "case_tpe":"apoplexy" //返回病例类型 },
默认上传格式 图片放在imgs里面 这里传值用 pre_ecg_in 取值用pre_ecg 传值inside_ecg_in 取值inside_ecg
"pre_ecg": [ { "imgs": [], "ecg_fetch_time": null, "ecg_diagnosis_time": null } ], "inside_ecg": [ { "imgs": [], "ecg_fetch_time": null, "ecg_diagnosis_time": null }
在原来字段前加上pre前缀
# 院前生命体征 pre_conscious = models.CharField( '院前意识', choices=CONSCIOUS_CHOICES, max_length=2, null=True, blank=True) pre_breathe = models.IntegerField('院前呼吸(次/分钟)', null=True, blank=True) pre_pulse = models.IntegerField('院前脉搏(次/分钟)', null=True, blank=True) pre_heart_rate = models.IntegerField('院前心率(次/分钟)', null=True, blank=True) pre_hight_mmhg = models.IntegerField('院前收缩压(mmHg)', null=True, blank=True) pre_bottom_mmhg = models.IntegerField('院前舒张压(mmHg)', null=True, blank=True) pre_temperature = models.CharField(u'院前体温(℃)', max_length=15, null=True, blank=True) pre_height = models.FloatField('院前身高(cm)', null=True, blank=True) pre_weight = models.FloatField('院前体重(kg)', null=True, blank=True) pre_quickly_blood_sugar = models.FloatField('院前快速血糖', null=True, blank=True) pre_bmi = models.FloatField('院前BMI', null=True, blank=True) pre_blood_oxygen = models.FloatField('血氧饱和度', null=True, blank=True) pre_ecg_collect_time = models.DateTimeField('院前心电采集时间', null=True, blank=True) pre_ecg_diagnosis_time = models.DateTimeField('院前心电确诊时间', null=True, blank=True) pre_troponin = models.FloatField('院前肌钙蛋白', null=True, blank=True) pre_left_pupil = models.FloatField('院前左瞳孔', null=True, blank=True) pre_right_pupil = models.FloatField('院前右瞳孔', null=True, blank=True) pre_light_reflex = models.CharField( '院前对光反射', choices=LIGHT_REFLEX_CHOICES, max_length=2, null=True, blank=True) # 主诉及症状 symptoms_multi = models.ManyToManyField( SymptomsMulti, related_name='vital_signs', verbose_name=u'主诉及症状', blank=True) collect_blood_time = models.DateTimeField('快速血糖时间', null=True, blank=True) pre_collect_blood_time = models.DateTimeField('院前快速血糖时间', null=True, blank=True) delivery_time = models.DateTimeField('送检时间', null=True, blank=True)
# 基本信息 院前 car_start_time = models.DateTimeField('救护车出发时间', null=True, blank=True) car_doctor = models.CharField('出车医生', max_length=50, null=True, blank=True) car_arrive_time = models.DateTimeField('120到达时间', null=True, blank=True) in_hospital_time = models.DateTimeField('住院时间', null=True, blank=True) in_hospital_department = models.CharField('住院科室', max_length=50, null=True, blank=True) strok_pre_symptom = models.ManyToManyField( 'apoplexy.StrokPreSymptomMultiChoices', related_name='apoplexy_strok_pre_symptom', blank=True) strok_pre_symptom_other = models.CharField('其他卒中预警症状', max_length=200, null=True, blank=True)
位于apoplexy接口内 assist_examination字段 或 examination接口 内
# 神内会诊 ask_nerve_huizhen_time = models.DateTimeField('通知神内会诊时间', null=True, blank=True) first_nerve_recieve_time = models.DateTimeField('神内一线医生接诊时间', null=True, blank=True) first_nerve_arrive_time = models.DateTimeField('神经内科会诊到达时间', null=True, blank=True) first_nerve_doctor = models.CharField('神内一线医生', max_length=50, null=True, blank=True) into_hospital_status = models.NullBooleanField('入院情况', blank=True) not_into_hospital_reason = models.CharField( '未入院原因及去向', choices=NOT_INSIDE_CHOICES, max_length=2, null=True, blank=True) leave_emergency_time = models.DateTimeField('离开急诊科时间', null=True, blank=True) into_hospital_time = models.DateTimeField('入院时间', null=True, blank=True) into_nerve_time = models.DateTimeField('进入神经内科病房时间', null=True, blank=True) into_nerve2_time = models.DateTimeField('进入神经内科2病房时间', null=True, blank=True) into_nerve3_time = models.DateTimeField('进入神经内科3病房时间', null=True, blank=True) into_nerve_sur_time = models.DateTimeField('进入神经外科病房时间', null=True, blank=True) get_certificate_time = models.DateTimeField('开入院证时间', null=True, blank=True) arrive_icu_time = models.DateTimeField('到达ICU时间', null=True, blank=True)
# 检验医嘱信息 下医嘱 执行 采样 收养 出报告 collect_blood_advice_time = models.DateTimeField('首次测指尖血糖/血气分析医嘱时间', null=True, blank=True) blood_advice_time = models.DateTimeField('开具血细胞分析医嘱时间', null=True, blank=True) coagulation_advice_time = models.DateTimeField('开具术前凝血常规医嘱时间', null=True, blank=True) liver_kidney_advice_time = models.DateTimeField('开具生化1-6医嘱时间', null=True, blank=True) biomarker_advice_time = models.DateTimeField('开具心肌标志物医嘱时间', null=True, blank=True) # 血气血糖时间 collect_blood_time = models.DateTimeField('快速血糖血气实际采血时间', null=True, blank=True) collect_blood_send_time = models.DateTimeField('快速血糖血气采样时间', null=True, blank=True) collect_blood_recieve_time = models.DateTimeField('快速血糖血气收样时间', null=True, blank=True) collect_blood_report_time = models.DateTimeField('快速血糖血气报告时间', null=True, blank=True) # 血常规 blood_time = models.DateTimeField('血常规实际采血时间', null=True, blank=True) blood_send_time = models.DateTimeField('血常规采样送检时间', null=True, blank=True) blood_recieve_time = models.DateTimeField('血常规检验室收样时间', null=True, blank=True) blood_report_time = models.DateTimeField('血常规检验报告时间', null=True, blank=True) blood_start_time = models.DateTimeField('血常规检验开始时间', null=True, blank=True) blood_doctor = models.CharField('血常规检验医生', max_length=50, null=True, blank=True) # 凝血 coagulation_time = models.DateTimeField('凝血检验实际采血时间', null=True, blank=True) coagulation_send_time = models.DateTimeField('凝血检验采样时间', null=True, blank=True) coagulation_recieve_time = models.DateTimeField('凝血检验收样时间', null=True, blank=True) coagulation_report_time = models.DateTimeField('凝血检验出报告时间', null=True, blank=True) coagulation_doctor = models.CharField('凝血功能检验医生', max_length=50, null=True, blank=True) # 生化时间 liver_kidney_electrolyte_time = models.DateTimeField( '生化检验实际采血时间', null=True, blank=True) liver_kidney_electrolyte_send_time = models.DateTimeField( '生化检验采样时间时间', null=True, blank=True) liver_kidney_electrolyte_recieve_time = models.DateTimeField( '生化检验收样时间时间', null=True, blank=True) liver_kidney_electrolyte_report_time = models.DateTimeField( '生化检验出报告时间', null=True, blank=True) liver_kidney_electrolyte_check_time = models.DateTimeField( '生化检验开始时间', null=True, blank=True) liver_kidney_electrolyte_doctor = models.CharField( '生化检验医生', max_length=50, null=True, blank=True) # 心肌标志物 biomarker_time = models.DateTimeField('心肌标志物采血时间', null=True, blank=True) biomarker_send_time = models.DateTimeField('心肌标志物采样时间', null=True, blank=True) biomarker_recieve_time = models.DateTimeField('心肌标志物收样时间', null=True, blank=True) biomarker_report_time = models.DateTimeField('心肌标志物报告时间', null=True, blank=True) # 肌钙蛋白 troponin_time = models.CharField('肌钙蛋白时间', max_length=50, null=True, blank=True) troponin_value = models.FloatField('肌钙蛋白值', null=True, blank=True)
color_ct_advice_time = models.DateTimeField('开具彩超医嘱时间', null=True, blank=True) color_ct_notice_time = models.DateTimeField('通知彩超室时间', null=True, blank=True) color_ct_check_time = models.DateTimeField('彩超检查时间', null=True, blank=True) color_ct_result_time = models.DateTimeField('彩超出结果时间', null=True, blank=True) ct_atient_time = models.DateTimeField('患者到达CT1室时间', null=True, blank=True) ct_atient_time_2 = models.DateTimeField('患者到达CT2室时间', null=True, blank=True) ct_atient_time_3 = models.DateTimeField('患者到达CT3室时间', null=True, blank=True) ct_atient_time_4 = models.DateTimeField('患者到达CT4室时间', null=True, blank=True) arrive_micu_time = models.DateTimeField('到达MICU时间', null=True, blank=True) arrive_nicu_time = models.DateTimeField('到达NICU时间', null=True, blank=True) arrive_eicu_time = models.DateTimeField('到达EICU时间', null=True, blank=True) arrive_emsg_room_time = models.DateTimeField('到达急诊手术室时间', null=True, blank=True) arrive_emrescue_room_time = models.DateTimeField('到达抢救室时间', null=True, blank=True) ct_report_time = models.DateTimeField('CT报告时间', null=True, blank=True) ct_start_time = models.DateTimeField('CT执行时间', null=True, blank=True) ct_scan_time = models.DateTimeField('CT扫描时间/首张图像时间', null=True, blank=True) ct_end_time = models.DateTimeField('CT扫描结束时间', null=True, blank=True) # 改名为:开具医嘱套餐时间 ct_head_time = models.DateTimeField('开具CT医嘱时间', null=True, blank=True)
res = {"is_medication": 429 in apoplexy.treatment_type and True or None,} # 这两个字段根据 治疗类型 来返回值
# C:\Windows\Fonts sudo cp /home/zsy/DENG* /usr/share/fonts cd /usr/share/fonts sudo chmod 644 * sudo fc-cache -fv #或者使用 yum -y install fontconfig fc-cache # 刷新字体
tar -zxvf LibreOffice_6.4.6_Linux_x86-64_rpm.tar.gz cd LibreOffice_6.4.6.2_Linux_x86-64_rpm/RPMS rpm -ivh * ln -s /usr/bin/libreoffice6.4 /usr/bin/libreoffice ln -s /usr/bin/libreoffice6.4 /usr/bin/lowriter # 离线安装依赖包 相互依赖的包需同时安装 https://wwa.lanzous.com/i5AO9mew1la
curl -v -X DELETE 192.168.221.131/api/account/auth/ curl -v -X POST 192.168.221.131/api/apoplexy/88/
https://gitlab.dottmed.com/emergency/huaxi_server/settings/ci_cd 在这里获取注册的参数 sudo gitlab-ci-multi-runner register 注册一下 sudo gitlab-ci-multi-runner restart sudo gitlab-ci-multi-runner list 检查项目有没有开
sudo nano /etc/systemd/system/gitlab-runner.service 修改excutestart 最后用户名为root sudo systemctl daemon-reload sudo systemctl restart gitlab-runner sudo service gitlab-runner restart
git config --global credential.helper store 添加本地缓存 手动获取clone 输入一次密码即可! 在每个项目目录下使用 sudo nano .git/config 配置账号密码 https://username:password@git.dev.tencent.com/xxx/xxx.git
Package | 名称 | Version |
---|---|---|
Django | 2.2.24 | |
Python | 3.8.5 | |
celery | Celery | 4.4.7 |
console | Console | 0.4.7 |
constance | Constance | 2.5.0 |
debug_toolbar | Debug Toolbar | 1.11.1 |
django_celery_beat | Periodic Tasks | 2.0.0 |
django_celery_results | Celery Results | 2.0.1 |
django_extensions | Django Extensions | 3.0.0 |
django_filters | Django_Filters | 21.1 |
drf_yasg | Drf_Yasg | 1.17.1 |
generic_relations | Generic_Relations | 1.1.0 |
import_export | Import_Export | 1.2.0 |
rest_framework | Django REST framework | 3.9.2 |
Resource | 当前值 |
---|---|
User CPU time | 384.000 msec |
System CPU time | 4.000 msec |
Total CPU time | 388.000 msec |
Elapsed time | 565.457 msec |
Context switches | 200 voluntary, 1 involuntary |
Timing attribute | Timeline | Milliseconds since navigation start (+length) |
---|
Setting | 当前值 |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | (('Woody-YT', '284848624@qq.com'),) |
ALI_APPID | 'LTAI4Fw1citgH2hXmoQJxmCW' |
ALI_APP_NAME | 'jhc5g' |
ALI_LIVE_DOMAIN | 'live1.dottmed.com' |
ALI_NOTICE_APPID | 'LTAI5tHM5DNhVZdkBdhroCG7' |
ALI_NOTICE_SECRET_KEY | '********************' |
ALI_OFFLINE | 'TTS_282250009' |
ALI_ONLINE | '2406141817301270080332' |
ALI_OUTCAR | '2406141818098430080336' |
ALI_PRE_ONLINE | 'TTS_287015135' |
ALI_PUSH_DOMAIN | 'push1.dottmed.com' |
ALI_SECRET_KEY | '********************' |
ALI_TEMP | 'TTS_218037909' |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
ASGI_APPLICATION | 'emergency.routing.application' |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'account.MyUser' |
BASE_DIR | '/data/emergency_hx/api/src/emergency' |
BD_MAP_API_AK | '********************' |
BD_MAP_API_HOST | '********************' |
BD_MAP_API_SK | '********************' |
BLE_DUBUG | True |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'cache_table',
'OPTIONS': {'MAX_ENTRIES': 2000},
'TIMEOUT': 600}} |
CACHE_EXPIRED | 7200 |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CDSS_NOT_IN_DEBUG | False |
CDSS_URL_INSIDE | 'http://127.0.0.1/cdss_in/' |
CDSS_URL_OUT | 'https://firstaid.wchscu.cn/cdss/' |
CDSS_URL_OUT_5G | 'http://firstaid.wchscu.cn/cdss/' |
CELERY_ACCEPT_CONTENT | ['pickle', 'json'] |
CELERY_BEAT_SCHEDULER | 'django_celery_beat.schedulers:DatabaseScheduler' |
CELERY_RESULT_BACKEND | 'redis://localhost:6379/14' |
CELERY_RESULT_SERIALIZER | 'pickle' |
CELERY_TASK_SERIALIZER | 'pickle' |
CHANNEL_LAYERS | {'default': {'BACKEND': 'channels_redis.core.RedisChannelLayer',
'CONFIG': {'hosts': [('127.0.0.1', 6379)]}}} |
CHINA_CPC_APPID | '13522' |
CHINA_CPC_HOSPITAL_ID | '1223aecd-0eb2-4d2a-b915-8664fbeff8fd' |
CHINA_CPC_SECRET_KEY | '********************' |
CHINA_CPC_TIANBAOREN | 'fang' |
CHINA_CPC_URL | 'https://webapi.chinacpc.org/Services/V1.1/ChestPainCenter' |
CONSTANCE_BACKEND | 'constance.backends.database.DatabaseBackend' |
CONSTANCE_CONFIG | {'CMD': (False, '是否显示cmd', <class 'bool'>),
'Cddx_appid': ('', '成都电信语音appid', <class 'str'>),
'Cddx_displaynum': ('', '成都电信语音显示来电号码', <class 'str'>),
'Cddx_token': '********************',
'LOG_INTERVAL': (2000, '日志刷新时间', <class 'int'>),
'MAIN_LOG': ('/opt/emergency/logs/uwsgi.log', '服务日志路径', <class 'str'>),
'NGINX_LOG': ('/opt/emergency/logs/nginx/access.log',
'nginx日志路径',
<class 'str'>),
'ambulance_driver': ('', '司机数量', <class 'str'>),
'cljk_url': ('', '车辆监控url', <class 'str'>),
'config_users': ('[\n'
' {\n'
' "type": "出车医生",\n'
' "name": "万医生",\n'
' "phone": "17898446659"\n'
' },\n'
' {\n'
' "type": "出车护士",\n'
' "name": "陈护士",\n'
' "phone": "17898446659"\n'
' },\n'
' {\n'
' "type": "担架员",\n'
' "name": "刘老师",\n'
' "phone": "17898446659"\n'
' },\n'
' {\n'
' "type": "驾驶员",\n'
' "name": "李老师",\n'
' "phone": "17898446659"\n'
' }\n'
']',
'值班配置'),
'ecg': ('', 'ECG设备数量', <class 'str'>),
'emergency_department_doctor': ('', '急诊科医生数量', <class 'str'>),
'emergency_department_nurse': ('', '急诊科护士数量', <class 'str'>),
'fz_yujing_url': ('', '分诊预警url', <class 'str'>),
'his_patient_url': ('', 'his填写url', <class 'str'>),
'hospital_lat': ('23.126755', '纬度', <class 'str'>),
'hospital_logo': ('', '医院logo', <class 'str'>),
'hospital_lon': ('113.35041', '经度', <class 'str'>),
'hospital_name': ('', '医院名称', <class 'str'>),
'medical_information_url': ('', '医疗信息url', <class 'str'>),
'monitor': ('', '多参数监护仪数量', <class 'str'>),
'pad': ('', '急救平板数量', <class 'str'>),
'poct': ('', 'POCT设备数量', <class 'str'>),
'stretcher': ('', '担架员', <class 'str'>),
'talk_url': ('http://81.71.129.230:52467/iVehicleGPS/loginvid.hd',
'救护车通讯链接',
<class 'str'>),
'voice_model': ('zh-CN-shaanxi-XiaoniNeural', '语言模型', <class 'str'>),
'weather_city_code': ('440112', '行政区划编码(天气使用)', <class 'str'>),
'websocket_id': ('huaqiaoBigscreen', 'websocket id', <class 'str'>),
'xunfei_appid': ('', '讯飞appid', <class 'str'>),
'xunfei_appsecret': '********************',
'xunfei_url': ('http://127.0.0.1/xunfei', '讯飞url', <class 'str'>),
'xunfei_userid': ('', '讯飞userid', <class 'str'>),
'zoom_rate': (15, '缩放倍率', <class 'int'>)} |
CPCTOKEN | '********************' |
CREATE_CARD_HOST | '192.168.9.182:9188' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql',
'HOST': '127.0.0.1',
'NAME': 'hqzs',
'OPTIONS': {},
'PASSWORD': '********************',
'PORT': '5432',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': 'hq'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 5242880 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'Y-m-d H:i:s' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S',
'%Y-%m-%d %H:%M:%S.%f',
'%Y-%m-%d %H:%M',
'%Y-%m-%d',
'%m/%d/%Y %H:%M:%S',
'%m/%d/%Y %H:%M:%S.%f',
'%m/%d/%Y %H:%M',
'%m/%d/%Y',
'%m/%d/%y %H:%M:%S',
'%m/%d/%y %H:%M:%S.%f',
'%m/%d/%y %H:%M',
'%m/%d/%y'] |
DATE_FORMAT | 'Y-m-d' |
DATE_INPUT_FORMATS | ('%Y-%m-%d %H:%M:%S', '%Y/%m/%d %H:%M:%S', '%Y-%m-%d %H:%M', '%Y/%m/%d %H:%M') |
DAWEI_ACCOUNT | 'DTYY' |
DAWEI_PASSWORD | '********************' |
DB_ECG_HOST | 'https://dbdev.dottmed.com' |
DB_ECG_TOKEN | '********************' |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_PASSWORD | '********************' |
DEFAULT_TABLESPACE | '' |
DEVELOP | False |
DISALLOWED_USER_AGENTS | [] |
DOMAIN | 'https://new.dottmed.com' |
DOWNLOAD_URL | 'https://firstaid.wchscu.cn' |
DUOTE_SERVER | 'http://14.23.52.194:8020' |
DZBL_URL | 'http://192.168.9.73:80/wsZEMR/wsZEMR.dll?Handler=PatientEMRService' |
ECG_FILE_PATH | '/data/emergency_hx/api/src/emergency/media/ecg' |
ECG_FILE_URL | '/media/ecg/' |
ECG_HOST | 'http://192.168.3.114' |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
EMR_HOST | 'http://192.168.3.165' |
ERROR_DETAIL_SETTINGS | {'ERROR_DETAIL_ENABLE': True, 'ERROR_DETAIL_HEIGHT': True} |
EXPLORER_CONNECTIONS | {'Default': 'default'} |
EXPLORER_DEFAULT_CONNECTION | 'default' |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler',
'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 10485760 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_NEW_TOKEN | '********************' |
FORCE_SCRIPT_NAME | '/dottmed/' |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
GETUI_APP_ID | 'BCaj9XAPw572yc4vvocye9' |
GETUI_APP_KEY | '********************' |
GETUI_APP_SECRET | '********************' |
GETUI_MASTER_SECRET | '********************' |
HD | 'https://new.dottmed.com' |
HD_HOST | 'http://81.71.129.230:52467/' |
HIS_ACCOUNT | 'dottmed' |
HIS_HOST | 'http://192.168.9.218:9849' |
HIS_PASSWORD | '********************' |
HIS_SALT | 'taaoVZ8Y3EH4dNo9OYzi' |
HIS_URL | 'http://59.41.70.229:3365' |
HOSPITAL_LOCATION | '23.219128,113.279792' |
HW_SMS_APP_KEY | '********************' |
HW_SMS_APP_SECRET | '********************' |
HW_SMS_SEND_URL | '' |
HXDEBUG | True |
IGNORABLE_404_URLS | [] |
IMAGEKIT_CACHEFILE_DIR | 'CACHE/images' |
IMAGEKIT_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.hash' |
IMAGEKIT_CACHE_BACKEND | 'default' |
IMAGEKIT_CACHE_PREFIX | 'imagekit:' |
IMAGEKIT_CACHE_TIMEOUT | 300 |
IMAGEKIT_DEFAULT_CACHEFILE_BACKEND | 'imagekit.cachefiles.backends.Simple' |
IMAGEKIT_DEFAULT_CACHEFILE_STRATEGY | 'imagekit.cachefiles.strategies.JustInTime' |
IMAGEKIT_DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
IMAGEKIT_SPEC_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.source_name_as_path' |
IMAGEKIT_USE_MEMCACHED_SAFE_CACHE_KEY | '********************' |
IMAGE_QUANLITY | 85 |
INIT_PASSWORD | '********************' |
INSTALLED_APPS | ['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'drf_yasg',
'rest_framework',
'rest_framework.authtoken',
'django_filters',
'date_range_filter',
'daterange_filter',
'generic_relations',
'common.apps.CommonConfig',
'triage.apps.TriageConfig',
'account.apps.AccountConfig',
'patient.apps.PatientConfig',
'device.apps.DeviceConfig',
'apoplexy.apps.ApoplexyConfig',
'huizhen.apps.HuizhenConfig',
'precase.apps.PreRescueConfig',
'ecgcase.apps.EcgcaseConfig',
'pretask.apps.PreTaskConfig',
'wechat.apps.WechatConfig',
'ambulance.apps.AmbulanceConfig',
'article.apps.ArticleConfig',
'basic.apps.BasicRescueConfig',
'question.apps.QuestionConfig',
'call.apps.CallConfig',
'track_actions',
'diagnosis_data.apps.DiagnosisDataConfig',
'toxic.apps.ToxicRescueConfig',
'traumax.apps.TraumaRescueConfig',
'chestpainx.apps.ChestPainRescueConfig',
'dsignal.apps.DsignalConfig',
'gib.apps.GIBRescueConfig',
'chestpain.apps.ChestpainConfig',
'schedule.apps.ScheduleConfig',
'debug_toolbar',
'error_report',
'django_extra_tools',
'django_apscheduler',
'import_export',
'django_extensions',
'export',
'constance',
'constance.backends.database',
'console',
'celery',
'django_celery_beat',
'logtail',
'django_celery_results',
'celery_progress',
'progress.apps.ProgressConfig'] |
INTERNAL_IPS | ['127.0.0.1'] |
KHDEBUG | True |
LANGUAGES | [('af', 'Afrikaans'),
('ar', 'Arabic'),
('ast', 'Asturian'),
('az', 'Azerbaijani'),
('bg', 'Bulgarian'),
('be', 'Belarusian'),
('bn', 'Bengali'),
('br', 'Breton'),
('bs', 'Bosnian'),
('ca', 'Catalan'),
('cs', 'Czech'),
('cy', 'Welsh'),
('da', 'Danish'),
('de', 'German'),
('dsb', 'Lower Sorbian'),
('el', 'Greek'),
('en', 'English'),
('en-au', 'Australian English'),
('en-gb', 'British English'),
('eo', 'Esperanto'),
('es', 'Spanish'),
('es-ar', 'Argentinian Spanish'),
('es-co', 'Colombian Spanish'),
('es-mx', 'Mexican Spanish'),
('es-ni', 'Nicaraguan Spanish'),
('es-ve', 'Venezuelan Spanish'),
('et', 'Estonian'),
('eu', 'Basque'),
('fa', 'Persian'),
('fi', 'Finnish'),
('fr', 'French'),
('fy', 'Frisian'),
('ga', 'Irish'),
('gd', 'Scottish Gaelic'),
('gl', 'Galician'),
('he', 'Hebrew'),
('hi', 'Hindi'),
('hr', 'Croatian'),
('hsb', 'Upper Sorbian'),
('hu', 'Hungarian'),
('hy', 'Armenian'),
('ia', 'Interlingua'),
('id', 'Indonesian'),
('io', 'Ido'),
('is', 'Icelandic'),
('it', 'Italian'),
('ja', 'Japanese'),
('ka', 'Georgian'),
('kab', 'Kabyle'),
('kk', 'Kazakh'),
('km', 'Khmer'),
('kn', 'Kannada'),
('ko', 'Korean'),
('lb', 'Luxembourgish'),
('lt', 'Lithuanian'),
('lv', 'Latvian'),
('mk', 'Macedonian'),
('ml', 'Malayalam'),
('mn', 'Mongolian'),
('mr', 'Marathi'),
('my', 'Burmese'),
('nb', 'Norwegian Bokmål'),
('ne', 'Nepali'),
('nl', 'Dutch'),
('nn', 'Norwegian Nynorsk'),
('os', 'Ossetic'),
('pa', 'Punjabi'),
('pl', 'Polish'),
('pt', 'Portuguese'),
('pt-br', 'Brazilian Portuguese'),
('ro', 'Romanian'),
('ru', 'Russian'),
('sk', 'Slovak'),
('sl', 'Slovenian'),
('sq', 'Albanian'),
('sr', 'Serbian'),
('sr-latn', 'Serbian Latin'),
('sv', 'Swedish'),
('sw', 'Swahili'),
('ta', 'Tamil'),
('te', 'Telugu'),
('th', 'Thai'),
('tr', 'Turkish'),
('tt', 'Tatar'),
('udm', 'Udmurt'),
('uk', 'Ukrainian'),
('ur', 'Urdu'),
('vi', 'Vietnamese'),
('zh-hans', 'Simplified Chinese'),
('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'zh-hans' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LIS_HOST | 'http://192.168.103.12:57772' |
LIVE_GBS_HOST | 'https://stream.dottmed.com:10010/' |
LIVE_GBS_PASSWORD | '********************' |
LIVE_GBS_USERNAME | 'admin' |
LOCALE_PATHS | [] |
LOCAL_DEBUG | False |
LOGGING | {'disable_existing_loggers': False,
'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}},
'formatters': {'detail': {'format': '[%(name)s] %(levelname)s %(asctime)s '
'%(module)s %(process)d '
'%(thread)d[%(pathname)s:%(lineno)d] '
'%(message)s'},
'operation': {'format': '[%(name)s] [%(asctime)s] %(message)s'},
'simple': {'format': '[%(name)s] %(levelname)s %(asctime)s '
'[%(lineno)d] %(message)s'},
'verbose': {'format': '[%(name)s] %(levelname)s %(asctime)s '
'[%(pathname)s:%(lineno)d] %(message)s'}},
'handlers': {'biz_file': {'backupCount': 50,
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/data/emergency_hx/api/src/emergency/log/biz.log',
'formatter': 'operation',
'level': 'DEBUG',
'maxBytes': 31457280},
'console': {'class': 'logging.StreamHandler',
'formatter': 'verbose',
'level': 'DEBUG'},
'file': {'backupCount': 50,
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/data/emergency_hx/api/src/emergency/log/main.log',
'formatter': 'verbose',
'level': 'DEBUG',
'maxBytes': 31457280},
'mail_admins': {'class': 'django.utils.log.AdminEmailHandler',
'filters': ['require_debug_false'],
'level': 'ERROR'},
'mqtt_file': {'backupCount': 50,
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/data/emergency_hx/api/src/emergency/log/mqtt.log',
'formatter': 'verbose',
'level': 'DEBUG',
'maxBytes': 31457280},
'trade_file': {'backupCount': 50,
'class': 'logging.handlers.RotatingFileHandler',
'filename': '/data/emergency_hx/api/src/emergency/log/trade.log',
'formatter': 'operation',
'level': 'DEBUG',
'maxBytes': 31457280}},
'loggers': {'biz': {'handlers': ['console', 'biz_file'], 'level': 'DEBUG'},
'django': {'handlers': ['console'],
'level': 'INFO',
'propagate': True},
'main': {'handlers': ['console', 'file'], 'level': 'DEBUG'},
'mqtt': {'handlers': ['console', 'mqtt_file'], 'level': 'DEBUG'}},
'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
LOGTAIL_FILES | {'apache': '/data/emergency_hx/api/logs/nginx/access.log',
'django': '/data/emergency_hx/api/logs/uwsgi/uwsgi.log'} |
LOGTAIL_UPDATE_INTERVAL | 2000 |
MANAGERS | [] |
MDT_APP_URL | 'https://hxeme.dottmed.com/api/huizhen/create_huizhen_third/' |
MEDIA_ROOT | '/data/emergency_hx/api/src/emergency/media' |
MEDIA_URL | 'https://new.dottmed.com/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['emergency.utils.rest.DisableCSRF',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'track_actions.requestMiddleware.RequestMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware',
'error_report.middleware.ExceptionProcessor',
'pyinstrument.middleware.ProfilerMiddleware',
'common.current_user.RequestMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
OUT_HOST | 'tjmall.khhospital.com' |
PASC_NEW_HOST | 'http://192.168.6.177:8080' |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PATHOLOGY_HOST | 'http://192.168.3.153' |
PREPEND_WWW | False |
PROXY_120_URL | 'https://new.dottmed.com/api/pre_task/http120/' |
PROXY_URL | '' |
REDIS_HOST | '127.0.0.1' |
REST_FRAMEWORK | {'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.SessionAuthentication',
'rest_framework.authentication.TokenAuthentication'),
'DEFAULT_FILTER_BACKENDS': ('rest_framework.filters.OrderingFilter',
'django_filters.rest_framework.DjangoFilterBackend',
'rest_framework.filters.SearchFilter'),
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination',
'DEFAULT_SCHEMA_CLASS': 'emergency.utils.schema.VerboseNameSchema',
'EXCEPTION_HANDLER': 'emergency.utils.exception_handler.my_exception_handler',
'PAGE_SIZE': 10} |
ROOT_URL | 'https://new.dottmed.com' |
ROOT_URLCONF | 'emergency.urls' |
SDC_PASSWORD | '********************' |
SDC_TYPE | 'phone' |
SDC_USER | '13537095217' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONSOLE | True |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | ('HTTP_X_FORWARDED_PROTO', 'http') |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'YiTiaoAdmin<serveradmin@xxx.com>' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'xtsessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'emergency.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SIGN_MDT_URL | 'http://new.dottmed.com/mdtsign/#/' |
SILENCED_SYSTEM_CHECKS | [] |
SILKY_INTERCEPT_PERCENT | 30 |
SILKY_MAX_REQUEST_BODY_SIZE | -1 |
SILKY_MAX_RESPONSE_BODY_SIZE | 1024 |
SINOSC_AUTH_KEY | '********************' |
SINOSC_CODE | '01627' |
SINOSC_EXPIRED_TIME | 25200 |
SINOSC_HOST | 'https://api.chinasdc.cn' |
SSO_HOST | 'https://eis-dev.dottmed.com/' |
STAFF_IMAGE_CAPTCHA_LIFETIME | 5 |
STATICFILES_DIRS | ('/data/emergency_hx/api/src/emergency/static',) |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/opt/emergency_hx/api/assets' |
STATIC_URL | '/static/' |
SUIT_CONFIG | {'ADMIN_NAME': '多特医疗管理后台',
'HEADER_DATE_FORMAT': 'Y-m-d',
'LIST_PER_PAGE': 20,
'MENU': ({'app': 'common',
'label': '基础配置',
'models': ('Version',
'FieldRemarks',
'NetworkHospital',
'common.Department')},
{'app': 'account',
'label': '用户管理',
'models': ('MyUser', 'auth.Group', 'patient.Patient')},
{'app': 'device',
'label': '设备管理',
'models': ('RfidWristlet', 'WristletRead', 'PatientMonitor')},
{'app': 'chestpain',
'label': '病历管理',
'models': ('ChestPainRescue', 'apoplexy.Apoplexy')},
{'app': 'huizhen',
'label': '远程会诊',
'models': ('Huizhen',
'HuiZhenChatHistory',
'HuiZhenMedia',
'HuiZhenGrade')},
{'app': 'patient',
'label': '缴费记录',
'models': ('TransactionRecordLog',)})} |
SUPER_KEY | '********************' |
SWAGGER_SETTINGS | {'LOGIN_URL': '/dottmed/admin/login/', 'LOGOUT_URL': '/dottmed/admin/logout/'} |
TEMPLATES | [{'APP_DIRS': True,
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/data/emergency_hx/api/src/emergency/templates',
'/data/emergency_hx/api/src/emergency/'],
'OPTIONS': {'context_processors': ['django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages']}}] |
TEMPLATE_CONTEXT_PROCESSORS | ['django.contrib.auth.context_processors.auth',
'django.core.context_processors.request'] |
TENCENT_RTC_APPID | 1400273917 |
TENCENT_RTC_PRIVATE_KEY | '********************' |
TENCENT_RTC_PUBLIC_KEY | '********************' |
TESTING | False |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
TEST_URL | 'http://127.0.0.1:8087/api/' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'H:i:s' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Asia/Shanghai' |
TRIAGE_NOTICE_URL | 'wss://emergency-admin-dev.dottmed.com/ws/pre_patient_upload/' |
UPLOADDEBUG | True |
USE_I18N | True |
USE_L10N | True |
USE_PROXY | False |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | False |
USE_X_FORWARDED_HOST | True |
USE_X_FORWARDED_PORT | False |
VIDEO_DEBUG | False |
WARN_ALI | '2406141819512540080339' |
WEB_SOCKET_TOKEN | '********************' |
WEB_SOCKET_URL | 'wss://new.dottmed.com/chat/' |
WECHAT_APPID | 'wx2c0783e9252ff18a' |
WECHAT_APPSECRECT | '414ab61e29db8509b9818bd0892e81e9' |
WECHAT_APP_ID | '' |
WECHAT_PAY_API_KEY | '********************' |
WECHAT_PAY_MCH_CERT | '' |
WECHAT_PAY_MCH_ID | '1500582011' |
WECHAT_PAY_MCH_KEY | '********************' |
WECHAT_PAY_NOTIFY_URL | '' |
WECHAT_PAY_SANDBOX | '' |
WECHAT_PAY_SUB_MCH_ID | '' |
WECHAT_PAY_TIMEOUT | None |
WECHAT_REDIRECT | 'https://new.dottmed.com/wechat/wechat_bind/' |
WOOEY_CELERY | True |
WSGI_APPLICATION | 'emergency.wsgi.application' |
WS_API_HOST | '********************' |
WS_API_KEY | '********************' |
WXGPS_URL | 'http://api.bfgps.cn/wxapi/api/' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
YEAR_MONTH_FORMAT | 'F Y' |
键 | 当前值 |
---|---|
Accept | */* |
Accept-Encoding | gzip, br, zstd, deflate |
Connection | close |
Host | 127.0.0.1:8872 |
User-Agent | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
键 | 当前值 |
---|---|
Content-Type | text/html; charset=utf-8 |
Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.
键 | 当前值 |
---|---|
PATH_INFO | / |
QUERY_STRING | |
REMOTE_ADDR | 127.0.0.1 |
REQUEST_METHOD | GET |
SCRIPT_NAME | /dottmed/ |
SERVER_NAME | 0.0.0.0 |
SERVER_PORT | 8872 |
SERVER_PROTOCOL | HTTP/1.0 |
SERVER_SOFTWARE | gunicorn/22.0.0 |
View function | Arguments | Keyword arguments | URL name |
---|---|---|---|
<no view> |
'None' |
'None' |
None |
Path | Location |
---|---|
mdialog.css | /data/emergency_hx/api/src/emergency/static/mdialog.css |
doc.css | /data/emergency_hx/api/src/emergency/static/doc.css |
mdialog.js | /data/emergency_hx/api/src/emergency/static/mdialog.js |
bootstrap.min.css | /data/emergency_hx/api/src/emergency/static/bootstrap.min.css |
pace.css | /data/emergency_hx/api/src/emergency/static/pace.css |
readme.txt | /data/emergency_hx/api/src/emergency/static/readme.txt |
jquery.js | /data/emergency_hx/api/src/emergency/static/jquery.js |
jquery.toast.min.css | /data/emergency_hx/api/src/emergency/static/jquery.toast.min.css |
zepto.min.js | /data/emergency_hx/api/src/emergency/static/zepto.min.js |
jquery.toast.min.js | /data/emergency_hx/api/src/emergency/static/jquery.toast.min.js |
axios.min.js | /data/emergency_hx/api/src/emergency/static/axios.min.js |
images/console-128x128.png | /data/emergency_hx/api/src/emergency/static/images/console-128x128.png |
images/screenshot.png | /data/emergency_hx/api/src/emergency/static/images/screenshot.png |
images/console.png | /data/emergency_hx/api/src/emergency/static/images/console.png |
highlights/zenburn.css | /data/emergency_hx/api/src/emergency/static/highlights/zenburn.css |
download_page/Android.png | /data/emergency_hx/api/src/emergency/static/download_page/Android.png |
download_page/down_bg_head@3x.png | /data/emergency_hx/api/src/emergency/static/download_page/down_bg_head@3x.png |
download_page/apple.png | /data/emergency_hx/api/src/emergency/static/download_page/apple.png |
download_page/ios13.png | /data/emergency_hx/api/src/emergency/static/download_page/ios13.png |
download_page/down_icon_logo@3x.png | /data/emergency_hx/api/src/emergency/static/download_page/down_icon_logo@3x.png |
download_page/guide.jpg | /data/emergency_hx/api/src/emergency/static/download_page/guide.jpg |
download_page/down_icon_title@3x.png | /data/emergency_hx/api/src/emergency/static/download_page/down_icon_title@3x.png |
js/termlib.js | /data/emergency_hx/api/src/emergency/static/js/termlib.js |
logtail/js/logtail.js | /data/emergency_hx/api/src/emergency/static/logtail/js/logtail.js |
logtail/css/logtail.css | /data/emergency_hx/api/src/emergency/static/logtail/css/logtail.css |
Path | Location |
---|---|
admin/img/icon-changelink.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg |
admin/img/icon-alert.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg |
admin/img/icon-no.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-no.svg |
admin/img/sorting-icons.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg |
admin/img/icon-viewlink.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg |
admin/img/search.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/search.svg |
admin/img/icon-addlink.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg |
admin/img/README.txt | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/README.txt |
admin/img/selector-icons.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg |
admin/img/icon-unknown.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg |
admin/img/icon-deletelink.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg |
admin/img/icon-unknown-alt.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg |
admin/img/LICENSE | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/LICENSE |
admin/img/icon-yes.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg |
admin/img/tooltag-add.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg |
admin/img/tooltag-arrowright.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg |
admin/img/calendar-icons.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg |
admin/img/icon-calendar.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg |
admin/img/icon-clock.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg |
admin/img/inline-delete.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg |
admin/img/gis/move_vertex_on.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg |
admin/img/gis/move_vertex_off.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg |
admin/js/collapse.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/collapse.js |
admin/js/autocomplete.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/autocomplete.js |
admin/js/actions.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/actions.js |
admin/js/collapse.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/collapse.min.js |
admin/js/core.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/core.js |
admin/js/prepopulate.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/prepopulate.js |
admin/js/change_form.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/change_form.js |
admin/js/cancel.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/cancel.js |
admin/js/popup_response.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/popup_response.js |
admin/js/SelectFilter2.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js |
admin/js/inlines.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/inlines.min.js |
admin/js/prepopulate.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/prepopulate.min.js |
admin/js/calendar.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/calendar.js |
admin/js/urlify.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/urlify.js |
admin/js/prepopulate_init.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js |
admin/js/timeparse.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/timeparse.js |
admin/js/inlines.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/inlines.js |
admin/js/SelectBox.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/SelectBox.js |
admin/js/actions.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/actions.min.js |
admin/js/jquery.init.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/jquery.init.js |
admin/js/vendor/select2/select2.full.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js |
admin/js/vendor/select2/LICENSE.md | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md |
admin/js/vendor/select2/select2.full.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js |
admin/js/vendor/select2/i18n/he.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js |
admin/js/vendor/select2/i18n/zh-TW.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js |
admin/js/vendor/select2/i18n/gl.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js |
admin/js/vendor/select2/i18n/eu.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js |
admin/js/vendor/select2/i18n/fa.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js |
admin/js/vendor/select2/i18n/sr-Cyrl.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js |
admin/js/vendor/select2/i18n/ms.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js |
admin/js/vendor/select2/i18n/ro.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js |
admin/js/vendor/select2/i18n/fr.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js |
admin/js/vendor/select2/i18n/et.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js |
admin/js/vendor/select2/i18n/sk.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js |
admin/js/vendor/select2/i18n/lt.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js |
admin/js/vendor/select2/i18n/ru.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js |
admin/js/vendor/select2/i18n/zh-CN.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js |
admin/js/vendor/select2/i18n/pl.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js |
admin/js/vendor/select2/i18n/vi.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js |
admin/js/vendor/select2/i18n/da.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js |
admin/js/vendor/select2/i18n/de.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js |
admin/js/vendor/select2/i18n/hi.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js |
admin/js/vendor/select2/i18n/hu.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js |
admin/js/vendor/select2/i18n/sv.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js |
admin/js/vendor/select2/i18n/ar.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js |
admin/js/vendor/select2/i18n/th.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js |
admin/js/vendor/select2/i18n/sr.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js |
admin/js/vendor/select2/i18n/el.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js |
admin/js/vendor/select2/i18n/pt-BR.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js |
admin/js/vendor/select2/i18n/ko.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js |
admin/js/vendor/select2/i18n/km.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js |
admin/js/vendor/select2/i18n/lv.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js |
admin/js/vendor/select2/i18n/tr.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js |
admin/js/vendor/select2/i18n/bg.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js |
admin/js/vendor/select2/i18n/nl.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js |
admin/js/vendor/select2/i18n/pt.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js |
admin/js/vendor/select2/i18n/fi.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js |
admin/js/vendor/select2/i18n/ca.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js |
admin/js/vendor/select2/i18n/it.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js |
admin/js/vendor/select2/i18n/mk.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js |
admin/js/vendor/select2/i18n/ja.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js |
admin/js/vendor/select2/i18n/uk.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js |
admin/js/vendor/select2/i18n/is.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js |
admin/js/vendor/select2/i18n/es.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js |
admin/js/vendor/select2/i18n/hr.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js |
admin/js/vendor/select2/i18n/nb.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js |
admin/js/vendor/select2/i18n/cs.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js |
admin/js/vendor/select2/i18n/id.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js |
admin/js/vendor/select2/i18n/az.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js |
admin/js/vendor/select2/i18n/en.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js |
admin/js/vendor/xregexp/LICENSE.txt | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt |
admin/js/vendor/xregexp/xregexp.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js |
admin/js/vendor/xregexp/xregexp.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js |
admin/js/vendor/jquery/LICENSE.txt | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt |
admin/js/vendor/jquery/jquery.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js |
admin/js/vendor/jquery/jquery.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js |
admin/js/admin/RelatedObjectLookups.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js |
admin/js/admin/DateTimeShortcuts.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js |
admin/fonts/LICENSE.txt | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/fonts/LICENSE.txt |
admin/fonts/README.txt | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/fonts/README.txt |
admin/fonts/Roboto-Bold-webfont.woff | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Bold-webfont.woff |
admin/fonts/Roboto-Regular-webfont.woff | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Regular-webfont.woff |
admin/fonts/Roboto-Light-webfont.woff | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Light-webfont.woff |
admin/css/rtl.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/rtl.css |
admin/css/base.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/base.css |
admin/css/autocomplete.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/autocomplete.css |
admin/css/dashboard.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/dashboard.css |
admin/css/responsive_rtl.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css |
admin/css/forms.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/forms.css |
admin/css/responsive.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/responsive.css |
admin/css/login.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/login.css |
admin/css/changelists.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/changelists.css |
admin/css/widgets.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/widgets.css |
admin/css/fonts.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/fonts.css |
admin/css/vendor/select2/select2.min.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css |
admin/css/vendor/select2/LICENSE-SELECT2.md | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md |
admin/css/vendor/select2/select2.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css |
drf-yasg/redoc-init.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/redoc-init.js |
drf-yasg/swagger-ui-init.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-init.js |
drf-yasg/url-polyfill.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/url-polyfill.min.js |
drf-yasg/insQ.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/insQ.min.js |
drf-yasg/immutable.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/immutable.min.js |
drf-yasg/style.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/style.css |
drf-yasg/redoc/redoc-logo.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/redoc/redoc-logo.png |
drf-yasg/redoc/redoc.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/redoc/redoc.min.js |
drf-yasg/swagger-ui-dist/oauth2-redirect.html | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/oauth2-redirect.html |
drf-yasg/swagger-ui-dist/swagger-ui-bundle.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/swagger-ui-bundle.js |
drf-yasg/swagger-ui-dist/absolute-path.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/absolute-path.js |
drf-yasg/swagger-ui-dist/index.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/index.js |
drf-yasg/swagger-ui-dist/swagger-ui.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/swagger-ui.css |
drf-yasg/swagger-ui-dist/swagger-ui-standalone-preset.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/swagger-ui-standalone-preset.js |
drf-yasg/swagger-ui-dist/favicon-32x32.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/swagger-ui-dist/favicon-32x32.png |
drf-yasg/redoc-old/redoc.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/drf_yasg/static/drf-yasg/redoc-old/redoc.min.js |
rest_framework/img/glyphicons-halflings.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/img/glyphicons-halflings.png |
rest_framework/img/grid.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/img/grid.png |
rest_framework/img/glyphicons-halflings-white.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/img/glyphicons-halflings-white.png |
rest_framework/docs/img/favicon.ico | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/img/favicon.ico |
rest_framework/docs/img/grid.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/img/grid.png |
rest_framework/docs/js/highlight.pack.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/js/highlight.pack.js |
rest_framework/docs/js/api.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/js/api.js |
rest_framework/docs/js/jquery.json-view.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/js/jquery.json-view.min.js |
rest_framework/docs/css/base.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/css/base.css |
rest_framework/docs/css/jquery.json-view.min.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/css/jquery.json-view.min.css |
rest_framework/docs/css/highlight.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/docs/css/highlight.css |
rest_framework/js/prettify-min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/prettify-min.js |
rest_framework/js/ajax-form.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/ajax-form.js |
rest_framework/js/csrf.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/csrf.js |
rest_framework/js/bootstrap.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/bootstrap.min.js |
rest_framework/js/coreapi-0.1.1.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/coreapi-0.1.1.js |
rest_framework/js/jquery-3.3.1.min.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/jquery-3.3.1.min.js |
rest_framework/js/default.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/js/default.js |
rest_framework/fonts/fontawesome-webfont.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/fontawesome-webfont.svg |
rest_framework/fonts/fontawesome-webfont.ttf | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/fontawesome-webfont.ttf |
rest_framework/fonts/glyphicons-halflings-regular.svg | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.svg |
rest_framework/fonts/glyphicons-halflings-regular.eot | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.eot |
rest_framework/fonts/glyphicons-halflings-regular.woff | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.woff |
rest_framework/fonts/fontawesome-webfont.eot | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/fontawesome-webfont.eot |
rest_framework/fonts/fontawesome-webfont.woff | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/fontawesome-webfont.woff |
rest_framework/fonts/glyphicons-halflings-regular.woff2 | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.woff2 |
rest_framework/fonts/glyphicons-halflings-regular.ttf | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.ttf |
rest_framework/css/bootstrap.min.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/bootstrap.min.css |
rest_framework/css/bootstrap-theme.min.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/bootstrap-theme.min.css |
rest_framework/css/default.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/default.css |
rest_framework/css/bootstrap-tweaks.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/bootstrap-tweaks.css |
rest_framework/css/prettify.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/prettify.css |
rest_framework/css/font-awesome-4.0.3.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/rest_framework/static/rest_framework/css/font-awesome-4.0.3.css |
date_range_filter.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/date_range_filter/static/date_range_filter.css |
debug_toolbar/img/ajax-loader.gif | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/ajax-loader.gif |
debug_toolbar/img/back.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/back.png |
debug_toolbar/img/indicator.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/indicator.png |
debug_toolbar/img/close_hover.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/close_hover.png |
debug_toolbar/img/djdt_vertical.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/djdt_vertical.png |
debug_toolbar/img/back_hover.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/back_hover.png |
debug_toolbar/img/close.png | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/img/close.png |
debug_toolbar/js/toolbar.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js |
debug_toolbar/js/toolbar.timer.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.timer.js |
debug_toolbar/js/toolbar.sql.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.sql.js |
debug_toolbar/js/toolbar.profiling.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.profiling.js |
debug_toolbar/js/redirect.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js |
debug_toolbar/css/print.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/css/print.css |
debug_toolbar/css/toolbar.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css |
import_export/action_formats.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/import_export/static/import_export/action_formats.js |
import_export/import.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/import_export/static/import_export/import.css |
django_extensions/img/indicator.gif | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django_extensions/static/django_extensions/img/indicator.gif |
django_extensions/js/jquery.bgiframe.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js |
django_extensions/js/jquery.ajaxQueue.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js |
django_extensions/js/jquery.autocomplete.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js |
django_extensions/css/jquery.autocomplete.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css |
admin/js/constance.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/constance/static/admin/js/constance.js |
admin/css/constance.css | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/constance/static/admin/css/constance.css |
celery_progress/celery_progress.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/celery_progress/static/celery_progress/celery_progress.js |
celery_progress/websockets.js | /data/emergency_hx/api/venv3/lib/python3.8/site-packages/celery_progress/static/celery_progress/websockets.js |
celery_progress.js | /data/emergency_hx/api/src/emergency/progress/static/celery_progress.js |
{'False': False, 'None': None, 'True': True}
{'False': False, 'None': None, 'True': True}
{'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10,
'ERROR': 40,
'INFO': 20,
'SUCCESS': 25,
'WARNING': 30},
'csrf_token': <SimpleLazyObject: 'tM683LztRiClp8hdZW7nAB8N6pssmazvzSPcV8KNNia6LxCUj4PmPJVWvpSBqNoy'>,
'debug': True,
'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7f6e23bf6100>,
'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7f6e234d2d00>,
'request': '<<request>>',
'sql_queries': <function debug.<locals>.<lambda> at 0x7f6e22d8d820>,
'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7f6e234d2e50>>}
{'content': '<h2 id="_1">部署注意事项</h2>\n'
'<p>医院nginx需要配置</p>\n'
'<div class="codehilite"><pre><span></span><span class="err"> '
'proxy_set_header Host $host; # 转发真实的域名</span>\n'
'<span class="err"> proxy_set_header X-Real-IP '
'$remote_addr;</span>\n'
'<span class="err"> proxy_set_header X-Forwarded-For '
'$proxy_add_x_forwarded_for; </span>\n'
'<span class="err"> proxy_set_header X-Forwarded-Proto '
'$scheme; # Set X-Forwarded-Proto header 保证http和https的schema是对的 '
'这样内外网图片url拼接完整地址返回才能正确</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p>如果医院给的是域名下的某个目录 那么nginx需要重写规则如下</p>\n'
'<div class="codehilite"><pre><span></span><span class="err"> '
'location / {</span>\n'
'<span class="err"> rewrite ^/dottmed(/.*)$ $1 break;</span>\n'
'<span class="err"> proxy_pass http://192.168.9.61/;</span>\n'
'<span class="err"> proxy_set_header Host $host;</span>\n'
'<span class="err"> proxy_set_header X-Real-IP '
'$remote_addr;</span>\n'
'<span class="err">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-05-24">2022-05-24</h3>\n'
'<h4 id="_2">病历导出板块修改</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">导出url</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">batch_download_preinfo</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">token</span><span class="o">=</span><span '
'class="n">登录的token</span><span class="o">&</span><span '
'class="n">patient_ids</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span><span '
'class="mi">2</span><span class="p">,</span><span '
'class="mi">3</span><span class="o">&</span><span '
'class="n">eme_type</span><span class="o">=</span><span '
'class="n">急救的类型</span> <span class="n">例如胸痛传1</span>\n'
' <span class="n">默认导出选中的档案传参为</span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">patient</span><span '
'class="o">/</span><span '
'class="n">batch_download_preinfo</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">token</span><span class="o">=</span><span '
'class="n">登录的token</span><span class="o">&</span><span '
'class="n">patient_ids</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span><span '
'class="mi">2</span><span class="p">,</span><span '
'class="mi">3</span> <span class="n">不需要传eme_type</span>\n'
' <span class="n">默认导出某个类型急救的病历传参为</span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">patient</span><span '
'class="o">/</span><span '
'class="n">batch_download_preinfo</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">token</span><span class="o">=</span><span '
'class="n">登录的token</span><span class="o">&</span><span '
'class="n">eme_type</span><span class="o">==</span><span '
'class="n">急救的类型</span> <span class="n">例如胸痛传1</span> <span '
'class="n">不需要传patient_ids</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-05-24_1">2022-05-24</h3>\n'
'<h4 id="install_envsh">项目安装依赖包请使用install_env.sh</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">保证有序进行安装</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-05-23">2022-05-23</h3>\n'
'<h4 id="python3">迁移python3补充</h4>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">使用2to3转换所有文件</span>\n'
'<span class="n">重新安装suds</span>\n'
'<span class="kn">from</span> <span '
'class="nn">django.utils.encoding</span> <span '
'class="kn">import</span> <span class="n">smart_unicode</span>\n'
'<span class="n">修改localsettings</span> <span '
'class="n">urlpase</span>\n'
'<span class="n">删除所有的迁移</span> <span class="n">重新生成</span> <span '
'class="n">做fake迁移</span>\n'
'<span class="n">最后卸载drf</span><span class="o">-</span><span '
'class="n">safe</span><span class="o">-</span><span '
'class="n">jack</span> <span class="n">和django</span><span '
'class="o">-</span><span class="n">m2m</span><span '
'class="o">-</span><span class="n">fix后重新安装</span>\n'
'<span class="n">使用code</span> <span class="n">inspect</span> '
'<span class="n">code功能查找错误进行修复</span>\n'
'<span class="n">修复time</span><span class="o">.</span><span '
'class="n">clock</span> <span class="n">为</span> <span '
'class="n">time</span><span class="o">.</span><span '
'class="n">perf_counter</span><span class="p">()</span>\n'
'<span class="n">替换</span> <span class="n">urllibe</span><span '
'class="o">.</span><span class="n">quote</span> <span '
'class="n">为</span> <span class="n">urllib</span><span '
'class="o">.</span><span class="n">parse</span><span '
'class="o">.</span><span class="n">quote</span>\n'
'<span class="n">使用code</span> <span class="n">inspect</span> '
'<span class="n">code功能查找错误进行修复</span>\n'
'<span class="n">删除</span> <span class="kn">import</span> '
'<span class="nn">sys</span>\n'
' <span class="n">reload</span><span '
'class="p">(</span><span class="n">sys</span><span '
'class="p">)</span>\n'
' <span class="n">sys</span><span class="o">.</span><span '
'class="n">setdefaultencoding</span><span class="p">(</span><span '
'class="s1">'utf-8'</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-04-29">2022-04-29</h3>\n'
'<h4 id="_3">会诊列表结构修改</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">会诊列表和详情修改</span> <span class="o">/</span><span '
'class="n">huizhen</span><span class="o">/</span><span '
'class="n">mine</span>\n'
' <span class="n">过滤条件由patient__id</span> <span '
'class="n">改为</span> <span class="n">huizhen__patient__id</span>\n'
' <span class="n">列表返回结构原来的每个item现在嵌套在</span> <span '
'class="n">huizhen字段里面</span>\n'
'\n'
' <span class="n">未读消息不使用</span> <span '
'class="s1">'unread_num'</span> <span '
'class="n">改为使用unread_msg_count字段</span>\n'
' <span class="n">最新消息时间不使用</span> <span '
'class="s1">'time'</span> <span class="n">改为使用</span> '
'<span class="n">latest_msg_time</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-04-12">2022-04-12</h3>\n'
'<h4 id="_4">病历高级搜索重复项筛选</h4>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">传参示例</span> <span class="n">same_name</span><span '
'class="o">=</span><span class="kc">True</span> <span '
'class="n">勾选传True</span> <span class="n">否则不传</span>\n'
'<span class="n">same_name</span> <span class="n">同名查询</span>\n'
'<span class="n">same_pat_no</span> <span '
'class="n">同登记号查询</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2022-04-08">2022-04-08</h3>\n'
'<h4 id="_5">急诊演练反馈修改点</h4>\n'
'<p><strong>1. 急诊床位 patient.eme_bed_no</strong></p>\n'
'<p><strong>2. 病历创建流程</strong> </p>\n'
'<p>创建流程为 点击保存时候 如果有登记号 --》 '
'调用/api/common/get_his_info/?pat_med_card=就诊号 ---》\n'
'1. '
'查询返回200则显示弹窗选择同步项目,选择同步项后调用/api/common/sync_his_info/?admid=就诊id&only_basic=true '
'拿到患者基本信息和admid, 请求创建病历的接口 把admid也传过来给patient.admid 创建完成关闭弹窗</p>\n'
'<ol>\n'
'<li>查询返回 400 弹框提示400的消息 按钮选择是否继续创建,是则继续创建,否则关闭弹窗</li>\n'
'</ol>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">获取就诊id和其他就诊信息接口</span> \n'
' <span class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">common</span><span '
'class="o">/</span><span class="n">sync_his_info</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">admid</span><span class="o">=</span><span '
'class="mi">153301977</span><span class="o">&</span><span '
'class="n">only_basic</span><span class="o">=</span><span '
'class="n">true</span> <span class="o">//</span> <span '
'class="n">注意</span><span class="err">:</span><span '
'class="n">接口不需要传id</span><span class="o">=</span><span '
'class="n">xx</span> <span class="n">only_basic传true</span> <span '
'class="n">其他同对接his内的同步请求</span> \n'
' <span class="n">返回</span> <span class="n">参数含</span> <span '
'class="n">患者基本信息</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"admdate"</span><span '
'class="p">:</span> <span '
'class="s2">"2021-02-03"</span><span class="p">,</span>\n'
' <span class="s2">"job"</span><span '
'class="p">:</span> <span class="s2">""</span><span '
'class="p">,</span>\n'
' <span class="s2">"admid"</span><span '
'class="p">:</span> <span '
'class="s2">"153301977"</span><span class="p">,</span>\n'
' <span class="s2">"name"</span><span '
'class="p">:</span> <span class="s2">"小李子"</span><span '
'class="p">,</span>\n'
' <span class="s2">"has_his_inpatient_no"</span><span '
'class="p">:</span> <span class="n">true</span><span '
'class="p">,</span>\n'
' <span class="s2">"credentials_type"</span><span '
'class="p">:</span> <span class="s2">"1"</span><span '
'class="p">,</span>\n'
' <span class="s2">"mobile"</span><span '
'class="p">:</span> <span '
'class="s2">"15607679596"</span><span '
'class="p">,</span>\n'
' <span class="s2">"gender"</span><span '
'class="p">:</span> <span class="s2">"1"</span><span '
'class="p">,</span>\n'
' <span class="s2">"reg_dept"</span><span '
'class="p">:</span> <span '
'class="s2">"急诊住院部医生"</span><span class="p">,</span>\n'
' <span class="s2">"inpatient_no"</span><span '
'class="p">:</span> <span class="s2">""</span><span '
'class="p">,</span>\n'
' <span class="s2">"phone"</span><span '
'class="p">:</span> <span '
'class="s2">"15607679596"</span><span '
'class="p">,</span>\n'
' <span class="s2">"nation"</span><span '
'class="p">:</span> <span class="s2">"01"</span><span '
'class="p">,</span>\n'
' <span class="s2">"pat_med_card"</span><span '
'class="p">:</span> <span class="n">null</span><span '
'class="p">,</span>\n'
' <span class="s2">"idno"</span><span '
'class="p">:</span> <span '
'class="s2">"46000319951215021X"</span><span '
'class="p">,</span>\n'
' <span class="s2">"bed_doctor"</span><span '
'class="p">:</span> <span class="s2">"杰克"</span><span '
'class="p">,</span>\n'
' <span class="s2">"address"</span><span '
'class="p">:</span> <span '
'class="s2">"四川仁寿视高老君街13388242632"</span><span '
'class="p">,</span>\n'
' <span class="s2">"birth_date"</span><span '
'class="p">:</span> <span '
'class="s2">"1995-12-15"</span><span class="p">,</span>\n'
' <span class="s2">"bed_no"</span><span '
'class="p">:</span> <span class="s2">"15"</span>\n'
'<span class="p">}</span>\n'
' <span class="err">```</span>\n'
'\n'
'\n'
'<span class="n">否则显示</span>\n'
'\n'
'\n'
'\n'
'<span class="c1">### 2021-12-29</span>\n'
'<span class="c1">#### 创伤病历柱状图</span>\n'
'<span class="err">```</span><span class="n">python</span>\n'
' <span class="err">“</span><span class="n">严重创伤急救例数</span><span '
'class="err">”</span><span class="n">统计</span>\n'
' <span class="n">在原来月份里面</span> <span '
'class="n">detail返回</span>\n'
' <span class="p">{</span>\n'
' <span '
'class="s2">"month"</span><span class="p">:</span><span '
'class="s2">"xxx"</span><span class="p">,</span>\n'
' <span '
'class="s2">"count"</span><span class="p">:</span><span '
'class="s2">"xxx"</span><span class="p">,</span>\n'
' <span '
'class="s2">"detail"</span><span class="p">:</span> '
'<span class="p">{</span><span '
'class="s2">"critical"</span><span class="p">:</span> '
'<span class="n">严重创伤的数量</span><span class="p">,</span> <span '
'class="s2">"normal"</span><span class="p">:</span> '
'<span class="n">一般的数量</span> <span class="p">}</span> <span '
'class="n">对应到跳转搜索条件为</span> <span class="n">critical</span><span '
'class="o">=</span><span class="kc">True</span> <span '
'class="n">critical</span><span class="o">=</span><span '
'class="kc">False</span>\n'
'\n'
' <span class="p">}</span>\n'
'\n'
'\n'
' <span class="n">api</span><span class="o">/</span><span '
'class="n">trauma_rescue</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_type</span><span '
'class="o">=</span><span class="n">blood_ready</span><span '
'class="o">&</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span> \n'
' <span class="n">count_type</span><span class="err">:</span>\n'
' <span class="s2">"transfer_count"</span> '
'<span class="n">院前急救转运趋势图</span>\n'
' <span class="n">blood_ready</span> <span '
'class="n">急诊输血准备平均时间趋势图</span> \n'
' <span class="n">airway_ready</span> <span '
'class="n">工气道建立平均时间趋势图</span>\n'
' <span class="n">advice_eme_surg_time</span> <span '
'class="n">紧急手术术前准备平均时间趋势图</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="_6">创伤病历高级搜索</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">严重创伤搜索字段</span>\n'
' <span class="n">critical</span> <span class="n">传True</span> '
'<span class="kc">False</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="_7">创伤病历统计指标</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">trauma_rescue</span><span '
'class="o">/</span><span class="n">count</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">count_type</span><span class="o">=</span><span '
'class="n">rate</span><span class="o">&</span><span '
'class="n">count_period</span><span class="o">=</span><span '
'class="nb">all</span>\n'
' <span class="n">返回</span> \n'
' <span class="p">{</span>\n'
' <span class="s2">"gcs"</span><span '
'class="p">:</span> <span class="n">创伤病人GCS评分完成比例</span><span '
'class="p">,</span>\n'
' <span class="s2">"ti"</span><span '
'class="p">:</span> <span class="n">创伤病人TI评分完成比例</span><span '
'class="p">,</span>\n'
' <span class="s2">"iss"</span><span '
'class="p">:</span> <span class="n">创伤病人ISS评分完成比例</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"transfusion"</span><span class="p">:</span> '
'<span class="n">转诊治疗的创伤病人比例</span><span class="p">,</span>\n'
' <span class="s2">"dead"</span><span '
'class="p">:</span> <span class="n">创伤病人病死率</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"critical_micu_mean"</span><span '
'class="p">:</span> <span class="n">严重创伤病人MICU平均住院时间</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"critical_hosday_mean"</span><span '
'class="p">:</span><span class="n">严重创伤病人平均住院时间</span> <span '
'class="p">,</span>\n'
' <span '
'class="s2">"critical_dead"</span><span '
'class="p">:</span><span class="n">严重创伤病人病死率</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"first_ct_mean"</span><span '
'class="p">:</span><span class="n">完成首张CT图像平均用时</span> <span '
'class="p">,</span>\n'
' <span '
'class="s2">"first_cxray"</span><span '
'class="p">:</span><span class="n">胸痛X片平均用时</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"first_pxray"</span><span class="p">:</span> '
'<span class="n">完成骨盆X片平均用时</span><span class="p">,</span>\n'
' <span '
'class="s2">"first_fast"</span><span '
'class="p">:</span><span class="n">完成FAST检查平均用时</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"doctor_ready_waste"</span><span '
'class="p">:</span> <span class="n">急诊准备平均时间</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"info_alert"</span><span class="p">:</span> '
'<span class="n">信息预警比例</span><span class="p">,</span>\n'
' <span '
'class="s2">"tranfer_mean"</span><span '
'class="p">:</span> <span class="n">院前急救转运平均时间</span><span '
'class="p">,</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-28">2021-12-28</h3>\n'
'<h4 id="_8">质控字段</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">注意在对应模块添加以下两个字段</span> <span '
'class="n">这两个字段创伤质控必须用到</span> <span '
'class="n">创伤中毒常规消化道的的病历需要加一下</span>\n'
' <span class="n">patient</span><span class="o">.</span><span '
'class="n">inside_roadmap</span><span class="o">.</span><span '
'class="n">eme_trans_depart_time</span> <span '
'class="n">转科时间</span>\n'
' <span class="n">patient</span><span class="o">.</span><span '
'class="n">leave_hospital</span><span class="o">.</span><span '
'class="n">dead_time</span> <span class="n">死亡时间</span> \n'
' <span class="sd">"""创伤质控接口 get '
'/api/trauma_rescue/quality_control/{创伤id}/"""</span>\n'
' <span class="n">返回</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"tranfer"</span><span '
'class="p">:</span> <span class="n">院前急救转运时间</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"eme_get_ready"</span><span '
'class="p">:</span> <span class="n">急诊准备时间</span><span '
'class="p">(</span><span class="n">分钟</span><span '
'class="p">),</span>\n'
' <span class="s2">"ctnfast"</span><span '
'class="p">:</span> <span class="n">全身快速CT</span><span '
'class="err">、</span><span class="n">胸部X片</span><span '
'class="err">、</span><span class="n">骨盆X片和FAST完成时间</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"eme_tranfusion_ready"</span><span '
'class="p">:</span> <span class="n">急诊输血准备时间</span><span '
'class="p">(</span><span class="n">分钟</span><span '
'class="p">),</span>\n'
' <span class="s2">"airway"</span><span '
'class="p">:</span> <span class="n">人工气道建立时间</span><span '
'class="p">,</span>\n'
' <span class="s2">"surg_ready"</span><span '
'class="p">:</span> <span class="n">紧急手术术前准备时间</span><span '
'class="p">,</span>\n'
' <span class="s2">"eme_stop"</span><span '
'class="p">:</span> <span class="n">急诊科停留时间</span><span '
'class="p">,</span>\n'
' <span class="s2">"micu_mean"</span><span '
'class="p">:</span> <span class="n">严重创伤病人MICU平均住院时间</span><span '
'class="p">(</span><span class="n">天</span><span '
'class="p">),</span>\n'
'\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-28_1">2021-12-28</h3>\n'
'<h4 id="_9">通用出院转归模块</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="sd">"""patient.leave_hospital"""</span>\n'
' <span class="n">hospital_day</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'住院天数'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">validators</span><span class="o">=</span><span '
'class="p">[</span><span '
'class="n">validate_postive_real</span><span class="p">])</span>\n'
' <span class="n">hospital_cost</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'费用记录'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">validators</span><span class="o">=</span><span '
'class="p">[</span><span '
'class="n">validate_postive_real</span><span class="p">])</span>\n'
' <span class="n">leave_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'出院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">leave_hos_way</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'出院方式'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">HOS_OUTCOME</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">2</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-27">2021-12-27</h3>\n'
'<h4 id="_10">创伤其他信息字段</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="sd">"""这里分成两块 '
'评分的放在patient.disease_evalute"""</span>\n'
' <span class="n">eme_gcs</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'急诊GCS评分'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_eme_gcs</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'急诊GCS评分是否已评'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_eme_iss</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'急诊创伤ISS评分是否已评'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">eme_iss</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'急诊创伤ISS评分'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_eme_ais</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'急诊创伤AIS评分是否已评'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">eme_ais</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'急诊创伤AIS评分'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_eme_ti</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'急诊创伤TI评分是否已评'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">eme_ti</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'急诊创伤TI评分'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
'\n'
' <span class="sd">"""时间在 patient.other_info '
'"""</span>\n'
' <span class="n">advice_transfusion_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'提出输血申请时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">exec_transfusion_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'执行输血的时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">advice_build_airway_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'提出建立气道时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">success_build_airway_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'成功建立人工气道时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">advice_eme_surg_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'提出紧急手术医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">start_eme_surg_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'损伤控制性手术开始时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-27_1">2021-12-27</h3>\n'
'<h4 id="_11">创伤新增字段</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">leave_micu_time</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'出MICU时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">chest_xray_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'完成胸部X片时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pelvic_xray_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'完成盆骨X片时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">fast_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'完成FAST检查时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-27_2">2021-12-27</h3>\n'
'<h4 id="_12">创伤救治队员到达急诊时间</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">td_arrive_eme_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'创伤救治队员到达急诊时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">安卓端访问update_arrive_time</span> <span '
'class="n">创伤的快速记录添加前缀</span> <span class="n">ir_</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-17">2021-12-17</h3>\n'
'<h4 id="gbs">gbs评分</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">gib_score</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'GBS评分'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">validators</span><span class="o">=</span><span '
'class="p">[</span><span class="n">validate_postive</span><span '
'class="p">])</span>\n'
'\n'
' <span class="n">评分同之前其他的评分接口</span> <span '
'class="n">传参web端和安卓端约定一下</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-17_1">2021-12-17</h3>\n'
'<h4 id="2">胸痛急救模块2</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'转归 在inside_roadmap里面</span>\n'
' <span class="n">chestpain_outcome</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'患者胸痛中心转归'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">CHESTPAIN_OUTCOME</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">chestpain_outcome_other</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'患者胸痛中心转归'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">eme_outcome</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'患者急诊转归'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">EME_OUTCOME</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">eme_trans_to_department</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'转送去向科室'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1"># 胸痛相关院前 院内溶栓筛查</span>\n'
' <span class="n">急诊信息部分</span><span class="o">--</span><span '
'class="n">院前溶栓治疗</span> <span '
'class="n">位于inside_rescue_info_chestpain</span> <span '
'class="n">院内部分位于</span> <span class="n">special_treat</span><span '
'class="o">.</span><span class="n">stemi</span> <span '
'class="n">字段名相同</span>\n'
'\n'
' <span class="n">is_sift</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'是否有溶栓治疗'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_nonstop</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'直达溶栓场所'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">lysis_place</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'溶栓场所'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">Placechoices</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">lysis_talk_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'溶栓开始知情同意时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">lysis_sign_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'签署知情同意时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">lysis_start_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'开始溶栓时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">lysis_end_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'溶栓结束时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">lysis_affect_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'溶栓后造影时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">lysis_medicine</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'溶栓药物'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">LysisMedicineChoice</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">lysis_dose</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'剂量'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">CODE_CHOICES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_lysis_repatency</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span class="s1">'溶栓再通'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">cannot_lysis</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'存在禁忌症'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-16">2021-12-16</h3>\n'
'<h4 id="_13">胸痛急救模块</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="mi">120</span> <span class="n">have_call</span> <span '
'class="n">有无呼救</span>\n'
' <span class="n">call_time_unknown</span> <span '
'class="n">呼救时间不详</span>\n'
'\n'
'\n'
' <span class="n">外院120转诊相关字段</span>\n'
' <span class="n">into_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'转出医院入门时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">un_into_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span '
'class="s1">'转出医院入门时间不详'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">decide_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'决定转院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">un_decide_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span class="s1">'决定转院时间不详'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">tran_ambulance_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'转运救护车到达时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">un_tran_ambulance_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span '
'class="s1">'转运救护车到达时间不详'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">leave_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'离开转出医院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">un_leave_tran_hos_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span '
'class="s1">'离开转出医院时间不详'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">un_first_touch_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'首次医疗接触时间不详'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">first_touch_doctor</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span '
'class="s1">'首次医疗接触医护人员'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">本院120转诊</span> <span class="n">和</span> <span '
'class="n">外院120转诊</span>\n'
' <span class="n">导管室</span><span class="o">/</span><span '
'class="n">CCU</span><span class="o">/</span><span '
'class="n">心内科病房</span><span class="o">/</span><span '
'class="n">其他</span>\n'
' <span class="n">direct_to_department</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'直达'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">DIRECT_ARRIVE</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span><span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">院间转诊</span>\n'
' <span class="n">attack_depart</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'发病科室'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">远程心电传输</span> <span '
'class="n">位于patient</span><span class="o">.</span><span '
'class="n">xxx</span>\n'
' <span class="n">is_remote_ecg</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span><span '
'class="s1">'是否远程心电传输'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">remote_ecg_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'远程心电图时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">remote_ecg_way</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'远程心电传输方式'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">REMOTE_ECG_WAY</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">超声室</span> \n'
' <span class="n">ultrasound_check_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'超声检查时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ultrasound_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'超声报告时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
'\n'
' <span class="n">ct室</span>\n'
' <span class="n">ct_notice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'通知CT室时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ct_doctor_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'CT人员到达时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ct_ready_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'CT室完成准备时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_saomiao_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'CT扫描时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
'\n'
' <span class="c1"># 主动脉夹层病种方式的内容</span>\n'
' <span class="n">notice_cs_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'通知心脏外科会诊时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">cs_consult_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'心脏外科会诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ci_consult_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'心脏内科会诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">vs_consult_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'血管外科会诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pci_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'开始介入治疗时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">stent_release_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'支架释放时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="c1"># 手术相关的</span>\n'
' <span class="n">surgery_talk_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'知情同意时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">surgery_sign_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'签署手术同意时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">surgery_start_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'手术开始时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">surgery_end_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'手术结束时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">surgery_result</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'手术结果'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span><span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
'\n'
' <span class="c1"># 药物治疗相关</span>\n'
' <span class="c1"># 抗血小板治疗药物</span>\n'
' <span class="n">aspirin_dose</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'阿司匹林'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">clopigrel_dose</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'氯吡格雷'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ticagrelor_dose</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'替格瑞洛'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1">#初次给药</span>\n'
' <span class="n">first_drug_place</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'初始给药地点'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">FIRST_DRUG_PLACE</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">first_drug_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'初始给药时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-16_1">2021-12-16</h3>\n'
'<h4 id="_14">消化道出血模块</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">接口</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">gib_rescue</span><span class="o">/</span>\n'
' <span class="n">新增字段</span> <span class="n">消化道出血病史</span> '
'<span class="n">gib_history</span>\n'
' <span class="n">出血症状</span> <span '
'class="n">inside_rescue_info</span><span class="o">.</span><span '
'class="n">bleed_symptom</span> <span '
'class="n">选项从config拿</span>\n'
' <span class="n">消化道出血</span> <span '
'class="n">emergency_type是</span> <span class="mi">10</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p>注意消化道出血模块 对应的聊天房间前缀是 100</p>\n'
'<h3 id="2021-12-13">2021-12-13</h3>\n'
'<h4 id="_15">批量删除</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">在原来的删除接口基础上批量删除修改为</span> <span '
'class="n">patient_batch_delete</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">ids</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span><span '
'class="mi">2</span><span class="p">,</span><span '
'class="mi">3</span> <span class="n">使用</span><span '
'class="p">,</span><span class="n">分割</span>\n'
' <span class="n">如</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">apoplexy</span><span class="o">/</span><span '
'class="n">patient_batch_delete</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">ids</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span><span '
'class="mi">2</span><span class="p">,</span><span '
'class="mi">3</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-13_1">2021-12-13</h3>\n'
'<h4 id="post">批量导出 使用post传参</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">批量导出接口</span> <span class="n">patient_ids传病人id</span> '
'<span class="n">使用</span><span class="p">,</span><span '
'class="n">分隔</span>\n'
' <span class="n">post</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">batch_download_preinfo</span><span class="o">/</span>\n'
' <span class="n">传参</span> <span '
'class="n">patient_ids</span> <span class="mi">1</span><span '
'class="p">,</span><span class="mi">2</span><span '
'class="p">,</span><span class="mi">3</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-12-13_2">2021-12-13</h3>\n'
'<h4 id="hz_grade_detail-all_mdt_doctor">发起会诊查看会诊医生详情 '
'接口由hz_grade_detail修改为使用 all_mdt_doctor/</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">注意</span><span class="err">:</span><span '
'class="n">web端只需要改动发起会诊这里的接口</span><span '
'class="err">,</span><span class="n">见下图</span> <span '
'class="n">不要修改会诊管理那里的接口</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/caf296eb.png" /></p>\n'
'<h3 id="2021-12-13_3">2021-12-13</h3>\n'
'<h4 id="mdt">排班修改 mdt排班增加搜索框+增加科室分类</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">common</span><span '
'class="o">/</span><span class="n">department</span><span '
'class="err">?</span><span class="n">limit</span><span '
'class="o">=</span><span class="mi">1000000</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/5b33508b.png" /></p>\n'
'<h3 id="2021-09-30">2021-09-30</h3>\n'
'<h4 id="_16">用户权限可用目录菜单说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">注意权限只对普通用户生效</span> <span class="n">对admin用户不生效</span>\n'
' <span class="n">web端菜单和安卓菜单</span> <span '
'class="n">如果是admin用户显示全部</span> \n'
' <span class="n">普通用户根据</span> <span '
'class="n">account</span><span class="o">/</span><span '
'class="n">mine</span> <span class="n">拿到的</span> <span '
'class="n">user_permission_format字段</span> <span '
'class="n">来匹配显示</span>\n'
' <span class="n">没有权限返回</span> <span class="mi">400</span> '
'<span class="s2">"抱歉,您没有该模块的访问权限!"</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-09-30_1">2021-09-30</h3>\n'
'<h4 id="_17">用户权限编辑说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">get</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">account</span><span class="o">/</span><span '
'class="n">permission_config</span><span class="o">/</span> <span '
'class="n">查看全局权限配置名称</span>\n'
' <span class="n">返回</span><span class="err">:</span>\n'
' <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"perms"</span><span '
'class="p">:</span> <span class="p">[</span>\n'
' <span class="s2">"胸痛急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"卒中急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"创伤急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"中毒急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"常规急救"</span>\n'
' <span class="p">],</span>\n'
' <span class="s2">"group_name"</span><span '
'class="p">:</span> <span class="s2">"急救病历"</span>\n'
' <span class="p">},</span>\n'
' <span class="p">]</span>\n'
' <span class="n">put</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">account</span><span class="o">/</span><span '
'class="n">users</span><span class="o">/</span><span '
'class="p">{</span><span class="nb">id</span><span '
'class="p">}</span><span class="o">/</span> <span '
'class="c1">#更新某个用户的权限</span>\n'
' <span class="n">传参在原来基础上加上</span> <span class="p">{</span>\n'
' <span '
'class="s2">"can_view_other_case"</span><span '
'class="p">:</span> <span class="n">true</span><span '
'class="p">,</span> <span class="c1"># 是否可以查看未接诊的病历</span>\n'
' <span '
'class="s2">"user_permission_format"</span><span '
'class="p">:</span> <span class="p">{</span>\n'
' <span class="s2">"急救病历"</span><span '
'class="p">:</span> <span class="p">[</span> <span class="c1"># '
'以对象形式传过来 key是 上面的group_name</span>\n'
' <span class="s2">"胸痛急救"</span><span '
'class="p">,</span> <span class="c1"># value 是上面的perms的值 '
'用户勾选了哪些就显示哪些</span>\n'
' <span class="s2">"卒中急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"创伤急救"</span>\n'
' <span class="p">]</span>\n'
' <span class="p">}</span>\n'
' <span class="p">}</span> \n'
'\n'
' <span class="n">post</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">account</span><span class="o">/</span><span '
'class="n">add_perms_batch</span><span class="o">/</span>\n'
' <span class="sd">'''can_view_other_case 和 '
'user_permission_format 字段可传可不传 不传则不修改 \\n</span>\n'
'<span class="sd"> user_id_list 必传'''</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"can_view_other_case"</span><span '
'class="p">:</span> <span class="n">true</span><span '
'class="p">,</span> <span class="c1"># 是否可以查看未接诊的病历 </span>\n'
' <span '
'class="s2">"user_permission_format"</span><span '
'class="p">:</span> <span class="p">{</span>\n'
' <span class="s2">"急救病历"</span><span '
'class="p">:</span> <span class="p">[</span> <span class="c1"># '
'以对象形式传过来 key是 上面的group_name</span>\n'
' <span class="s2">"胸痛急救"</span><span '
'class="p">,</span> <span class="c1"># value 是上面的perms的值 '
'用户勾选了哪些就显示哪些</span>\n'
' <span class="s2">"卒中急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"创伤急救"</span>\n'
' <span class="p">]</span>\n'
' <span class="p">}</span>\n'
' <span class="s2">"user_id_list"</span> <span '
'class="p">:[</span><span class="mi">1</span><span '
'class="p">,</span><span class="mi">2</span><span '
'class="p">,</span><span class="mi">3</span><span '
'class="p">]</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-26">2021-07-26</h3>\n'
'<h4 id="_18">会诊签到刷新列表</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">进入签到tab发送</span> <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"join_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span '
'class="s2">"mdt_sign"</span><span class="p">}</span> '
'<span class="n">加入房间获</span>\n'
' <span class="n">获取消息</span> <span class="n">使用topic</span> '
'<span class="s2">"mdt_sign"</span> <span '
'class="n">和</span> <span class="n">case_detail</span> <span '
'class="n">进行匹配</span>\n'
' <span class="p">{</span> <span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"topic_msg"</span><span class="p">,</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"mdt_sign"</span><span class="p">,</span> '
'<span class="c1"># 收到这个topic 说明是签到笑嘻嘻</span>\n'
' <span '
'class="s2">"case_detail"</span><span '
'class="p">:{</span><span '
'class="s2">"case_type"</span><span class="p">:</span> '
'<span class="s2">"9"</span><span class="p">,</span> '
'<span class="s2">"case_id"</span><span '
'class="p">:</span> <span class="mi">15</span><span '
'class="p">},</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-25">2021-07-25</h3>\n'
'<h4 id="profile">引入profile工具计算接口运行耗时</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">在接口后加参数</span> <span class="err">?</span><span '
'class="n">profile</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-23">2021-07-23</h3>\n'
'<h4 id="_19">增加会诊选择类型</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">多传一个参数</span> <span class="n">hz_type</span> <span '
'class="mi">1</span><span class="n">是线上会诊</span> <span '
'class="mi">2</span><span class="n">是床旁会诊</span> <span '
'class="n">选项从config拿</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="mdt_1">mdt签到增加耗时及类型返回,发起会诊时间</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">发起会诊时间</span> <span '
'class="n">huizhen_created_time</span>\n'
' <span class="n">会诊到达耗时</span> <span '
'class="n">arrive_use_minute</span>\n'
' <span class="n">会诊的类型</span> <span class="n">hz_type</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-20">2021-07-20</h3>\n'
'<h4 id="_20">增加启动任务释放任务通知</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">启动任务</span> <span class="p">{</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 发送topic</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span> <span '
'class="s2">"start_car_gps"</span><span '
'class="p">,</span> \n'
' <span class="s2">"car_id"</span><span '
'class="p">:</span> <span class="mi">1</span><span '
'class="p">,</span>\n'
' <span class="s2">"car_number"</span><span '
'class="p">:</span> <span class="s2">"99999"</span><span '
'class="p">,</span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="n">释放任务</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 发送topic</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span> <span '
'class="s2">"release_car_gps"</span><span '
'class="p">,</span> \n'
' <span class="s2">"car_id"</span><span '
'class="p">:</span> <span class="mi">1</span><span '
'class="p">,</span>\n'
' <span class="s2">"car_number"</span><span '
'class="p">:</span> <span class="s2">"99999"</span><span '
'class="p">,</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-20_1">2021-07-20</h3>\n'
'<h4 id="_21">增加待命中的车的定位点显示</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">消息体</span>\n'
' <span class="p">{</span>\n'
' <span '
'class="s2">"biz"</span><span class="p">:</span> <span '
'class="s2">"send_topic"</span><span class="p">,</span>\n'
' <span '
'class="s2">"topic"</span><span class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 发送topic</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span> <span '
'class="s2">"wait_car_send"</span><span '
'class="p">,</span> <span class="c1"># 定位的来源 待命中的车</span>\n'
' <span '
'class="s2">"new_track"</span><span class="p">:</span> '
'<span class="p">{</span> <span class="c1"># 这里获取当前车辆位置</span>\n'
' <span '
'class="s2">"lat"</span><span class="p">:</span> <span '
'class="s2">"30.647016"</span><span class="p">,</span> '
'<span class="n">纬度</span>\n'
' <span '
'class="s2">"lon"</span><span class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span '
'class="s2">"lng"</span><span class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span '
'class="s2">"getTime"</span><span class="p">:</span> '
'<span class="s2">"2021-07-13 15:41:04"</span> <span '
'class="c1"># 获取到定位的时间</span>\n'
' <span class="p">},,</span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="n">离线点消失通知</span> <span class="c1"># '
'根据救护车id来进行匹配 注意需要把点也加到缩放中</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 发送topic</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span> <span '
'class="s2">"offline_car_gps"</span><span '
'class="p">,</span> <span class="c1"># 离线通知</span>\n'
' <span class="s2">"tips"</span><span '
'class="p">:</span> <span '
'class="s2">"设备已离线!"</span><span class="p">,</span>\n'
' <span class="s2">"ambulance_id"</span><span '
'class="p">:</span> <span class="mi">1</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-17">2021-07-17</h3>\n'
'<h4 id="_22">增肌用户发送的点单独查看详情信息用</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">patient</span><span '
'class="o">/</span><span class="n">get_task_info</span><span '
'class="o">/</span> <span class="p">{</span><span '
'class="n">patient_id</span><span class="p">}</span><span '
'class="o">/</span>\n'
' <span class="n">返回内容如下</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/13ca834c.png" />\n'
'<img alt="" src=".README_images/2c1d69db.png" /></p>\n'
'<h3 id="2021-07-17_1">2021-07-17</h3>\n'
'<h4 id="gps-gps">增加用户最后发送gps时间 任务详情增加用户gps时间</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">user_gps_update_time</span><span '
'class="err">(</span><span class="n">安卓用</span><span '
'class="err">)</span> <span class="n">用户最后发送gps时间</span>\n'
'\n'
' <span class="o">/</span><span class="n">task</span><span '
'class="o">/</span><span class="p">{</span><span '
'class="nb">id</span><span class="p">}</span><span '
'class="n">内增加gps最后发送时间和用户返回</span><span class="err">(</span><span '
'class="n">web用</span><span class="err">)</span>\n'
' <span class="n">字段</span><span class="err">:</span>\n'
' <span class="n">send_gps_user</span> <span '
'class="n">发送gps用户信息</span> \n'
' <span class="n">user_gps_update_time</span> <span '
'class="n">用户最后发送gps时间</span>\n'
' <span class="n">user_gps_info</span> <span '
'class="n">用户发送gps定位点</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-16">2021-07-16</h3>\n'
'<h4 id="_23">百度地图计算距离和预到达时间</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">接口</span> <span class="n">post</span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">common</span><span '
'class="o">/</span><span class="n">get_bd_dstime</span><span '
'class="o">/</span>\n'
' <span class="n">传参格式</span> <span class="p">{</span><span '
'class="s2">"patient_id"</span><span '
'class="p">:</span><span class="mi">1</span><span '
'class="p">}</span> \n'
' <span class="n">返回体</span> <span class="p">{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="kc">None</span><span class="p">,</span> <span '
'class="s2">"distance"</span><span class="p">:</span> '
'<span class="kc">None</span><span class="p">}</span> <span '
'class="c1"># 直接带公里 分钟单位 </span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-16_1">2021-07-16</h3>\n'
'<h4 id="gps">gps房间退出机制</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">发送消息</span> <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"quit_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span '
'class="s2">"patient_gps"</span><span '
'class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15">2021-07-15</h3>\n'
'<h4 id="_24">筛选字段修改说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">性别筛选改用字段</span> <span class="n">gender</span> <span '
'class="n">传unknown</span> <span class="n">筛选未选择的病例</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15_1">2021-07-15</h3>\n'
'<h4 id="web-gps">web端 gps定位说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">修改点</span><span class="err">:</span>\n'
' <span class="mf">1.</span><span class="n">修改</span> <span '
'class="n">gpswebsocket消息获取方式</span> \n'
' <span class="n">新增发送</span> <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"join_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span '
'class="s2">"patient_gps"</span><span class="p">}</span> '
'<span class="n">加入房间获取gps数据推送</span> <span '
'class="n">不加入不会收到推送</span>\n'
' <span class="mf">2.</span><span class="n">消息从biz</span> <span '
'class="o">=</span><span class="n">car_track</span> <span '
'class="n">修改为使用</span> <span class="n">topic</span> <span '
'class="o">==</span> <span class="n">patient_gps</span> <span '
'class="n">进行获取</span> <span class="n">这里主要增加了</span> <span '
'class="s2">"type"</span> <span '
'class="n">字段用来区分定位的来源</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 收到这个topic 说明是定位消息</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span><span '
'class="s2">"user_send"</span><span class="p">,</span> '
'<span class="c1"># 定位的来源 这里user_send为用户发送的点 car_send '
'为车载gps发出的点</span>\n'
' <span '
'class="s2">"case_detail"</span><span '
'class="p">:{</span><span '
'class="s2">"case_type"</span><span class="p">:</span> '
'<span class="s2">"9"</span><span class="p">,</span> '
'<span class="s2">"case_id"</span><span '
'class="p">:</span> <span class="mi">15</span><span '
'class="p">},</span><span class="c1"># 返回病例详情做跳转用</span>\n'
' <span class="s2">"name"</span><span '
'class="p">:</span> <span '
'class="s2">"patient.name"</span> <span '
'class="c1">#患者姓名,</span>\n'
' <span '
'class="s2">"send_gps_user"</span><span '
'class="p">:{</span><span class="s2">"name"</span><span '
'class="p">:</span><span class="s2">"xxxx"</span><span '
'class="p">,</span> <span class="c1"># 位置发送者姓名</span>\n'
' <span class="p">}</span>\n'
' <span '
'class="s2">"patient_id"</span><span class="p">:</span> '
'<span class="mi">15</span><span class="p">,</span> <span '
'class="c1"># 用户id</span>\n'
' <span '
'class="s2">"new_track"</span><span class="p">:{</span> '
'<span class="c1"># 这里获取当前车辆位置</span>\n'
' <span class="s2">"lat"</span><span '
'class="p">:</span> <span '
'class="s2">"30.647016"</span><span class="p">,</span> '
'<span class="n">纬度</span>\n'
' <span class="s2">"lon"</span><span '
'class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span class="s2">"lng"</span><span '
'class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span class="s2">"getTime"</span><span '
'class="p">:</span> <span class="s2">"2021-07-13 '
'15:41:04"</span> <span class="c1"># 获取到定位的时间</span>\n'
' <span class="p">},</span>\n'
' <span class="s2">"to"</span><span '
'class="p">:</span><span class="s1">'call_place'</span> '
'<span class="c1"># 当前前往的目的地 选项有 '
''hospital'和'call_place' </span>\n'
' <span class="s2">"imei"</span><span '
'class="p">:</span><span class="s2">"xxxx"</span><span '
'class="p">,</span> <span class="n">imei设备编号</span><span '
'class="p">,</span>\n'
' <span '
'class="s2">"predict_arrive_info"</span><span '
'class="p">:{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="s2">"12分钟"</span><span '
'class="p">,</span><span '
'class="s2">"distance"</span><span class="p">:</span> '
'<span class="s2">"12公里"</span><span class="p">}</span>\n'
' <span class="p">}</span>\n'
' <span class="mf">3.</span><span class="n">新增获取用户发送的定位点</span> '
'<span class="n">字段</span> <span class="n">user_gps_info</span>\n'
' <span class="n">内容格式为</span> <span '
'class="p">{</span><span class="s1">'lat'</span><span '
'class="p">:</span> <span class="s1">'104.069100'</span> '
'<span class="p">,</span> <span '
'class="s1">'lon'</span><span class="p">:</span> <span '
'class="s1">'30.647016'</span> <span class="p">}</span>\n'
' <span class="mf">4.</span><span class="n">增加预到达信息</span> '
'<span class="n">字段</span> <span '
'class="n">predict_arrive_info</span> \n'
' <span class="n">内容格式为</span>\n'
' <span class="p">{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="s2">"12分钟"</span><span class="p">,</span> '
'<span class="c1"># 预计时间 这里直接显示就行 带了单位的</span>\n'
' <span class="s2">"distance"</span><span '
'class="p">:</span> <span class="s2">"12公里"</span><span '
'class="p">}</span> <span class="c1"># 距离</span>\n'
'\n'
' <span class="n">备注</span><span class="err">:</span>\n'
' <span class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">ambulance</span><span '
'class="o">/</span><span class="n">task</span><span '
'class="o">/</span><span class="p">{</span><span '
'class="nb">id</span> <span class="p">}</span> <span '
'class="n">to</span> <span class="n">字段为目的地标识</span>\n'
' <span class="n">to返回有两种</span> <span '
'class="s1">'call_place'</span><span class="n">为发病地</span> '
'<span class="n">也就是目前是去程</span> <span '
'class="s1">'hospital'</span><span class="n">为医院</span> '
'<span class="n">也就是目前是返程</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15_2">2021-07-15</h3>\n'
'<h4 id="gps_1">安卓端 gps定点数据推送 接口说明</h4>\n'
'<p><img alt="" src=".README_images/2ff35eb4.png" /></p>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">web端地址</span> <span class="n">https</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="n">new</span><span class="o">.</span><span '
'class="n">dottmed</span><span class="o">.</span><span '
'class="n">com</span><span class="o">/</span><span '
'class="n">huaxicenter</span><span class="o">/</span> <span '
'class="n">可用于启动任务测试</span> <span '
'class="n">只有川AB3Q01这台车是有效的</span> <span class="n">其他车不可调试</span>\n'
' <span class="n">现在web端还没改好</span> <span '
'class="n">暂时不可调试</span> \n'
' <span class="mi">1</span> <span class="o">.</span><span '
'class="n">gps初始数据获取</span> \n'
' <span class="n">从接口</span> <span class="n">patient内的</span> '
'<span class="n">下面的都在patient内</span>\n'
' <span class="n">car_gps_info</span><span '
'class="err">:</span><span class="n">获取车载gps定位数据</span> \n'
' <span class="n">user_gps_info</span><span '
'class="err">:</span><span class="n">获取用户发送的gps数据</span> <span '
'class="n">这两个返回null则说明当前无定位数据</span>\n'
' <span class="n">格式如下</span> <span class="p">{</span><span '
'class="s1">'lat'</span><span class="p">:</span> <span '
'class="s1">'30.647016'</span> <span class="p">,</span> '
'<span class="s1">'lon'</span><span class="p">:</span> '
'<span class="s1">'104.069100'</span> <span '
'class="p">}</span> <span class="n">lat纬度</span> <span '
'class="n">lon</span> <span class="n">经度</span> \n'
' <span class="n">car_to</span> <span '
'class="n">为去返程标识</span> <span class="n">值为</span><span '
'class="s1">'call_place'</span><span '
'class="n">表示目前是去程</span> <span class="n">值为</span><span '
'class="s1">'hospital'</span><span '
'class="n">表示目前是返程</span>\n'
' <span class="n">预到达信息字段</span> <span '
'class="n">predict_arrive_info</span> \n'
' <span class="n">内容格式为</span>\n'
' <span class="p">{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="s2">"12分钟"</span><span class="p">,</span> '
'<span class="c1"># 预计时间 这里直接显示就行 带了单位的</span>\n'
' <span class="s2">"distance"</span><span '
'class="p">:</span> <span class="s2">"12公里"</span><span '
'class="p">}</span> <span class="c1"># 距离</span>\n'
' <span class="n">send_gps_user</span> <span '
'class="n">发送定位的用户信息</span>\n'
' <span class="s2">"send_gps_user"</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s2">"username"</span><span class="p">:</span> '
'<span class="s2">"jack"</span><span class="p">,</span> '
'<span class="s2">"first_name"</span><span '
'class="p">:</span> <span class="s2">""</span><span '
'class="p">,</span> <span class="s2">"id"</span><span '
'class="p">:</span> <span class="mi">1</span><span '
'class="p">}</span>\n'
'\n'
' <span class="s2">"hospital_location"</span><span '
'class="p">:</span><span '
'class="s2">"30.646886,104.067835"</span> <span '
'class="c1"># 医院位置</span>\n'
' <span class="s2">"scence_location"</span><span '
'class="p">:</span> <span '
'class="s2">"30.646886,104.067835"</span> <span '
'class="c1"># 发病地点定位 这个可能返回null</span>\n'
'\n'
' <span class="mf">2.</span> <span class="n">上传gps数据</span>\n'
' <span class="n">post</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">update_patient_gps</span><span class="o">/</span><span '
'class="p">{</span><span class="n">patient_id</span><span '
'class="p">}</span><span class="o">/</span> <span '
'class="n">注意这里带患者id到路由</span>\n'
' <span class="n">传参内容</span> <span class="p">{</span><span '
'class="s2">"lat"</span><span class="p">:</span><span '
'class="s2">"xxx"</span><span class="p">,</span><span '
'class="s2">"lon"</span><span class="p">:</span><span '
'class="s2">"xxx"</span><span class="p">,</span><span '
'class="s2">"send_gps_user"</span><span '
'class="p">:</span><span class="mi">1</span><span '
'class="p">,</span> <span class="c1"># 发送定位的用户id} </span>\n'
'\n'
' <span class="mf">3.</span> <span class="n">监听websocket</span> '
'<span class="n">gps数据</span>\n'
' <span class="n">发送</span> <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"join_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span '
'class="s2">"patient_gps"</span><span class="p">}</span> '
'<span class="n">加入房间获取gps数据推送</span> <span '
'class="n">不加入不会收到推送</span>\n'
' <span class="n">数据收取</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"topic"</span><span '
'class="p">:</span> <span '
'class="s2">"patient_gps"</span><span '
'class="p">,</span> <span class="c1"># 收到这个topic 说明是定位消息</span>\n'
' <span class="s2">"type"</span><span '
'class="p">:</span><span '
'class="s2">"user_send"</span><span class="p">,</span> '
'<span class="c1"># 定位的来源 这里user_send为用户发送的点 car_send '
'为车载gps发出的点</span>\n'
' <span '
'class="s2">"patient_id"</span><span class="p">:</span> '
'<span class="mi">15</span><span class="p">,</span> <span '
'class="c1"># 用户id</span>\n'
' <span '
'class="s2">"new_track"</span><span class="p">:{</span> '
'<span class="c1"># 这里获取当前车辆位置</span>\n'
' <span class="s2">"lat"</span><span '
'class="p">:</span> <span '
'class="s2">"30.647016"</span><span class="p">,</span> '
'<span class="n">纬度</span>\n'
' <span class="s2">"lon"</span><span '
'class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span class="s2">"lng"</span><span '
'class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">,</span> '
'<span class="n">经度</span>\n'
' <span class="s2">"getTime"</span><span '
'class="p">:</span> <span class="s2">"2021-07-13 '
'15:41:04"</span> <span class="c1"># 获取到定位的时间</span>\n'
' <span class="p">},</span>\n'
' <span '
'class="s2">"send_gps_user"</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s2">"username"</span><span class="p">:</span> '
'<span class="s2">"jack"</span><span class="p">,</span> '
'<span class="s2">"first_name"</span><span '
'class="p">:</span> <span class="s2">""</span><span '
'class="p">,</span> <span class="s2">"id"</span><span '
'class="p">:</span> <span class="mi">1</span><span '
'class="p">}</span><span class="err">,</span> <span class="c1"># '
'发送gps的用户信息</span>\n'
' <span class="s2">"to"</span><span '
'class="p">:</span><span class="s1">'call_place'</span> '
'<span class="c1"># 当前前往的目的地 选项有 '
''hospital'和'call_place' ,</span>\n'
' <span '
'class="s2">"predict_arrive_info"</span><span '
'class="p">:{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="s2">"12分钟"</span><span '
'class="p">,</span><span '
'class="s2">"distance"</span><span class="p">:</span> '
'<span class="s2">"12公里"</span><span class="p">}</span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="c1"># 完整消息示例</span>\n'
' <span class="p">{</span><span '
'class="s2">"target"</span><span class="p">:</span> '
'<span class="p">{</span><span '
'class="s2">"lat"</span><span class="p">:</span> <span '
'class="s2">"30.664479"</span><span class="p">,</span> '
'<span class="s2">"to"</span><span class="p">:</span> '
'<span class="s2">"call_place"</span><span '
'class="p">,</span> <span class="s2">"lon"</span><span '
'class="p">:</span> <span '
'class="s2">"104.072222"</span><span class="p">},</span> '
'<span class="s2">"getTime"</span><span '
'class="p">:</span> <span class="s2">"2021-07-16 '
'10:17:31"</span><span class="p">,</span> <span '
'class="s2">"pre_point"</span><span class="p">:</span> '
'<span class="p">{</span><span '
'class="s2">"lat"</span><span class="p">:</span> <span '
'class="s2">"30.647016"</span><span class="p">,</span> '
'<span class="s2">"getTime"</span><span '
'class="p">:</span> <span class="s2">"2021-07-16 '
'10:17:27"</span><span class="p">,</span> <span '
'class="s2">"lng"</span><span class="p">:</span> <span '
'class="s2">"104.069100"</span><span class="p">},</span> '
'<span class="s2">"car_number"</span><span '
'class="p">:</span> <span class="s2">"6666"</span><span '
'class="p">,</span> <span '
'class="s2">"predict_arrive_info"</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s2">"duration"</span><span class="p">:</span> '
'<span class="s2">"3</span><span '
'class="se">\\u5206\\u949f</span><span '
'class="s2">"</span><span class="p">,</span> <span '
'class="s2">"distance"</span><span class="p">:</span> '
'<span class="s2">"5.3</span><span '
'class="se">\\u516c\\u91cc</span><span '
'class="s2">"</span><span class="p">},</span> <span '
'class="s2">"patient_id"</span><span class="p">:</span> '
'<span class="mi">17</span><span class="p">,</span> <span '
'class="s2">"topic"</span><span class="p">:</span> <span '
'class="s2">"patient_gps"</span><span class="p">,</span> '
'<span class="s2">"biz"</span><span class="p">:</span> '
'<span class="s2">"topic_msg"</span><span '
'class="p">,</span> <span class="s2">"imei"</span><span '
'class="p">:</span> <span '
'class="s2">"868120260193310"</span><span '
'class="p">,</span> <span class="s2">"type"</span><span '
'class="p">:</span> <span '
'class="s2">"car_send"</span><span class="p">,</span> '
'<span class="s2">"new_track"</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s2">"lat"</span><span class="p">:</span> <span '
'class="s2">"30.647240"</span><span class="p">,</span> '
'<span class="s2">"getTime"</span><span '
'class="p">:</span> <span class="s2">"2021-07-16 '
'10:17:31"</span><span class="p">,</span> <span '
'class="s2">"lng"</span><span class="p">:</span> <span '
'class="s2">"104.068871"</span><span class="p">,</span> '
'<span class="s2">"lon"</span><span class="p">:</span> '
'<span class="s2">"104.068871"</span><span '
'class="p">}}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15_3">2021-07-15</h3>\n'
'<h4 id="websocket-gps">新增websocket消息机制 基于主题设计 现用于gps定位数据推送</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">需要监听某个主题的消息</span> <span '
'class="n">首先websocket发送消息</span> \n'
' <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"join_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span class="s2">"xxx"</span><span '
'class="p">}</span> <span class="c1"># topic 内容根据业务替换</span>\n'
'\n'
' <span class="c1"># 对某个主题发送消息</span>\n'
' <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span><span '
'class="s2">"send_topic"</span><span '
'class="p">,</span><span class="s2">"topic"</span><span '
'class="p">:</span><span class="s2">"xxx"</span><span '
'class="p">,</span><span class="s2">"data"</span><span '
'class="p">:{</span><span class="s2">"hello"</span><span '
'class="p">:</span><span class="s2">"world"</span><span '
'class="p">}}</span> \n'
' <span class="n">data内的内容会原封不动的返回给到客户端</span> <span '
'class="n">例如这里客户端会收到</span> <span class="p">{</span><span '
'class="s2">"hello"</span><span class="p">:</span><span '
'class="s2">"world"</span><span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15_4">2021-07-15</h3>\n'
'<h4 id="_25">时间轴(后端备注用,前端忽略)</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">不同病例转换后时间轴</span> <span class="n">可能会有问题</span> <span '
'class="n">用getattr</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-15_5">2021-07-15</h3>\n'
'<h4 id="_26">布尔值搜索传参说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">搜索传参说明</span> <span class="n">布尔值选项的传参</span> <span '
'class="n">为True</span> <span class="n">和False</span> <span '
'class="n">注意首字母大写</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-13">2021-07-13</h3>\n'
'<h4 id="_27">部署安装说明 (服务器用)</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">注意</span> <span class="n">必须</span>\n'
'<span class="n">WEB_SOCKET_URL</span> <span '
'class="err">、</span><span class="n">WEB_SOCKET_TOKEN</span> <span '
'class="n">两个参数</span> \n'
'<span class="n">不然gps推送不起作用</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-09">2021-07-09</h3>\n'
'<h4 id="_28">数据总览接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">接口地址</span> <span class="n">http</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="mf">127.0</span><span class="o">.</span><span '
'class="mf">0.1</span><span class="p">:</span><span '
'class="mi">8000</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span>\n'
' <span class="c1"># 顶部总计 </span>\n'
' <span class="o">&</span><span '
'class="n">count_type</span><span class="o">=</span><span '
'class="n">total_count</span>\n'
' <span class="c1"># 饼图类型</span>\n'
' <span class="n">tran_hos_type</span> <span '
'class="n">转院类型</span>\n'
' <span class="n">is_start_mdt</span> <span '
'class="n">是否启动mdt</span> \n'
' <span class="n">come_from</span> <span class="n">来院方式</span>\n'
' <span class="n">emergency_type</span> <span '
'class="n">病历类型</span>\n'
'\n'
'<span class="n">筛选说明</span><span class="err">:</span> <span '
'class="n">这里转院方式</span> <span class="n">和来院方式无法进行跳转</span> '
'<span class="n">mdt的跳转需要判断一下name</span> <span '
'class="n">这里name如果未填写返回null</span> <span '
'class="n">否返回false字符串</span> <span class="n">是的话返回病历类型</span> '
'<span class="mi">1</span> <span class="mi">2</span> <span '
'class="mi">3</span> <span class="mi">9</span><span '
'class="n">等字符串</span> <span class="n">需要手动拼下参数</span> <span '
'class="n">mdt筛选字段名</span> <span '
'class="n">patient__pre_warning__is_start_mdt</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-08">2021-07-08</h3>\n'
'<h4 id="_29">高级搜索接口说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'胸痛新增筛选字段</span>\n'
' <span class="n">出车单位</span> <span '
'class="n">patient__out_car_depart</span>\n'
' <span class="n">转院类型</span> <span '
'class="n">tran_hos_type</span>\n'
' <span class="n">绕行急诊</span> <span '
'class="n">special_treat__is_pass_em</span>\n'
' <span class="n">绕行CCU</span> <span '
'class="n">special_treat__is_pass_ccu</span>\n'
' <span class="n">院前溶栓筛查</span> <span '
'class="n">patient__inside_rescue_info_chestpain__lysis_exam</span>\n'
' <span class="n">院内溶栓筛查</span> <span '
'class="n">special_treat__stemi__lysis_exam</span>\n'
' <span class="n">再灌注措施</span> <span '
'class="n">stemi_treat_method</span>\n'
' <span class="n">出院诊断</span> <span '
'class="n">special_treat__out_diagnosis</span>\n'
' <span class="n">出院或30天转归</span> <span '
'class="n">special_treat__outcome</span>\n'
' <span class="c1"># 卒中高级搜索字段</span>\n'
' <span class="n">上报状态</span> <span '
'class="n">sync_china_cz_status</span>\n'
' <span class="n">出车单位</span> <span class="n">转院类型</span> <span '
'class="n">同胸痛</span>\n'
' <span class="n">治疗类型</span> <span '
'class="n">treatment_type</span>\n'
' <span class="c1"># 其他三个类无新增字段 </span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-08_1">2021-07-08</h3>\n'
'<h4 id="_30">卒中统计接口说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">顶部总计</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">apoplexy</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span><span '
'class="o">&</span><span class="n">count_type</span><span '
'class="o">=</span><span class="n">total_count</span> \n'
' <span class="n">对应筛选使用</span> <span '
'class="n">treatment_type</span> <span class="n">关键字如</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">apoplexy</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">treatment_type</span><span class="o">=</span><span '
'class="n">unknown</span> \n'
' <span class="n">treatment_type</span> <span '
'class="n">是id</span> <span class="n">对照表参考下图</span>\n'
' <span class="c1"># 其他饼图的统计类型如下</span>\n'
' <span class="n">AIS静脉溶栓构成比</span> <span '
'class="n">ais_rs</span>\n'
' <span class="n">AIS介入再通构成比</span> <span '
'class="n">ais_zt</span>\n'
' <span class="n">DNT平均数变化趋势图</span> <span '
'class="n">dntmean</span>\n'
' <span class="n">DNT中位数变化趋势图</span> <span '
'class="n">dntmedian</span>\n'
' <span class="n">DPT平均数变化趋势图</span> <span '
'class="n">dptmean</span>\n'
' <span class="n">DPT中位数变化趋势图</span> <span '
'class="n">dptmedian</span>\n'
' <span class="n">来院</span> <span class="n">come_from</span> \n'
' <span class="n">DNT延误原因构成比</span> <span '
'class="n">dntdelayreason</span>\n'
' <span class="n">转院类型构成比</span> <span '
'class="n">tran_hos_type</span>\n'
' <span class="n">TOAST分型构成比</span> <span '
'class="n">toast</span>\n'
' <span class="n">AIS介入再通术前HIHSS评分构成比</span> <span '
'class="n">ais_nihss</span>\n'
' <span class="n">出院时NIHSS评分构成比</span> <span '
'class="n">aneu_nihss</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/731097c6.png" /></p>\n'
'<h3 id="2021-07-07">2021-07-07</h3>\n'
'<h4 id="_31">增加中毒 创伤接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">创伤</span> <span class="n">http</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="mf">127.0</span><span class="o">.</span><span '
'class="mf">0.1</span><span class="p">:</span><span '
'class="mi">8000</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">trauma_rescue</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span>\n'
' <span class="n">中毒</span> <span class="n">http</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="mf">127.0</span><span class="o">.</span><span '
'class="mf">0.1</span><span class="p">:</span><span '
'class="mi">8000</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">toxic_rescue</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-07_1">2021-07-07</h3>\n'
'<h4 '
'id="created_time2020-12-01created_time2021-12-01">胸痛统计接口和统计详情跳转说明 '
'胸痛这里时间段筛选都用 '
'&created_time[]=2020-12-01&created_time[]=2021-12-01 '
'这个格式传参</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'初步诊断趋势图 '
'http://127.0.0.1:8000/api/chestpain_rescue/count/?count_period=month</span>\n'
' <span class="n">返回</span><span class="err">:</span><span '
'class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"count"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"detail"</span><span '
'class="p">:</span> <span class="p">{</span> <span class="c1"># '
'各个类目详情</span>\n'
' <span class="s2">"unknown"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span> <span class="c1"># unknown 为未填写的</span>\n'
' <span class="s2">"1"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span> \n'
' <span class="s2">"3"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"2"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"5"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"4"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"7"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"6"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"8"</span><span '
'class="p">:</span> <span class="mi">0</span>\n'
' <span class="p">},</span>\n'
' <span class="s2">"month"</span><span '
'class="p">:</span> <span class="s2">"2021-02"</span> \n'
' <span class="p">}</span>\n'
'\n'
' <span class="n">CP_DIAGNOSIS_CODE_CHOICES</span> <span '
'class="o">=</span> <span class="p">(</span>\n'
' <span class="p">(</span><span '
'class="s2">"1"</span><span class="p">,</span> <span '
'class="s1">'STEMI'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"2"</span><span class="p">,</span> <span '
'class="s1">'NSTEMI'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"3"</span><span class="p">,</span> <span '
'class="s1">'UA'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"4"</span><span class="p">,</span> <span '
'class="s1">'主动脉夹层'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"5"</span><span class="p">,</span> <span '
'class="s1">'肺动脉栓塞'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"6"</span><span class="p">,</span> <span '
'class="s1">'非ACS心源性胸痛'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"7"</span><span class="p">,</span> <span '
'class="s1">'其它非心源性胸痛'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"8"</span><span class="p">,</span> <span '
'class="s1">'待查'</span><span class="p">),</span>\n'
' <span class="p">)</span>\n'
'\n'
' <span class="c1"># 初步诊断构成比 count_type=first_diagnosis '
'</span>\n'
' <span class="c1"># 每个count_type的值 跟筛选方法的值是一样的 比如 '
'这里是构成比count_type=first_diagnosis </span>\n'
' <span class="c1"># 那么筛选时 对应接口应该为 '
'http://127.0.0.1:8000/api/chestpain_rescue/?first_diagnosis=1</span>\n'
' <span class="c1"># 1为下面 name返回 ↓↓</span>\n'
'\n'
' <span class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">chestpain_rescue</span><span '
'class="o">/</span><span class="n">count</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">count_period</span><span class="o">=</span><span '
'class="n">month</span><span class="o">&</span><span '
'class="n">count_type</span><span class="o">=</span><span '
'class="n">first_diagnosis</span> \n'
' <span class="n">返回</span> \n'
' <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"count"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"zh_name"</span><span '
'class="p">:</span> <span class="s2">"STEMI"</span><span '
'class="p">,</span> <span class="c1"># 中文名</span>\n'
' <span class="s2">"name"</span><span '
'class="p">:</span> <span class="s2">"1"</span> <span '
'class="c1"># 用来跳转筛选的值 !!</span>\n'
' <span class="p">},</span>\n'
' <span class="p">]</span>\n'
'\n'
' <span class="c1"># 构成比的结构都同上 count_type 分别有</span>\n'
' <span class="n">come_from</span> <span class="n">来院方式</span>\n'
' <span class="n">tran_hos_type</span> <span '
'class="n">转院类型</span>\n'
' <span class="n">d2wtype</span> <span class="n">d2w构成比</span>\n'
' <span class="n">gracescoretype</span> <span '
'class="n">grace评分构成比</span>\n'
' <span class="n">d2wdelayreason</span> <span '
'class="n">d2w延误原因构成比</span>\n'
'\n'
' <span class="c1"># 平均时间平均费用 count_type 分别有 '
'注意这里跳转不用加筛选条件!</span>\n'
' <span class="n">hosdaymean</span> <span '
'class="n">平均住院天数</span> \n'
' <span class="n">hosfeemean</span> <span '
'class="n">平均住院费用</span>\n'
' <span class="n">d2wmean</span> <span '
'class="n">d2w平均时间</span>\n'
' <span class="n">返回体如下</span>\n'
' <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"count"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"month"</span><span '
'class="p">:</span> <span class="s2">"2021-02"</span>\n'
' <span class="p">},</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"count"</span><span '
'class="p">:</span> <span class="mi">0</span><span '
'class="p">,</span>\n'
' <span class="s2">"month"</span><span '
'class="p">:</span> <span class="s2">"2021-03"</span>\n'
' <span class="p">},</span>\n'
' <span class="p">]</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-07_2">2021-07-07</h3>\n'
'<h4 '
'id="apibasic_rescuecount-apibasic_rescuedata_statisticdata">增加基础急救统计接口/api/basic_rescue/count/ '
'删除旧的就出急救统计接口api/basic_rescue/data_statistic/data/</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'接口查询方法 </span>\n'
' <span class="n">默认访问获得最近12月数据</span> <span '
'class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">basic_rescue</span><span '
'class="o">/</span><span class="n">count</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">count_period</span><span class="o">=</span><span '
'class="n">month</span> \n'
' <span class="n">返回结构</span><span class="err">:</span>\n'
' <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span '
'class="s2">"count"</span><span class="p">:</span> <span '
'class="mi">0</span><span class="p">,</span>\n'
' <span '
'class="s2">"detail"</span><span class="p">:</span> '
'<span class="p">{</span> <span class="c1"># 各个病种详情 </span>\n'
' <span '
'class="s2">"1"</span><span class="p">:</span> <span '
'class="mi">0</span><span class="p">,</span>\n'
' <span '
'class="s2">"9"</span><span class="p">:</span> <span '
'class="mi">0</span><span class="p">,</span>\n'
' <span '
'class="s2">"3"</span><span class="p">:</span> <span '
'class="mi">0</span><span class="p">,</span>\n'
' <span '
'class="s2">"2"</span><span class="p">:</span> <span '
'class="mi">0</span><span class="p">,</span>\n'
' <span '
'class="s2">"unknown"</span><span class="p">:</span> '
'<span class="mi">0</span> <span class="c1"># 病种未选择</span>\n'
' <span class="p">},</span>\n'
' <span '
'class="s2">"month"</span><span class="p">:</span> <span '
'class="s2">"2020-07"</span>\n'
' <span class="p">},</span>\n'
' <span class="p">]</span> \n'
'\n'
' <span class="c1"># DISEASE_TYPE_CHOICES = (</span>\n'
' <span class="p">(</span><span '
'class="s1">'1'</span><span class="p">,</span> <span '
'class="s1">'消化道出血'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'2'</span><span class="p">,</span> <span '
'class="s1">'房颤'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'3'</span><span class="p">,</span> <span '
'class="s1">'ECMO'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'9'</span><span class="p">,</span> <span '
'class="s1">'其他'</span><span class="p">),</span>\n'
' <span class="p">)</span>\n'
' <span class="n">查找某段时间</span> <span class="n">http</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="mf">127.0</span><span class="o">.</span><span '
'class="mf">0.1</span><span class="p">:</span><span '
'class="mi">8000</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">basic_rescue</span><span class="o">/</span><span '
'class="n">count</span><span class="o">/</span><span '
'class="err">?</span><span class="n">count_period</span><span '
'class="o">=</span><span class="n">month</span><span '
'class="o">&</span><span class="n">created_time</span><span '
'class="p">[]</span><span class="o">=</span><span '
'class="mi">2020</span><span class="o">-</span><span '
'class="mi">12</span><span class="o">-</span><span '
'class="mi">01</span><span class="o">&</span><span '
'class="n">created_time</span><span class="p">[]</span><span '
'class="o">=</span><span class="mi">2021</span><span '
'class="o">-</span><span class="mi">12</span><span '
'class="o">-</span><span class="mi">01</span>\n'
'\n'
' <span class="n">跳转到病历</span> <span '
'class="n">https</span><span class="p">:</span><span '
'class="o">//</span><span class="n">new</span><span '
'class="o">.</span><span class="n">dottmed</span><span '
'class="o">.</span><span class="n">com</span><span '
'class="o">/</span><span class="n">huaxiadmin</span><span '
'class="o">/</span><span '
'class="c1">#/record/other?disease_type=1&month=2021-06-01</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-02">2021-07-02</h3>\n'
'<h4 id="_32">增加诊疗信息心电图上传说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">查看心电图列表</span> <span class="n">api</span><span '
'class="o">/</span><span class="n">device</span><span '
'class="o">/</span><span class="n">ecg_pic</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">patient_id</span><span class="o">=</span><span '
'class="n">xxx</span> <span class="n">心电图机图片接口</span> <span '
'class="n">xxx为</span> <span class="n">patient</span><span '
'class="o">.</span><span class="n">id</span> <span '
'class="n">注意不要搞错</span>\n'
' <span class="n">更新对应的心电图</span> <span '
'class="n">api</span><span class="o">/</span><span '
'class="n">device</span><span class="o">/</span><span '
'class="n">ecg_pic</span><span class="o">/</span><span '
'class="p">{</span><span class="nb">id</span><span '
'class="p">}</span> <span class="n">id为上面列表里面返回的id</span>\n'
'\n'
' <span class="n">主要字段为</span> \n'
' <span class="n">patient_id</span> <span class="o">=</span> '
'<span class="s1">'患者id'</span> \n'
' <span class="n">created_time</span> <span class="o">=</span> '
'<span class="sa">u</span><span '
'class="s1">'心电图时间'</span> \n'
' <span class="n">diagnosis_time</span> <span '
'class="o">=</span> <span class="sa">u</span><span '
'class="s1">'诊断时间'</span>\n'
' <span class="n">ecg_url_img</span> <span class="o">=</span> '
'<span class="s1">'心电图图片文件'</span>\n'
' <span class="n">其他字段是心电图机上传用的</span> <span '
'class="n">忽略不管</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-02_1">2021-07-02</h3>\n'
'<h4 id="_33">增加排班说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">获取当前值班护士医生司机的即可偶</span> <span class="n">get</span> '
'<span class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">schedule</span><span '
'class="o">/</span><span class="n">current_worker</span><span '
'class="o">/</span>\n'
' <span class="n">返回</span> <span class="p">{</span>\n'
' <span class="s2">"current_nurse"</span><span '
'class="p">:</span> <span class="p">[</span> <span '
'class="c1">#护士</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"username"</span><span '
'class="p">:</span> <span class="s2">"laowu"</span><span '
'class="p">,</span> <span class="c1"># 姓名</span>\n'
' <span class="s2">"first_name"</span><span '
'class="p">:</span> <span class="s2">""</span><span '
'class="p">,</span>\n'
' <span class="s2">"id"</span><span '
'class="p">:</span> <span class="mi">3</span> <span class="c1"># '
'id</span>\n'
' <span class="p">}</span>\n'
' <span class="p">],</span>\n'
' <span class="s2">"current_doctor"</span><span '
'class="p">:</span> <span class="p">[],</span> <span '
'class="c1">#医生 </span>\n'
' <span class="s2">"current_driver"</span><span '
'class="p">:</span> <span class="p">[</span> <span class="c1"># '
'当前值班的司机列表</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"name"</span><span '
'class="p">:</span> <span '
'class="s2">"XIAOWU"</span><span class="p">,</span> '
'<span class="c1">#姓名</span>\n'
' <span class="s2">"id"</span><span '
'class="p">:</span> <span class="mi">3</span> \n'
' <span class="p">}</span>\n'
' <span class="p">]</span>\n'
'<span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-07-02_2">2021-07-02</h3>\n'
'<h4 id="_34">增加归档接口说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">post</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="mi">212</span><span class="o">/</span><span '
'class="n">withdraw_arch</span><span class="o">/</span> <span '
'class="n">注意</span><span class="err">:</span><span '
'class="mi">212</span><span class="n">为patient</span><span '
'class="o">.</span><span class="n">id</span>\n'
'\n'
'\n'
' <span class="n">对应接口名</span> \n'
' <span class="n">撤销</span> <span '
'class="n">withdraw_arch</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span> <span '
'class="p">{</span><span class="n">patientid</span><span '
'class="p">}</span><span class="o">/</span><span '
'class="n">withdraw_arch</span><span class="o">/</span>\n'
' <span class="n">审核通过</span> <span '
'class="n">accept_arch</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="n">patient</span><span class="o">/</span><span '
'class="p">{</span><span class="n">patientid</span><span '
'class="p">}</span><span class="o">/</span><span '
'class="n">accept_arch</span> <span class="o">/</span>\n'
' <span class="n">审核拒绝</span> <span '
'class="n">refuse_arch</span> \n'
' <span class="n">提交归档</span> <span '
'class="n">ask_arch</span>\n'
' <span class="n">返回</span> \n'
' <span class="p">{</span>\n'
' <span class="s2">"msg"</span><span '
'class="p">:</span> <span '
'class="s2">"已撤销归档申请!"</span><span class="p">,</span> \n'
' <span class="s2">"arch_status"</span><span '
'class="p">:</span> <span class="s2">"0"</span> <span '
'class="c1"># 归档状态 </span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="n">归档状态</span> \n'
' <span class="n">ArchChoice</span> <span class="o">=</span> '
'<span class="p">((</span><span '
'class="s2">"0"</span><span class="p">,</span> <span '
'class="s1">'未归档'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"1"</span><span class="p">,</span> <span '
'class="s1">'已提交归档审核'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"2"</span><span class="p">,</span> <span '
'class="s1">'归档已通过'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s2">"3"</span><span class="p">,</span> <span '
'class="s1">'归档已拒绝'</span><span class="p">),</span>\n'
' <span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-24">2021-06-24</h3>\n'
'<h4 id="_35">增加司机排班</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'访问接口 http://localhost:8000/api/schedule/driver/ 获取排班列表 '
'默认返回本周的排班</span>\n'
' <span class="c1"># 使用参数schedule_day[] 获取指定日期范围排班 如 '
'http://localhost:8000/api/schedule/driver/?schedule_day[]=2021-06-25&schedule_day[]=2021-06-25 '
'</span>\n'
' <span class="c1"># 更新特定排班 编辑排班是下拉框选择救护车 传个救护车id过来</span>\n'
' <span class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="n">localhost</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">schedule</span><span '
'class="o">/</span><span class="n">driver</span><span '
'class="o">/</span><span class="p">{</span><span '
'class="nb">id</span><span class="p">}</span> <span class="c1"># '
'主要修改传参schedule_detail里列表里面每个ambulance的id</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-23">2021-06-23</h3>\n'
'<h4 id="_36">指挥中心数据统计接口</h4>\n'
'<blockquote>\n'
'<p>1.任务趋势图</p>\n'
'</blockquote>\n'
'<p>默认start_time[]为空则为12个月的统计数据\n'
'时间筛选使用先后顺序的两个start_time[]传参\n'
'<code>http://127.0.0.1:8000/api/ambulance/task_count/?count_period=month&start_time[]=2020-12-01&start_time[]=2022-12-01</code></p>\n'
'<p>返回结构</p>\n'
'<p><code>[ { "count": 0, #总数 "start_time": "2020-12" #开始时间 }, { '
'"count": 0, "start_time": "2021-01" }, ]</code></p>\n'
'<blockquote>\n'
'<p>2.各种饼图 传入 count_type 统计类型</p>\n'
'</blockquote>\n'
'<p>统计类型有\n'
'emergency_type 出车急救类型 hospital 医院 nurse 随车护士 doctor 随车医生 car '
'车两名称 driver 司机名</p>\n'
'<p><code>http://127.0.0.1:8000/api/ambulance/task_count/?count_period=month&start_time[]=2020-12-01&start_time[]=2021-06-20&count_type=car</code></p>\n'
'<p>返回结构 主要字段count 数量 name 返回中文名 如司机名 车牌号 医院名称 注意: '
'急救类型name返回是1 2 3 .. 9 需要手动做映射成中文名\n'
'<code>[ { "count": 1, "ambulance__car_number": "32552", "name": '
'"32552" }, { "count": 1, "ambulance__car_number": "65546", '
'"name": "65546" }, ]</code></p>\n'
'<h3 id="2021-06-22">2021-06-22</h3>\n'
'<h4 id="_37">卒中增加三个基本信息块说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">使用原来的api</span><span class="o">/</span><span '
'class="n">apoplexy</span> <span class="n">接口</span> <span '
'class="n">内容放在patient里面传过来</span>\n'
' <span class="n">卒中部分的</span> <span '
'class="n">列表分诊级别筛选使用</span> <span '
'class="n">由assist_exam_illness_grade</span> <span '
'class="n">修改为illness_grade</span> \n'
' <span class="n">列表显示的分诊级别的对应字段也需修改</span> <span '
'class="n">修改同常规病例</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-21">2021-06-21</h3>\n'
'<h4 id="_38">增加胸痛急诊信息</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">patient内</span> <span '
'class="n">inside_rescue_info_chestpain</span> <span '
'class="n">包含病情评估和院前溶栓治疗字段</span>\n'
' <span class="n">not_into_hospital_reason</span> <span '
'class="n">未入院原因</span> <span class="n">与是否入院同个地方</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-18">2021-06-18</h3>\n'
'<h4 id="_39">会诊消息列表病例名称对照表</h4>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">会诊消息显示那里</span> <span class="n">病例的对照表需要小改一下</span> '
'<span class="n">api</span><span class="o">/</span><span '
'class="n">huizhen</span><span class="o">/</span><span '
'class="n">mine</span><span class="o">/</span><span '
'class="n">接口内的patient内的patient_case字段</span>\n'
'<span class="n">新的对照表如下</span><span class="err">:</span>\n'
'<span class="n">胸痛由chestpain</span> <span '
'class="n">修改为chestpainrescue</span>\n'
'<span class="n">创伤由trauma</span> <span class="n">修改为</span> <span '
'class="n">traumarescue</span>\n'
'<span class="n">常规的</span> <span class="n">改成basicrescue</span>\n'
'<span class="n">增加</span> <span class="n">中毒</span> <span '
'class="n">toxicrescue</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-17">2021-06-17</h3>\n'
'<h4 id="_40">中毒和创伤接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">中毒</span> <span class="n">和创伤的接口</span> <span '
'class="n">目前所有的数据跟常规急救一样</span> <span '
'class="n">把url地址改一下</span>\n'
' <span class="n">中毒</span> <span class="n">api</span><span '
'class="o">/</span><span class="n">toxic_rescue</span><span '
'class="o">/</span> <span class="n">创伤</span> <span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">trauma_rescue</span><span '
'class="o">/</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-09">2021-06-09</h3>\n'
'<h4 id="_41">心电图机等医疗设备接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="o">/</span><span class="n">device</span><span '
'class="o">/</span><span class="n">ecg_trends</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">patient_id</span><span class="o">=</span><span '
'class="n">xxxx</span> <span class="n">趋势表接口</span>\n'
' <span class="o">/</span><span class="n">device</span><span '
'class="o">/</span><span class="n">ifa</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">patient_id</span><span class="o">=</span><span '
'class="n">xxxx</span> <span class="n">荧光仪接口</span>\n'
' <span class="o">/</span><span class="n">device</span><span '
'class="o">/</span><span class="n">ecg_pic</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">patient_id</span><span class="o">=</span><span '
'class="n">xxx</span> <span class="n">心电图机图片接口</span>\n'
'\n'
' <span class="n">心电图机返回结构</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"result"</span><span '
'class="p">:</span> <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span '
'class="s2">"created_time"</span><span '
'class="p">:</span> <span class="s2">"2021-06-02 '
'14:03:52"</span><span class="p">,</span> <span class="c1"># '
'检查时间</span>\n'
' <span class="s2">"ecg_url"</span><span '
'class="p">:</span> <span '
'class="s2">"http://127.0.0.1:8000/media/ecg/_uuuuuu_20210602140352.jpg"</span> '
'<span class="c1">#图片地址</span>\n'
' <span class="p">}</span>\n'
' <span class="p">]</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-09_1">2021-06-09</h3>\n'
'<h4 id="id">救护车医疗设备盒子视频 转运id 返回</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">pre_ambulance_info</span> <span class="n">内的</span>\n'
' <span class="n">device_video_url</span> <span '
'class="n">救护车医疗设备盒子视频</span>\n'
' <span class="n">transfer_uids</span> <span '
'class="n">转运id</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-09_2">2021-06-09</h3>\n'
'<h4 id="_42">操作记录查询说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">接口</span> <span class="n">http</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="mf">127.0</span><span class="o">.</span><span '
'class="mf">0.1</span><span class="p">:</span><span '
'class="mi">8000</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">common</span><span class="o">/</span><span '
'class="n">history</span><span class="o">/</span><span '
'class="err">?</span><span class="n">table_name</span><span '
'class="o">=</span><span class="n">basic_basicrescue</span><span '
'class="o">&</span><span class="n">instance_id</span><span '
'class="o">=</span><span class="mi">80</span>\n'
' <span class="n">通过table_name</span> <span class="n">表名</span> '
'<span class="o">+</span> <span class="n">病例id</span> <span '
'class="n">查询</span>\n'
' <span class="n">table_name</span> <span class="n">对照表</span>\n'
' <span class="n">卒中</span> <span '
'class="n">apoplexy_apoplexy</span> <span '
'class="n">常规急救basic_basicrescue</span> <span '
'class="n">中毒为</span> <span class="n">传toxic_toxicrescue</span> \n'
' <span class="n">胸痛为chestpainx_chestpainrescue</span> <span '
'class="n">创伤为traumax_traumarescue</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-08">2021-06-08</h3>\n'
'<h4 id="_43">集成操作记录说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">安装自写的包</span> <span class="n">drf</span><span '
'class="o">-</span><span class="n">safe</span><span '
'class="o">-</span><span class="n">jack</span><span '
'class="o">==</span><span class="mf">3.9</span><span '
'class="o">.</span><span class="mi">3</span>\n'
' <span class="c1"># settins.py</span>\n'
' <span class="n">INSTALLED_APPS</span> <span '
'class="o">=</span> <span class="p">[</span>\n'
' <span class="o">...</span><span class="p">,</span>\n'
' <span class="s1">'track_actions'</span><span '
'class="p">,</span>\n'
' <span class="p">]</span>\n'
'\n'
' <span class="n">MIDDLEWARE</span> <span class="o">=</span> '
'<span class="p">[</span>\n'
' <span class="o">...</span> <span class="p">,</span>\n'
' <span '
'class="s1">'track_actions.requestMiddleware.RequestMiddleware'</span><span '
'class="p">,</span>\n'
' <span class="p">]</span>\n'
' <span class="n">python</span> <span '
'class="n">manage</span><span class="o">.</span><span '
'class="n">py</span> <span class="n">migrate</span> <span '
'class="n">track_actions</span>\n'
'\n'
' <span class="c1"># url.py</span>\n'
' <span class="n">url</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'^api/'</span><span '
'class="p">,</span> <span class="n">include</span><span '
'class="p">(</span><span '
'class="s1">'track_actions.urls'</span><span '
'class="p">)),</span>\n'
'\n'
' <span class="c1"># 即可在 api/history 目录下获取到所有的历史记录</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-04">2021-06-04</h3>\n'
'<h4 id="mdt-mdtis_mdt_admin">新增mdt会诊签到 '
'用户增加是否为mdt管理员字段is_mdt_admin</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">签到接口</span> <span class="n">post</span> <span '
'class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">patient</span><span '
'class="o">/</span><span class="n">mdt_sign</span><span '
'class="o">/</span>\n'
' <span class="n">参数</span> <span class="n">timestamp</span> '
'<span class="n">当前时间戳如1622802934</span><span '
'class="o">.</span><span class="mi">037</span> <span '
'class="n">patient_id</span> <span class="n">患者id</span>\n'
'\n'
'\n'
' <span class="n">查看签到列表</span> <span '
'class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">patient</span><span '
'class="o">/</span><span class="n">mdt</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">patient__id</span><span class="o">=</span><span '
'class="mi">1</span> <span class="mi">1</span><span '
'class="n">为患者id</span>\n'
'\n'
' <span class="n">web端二维吗生成说明</span> <span '
'class="n">每隔10秒生成一次二维吗</span> <span class="n">二维码内容为</span> <span '
'class="n">患者id</span><span class="o">+</span><span '
'class="n">当前时间戳如</span> <span class="err">“</span><span '
'class="mi">1</span><span class="p">,</span><span '
'class="mf">1622802934.037</span><span class="err">”</span> <span '
'class="n">逗号分割</span> \n'
' <span class="n">安卓端扫码后</span> <span '
'class="n">拿到这个字符串解析</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-04_1">2021-06-04</h3>\n'
'<h4 id="_44">新增会诊意见</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">更新会诊意见接口</span> <span class="n">https</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="n">new</span><span class="o">.</span><span '
'class="n">dottmed</span><span class="o">.</span><span '
'class="n">com</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">huizhen</span><span class="o">/</span><span '
'class="n">mine</span><span class="o">/</span><span '
'class="mi">20336</span><span class="o">/</span> <span '
'class="mi">20336</span><span class="n">为房间号</span>\n'
' <span class="n">使用patch方法</span> <span class="n">内容为</span>\n'
' <span class="p">{</span>\n'
' <span class="s2">"opinion"</span><span '
'class="p">:</span> <span class="s2">"xxssss"</span> '
'<span class="c1"># 会诊意见</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-04_2">2021-06-04</h3>\n'
'<h4 id="put-deletepost">修改put delete方法为post</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">把所有的put</span> <span class="n">delete方法改成post</span> '
'<span class="n">请求</span> <span '
'class="n">并在请求头加入method</span><span class="o">=</span><span '
'class="n">put</span> <span class="n">或者method</span><span '
'class="o">=</span><span class="n">delete</span> \n'
' <span class="n">同时支持原有的方法</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-06-01">2021-06-01</h3>\n'
'<h4 id="_45">增加救护车任务结束接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">GET</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">ambulance</span><span class="o">/</span><span '
'class="n">view</span><span class="o">/</span><span '
'class="p">{</span><span class="nb">id</span><span '
'class="p">}</span><span class="o">/</span><span '
'class="n">end_task</span><span class="o">/</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-05-31">2021-05-31</h3>\n'
'<h4 id="_46">增加创建救护车任务接口 获取任务列表接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">创建救护车任务</span>\n'
' <span class="o">/</span><span class="n">ambulance</span><span '
'class="o">/</span><span class="n">task</span><span '
'class="o">/</span>\n'
' <span class="n">传入司机driver</span> <span class="nb">id</span> '
'<span class="n">救护车ambulance</span> <span class="nb">id</span> '
'<span class="n">目的地经纬度</span> <span class="n">target_lon</span> '
'<span class="n">target_lat</span><span class="o">*</span> \n'
' <span class="n">目的地完整地址包括省份信息由地图sdk获取</span> <span '
'class="n">target_address</span>\n'
'\n'
'<span class="o">/</span><span class="n">查看任</span><span '
'class="o">/</span><span class="n">ambulance</span><span '
'class="o">/</span><span class="n">task</span><span '
'class="o">/</span><span class="p">{</span><span '
'class="nb">id</span><span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-05-28">2021-05-28</h3>\n'
'<h4 id="_47">增加评分记录接口的说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">接口位置</span> <span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">common</span><span class="o">/</span><span '
'class="n">score_record</span><span class="o">/</span> <span '
'class="n">这里是所有评分的保存位置</span>\n'
'\n'
' <span class="c1"># 查找对应病例患者的评分细节使用 '
'/api/common/score_record/?case_id=65&case_type=9&score_type=MEWS '
'</span>\n'
'\n'
' <span class="n">case_id</span> <span '
'class="n">是病例id</span> <span class="n">case_type是病例类型</span> '
'<span class="n">score_type是评分的类型</span> <span '
'class="n">如MEWS</span>\n'
'\n'
' <span class="n">返回结果</span><span class="err">:</span> <span '
'class="p">{</span>\n'
' <span class="s2">"id"</span><span '
'class="p">:</span> <span class="mi">7</span><span '
'class="p">,</span>\n'
' <span class="s2">"case_id"</span><span '
'class="p">:</span> <span class="mi">5</span><span '
'class="p">,</span>\n'
' <span class="s2">"case_type"</span><span '
'class="p">:</span> <span class="s2">"9"</span><span '
'class="p">,</span>\n'
' <span class="s2">"score_type"</span><span '
'class="p">:</span> <span class="s2">"TRTS"</span><span '
'class="p">,</span>\n'
' <span class="s2">"score_data"</span><span '
'class="p">:</span> <span class="s2">"[{</span><span '
'class="se">\\"</span><span class="s2">label</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">意识状态</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:3,</span><span '
'class="se">\\"</span><span class="s2">tab</span><span '
'class="se">\\"</span><span class="s2">:[{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">4 = 13~15分</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:4},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">3 = 9~12分</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:3},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">2 = 6~8分</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:2},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">1 = 4~5分</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:1},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">0 = 3分</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:0}]},{</span><span '
'class="se">\\"</span><span class="s2">label</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">呼吸</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:3,</span><span '
'class="se">\\"</span><span class="s2">tab</span><span '
'class="se">\\"</span><span class="s2">:[{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">4 = 10~29</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:4},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">3 = >29</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:3},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">2 = 6~9</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:2},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">1 = 1~5</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:1},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">0 = 0</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:0}]},{</span><span '
'class="se">\\"</span><span class="s2">label</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">收缩压</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:1,</span><span '
'class="se">\\"</span><span class="s2">tab</span><span '
'class="se">\\"</span><span class="s2">:[{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">4 = >89</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:4},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">3 = 76~89</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:3},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">2 = 50~75</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:2},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">1 = 1~49</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:1},{</span><span '
'class="se">\\"</span><span class="s2">name</span><span '
'class="se">\\"</span><span class="s2">:</span><span '
'class="se">\\"</span><span class="s2">0 = 0</span><span '
'class="se">\\"</span><span class="s2">,</span><span '
'class="se">\\"</span><span class="s2">value</span><span '
'class="se">\\"</span><span class="s2">:0}]}]"</span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="n">更新对应的评分</span><span class="err">:</span> '
'<span class="n">利用上面的id进行put更新即可</span> \n'
'\n'
' <span class="c1"># 这里本来是打算web端做通用的网页给安卓调用的 但是现在没做</span>\n'
' <span class="c1">#所以这个score_type 跟 score_data 的定义跟结构要跟web端对一下 '
'现在是由web端定义的</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-05-19">2021-05-19</h3>\n'
'<h5 id="_48">医疗设备数据接入</h5>\n'
'<blockquote>\n'
'<p>绘制时长说明</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">pleth</span> <span class="n">波形</span> \n'
'<span class="c1"># 注意pleth 也就是数组一共5*60=300个数据包 50是基准线 '
'每秒推送一次数据 页面长度5秒</span>\n'
' <span class="n">ecg波形</span>\n'
' <span class="c1"># 0是基准线 如果是32767说明没有数据此时数据在基准线 每秒推送一次数据 '
'页面长度为5秒</span>\n'
' <span class="n">resp呼吸波形</span>\n'
' <span class="c1"># 范围为128到-128 超出自动截断 基准点是0 '
'呼吸界面的时间长度是16秒</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<blockquote>\n'
'<p>收到biz是medical_device的消息推送 从里面data拿数据 具体data的内容参考下面一个说明</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'websocket收到的格式</span>\n'
' <span class="p">{</span><span '
'class="s2">"biz"</span><span class="p">:</span> <span '
'class="s2">"medical_device"</span><span '
'class="p">,</span> <span class="s2">"data"</span><span '
'class="p">:</span> <span class="p">{}}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<blockquote>\n'
'<p>data内容的说明</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'machine存放机器信息 含有MINDRAY_D-SERIES是心电监护仪 目前只有心电监护仪推数据</span>\n'
' <span class="c1"># patient放患者信息 通过patient_id来读取指定病人的数据 '
'测试数据patient_id为空 </span>\n'
' <span class="c1"># project_name 是对应的检查项目名称 参考下方检查项目中文名对照表 '
'</span>\n'
' <span class="c1"># project_data 存放检查数据</span>\n'
' <span class="c1"># msg_type 有两种 plain是普通的数据推送 wave是波形数据 '
'</span>\n'
' <span class="c1"># 1. plain普通数据返回如下</span>\n'
' <span class="n">data</span> <span class="o">=</span> <span '
'class="p">{</span><span class="s1">'machine'</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s1">'machine_name'</span><span class="p">:</span> '
'<span '
'class="s1">'MINDRAY_D-SERIES-00A0370099002EAB-EUI-64'</span><span '
'class="p">},</span>\n'
' <span class="s1">'patient'</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s1">'patient_id'</span><span class="p">:</span> '
'<span class="s1">''</span><span class="p">},</span>\n'
' <span class="s1">'project_name'</span><span '
'class="p">:</span> <span '
'class="s1">'MDC_PRESS_CUFF_SYS'</span><span '
'class="p">,</span> \n'
' <span class="c1"># 对于数据不是波形数据的 msg_type是plain '
'这个project_name可以不用管 直接从project_data拿数据</span>\n'
' <span class="s1">'project_data'</span><span '
'class="p">:</span> <span class="p">{</span>\n'
' <span '
'class="s1">'MDC_PRESS_CUFF_SYS'</span><span '
'class="p">:</span> <span class="s1">'106'</span><span '
'class="p">,</span>\n'
' <span '
'class="s1">'MDC_PRESS_CUFF_MEAN'</span><span '
'class="p">:</span> <span class="s1">'86'</span><span '
'class="p">,</span>\n'
' <span '
'class="s1">'MDC_PRESS_CUFF_DIA'</span><span '
'class="p">:</span> <span class="s1">'76'</span><span '
'class="p">},</span>\n'
' <span class="s1">'msg_type'</span><span '
'class="p">:</span> <span class="s1">'plain'</span>\n'
' <span class="p">}</span>\n'
'\n'
' <span class="c1">#2.波形数据返回如下</span>\n'
' <span class="n">data</span> <span class="o">=</span> '
'<span class="p">{</span><span '
'class="s1">'machine'</span><span class="p">:</span>\n'
' <span class="p">{</span><span '
'class="s1">'machine_name'</span><span class="p">:</span> '
'<span '
'class="s1">'MINDRAY_D-SERIES-00A0370099002EAB-EUI-64'</span><span '
'class="p">},</span>\n'
' <span class="s1">'patient'</span><span '
'class="p">:</span> <span class="p">{</span><span '
'class="s1">'case_id'</span><span class="p">:</span> <span '
'class="s1">''</span><span class="p">},</span>\n'
' <span class="s1">'project_name'</span><span '
'class="p">:</span> <span '
'class="s1">'MDC_PULS_OXIM_PLETH'</span><span '
'class="p">,</span>\n'
' <span class="s1">'project_data'</span><span '
'class="p">:</span> <span class="p">{</span>\n'
' <span class="s1">'start'</span><span '
'class="p">:</span> <span '
'class="s1">'2021-05-19T10:41:39'</span><span '
'class="p">,</span> <span class="c1">#开始时间</span>\n'
' <span class="s1">'end'</span><span '
'class="p">:</span> <span '
'class="s1">'2021-05-19T10:41:40'</span><span '
'class="p">,</span> <span class="c1"># 结束时间</span>\n'
' <span class="s1">'data'</span><span '
'class="p">:</span> <span class="p">[</span><span '
'class="s1">'59'</span><span class="p">,</span> <span '
'class="s1">'57'</span><span class="p">,</span> <span '
'class="s1">'55'</span><span class="p">,</span> <span '
'class="s1">'53'</span><span class="p">,</span> <span '
'class="s1">'51'</span><span class="p">,</span> <span '
'class="s1">'49'</span><span class="p">,</span> <span '
'class="s1">'47'</span><span class="p">,</span> <span '
'class="s1">'45'</span><span class="p">,</span> <span '
'class="s1">'43'</span><span class="p">,</span> <span '
'class="s1">'41'</span><span class="p">,</span> <span '
'class="s1">'39'</span><span class="p">,</span> <span '
'class="s1">'37'</span><span class="p">,</span> <span '
'class="s1">'35'</span><span class="p">,</span> <span '
'class="s1">'33'</span><span class="p">,</span> <span '
'class="s1">'29'</span><span class="p">,</span>\n'
' <span '
'class="s1">'27'</span><span class="p">,</span> <span '
'class="s1">'24'</span><span class="p">,</span> <span '
'class="s1">'22'</span><span class="p">,</span> <span '
'class="s1">'20'</span><span class="p">,</span> <span '
'class="s1">'17'</span><span class="p">,</span> <span '
'class="s1">'14'</span><span class="p">,</span> <span '
'class="s1">'11'</span><span class="p">,</span> <span '
'class="s1">'7'</span><span class="p">,</span> <span '
'class="s1">'3'</span><span class="p">,</span> <span '
'class="s1">'0'</span><span class="p">,</span> <span '
'class="s1">'2'</span><span class="p">,</span> <span '
'class="s1">'2'</span><span class="p">,</span> <span '
'class="s1">'5'</span><span class="p">,</span> <span '
'class="s1">'12'</span><span class="p">,</span> <span '
'class="s1">'21'</span><span class="p">,</span> <span '
'class="s1">'33'</span><span class="p">,</span>\n'
' <span '
'class="s1">'46'</span><span class="p">,</span> <span '
'class="s1">'58'</span><span class="p">,</span> <span '
'class="s1">'69'</span><span class="p">,</span> <span '
'class="s1">'77'</span><span class="p">,</span> <span '
'class="s1">'83'</span><span class="p">,</span> <span '
'class="s1">'85'</span><span class="p">,</span> <span '
'class="s1">'86'</span><span class="p">,</span> <span '
'class="s1">'85'</span><span class="p">,</span> <span '
'class="s1">'84'</span><span class="p">,</span> <span '
'class="s1">'83'</span><span class="p">,</span> <span '
'class="s1">'82'</span><span class="p">,</span> <span '
'class="s1">'81'</span><span class="p">,</span> <span '
'class="s1">'78'</span><span class="p">,</span> <span '
'class="s1">'76'</span><span class="p">,</span> <span '
'class="s1">'74'</span><span class="p">,</span>\n'
' <span '
'class="s1">'73'</span><span class="p">,</span> <span '
'class="s1">'71'</span><span class="p">,</span> <span '
'class="s1">'70'</span><span class="p">,</span> <span '
'class="s1">'70'</span><span class="p">,</span> <span '
'class="s1">'69'</span><span class="p">,</span> <span '
'class="s1">'69'</span><span class="p">,</span> <span '
'class="s1">'68'</span><span class="p">,</span> <span '
'class="s1">'67'</span><span class="p">,</span> <span '
'class="s1">'66'</span><span class="p">,</span> <span '
'class="s1">'64'</span><span class="p">,</span> <span '
'class="s1">'61'</span><span class="p">,</span> <span '
'class="s1">'59'</span><span class="p">,</span> <span '
'class="s1">'56'</span><span class="p">,</span> <span '
'class="s1">'54'</span><span class="p">],</span>\n'
' <span class="s1">'length'</span><span '
'class="p">:</span> <span class="mi">60</span> <span class="c1"># '
'每秒内总共给了多少个数据</span>\n'
' <span class="p">},</span>\n'
' <span class="s1">'msg_type'</span><span '
'class="p">:</span> <span class="s1">'wave'</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<blockquote>\n'
'<p>中文名对照表</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">DICTNAME_MAP</span> <span class="o">=</span> <span '
'class="p">{</span> <span class="c1"># 缩略词对照表</span>\n'
'\n'
' <span class="c1"># 这部分是波形的数据参考名 wave</span>\n'
' <span class="s2">"MDC_IMPED_TTHOR"</span><span '
'class="p">:</span> <span '
'class="s2">"用于绘制RESP曲线数据"</span><span '
'class="p">,</span><span class="c1">#</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_I"</span><span '
'class="p">:</span> <span class="s2">"I导联电压"</span><span '
'class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_II"</span><span '
'class="p">:</span> <span '
'class="s2">"II导联电压"</span><span class="p">,</span>\n'
' <span '
'class="s2">"MDC_ECG_ELEC_POTL_III"</span><span '
'class="p">:</span> <span '
'class="s2">"III导联电压"</span><span class="p">,</span>\n'
' <span '
'class="s2">"MDC_ECG_ELEC_POTL_AVL"</span><span '
'class="p">:</span> <span '
'class="s2">"AVL导联电压"</span><span class="p">,</span>\n'
' <span '
'class="s2">"MDC_ECG_ELEC_POTL_AVR"</span><span '
'class="p">:</span> <span '
'class="s2">"AVR导联电压"</span><span class="p">,</span>\n'
' <span '
'class="s2">"MDC_ECG_ELEC_POTL_AVF"</span><span '
'class="p">:</span> <span '
'class="s2">"AVF导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V1"</span><span '
'class="p">:</span> <span '
'class="s2">"V1导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V2"</span><span '
'class="p">:</span> <span '
'class="s2">"V2导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V3"</span><span '
'class="p">:</span> <span '
'class="s2">"V3导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V4"</span><span '
'class="p">:</span> <span '
'class="s2">"V4导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V5"</span><span '
'class="p">:</span> <span '
'class="s2">"V5导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_ECG_ELEC_POTL_V6"</span><span '
'class="p">:</span> <span '
'class="s2">"V6导联电压"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_PULS_OXIM_PLETH"</span><span '
'class="p">:</span> <span '
'class="s2">"指尖容积Pleth曲线数据"</span><span '
'class="p">,</span>\n'
'\n'
' <span class="c1"># 这里是plain里的值 </span>\n'
' <span class="s2">"MDC_ECG_HEART_RATE"</span><span '
'class="p">:</span> <span class="s2">"心率HR"</span><span '
'class="p">,</span>\n'
' <span class="s2">"MDC_TTHOR_RESP_RATE"</span><span '
'class="p">:</span> <span '
'class="s2">"呼吸RESP"</span><span class="p">,</span>\n'
' <span class="s2">"MDC_PULS_OXIM_SAT_O2"</span><span '
'class="p">:</span> <span '
'class="s2">"血氧饱和度spo2"</span><span class="p">,</span>\n'
' <span '
'class="s2">"MDC_PULS_OXIM_PULS_RAT"</span><span '
'class="p">:</span> <span class="s2">"脉率PR"</span><span '
'class="p">,</span>\n'
' <span class="s2">"MDC_PRESS_CUFF_SYS"</span><span '
'class="p">:</span> <span '
'class="s2">"无创血压NIBP-收缩压(大)"</span><span '
'class="p">,</span>\n'
' <span class="s2">"MDC_PRESS_CUFF_DIA"</span><span '
'class="p">:</span> <span '
'class="s2">"无创血压NIBP-舒张压(小)"</span><span '
'class="p">,</span>\n'
' <span class="s2">"MDC_PRESS_CUFF_MEAN"</span><span '
'class="p">:</span> <span '
'class="s2">"无创血压NIBP-平均值"</span><span '
'class="p">,</span>\n'
'\n'
'<span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-05-07">2021-05-07</h3>\n'
'<h5 id="_49">新增病例切换接口</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">详见</span> <span class="n">swagger</span> <span '
'class="o">/</span><span class="n">common</span><span '
'class="o">/</span><span class="n">switchcase</span><span '
'class="o">/</span> <span class="n">说明</span> \n'
' <span class="n">目前只有常规到卒中的接口生效</span><span '
'class="err">,</span><span class="n">仅基础信息部分能同步</span><span '
'class="err">,</span><span class="n">其他后续增加支持</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="for">多选项添加的提醒 (for 后端)</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">创建多对多后</span>\n'
' <span class="n">需要在common</span><span class="o">/</span><span '
'class="n">model</span> <span class="n">里面添加选项</span>\n'
' <span class="n">需要在init_data</span> <span '
'class="n">尾部添加选项</span>\n'
' <span class="n">config接口才能搜索到</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_50">常规病例修改点</h5>\n'
'<blockquote>\n'
'<p>下面的字段迁移到patient里面</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="c1">### 这部分字段统统放在patient里面 需要修改一下 '
'对应取config的选项名也需要修改一下</span>\n'
' <span class="n">come_from</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'来院方式'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">COME_FROM_CHOICES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">disease_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="sa">u</span><span '
'class="s1">'发病时间(精确到分钟)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_null_attack_detail_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span>\n'
' <span class="s1">'发病时间无法精确到分钟'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">COMMON_BOOLEAN_CHOICES</span><span class="p">)</span>\n'
' <span class="n">disease_date</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'发病日期'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">disease_time_type</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病时间类型'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">TIME_TYPES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">disease_address</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病地址'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">DISEASE_ADDR_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">20</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">disease_address_other</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="sa">u</span><span '
'class="s1">'其他发病地址'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">disease_type</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="s1">'病种类型'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">DISEASE_TYPE_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">default</span><span class="o">=</span><span '
'class="s1">'9'</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-04-25">2021-04-25</h3>\n'
'<h5 id="_51">增加呼叫管理功能相关接口</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'接口1 呼叫管理分类列表 http://127.0.0.1:8000/api/call/typelist/ '
'</span>\n'
'<span class="n">返回</span> <span class="p">{</span>\n'
' <span class="s2">"total"</span><span '
'class="p">:</span> <span class="mi">1</span><span '
'class="p">,</span>\n'
' <span class="s2">"name"</span><span '
'class="p">:</span> <span class="s2">"胸痛急救"</span><span '
'class="p">,</span>\n'
' <span class="s2">"value"</span><span '
'class="p">:</span> <span class="s2">"1"</span>\n'
' <span class="p">},</span><span class="err">】</span>\n'
'<span class="c1"># 接口2 呼叫管理 新增 删除 列表 更新 详见swagger 操作同会诊新增删除 '
'http://127.0.0.1:8000/api/call/manager/</span>\n'
' <span class="n">呼叫列表筛洗条件</span> <span class="err">?</span><span '
'class="nb">type</span><span class="o">=</span><span '
'class="mi">1</span> <span class="n">type是病历类型</span> <span '
'class="n">值可以用接口1返回的值</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-04-21">2021-04-21</h3>\n'
'<h5 id="_52">其他急救数据统计</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'接口地址</span>\n'
'<span class="c1"># '
'http://127.0.0.1:8000/api/basic_rescue/data_statistic/data/</span>\n'
'<span class="c1">#=查询参数 start_time end_time</span>\n'
'<span class="c1"># 返回 </span>\n'
'<span class="p">{</span>\n'
' <span class="s2">"current_search"</span><span '
'class="p">:</span> <span class="p">[],</span> <span '
'class="c1">#搜索的结果</span>\n'
' <span class="s2">"recent_data"</span><span '
'class="p">:</span> <span class="p">[]</span> <span class="c1"># '
'近一年的统计数据</span>\n'
'<span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-04-16">2021-04-16</h3>\n'
'<h5 id="_53">对字符串类型的单选重定义,增加扩展性</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'如下图所示 在config接口 查找job字段(目前只修改了这个字段,后面新增的字段都会按这个方法来做)</span>\n'
'<span class="c1"># 对于这种单选不确定的选项 我们提供几个默认值 '
'用户可以点选,这部分逻辑跟之前一样没变</span>\n'
'<span class="c1"># 但是现在可以在点选框下面多加一个输入框 让用户任意输入自定义的选项值传过来 '
'</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/7603236f.png" /></p>\n'
'<h3 id="2021-04-14">2021-04-14</h3>\n'
'<h5 id="_54">时间节点接口及数据统计接口说明</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'数据统计接口 '
'https://new.dottmed.com/api/chestpain/data_screening/</span>\n'
'<span class="c1"># '
'https://new.dottmed.com/api/chestpain/data_screening_detail/?unit=month&start_time=2020-04-01&end_time=2021-04-01</span>\n'
'<span class="c1"># 基础急救时间节点 '
'https://new.dottmed.com/api/basic_rescue/time_node/{id}/</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_55">基础急救过滤字段</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="s1">'start_time'</span><span class="p">,</span> \n'
' <span class="s1">'end_time'</span><span '
'class="p">,</span> \n'
' <span class="s1">'patient__gender'</span><span '
'class="p">,</span> \n'
' <span class="s1">'come_from'</span><span '
'class="p">,</span> <span class="n">来院方式</span>\n'
' <span class="s1">'patient__name'</span><span '
'class="p">,</span> \n'
' <span class="s1">'patient__pat_med_card'</span><span '
'class="p">,</span> <span class="n">门诊号</span>\n'
' <span class="s1">'patient__inpatient_no'</span><span '
'class="p">,</span> <span class="n">住院号</span>\n'
' <span class="s1">'is_huizhen'</span><span '
'class="p">,</span> <span class="n">是否为会诊</span>\n'
' <span class="s1">'illness_grade'</span><span '
'class="p">,</span> <span class="n">分诊级别</span>\n'
' <span class="s1">'disease_type'</span><span '
'class="p">,</span> <span class="n">疾病类型</span>\n'
' <span class="s2">"illness_grade"</span><span '
'class="p">,</span> <span class="n">分诊级别</span>\n'
'\n'
' <span class="c1"># 说明illness_grade 为空时传unknown过来!</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-04-13">2021-04-13</h3>\n'
'<h5 id="patientprecpr">增加院前急救模块 位于patient模块precpr字段</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">heart_attack_time</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'心脏骤停发生时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">witness_start_pcr_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'目击者启动CPR时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="c1"># 注释掉的这部分字段应该是不可更改的 这里我映射对应病历的字段到这里!!! '
'</span>\n'
' <span class="c1"># call_time = '
'models.DateTimeField('呼救时间', null=True, '
'blank=True)</span>\n'
' <span class="c1"># send_car_time = '
'models.DateTimeField('派车时间', null=True, '
'blank=True)</span>\n'
' <span class="c1"># car_start_time = '
'models.DateTimeField('救护车出发时间', null=True, '
'blank=True)</span>\n'
' <span class="c1"># arrive_scene_time = '
'models.DateTimeField('到达现场时间', null=True, '
'blank=True)</span>\n'
' <span class="c1"># leave_scene_time = '
'models.DateTimeField('离开现场时间', null=True, '
'blank=True)</span>\n'
' <span class="c1"># 重复的字段</span>\n'
' <span class="n">doctor_start_pcr_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'医务人员启动CPR时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">set_breath_way_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'建立高级气道时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">set_breath_way_method</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'建立高级气道方式'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">BREATH_WAY_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span>\n'
' <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">set_venous_way_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'建立静脉通道时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">set_venous_way_method</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'建立静脉通道类型'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">VENOUS_WAY_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span>\n'
' <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">first_use_drug_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'第一次给药时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">first_use_drug_type</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'第一次给药类型'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">USE_DRUG_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">first_use_drug_dose</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'第一次给药剂量'</span><span '
'class="p">,</span><span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">first_defibrate_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'第一次除颤时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">first_defibrate_type</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'第一次除颤频次'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">DEFIBRATE_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">rosc_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'ROSC时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">heart_attack_reason</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'心脏骤停发生原因'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span><span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">heart_attack_patinet_status</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span '
'class="s1">'心脏骤停发生时患者状态'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span><span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">heart_attack_address</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'心脏骤停发生地点'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">HEARTATTACK_ADDRESS_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">heart_attack_init_hr</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">IntegerField</span><span '
'class="p">(</span><span class="s1">'心脏骤停初始心率'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span><span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="apoplexy">增加基础急救模块 模块结构基本同apoplexy模块</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="c1">#路由位置 /api/basic_rescue/</span>\n'
' <span class="c1"># 新增字段 has_cpr_pre 院前是否进行cpr</span>\n'
' <span class="n">返回结构为</span><span class="err">:</span>\n'
' <span class="p">{</span> \n'
' <span class="o">....</span> <span '
'class="n">表层为基本信息字段及院前信息字段</span><span class="p">,</span>\n'
' <span '
'class="s2">"assist_examination"</span><span '
'class="p">:</span><span '
'class="s2">"院内急救部分字段"</span><span class="p">,</span>\n'
' <span class="s2">"vital_signs"</span><span '
'class="p">:</span><span '
'class="s2">"生命体征字段,院前院内都在这里"</span><span '
'class="err">,</span>\n'
'\n'
' <span class="p">}</span>\n'
'\n'
' <span class="c1">## 表层字段说明:</span>\n'
' <span class="c1"># 基本急诊相关信息</span>\n'
' <span class="n">come_from</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'来院方式'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">COME_FROM_CHOICES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">1</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">illness_grade</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="s1">'分诊级别'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">ILLNESS_GRADE_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
'\n'
' <span class="n">disease_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="sa">u</span><span '
'class="s1">'发病时间(精确到分钟)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">is_null_attack_detail_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span>\n'
' <span class="s1">'发病时间无法精确到分钟'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">COMMON_BOOLEAN_CHOICES</span><span class="p">)</span>\n'
' <span class="n">disease_date</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'发病日期'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">disease_time_type</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病时间类型'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">TIME_TYPES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">disease_address</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病地址'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">DISEASE_ADDR_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">20</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">disease_address_other</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="sa">u</span><span '
'class="s1">'其他发病地址'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">disease_type</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="s1">'病种类型'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">DISEASE_TYPE_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="c1"># 这部分字段是院前的统统不要放在这里 这里应该是一个总表 '
'不放太多具体的字段</span>\n'
' <span class="c1"># 院前部分!</span>\n'
' <span class="n">call_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'呼救时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">send_car_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'派车时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">car_start_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'救护车出发时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">arrive_scene_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达现场时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">leave_scene_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'离开现场时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">car_number</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'车牌号'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">car_nurse</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'随车护士'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">car_doctor</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'出车医生'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">has_cpr_pre</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">NullBooleanField</span><span class="p">(</span>\n'
' <span class="s1">'是否进行院前心肺复苏'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">COMMON_BOOLEAN_CHOICES</span><span class="p">)</span>\n'
'\n'
'\n'
'\n'
' <span class="c1">## assit_exam 字段</span>\n'
'\n'
' <span class="n">hospital_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="sa">u</span><span '
'class="s1">'到达本院大门时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">triage_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'急诊分诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">triage_nurse</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'分诊台护士'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">register_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'挂号时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">last_modified</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'最近更新时间'</span><span '
'class="p">,</span> <span class="n">auto_now</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1"># 入院情况部分 # todo patient的 住院科室应该从这里拿 '
'his也是同步到这里</span>\n'
' <span class="n">into_hospital_status</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span class="s1">'入院情况'</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">not_into_hospital_reason</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="s1">'未入院原因及去向'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">NOT_INSIDE_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">2</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">leave_emergency_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'离开急诊科时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">into_hospital_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'入院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">get_certificate_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'开入院证时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
'\n'
'\n'
' <span class="n">返回结构如图</span><span class="err">:</span> \n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/43fb8dac.png" /></p>\n'
'<h3 id="2021-04-01">2021-04-01</h3>\n'
'<h5 id="websocket">增加腕带到达推送websocket提醒</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'发送的数据包内容位 根据biz wrist_arrive 和病人的id来判断是否需要刷新</span>\n'
'<span class="p">{</span><span '
'class="s1">'biz'</span><span class="p">:</span> <span '
'class="s1">'wrist_arrive'</span><span '
'class="p">,</span><span '
'class="s1">'patient_id'</span><span '
'class="p">:</span><span class="n">xxx</span><span '
'class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-29">2021-03-29</h3>\n'
'<h5 id="_56">到达医院大门时间</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">hospital_arrive_time</span> <span '
'class="n">在apoplexy接口内assist_examination字段里面</span>\n'
' <span class="n">time_node</span> <span class="n">接口</span> <span '
'class="n">返回</span>\n'
' <span class="p">(</span><span '
'class="s1">'ODT(发病~到院)'</span><span class="p">,</span> '
'<span class="s1">'ODT'</span><span class="p">),</span> '
'<span class="n">ODT</span> <span class="n">为filed_name</span>\n'
' <span class="p">(</span><span '
'class="s1">'ONT(发病~溶栓)'</span><span class="p">,</span> '
'<span class="s1">'ONT'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'DNT(入院~溶栓)'</span><span class="p">,</span> '
'<span class="s1">'DNT'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'DPT(入院~穿刺)'</span><span class="p">,</span> '
'<span class="s1">'DPT'</span><span class="p">),</span>\n'
' <span class="p">(</span><span '
'class="s1">'DRT(入院~血管再通)'</span><span class="p">,</span> '
'<span class="s1">'DRT'</span><span class="p">),</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_57">新增文章上传模块</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'查看文章目录 </span>\n'
'<span class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">article</span><span '
'class="o">/</span><span class="n">article_category</span><span '
'class="o">/</span>\n'
'<span class="c1"># 文章列表</span>\n'
'<span class="n">http</span><span class="p">:</span><span '
'class="o">//</span><span class="mf">127.0</span><span '
'class="o">.</span><span class="mf">0.1</span><span '
'class="p">:</span><span class="mi">8000</span><span '
'class="o">/</span><span class="n">api</span><span '
'class="o">/</span><span class="n">article</span><span '
'class="o">/</span><span class="n">article</span><span '
'class="o">/</span><span class="err">?</span><span '
'class="n">category_id</span><span class="o">=</span><span '
'class="mi">2</span>\n'
'<span class="n">返回值中的url为文章detail的链接</span>\n'
'\n'
'<span class="c1"># web端采用富文本编辑器</span>\n'
'<span class="n">具体参考龙洞项目</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_58">新增报告链接字段</h5>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'都在apoplexy接口内assist_examination字段里面</span>\n'
' <span class="n">ecg_report</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">TextField</span><span class="p">(</span><span '
'class="s1">'心电图报告链接'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">liver_kidney_electrolyte_report</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'生化报告链接'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">coagulation_report</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'凝血报告链接'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">blood_report</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">TextField</span><span class="p">(</span><span '
'class="s1">'血常规报告链接'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">collect_blood_report</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span '
'class="s1">'快速血糖血气报告链接'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">biomarker_report</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span '
'class="s1">'心肌标志物报告链接'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">color_ct_report</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">TextField</span><span '
'class="p">(</span><span class="s1">'彩超报告链接'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ct_report</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">TextField</span><span class="p">(</span><span '
'class="s1">'CT报告链接'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-27">2021-03-27</h3>\n'
'<h5 id="_59">呼叫管理功能</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># '
'这里是从account/user里面进行筛选拿数据</span>\n'
'<span class="n">如</span> <span class="n">https</span><span '
'class="p">:</span><span class="o">//</span><span '
'class="n">new</span><span class="o">.</span><span '
'class="n">dottmed</span><span class="o">.</span><span '
'class="n">com</span><span class="o">/</span><span '
'class="n">api</span><span class="o">/</span><span '
'class="n">account</span><span class="o">/</span><span '
'class="n">users</span><span class="o">/</span><span '
'class="err">?</span><span class="n">teams</span><span '
'class="o">=</span><span class="mi">488</span><span '
'class="o">&</span><span class="n">channel_type</span><span '
'class="o">=</span><span class="mi">1</span> \n'
'<span class="n">teams是病例类型</span> <span '
'class="n">channel_type是</span> <span class="n">绿通类型</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<p><img alt="" src=".README_images/b963862d.png" /></p>\n'
'<h5 id="api-swagger">增加新api文档迁移到 /swagger/ 这个目录下</h5>\n'
'<div class="codehilite"><pre><span></span><span class="c1"># 访问地址 '
'https://new.dottmed.com/swagger/ </span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="account">用户account增加绿通类型</h5>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'具体选项在https://new.dottmed.com/api/common/config/ '
'这个接口里面查找channel_type</span>\n'
' <span class="c1"># 所有有选项的都是在这里面拿</span>\n'
' <span class="n">channel_type</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="s1">'绿色通道类型'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">CHANNEL_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">2</span><span '
'class="p">,</span> <span class="n">default</span><span '
'class="o">=</span><span class="s1">'1'</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="apoplexy_1">卒中apoplexy接口新增发病时间无法精确到分钟</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="o">//</span> <span class="n">前端这里参考胸痛修改即可</span>\n'
' <span class="n">is_null_attack_detail_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span>\n'
' <span class="s1">'发病时间无法精确到分钟'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">COMMON_BOOLEAN_CHOICES</span><span class="p">)</span>\n'
' <span class="n">disease_date</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateField</span><span class="p">(</span><span '
'class="sa">u</span><span class="s1">'发病日期'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">disease_time_type</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病时间类型'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">TIME_TYPES</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="timenode-odt">timenode 新增ODT字段</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="p">(</span><span '
'class="s1">'ODT(发病~到院)'</span><span class="p">,</span> '
'<span class="s1">'ODT'</span><span class="p">),</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-26">2021-03-26</h3>\n'
'<h4 id="_60">安卓端新字段说明</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'apoplexy 接口</span>\n'
' <span class="n">disease_address</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="sa">u</span><span '
'class="s1">'发病地址'</span><span class="p">,</span> <span '
'class="n">choices</span><span class="o">=</span><span '
'class="n">DISEASE_ADDR_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">20</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">strok_pre_symptom</span> <span '
'class="n">发病症状</span>\n'
' <span class="n">strok_pre_symptom_other</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'其他发病症状'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">200</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1"># apoplexy接口内 examination字段内</span>\n'
' <span class="n">out_center_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'出卒中中心时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">ncx_area</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span>\n'
' <span class="s1">'出血大小'</span><span '
'class="p">,</span> <span class="n">validators</span><span '
'class="o">=</span><span class="p">[</span><span '
'class="n">validate_ncx_area_range</span><span class="p">],</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="n">ncx_l_site</span> <span '
'class="n">出血部位左侧</span>\n'
' <span class="n">ncx_r_site</span> <span '
'class="n">出血部位右侧</span>\n'
' <span class="n">yx_lnxg_check</span> <span '
'class="n">颅内血管检查</span>\n'
' <span class="n">ncx_cause</span> <span class="n">脑出血病因诊断</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-25">2021-03-25</h3>\n'
'<h4 id="cdsswebsocket">cdss调websocket所需参数接口</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1">// '
'接口地址 : http://127.0.0.1:8000/api/common/cdss_info/ {patient_id}/ '
'</span>\n'
' <span class="c1">// 传入patient的id即可</span>\n'
' <span class="c1">// 示例</span>\n'
'<span class="kd">var</span> <span class="nx">axios</span> <span '
'class="o">=</span> <span class="nx">require</span><span '
'class="p">(</span><span class="s1">'axios'</span><span '
'class="p">);</span>\n'
'<span class="kd">var</span> <span class="nx">data</span> <span '
'class="o">=</span> <span class="nx">JSON</span><span '
'class="p">.</span><span class="nx">stringify</span><span '
'class="p">({</span>\n'
' <span class="s2">"wristlet"</span><span '
'class="o">:</span> <span class="s2">"100"</span><span '
'class="p">,</span>\n'
' <span class="s2">"field"</span><span '
'class="o">:</span> <span '
'class="s2">"arrive_emrescue_room_time"</span>\n'
'<span class="p">});</span>\n'
'\n'
'<span class="kd">var</span> <span class="nx">config</span> <span '
'class="o">=</span> <span class="p">{</span>\n'
' <span class="nx">method</span><span class="o">:</span> <span '
'class="s1">'get'</span><span class="p">,</span>\n'
' <span class="nx">url</span><span class="o">:</span> <span '
'class="s1">'http://127.0.0.1:8000/api/common/cdss_info/16/'</span><span '
'class="p">,</span>\n'
' <span class="nx">headers</span><span class="o">:</span> <span '
'class="p">{</span> \n'
' <span class="s1">'authorization'</span><span '
'class="o">:</span> <span class="s1">'Token '
'c0088f3dc7798579d8d356e83587e59e4e75043e'</span><span '
'class="p">,</span> \n'
' <span class="s1">'Content-Type'</span><span '
'class="o">:</span> <span '
'class="s1">'application/json'</span>\n'
' <span class="p">},</span>\n'
' <span class="nx">data</span> <span class="o">:</span> <span '
'class="nx">data</span>\n'
'<span class="p">};</span>\n'
'\n'
'<span class="nx">axios</span><span class="p">(</span><span '
'class="nx">config</span><span class="p">)</span>\n'
'<span class="p">.</span><span class="nx">then</span><span '
'class="p">(</span><span class="kd">function</span> <span '
'class="p">(</span><span class="nx">response</span><span '
'class="p">)</span> <span class="p">{</span>\n'
' <span class="nx">console</span><span class="p">.</span><span '
'class="nx">log</span><span class="p">(</span><span '
'class="nx">JSON</span><span class="p">.</span><span '
'class="nx">stringify</span><span class="p">(</span><span '
'class="nx">response</span><span class="p">.</span><span '
'class="nx">data</span><span class="p">));</span>\n'
'<span class="p">})</span>\n'
'<span class="p">.</span><span class="k">catch</span><span '
'class="p">(</span><span class="kd">function</span> <span '
'class="p">(</span><span class="nx">error</span><span '
'class="p">)</span> <span class="p">{</span>\n'
' <span class="nx">console</span><span class="p">.</span><span '
'class="nx">log</span><span class="p">(</span><span '
'class="nx">error</span><span class="p">);</span>\n'
'<span class="p">});</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-19">2021-03-19</h3>\n'
'<h4 id="_61">获取腕带信息 快速记录腕带时间完善说</h4>\n'
'<blockquote>\n'
'<p>获取接口返回以下内容</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">data</span><span class="p">[</span><span '
'class="s1">'illness_grade'</span><span class="p">]</span> '
'<span class="o">=</span><span class="n">patient</span><span '
'class="o">.</span><span class="n">illness_grade</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'case_type'</span><span class="p">]</span> '
'<span class="o">=</span> <span '
'class="s1">'apoplexy'</span> \n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'first_nerve_recieve_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">assist_examination</span><span class="o">.</span><span '
'class="n">first_nerve_recieve_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'first_nerve_arrive_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">assist_examination</span><span class="o">.</span><span '
'class="n">first_nerve_arrive_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'rs_talking_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">thrombolysis</span><span class="o">.</span><span '
'class="n">talking_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'rs_sign_time'</span><span class="p">]</span> '
'<span class="o">=</span> <span class="n">patient</span><span '
'class="o">.</span><span class="n">apoplexy</span><span '
'class="o">.</span><span class="n">thrombolysis</span><span '
'class="o">.</span><span class="n">sign_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'rs_medication_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">thrombolysis</span><span class="o">.</span><span '
'class="n">medication_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'jr_send_to_catheter_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">therapy</span><span class="o">.</span><span '
'class="n">send_to_catheter_time</span> <span class="c1"># '
'送导管室时间</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'jr_talk_time'</span><span class="p">]</span> '
'<span class="o">=</span> <span class="n">patient</span><span '
'class="o">.</span><span class="n">apoplexy</span><span '
'class="o">.</span><span class="n">therapy</span><span '
'class="o">.</span><span class="n">talk_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'jr_sign_time'</span><span class="p">]</span> '
'<span class="o">=</span> <span class="n">patient</span><span '
'class="o">.</span><span class="n">apoplexy</span><span '
'class="o">.</span><span class="n">therapy</span><span '
'class="o">.</span><span class="n">sign_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'jr_embolectomy_time'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">therapy</span><span class="o">.</span><span '
'class="n">embolectomy_time</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'intra_acknowlege_images'</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">thrombolysis</span><span class="o">.</span><span '
'class="n">intra_acknowlege_images</span><span '
'class="o">.</span><span class="n">all</span><span '
'class="p">()</span>\n'
' <span class="n">data</span><span class="p">[</span><span '
'class="s1">'inter_acknowlege_images '</span><span '
'class="p">]</span> <span class="o">=</span> <span '
'class="n">patient</span><span class="o">.</span><span '
'class="n">apoplexy</span><span class="o">.</span><span '
'class="n">therapy</span><span class="o">.</span><span '
'class="n">inter_acknowlege_images</span><span '
'class="o">.</span><span class="n">all</span><span '
'class="p">()</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<blockquote>\n'
'<p>更新接口加入前缀即可!</p>\n'
'</blockquote>\n'
'<h3 id="2021-03-19_1">2021-03-19</h3>\n'
'<h5 id="pre_ecginside_ecg">增加pre_ecg、inside_ecg传值说明</h5>\n'
'<blockquote>\n'
'<p>传值用 pre_ecg_in 取值用pre_ecg 传值inside_ecg_in 取值inside_ecg\n'
'救护车出发时间字段car_start_time已修复</p>\n'
'</blockquote>\n'
'<h5 id="_62">增加扫码快速填写相关字段</h5>\n'
'<blockquote>\n'
'<p>溶栓谈话字段加上 rs_ 介入导管字段加上jr_前缀\n'
'溶栓、介入知情同意书图片字段位于其他接口 见下</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'溶栓相关字段</span>\n'
' <span class="n">talking_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'静脉溶栓开始谈话时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">sign_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'患者/家属签字时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">medication_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'开始静脉溶栓时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="c1"># 介入导管相关字段</span>\n'
' <span class="n">send_to_catheter_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'送导管室时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">talk_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'开始知情谈话时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">sign_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'介入治疗家属签字时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">embolectomy_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'开始介入治疗时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_63">溶栓、介入知情同意书图片字段</h5>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">intra_acknowlege_images</span> <span '
'class="n">溶栓知情同意书图片</span> <span '
'class="n">位于apoplexy</span><span class="o">/</span><span '
'class="n">thrombolysis接口</span>\n'
'<span class="n">inter_acknowlege_images</span> <span '
'class="n">介入治疗知情同意书图片</span> <span class="n">位于</span> <span '
'class="n">apoplexy</span><span class="o">/</span><span '
'class="n">threapy接口</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-16">2021-03-16</h3>\n'
'<h5 id="_64">更新分诊等级筛选字段</h5>\n'
'<blockquote>\n'
'<p>使用unknown来筛选分诊等级为空的病例</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="nx">apoplexy</span><span class="o">/?</span><span '
'class="nx">assist_examination__illness_grade</span><span '
'class="o">=</span><span class="nx">unknown</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_65">腕带信息查询 更新接口</h5>\n'
'<blockquote>\n'
'<p>查询腕带信息</p>\n'
'</blockquote>\n'
'<p>http://127.0.0.1:8000/api/chestpain/get_wrist_info/?wristlet=100</p>\n'
'<blockquote>\n'
'<p>更新腕带信息</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span><span '
'class="err">http://</span><span class="mf">127.0</span><span '
'class="err">.</span><span class="mf">0.1</span><span '
'class="err">:</span><span class="mi">8000</span><span '
'class="err">/api/chestpain/update_arrive_time/</span>\n'
'<span class="p">{</span><span '
'class="nt">"wristlet"</span><span '
'class="p">:</span><span class="s2">"100"</span><span '
'class="p">,</span><span class="nt">"field"</span><span '
'class="p">:</span><span '
'class="s2">"arrive_emrescue_room_time"</span><span '
'class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="113616">11:36:16</h4>\n'
'<blockquote>\n'
'<p>会诊房间命名 胸痛10开头 卒中20开头 创伤30开头</p>\n'
'</blockquote>\n'
'<h5 id="id-illness_grade">会诊列表 返回病例id illness_grade</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="s2">"patient"</span><span class="err">:</span> '
'<span class="p">{</span>\n'
' <span class="nt">"case_id"</span><span '
'class="p">:</span> <span class="mi">16</span><span '
'class="p">,</span> <span class="err">//</span> <span '
'class="err">病例id</span>\n'
' <span '
'class="nt">"illness_grade"</span><span '
'class="p">:</span> <span class="kc">null</span> <span '
'class="p">,</span>\n'
' <span '
'class="nt">"case_tpe"</span><span '
'class="p">:</span><span class="s2">"apoplexy"</span> '
'<span class="err">//返回病例类型</span>\n'
' <span class="p">}</span><span class="err">,</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="2021-03-15">2021-03-15</h3>\n'
'<h4 id="_66">心电图字段</h4>\n'
'<blockquote>\n'
'<p>默认上传格式 图片放在imgs里面 这里传值用 pre_ecg_in 取值用pre_ecg '
'传值inside_ecg_in 取值inside_ecg</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="s2">"pre_ecg"</span><span class="err">:</span> '
'<span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="nt">"imgs"</span><span '
'class="p">:</span> <span class="p">[],</span>\n'
' <span '
'class="nt">"ecg_fetch_time"</span><span '
'class="p">:</span> <span class="kc">null</span><span '
'class="p">,</span>\n'
' <span '
'class="nt">"ecg_diagnosis_time"</span><span '
'class="p">:</span> <span class="kc">null</span>\n'
' <span class="p">}</span>\n'
' <span class="p">]</span><span class="err">,</span>\n'
' <span class="s2">"inside_ecg"</span><span '
'class="err">:</span> <span class="p">[</span>\n'
' <span class="p">{</span>\n'
' <span class="nt">"imgs"</span><span '
'class="p">:</span> <span class="p">[],</span>\n'
' <span '
'class="nt">"ecg_fetch_time"</span><span '
'class="p">:</span> <span class="kc">null</span><span '
'class="p">,</span>\n'
' <span '
'class="nt">"ecg_diagnosis_time"</span><span '
'class="p">:</span> <span class="kc">null</span>\n'
' <span class="p">}</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="vitalsign">卒中vitalsign体征内新增院前的字段</h4>\n'
'<blockquote>\n'
'<p>在原来字段前加上pre前缀</p>\n'
'</blockquote>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'院前生命体征</span>\n'
' <span class="n">pre_conscious</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span>\n'
' <span class="s1">'院前意识'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">CONSCIOUS_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">2</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_breathe</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'院前呼吸(次/分钟)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_pulse</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">IntegerField</span><span class="p">(</span><span '
'class="s1">'院前脉搏(次/分钟)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_heart_rate</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">IntegerField</span><span '
'class="p">(</span><span '
'class="s1">'院前心率(次/分钟)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_hight_mmhg</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">IntegerField</span><span '
'class="p">(</span><span '
'class="s1">'院前收缩压(mmHg)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_bottom_mmhg</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">IntegerField</span><span '
'class="p">(</span><span '
'class="s1">'院前舒张压(mmHg)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_temperature</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="sa">u</span><span '
'class="s1">'院前体温(℃)'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">15</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_height</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">FloatField</span><span class="p">(</span><span '
'class="s1">'院前身高(cm)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_weight</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">FloatField</span><span class="p">(</span><span '
'class="s1">'院前体重(kg)'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_quickly_blood_sugar</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">FloatField</span><span '
'class="p">(</span><span class="s1">'院前快速血糖'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_bmi</span> <span class="o">=</span> <span '
'class="n">models</span><span class="o">.</span><span '
'class="n">FloatField</span><span class="p">(</span><span '
'class="s1">'院前BMI'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_blood_oxygen</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">FloatField</span><span '
'class="p">(</span><span class="s1">'血氧饱和度'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_ecg_collect_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'院前心电采集时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_ecg_diagnosis_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'院前心电确诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">pre_troponin</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">FloatField</span><span class="p">(</span><span '
'class="s1">'院前肌钙蛋白'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">pre_left_pupil</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">FloatField</span><span '
'class="p">(</span><span class="s1">'院前左瞳孔'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_right_pupil</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">FloatField</span><span '
'class="p">(</span><span class="s1">'院前右瞳孔'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_light_reflex</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="s1">'院前对光反射'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span '
'class="n">LIGHT_REFLEX_CHOICES</span><span class="p">,</span> '
'<span class="n">max_length</span><span class="o">=</span><span '
'class="mi">2</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="c1"># 主诉及症状</span>\n'
' <span class="n">symptoms_multi</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">ManyToManyField</span><span '
'class="p">(</span>\n'
' <span class="n">SymptomsMulti</span><span '
'class="p">,</span> <span class="n">related_name</span><span '
'class="o">=</span><span '
'class="s1">'vital_signs'</span><span class="p">,</span> '
'<span class="n">verbose_name</span><span class="o">=</span><span '
'class="sa">u</span><span class="s1">'主诉及症状'</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">collect_blood_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'快速血糖时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">pre_collect_blood_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'院前快速血糖时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">delivery_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'送检时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="apoplexy_2">卒中apoplexy接口内新增字段</h4>\n'
'<h5 id="_67">基本信息</h5>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'基本信息 院前</span>\n'
' <span class="n">car_start_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'救护车出发时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">car_doctor</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'出车医生'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">car_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'120到达时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">in_hospital_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'住院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">in_hospital_department</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'住院科室'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">strok_pre_symptom</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">ManyToManyField</span><span '
'class="p">(</span>\n'
' <span '
'class="s1">'apoplexy.StrokPreSymptomMultiChoices'</span><span '
'class="p">,</span>\n'
' <span class="n">related_name</span><span '
'class="o">=</span><span '
'class="s1">'apoplexy_strok_pre_symptom'</span><span '
'class="p">,</span>\n'
' <span class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">strok_pre_symptom_other</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'其他卒中预警症状'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">200</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="examination">卒中examination接口内新增字段</h4>\n'
'<blockquote>\n'
'<p>位于apoplexy接口内 assist_examination字段 或 examination接口 内</p>\n'
'</blockquote>\n'
'<h5 id="_68">入院出院字段</h5>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'神内会诊</span>\n'
' <span class="n">ask_nerve_huizhen_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'通知神内会诊时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">first_nerve_recieve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'神内一线医生接诊时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">first_nerve_arrive_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'神经内科会诊到达时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">first_nerve_doctor</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'神内一线医生'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">into_hospital_status</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">NullBooleanField</span><span '
'class="p">(</span><span class="s1">'入院情况'</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">not_into_hospital_reason</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="s1">'未入院原因及去向'</span><span '
'class="p">,</span> <span class="n">choices</span><span '
'class="o">=</span><span class="n">NOT_INSIDE_CHOICES</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">2</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">leave_emergency_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'离开急诊科时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">into_hospital_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'入院时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">into_nerve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'进入神经内科病房时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">into_nerve2_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'进入神经内科2病房时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">into_nerve3_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'进入神经内科3病房时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">into_nerve_sur_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'进入神经外科病房时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">get_certificate_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'开入院证时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">arrive_icu_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达ICU时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="_69">常规检查部分</h5>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'检验医嘱信息 下医嘱 执行 采样 收养 出报告</span>\n'
' <span class="n">collect_blood_advice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'首次测指尖血糖/血气分析医嘱时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">blood_advice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'开具血细胞分析医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">coagulation_advice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'开具术前凝血常规医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">liver_kidney_advice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'开具生化1-6医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">biomarker_advice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'开具心肌标志物医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="c1"># 血气血糖时间</span>\n'
' <span class="n">collect_blood_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'快速血糖血气实际采血时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">collect_blood_send_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'快速血糖血气采样时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">collect_blood_recieve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'快速血糖血气收样时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">collect_blood_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'快速血糖血气报告时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="c1"># 血常规</span>\n'
' <span class="n">blood_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'血常规实际采血时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">blood_send_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'血常规采样送检时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">blood_recieve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'血常规检验室收样时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">blood_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'血常规检验报告时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">blood_start_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'血常规检验开始时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">blood_doctor</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'血常规检验医生'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="c1"># 凝血</span>\n'
' <span class="n">coagulation_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'凝血检验实际采血时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">coagulation_send_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'凝血检验采样时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">coagulation_recieve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'凝血检验收样时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">coagulation_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'凝血检验出报告时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">coagulation_doctor</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span><span class="s1">'凝血功能检验医生'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1"># 生化时间</span>\n'
' <span class="n">liver_kidney_electrolyte_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验实际采血时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">liver_kidney_electrolyte_send_time</span> '
'<span class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验采样时间时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">liver_kidney_electrolyte_recieve_time</span> '
'<span class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验收样时间时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">liver_kidney_electrolyte_report_time</span> '
'<span class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验出报告时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">liver_kidney_electrolyte_check_time</span> '
'<span class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验开始时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">liver_kidney_electrolyte_doctor</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">CharField</span><span '
'class="p">(</span>\n'
' <span class="s1">'生化检验医生'</span><span '
'class="p">,</span> <span class="n">max_length</span><span '
'class="o">=</span><span class="mi">50</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="c1"># 心肌标志物</span>\n'
' <span class="n">biomarker_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'心肌标志物采血时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">biomarker_send_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'心肌标志物采样时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">biomarker_recieve_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'心肌标志物收样时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">biomarker_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'心肌标志物报告时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'\n'
' <span class="c1"># 肌钙蛋白</span>\n'
' <span class="n">troponin_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">CharField</span><span class="p">(</span><span '
'class="s1">'肌钙蛋白时间'</span><span class="p">,</span> <span '
'class="n">max_length</span><span class="o">=</span><span '
'class="mi">50</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">troponin_value</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">FloatField</span><span '
'class="p">(</span><span class="s1">'肌钙蛋白值'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h5 id="ct">CT彩超部分</h5>\n'
'<div class="codehilite"><pre><span></span> <span '
'class="n">color_ct_advice_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'开具彩超医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">color_ct_notice_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'通知彩超室时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">color_ct_check_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'彩超检查时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">color_ct_result_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'彩超出结果时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">ct_atient_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'患者到达CT1室时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_atient_time_2</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'患者到达CT2室时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_atient_time_3</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'患者到达CT3室时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_atient_time_4</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'患者到达CT4室时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">arrive_micu_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达MICU时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">arrive_nicu_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达NICU时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">arrive_eicu_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达EICU时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">arrive_emsg_room_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span '
'class="s1">'到达急诊手术室时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">arrive_emrescue_room_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'到达抢救室时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
'\n'
' <span class="n">ct_report_time</span> <span '
'class="o">=</span> <span class="n">models</span><span '
'class="o">.</span><span class="n">DateTimeField</span><span '
'class="p">(</span><span class="s1">'CT报告时间'</span><span '
'class="p">,</span> <span class="n">null</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">,</span> <span class="n">blank</span><span '
'class="o">=</span><span class="kc">True</span><span '
'class="p">)</span>\n'
' <span class="n">ct_start_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'CT执行时间'</span><span class="p">,</span> <span '
'class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_scan_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'CT扫描时间/首张图像时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="n">ct_end_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'CT扫描结束时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
' <span class="c1"># 改名为:开具医嘱套餐时间</span>\n'
' <span class="n">ct_head_time</span> <span class="o">=</span> '
'<span class="n">models</span><span class="o">.</span><span '
'class="n">DateTimeField</span><span class="p">(</span><span '
'class="s1">'开具CT医嘱时间'</span><span class="p">,</span> '
'<span class="n">null</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">,</span> <span '
'class="n">blank</span><span class="o">=</span><span '
'class="kc">True</span><span class="p">)</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="110452">11:04:52</h4>\n'
'<ul>\n'
'<li>apoplexy接口 增加筛选条件 assist_examination__illness_grade</li>\n'
'<li>apoplexy接口 增加 assist_examination 检查字段 '
'可在这里对所有的检查字段进行统一上传</li>\n'
'</ul>\n'
'<h3 id="2021-03-03">2021-03-03</h3>\n'
'<h4 id="154240">15:42:40</h4>\n'
'<ul>\n'
'<li>是否进行静脉溶栓根据治疗类型来判断,生成word中未溶栓默认不勾选</li>\n'
'</ul>\n'
'<div class="codehilite"><pre><span></span><span '
'class="n">res</span> <span class="o">=</span> <span '
'class="p">{</span><span '
'class="s2">"is_medication"</span><span '
'class="p">:</span> <span class="mi">429</span> <span '
'class="ow">in</span> <span class="n">apoplexy</span><span '
'class="o">.</span><span class="n">treatment_type</span> <span '
'class="ow">and</span> <span class="kc">True</span> <span '
'class="ow">or</span> <span class="kc">None</span><span '
'class="p">,}</span> <span class="c1"># 这两个字段根据 治疗类型 来返回值</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="124751">12:47:51</h4>\n'
'<ul>\n'
'<li>新增就诊号返回, patient.admid</li>\n'
'<li>修复质控单字段</li>\n'
'</ul>\n'
'<h3 id="_70">服务器部署说明</h3>\n'
'<ul>\n'
'<li>2021-03-03 12:57:11</li>\n'
'</ul>\n'
'<h4 id="pdf">字体安装(pdf转换用)</h4>\n'
'<div class="codehilite"><pre><span></span> <span class="c1"># '
'C:\\Windows\\Fonts</span>\n'
' sudo cp /home/zsy/DENG* /usr/share/fonts\n'
' <span class="nb">cd</span> /usr/share/fonts\n'
' sudo chmod <span class="m">644</span> *\n'
' sudo fc-cache -fv\n'
' <span class="c1">#或者使用</span>\n'
' yum -y install fontconfig\n'
' fc-cache <span class="c1"># 刷新字体</span>\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="libreoffice-pdf">libreoffice 安装(pdf转换用)</h4>\n'
'<div class="codehilite"><pre><span></span>tar -zxvf '
'LibreOffice_6.4.6_Linux_x86-64_rpm.tar.gz\n'
'<span class="nb">cd</span> '
'LibreOffice_6.4.6.2_Linux_x86-64_rpm/RPMS\n'
'rpm -ivh *\n'
'ln -s /usr/bin/libreoffice6.4 /usr/bin/libreoffice\n'
'ln -s /usr/bin/libreoffice6.4 /usr/bin/lowriter \n'
'<span class="c1"># 离线安装依赖包 相互依赖的包需同时安装</span>\n'
'https://wwa.lanzous.com/i5AO9mew1la\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="_71">其他指令(非必须)</h4>\n'
'<h5 id="_72">内网调试接口</h5>\n'
'<div class="codehilite"><pre><span></span>curl -v -X DELETE '
'<span class="m">192</span>.168.221.131/api/account/auth/\n'
'curl -v -X POST <span '
'class="m">192</span>.168.221.131/api/apoplexy/88/\n'
'</pre></div>\n'
'\n'
'\n'
'<h3 id="gitlab-ci-3">gitlab ci集成方法 (3步骤)</h3>\n'
'<h4 id="gitlab-runner">gitlab-runner配置</h4>\n'
'<div '
'class="codehilite"><pre><span></span>https://gitlab.dottmed.com/emergency/huaxi_server/settings/ci_cd '
'在这里获取注册的参数\n'
'sudo gitlab-ci-multi-runner register 注册一下\n'
'sudo gitlab-ci-multi-runner restart\n'
'sudo gitlab-ci-multi-runner list 检查项目有没有开\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="gitlab-ci-root">配置gitlab-ci root权限</h4>\n'
'<div class="codehilite"><pre><span></span>sudo nano '
'/etc/systemd/system/gitlab-runner.service\n'
'修改excutestart 最后用户名为root\n'
'sudo systemctl daemon-reload\n'
' sudo systemctl restart gitlab-runner\n'
'sudo service gitlab-runner restart\n'
'</pre></div>\n'
'\n'
'\n'
'<h4 id="git">配置本地的git权限</h4>\n'
'<div class="codehilite"><pre><span></span>git config --global '
'credential.helper store\n'
'添加本地缓存 手动获取clone 输入一次密码即可!\n'
'在每个项目目录下使用\n'
'sudo nano .git/config 配置账号密码 '
'https://username:password@git.dev.tencent.com/xxx/xxx.git\n'
'</pre></div>',
'toc': '<div class="toc">\n'
'<ul>\n'
'<li><a href="#_1">部署注意事项</a><ul>\n'
'<li><a href="#2022-05-24">2022-05-24</a><ul>\n'
'<li><a href="#_2">病历导出板块修改</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2022-05-24_1">2022-05-24</a><ul>\n'
'<li><a href="#install_envsh">项目安装依赖包请使用install_env.sh</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2022-05-23">2022-05-23</a><ul>\n'
'<li><a href="#python3">迁移python3补充</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2022-04-29">2022-04-29</a><ul>\n'
'<li><a href="#_3">会诊列表结构修改</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2022-04-12">2022-04-12</a><ul>\n'
'<li><a href="#_4">病历高级搜索重复项筛选</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2022-04-08">2022-04-08</a><ul>\n'
'<li><a href="#_5">急诊演练反馈修改点</a></li>\n'
'<li><a href="#_6">创伤病历高级搜索</a></li>\n'
'<li><a href="#_7">创伤病历统计指标</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-28">2021-12-28</a><ul>\n'
'<li><a href="#_8">质控字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-28_1">2021-12-28</a><ul>\n'
'<li><a href="#_9">通用出院转归模块</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-27">2021-12-27</a><ul>\n'
'<li><a href="#_10">创伤其他信息字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-27_1">2021-12-27</a><ul>\n'
'<li><a href="#_11">创伤新增字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-27_2">2021-12-27</a><ul>\n'
'<li><a href="#_12">创伤救治队员到达急诊时间</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-17">2021-12-17</a><ul>\n'
'<li><a href="#gbs">gbs评分</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-17_1">2021-12-17</a><ul>\n'
'<li><a href="#2">胸痛急救模块2</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-16">2021-12-16</a><ul>\n'
'<li><a href="#_13">胸痛急救模块</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-16_1">2021-12-16</a><ul>\n'
'<li><a href="#_14">消化道出血模块</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-13">2021-12-13</a><ul>\n'
'<li><a href="#_15">批量删除</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-13_1">2021-12-13</a><ul>\n'
'<li><a href="#post">批量导出 使用post传参</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-13_2">2021-12-13</a><ul>\n'
'<li><a href="#hz_grade_detail-all_mdt_doctor">发起会诊查看会诊医生详情 '
'接口由hz_grade_detail修改为使用 all_mdt_doctor/</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-12-13_3">2021-12-13</a><ul>\n'
'<li><a href="#mdt">排班修改 mdt排班增加搜索框+增加科室分类</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-09-30">2021-09-30</a><ul>\n'
'<li><a href="#_16">用户权限可用目录菜单说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-09-30_1">2021-09-30</a><ul>\n'
'<li><a href="#_17">用户权限编辑说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-26">2021-07-26</a><ul>\n'
'<li><a href="#_18">会诊签到刷新列表</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-25">2021-07-25</a><ul>\n'
'<li><a href="#profile">引入profile工具计算接口运行耗时</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-23">2021-07-23</a><ul>\n'
'<li><a href="#_19">增加会诊选择类型</a></li>\n'
'<li><a href="#mdt_1">mdt签到增加耗时及类型返回,发起会诊时间</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-20">2021-07-20</a><ul>\n'
'<li><a href="#_20">增加启动任务释放任务通知</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-20_1">2021-07-20</a><ul>\n'
'<li><a href="#_21">增加待命中的车的定位点显示</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-17">2021-07-17</a><ul>\n'
'<li><a href="#_22">增肌用户发送的点单独查看详情信息用</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-17_1">2021-07-17</a><ul>\n'
'<li><a href="#gps-gps">增加用户最后发送gps时间 任务详情增加用户gps时间</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-16">2021-07-16</a><ul>\n'
'<li><a href="#_23">百度地图计算距离和预到达时间</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-16_1">2021-07-16</a><ul>\n'
'<li><a href="#gps">gps房间退出机制</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15">2021-07-15</a><ul>\n'
'<li><a href="#_24">筛选字段修改说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15_1">2021-07-15</a><ul>\n'
'<li><a href="#web-gps">web端 gps定位说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15_2">2021-07-15</a><ul>\n'
'<li><a href="#gps_1">安卓端 gps定点数据推送 接口说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15_3">2021-07-15</a><ul>\n'
'<li><a href="#websocket-gps">新增websocket消息机制 基于主题设计 '
'现用于gps定位数据推送</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15_4">2021-07-15</a><ul>\n'
'<li><a href="#_25">时间轴(后端备注用,前端忽略)</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-15_5">2021-07-15</a><ul>\n'
'<li><a href="#_26">布尔值搜索传参说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-13">2021-07-13</a><ul>\n'
'<li><a href="#_27">部署安装说明 (服务器用)</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-09">2021-07-09</a><ul>\n'
'<li><a href="#_28">数据总览接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-08">2021-07-08</a><ul>\n'
'<li><a href="#_29">高级搜索接口说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-08_1">2021-07-08</a><ul>\n'
'<li><a href="#_30">卒中统计接口说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-07">2021-07-07</a><ul>\n'
'<li><a href="#_31">增加中毒 创伤接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-07_1">2021-07-07</a><ul>\n'
'<li><a '
'href="#created_time2020-12-01created_time2021-12-01">胸痛统计接口和统计详情跳转说明 '
'胸痛这里时间段筛选都用 '
'&created_time[]=2020-12-01&created_time[]=2021-12-01 '
'这个格式传参</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-07_2">2021-07-07</a><ul>\n'
'<li><a '
'href="#apibasic_rescuecount-apibasic_rescuedata_statisticdata">增加基础急救统计接口/api/basic_rescue/count/ '
'删除旧的就出急救统计接口api/basic_rescue/data_statistic/data/</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-02">2021-07-02</a><ul>\n'
'<li><a href="#_32">增加诊疗信息心电图上传说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-02_1">2021-07-02</a><ul>\n'
'<li><a href="#_33">增加排班说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-07-02_2">2021-07-02</a><ul>\n'
'<li><a href="#_34">增加归档接口说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-24">2021-06-24</a><ul>\n'
'<li><a href="#_35">增加司机排班</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-23">2021-06-23</a><ul>\n'
'<li><a href="#_36">指挥中心数据统计接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-22">2021-06-22</a><ul>\n'
'<li><a href="#_37">卒中增加三个基本信息块说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-21">2021-06-21</a><ul>\n'
'<li><a href="#_38">增加胸痛急诊信息</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-18">2021-06-18</a><ul>\n'
'<li><a href="#_39">会诊消息列表病例名称对照表</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-17">2021-06-17</a><ul>\n'
'<li><a href="#_40">中毒和创伤接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-09">2021-06-09</a><ul>\n'
'<li><a href="#_41">心电图机等医疗设备接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-09_1">2021-06-09</a><ul>\n'
'<li><a href="#id">救护车医疗设备盒子视频 转运id 返回</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-09_2">2021-06-09</a><ul>\n'
'<li><a href="#_42">操作记录查询说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-08">2021-06-08</a><ul>\n'
'<li><a href="#_43">集成操作记录说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-04">2021-06-04</a><ul>\n'
'<li><a href="#mdt-mdtis_mdt_admin">新增mdt会诊签到 '
'用户增加是否为mdt管理员字段is_mdt_admin</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-04_1">2021-06-04</a><ul>\n'
'<li><a href="#_44">新增会诊意见</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-04_2">2021-06-04</a><ul>\n'
'<li><a href="#put-deletepost">修改put delete方法为post</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-06-01">2021-06-01</a><ul>\n'
'<li><a href="#_45">增加救护车任务结束接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-05-31">2021-05-31</a><ul>\n'
'<li><a href="#_46">增加创建救护车任务接口 获取任务列表接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-05-28">2021-05-28</a><ul>\n'
'<li><a href="#_47">增加评分记录接口的说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-05-19">2021-05-19</a><ul>\n'
'<li><a href="#_48">医疗设备数据接入</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-05-07">2021-05-07</a><ul>\n'
'<li><a href="#_49">新增病例切换接口</a></li>\n'
'<li><a href="#for">多选项添加的提醒 (for 后端)</a></li>\n'
'<li><a href="#_50">常规病例修改点</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-25">2021-04-25</a><ul>\n'
'<li><a href="#_51">增加呼叫管理功能相关接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-21">2021-04-21</a><ul>\n'
'<li><a href="#_52">其他急救数据统计</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-16">2021-04-16</a><ul>\n'
'<li><a href="#_53">对字符串类型的单选重定义,增加扩展性</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-14">2021-04-14</a><ul>\n'
'<li><a href="#_54">时间节点接口及数据统计接口说明</a></li>\n'
'<li><a href="#_55">基础急救过滤字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-13">2021-04-13</a><ul>\n'
'<li><a href="#patientprecpr">增加院前急救模块 位于patient模块precpr字段</a></li>\n'
'<li><a href="#apoplexy">增加基础急救模块 模块结构基本同apoplexy模块</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-04-01">2021-04-01</a><ul>\n'
'<li><a href="#websocket">增加腕带到达推送websocket提醒</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-29">2021-03-29</a><ul>\n'
'<li><a href="#_56">到达医院大门时间</a></li>\n'
'<li><a href="#_57">新增文章上传模块</a></li>\n'
'<li><a href="#_58">新增报告链接字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-27">2021-03-27</a><ul>\n'
'<li><a href="#_59">呼叫管理功能</a></li>\n'
'<li><a href="#api-swagger">增加新api文档迁移到 /swagger/ 这个目录下</a></li>\n'
'<li><a href="#account">用户account增加绿通类型</a></li>\n'
'<li><a href="#apoplexy_1">卒中apoplexy接口新增发病时间无法精确到分钟</a></li>\n'
'<li><a href="#timenode-odt">timenode 新增ODT字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-26">2021-03-26</a><ul>\n'
'<li><a href="#_60">安卓端新字段说明</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-25">2021-03-25</a><ul>\n'
'<li><a href="#cdsswebsocket">cdss调websocket所需参数接口</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-19">2021-03-19</a><ul>\n'
'<li><a href="#_61">获取腕带信息 快速记录腕带时间完善说</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-19_1">2021-03-19</a><ul>\n'
'<li><a href="#pre_ecginside_ecg">增加pre_ecg、inside_ecg传值说明</a></li>\n'
'<li><a href="#_62">增加扫码快速填写相关字段</a></li>\n'
'<li><a href="#_63">溶栓、介入知情同意书图片字段</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-16">2021-03-16</a><ul>\n'
'<li><a href="#_64">更新分诊等级筛选字段</a></li>\n'
'<li><a href="#_65">腕带信息查询 更新接口</a></li>\n'
'<li><a href="#113616">11:36:16</a><ul>\n'
'<li><a href="#id-illness_grade">会诊列表 返回病例id illness_grade</a></li>\n'
'</ul>\n'
'</li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-15">2021-03-15</a><ul>\n'
'<li><a href="#_66">心电图字段</a></li>\n'
'<li><a href="#vitalsign">卒中vitalsign体征内新增院前的字段</a></li>\n'
'<li><a href="#apoplexy_2">卒中apoplexy接口内新增字段</a><ul>\n'
'<li><a href="#_67">基本信息</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#examination">卒中examination接口内新增字段</a><ul>\n'
'<li><a href="#_68">入院出院字段</a></li>\n'
'<li><a href="#_69">常规检查部分</a></li>\n'
'<li><a href="#ct">CT彩超部分</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#110452">11:04:52</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#2021-03-03">2021-03-03</a><ul>\n'
'<li><a href="#154240">15:42:40</a></li>\n'
'<li><a href="#124751">12:47:51</a></li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#_70">服务器部署说明</a><ul>\n'
'<li><a href="#pdf">字体安装(pdf转换用)</a></li>\n'
'<li><a href="#libreoffice-pdf">libreoffice 安装(pdf转换用)</a></li>\n'
'<li><a href="#_71">其他指令(非必须)</a><ul>\n'
'<li><a href="#_72">内网调试接口</a></li>\n'
'</ul>\n'
'</li>\n'
'</ul>\n'
'</li>\n'
'<li><a href="#gitlab-ci-3">gitlab ci集成方法 (3步骤)</a><ul>\n'
'<li><a href="#gitlab-runner">gitlab-runner配置</a></li>\n'
'<li><a href="#gitlab-ci-root">配置gitlab-ci root权限</a></li>\n'
'<li><a href="#git">配置本地的git权限</a></li>\n'
'</ul>\n'
'</li>\n'
'</ul>\n'
'</li>\n'
'</ul>\n'
'</div>\n'}
无
Total calls | Total time | Cache hits | Cache misses |
---|---|---|---|
0 | 0 ms | 0 | 0 |
add | get | set | delete | clear | get_many | set_many | delete_many | has_key | incr | decr | incr_version | decr_version |
---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Signal | Providing | Receivers |
---|---|---|
class_prepared | class | |
connection_created | connection | |
got_request_exception | request | |
post_delete | using, instance | ModelBase.update_changed, ModelBase.update_changed, ModelBase.update_changed |
post_init | instance | ModelSignalRouter.post_init_receiver, ProcessedImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ProcessedImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ProcessedImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ProcessedImageField.update_dimension_fields, ProcessedImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields |
post_migrate | interactive, apps, plan, app_config, using, verbosity | create_permissions, create_contenttypes, ConstanceConfig.create_perm |
post_save | update_fields, instance, raw, using, created | ModelSignalRouter.post_save_receiver, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, edit_apoplexy, post_medical_record, ModelBase.update_changed, ModelBase.update_changed, ModelBase.update_changed, ModelBase.update_changed, DatabaseBackend.clear, post_save_handler |
pre_delete | using, instance | ModelBase.changed, ModelBase.update_changed |
pre_init | args, kwargs, instance | |
pre_save | update_fields, using, instance, raw | ModelBase.changed, per_save_handler |
request_finished | close_old_connections, close_caches, reset_urlconf | |
request_started | environ | reset_queries, close_old_connections |