----过程+视图-------- create or replace procedure SP_ZY_GJYBRZ_JSQDSC( PYBJKID in varchar2 ,--[1]输入:医保接口ID PJKCJBM in varchar2 ,--[2]输入:接口场景编码 PBRID00 in number ,--[3]输入:BRID00 PZYID00 in number ,--[4]输入:ZYID000 PZYH000 in varchar2 ,--[5]输入:ZYH000 PCZY000 in number ,--[6]输入:操作员编码 PCZYXM0 in varchar2 ,--[7]输入:操作员姓名 PCZYKS0 in number ,--[8]输入:操作员科室 PQQCSID in varchar2 default '' ,--[9]输入:参数中间ID PINXML0 in varchar2 default '' ,--[10]输入:请求参数(XML) POTHER0 in varchar2 default '' ,--[11]输入:备用参数 PCOMMIT in varchar2 default 'N' ,--[12]输入:是否提交事务 Y:提交 N:不提交 PZXZT00 out number ,--[13]输出:执行状态 0:失败 1:成功 POUTXML out varchar2 ,--[14]输出:出参(XML) PERRMSG out varchar2 --[15]输出:错误信息 ) as -- MODIFICATION HISTORY -- Person Date Comments -- zhangyc 2022.04.11 created【4101】医疗保障基金结算清单信息上传_日志生成 by ZYSF9-20220413-001 -- chenHeyi 2022.04.27 游标CUR_QUREY_oprninfo,oprn_oprt_type字段改为main_oprn_flag as oprn_oprt_type,相应条件改main_oprn_flag is not null ZYSF9-20220426-003 -- linzetao 2022.09.24 清单接口优化 ZYSF9-20220927-001 -- zhangyc 2022.11.17 refl_caty:转科科别 长度扩展至50,以及解析refl_caty医保返回(A28→A03.02)至refldept_dept_mc:转科科别名称(重症医学科→消化内科专业) by ZYSF9-20221118-003 -- linzetao 2023.04.23 数值型节点去空格处理 ZYSF9-20230423-001 -- --------- ---------- ------- LS_COUNT0 number(12,2); LS_CZRQ00 char(8); LS_CZSJ00 char(8); LS_DateTimeStr varchar2(20); --日期时间型:格式为:yyyy-MM-dd HH:mm:ss LS_DateStr varchar2(10); --日期型:格式为:yyyy-MM-dd LS_TimeStr varchar2(10); --时间型:格式为:HH:mm:ss LS_jsqd_Notsend_list varchar2(100);--医疗基金结算清单不发送list多个|隔开 LS_JKFSZ0 ZY_YBJKMX.JKFSZ0%type;--接口发送值 LS_JKFHZ0 ZY_YBJKMX.JKFHZ0%type;--接口返回值 LS_VALUE0 ZY_YBJKMX.VALUE0%type;--请求报文字符串 LS_HISCS0 ZY_YBJKRZ.HISCS0%type;--HIS前台请求参数 LS_QQDATA ZY_YBJKRZ.QQDATA%type;--请求报文 LS_MainJson ZY_YBJKRZ.QQDATA%type;--主项Json LS_detailJson ZY_YBJKRZ.QQDATA%type;--明细Json LS_inputJson ZY_YBJKRZ.QQDATA%type;--input输入 LS_diseinfoJson ZY_YBJKRZ.QQDATA%type;--诊断列表Json LS_payinfo ZY_YBJKRZ.QQDATA%type;--基金支付信息Json LS_PayinfoList ZY_YBJKRZ.QQDATA%type;--基金支付列表Json LS_opspdiseinfo ZY_YBJKRZ.QQDATA%type;--门诊慢特病诊断信息 LS_opspdiseinfoList ZY_YBJKRZ.QQDATA%type;--门诊慢特病诊断信息列表 LS_diseinfo ZY_YBJKRZ.QQDATA%type;--住院诊断信息 LS_diseinfoList ZY_YBJKRZ.QQDATA%type;--住院诊断信息列表 LS_iteminfo ZY_YBJKRZ.QQDATA%type;--收费项目信息 LS_iteminfoList ZY_YBJKRZ.QQDATA%type;--收费项目信息列表 LS_oprninfo ZY_YBJKRZ.QQDATA%type;--手术操作信息 LS_oprninfoList ZY_YBJKRZ.QQDATA%type;--手术操作信息列表 LS_icuinfo ZY_YBJKRZ.QQDATA%type;--重症监护信息 LS_icuinfoList ZY_YBJKRZ.QQDATA%type;--重症监护信息列表 LS_bldinfo ZY_YBJKRZ.QQDATA%type;--输血信息 LS_bldinfoList ZY_YBJKRZ.QQDATA%type;--输血信息列表 LS_ListJson ZY_YBJKRZ.QQDATA%type;--listjson ROWJSD ZY_YBJSD0%rowtype; --医保结算单主表 LD_JZDH00 ZY_JZB000.JZDH00%type; --结账单号 in_JZDH00 varchar2(20); --结账单号 BM_psn_no BM_BRXXB0.psn_no%type;--psn_no:国家医保]人员编号 BM_AAE140 BM_BRXXB0.AAE140%type;--[BM_BRXXB0]险种类型编码:310 BM_AAE140_MC BM_BRXXB0.AAE140_MC%type;--[BM_BRXXB0]险种类型名称 ZY_psn_no ZY_BRXXB0.psn_no%type;--psn_no:国家医保]人员编号 ZY_AAE140 ZY_BRXXB0.AAE140%type;--[ZY_BRXXB0]险种类型编码:310 ZY_AAE140_MC ZY_BRXXB0.AAE140_MC%type;--[ZY_BRXXB0]险种类型名称 LS_psn_no varchar2(30); --1.psn_no: 人员编号 字符型(30) LS_mdtrt_id varchar2(30); --2.mdtrt_id: 就诊ID 字符型(30) LS_setl_id varchar2(30); --3.setl_id: 结算ID 字符型(30) LS_hi_no varchar2(30); --4.hi_no: 医保编号 字符型(30) LS_medcasno varchar2(30); --5.medcasno: 病案号 字符型(40) LS_dcla_time varchar2(20); --6.dcla_time: 申报时间 日期时间型() LS_ntly varchar2(6); --7.ntly: 国籍 字符型(6) LS_prfs varchar2(6); --8.prfs: 职业 字符型(6) LS_curr_addr varchar2(200); --9.curr_addr: 现住址 字符型(200) LS_emp_name varchar2(200); --10.emp_name: 单位名称 字符型(200) LS_emp_addr varchar2(200); --11.emp_addr: 单位地址 字符型(200) LS_emp_tel varchar2(50); --12.emp_tel: 单位电话 字符型(50) LS_poscode varchar2(6); --13.poscode: 邮编 字符型(6) LS_coner_name varchar2(50); --14.coner_name: 联系人姓名 字符型(50) LS_patn_rlts varchar2(6); --15.patn_rlts: 与患者关系 字符型(6) LS_coner_addr varchar2(200); --16.coner_addr: 联系人地址 字符型(200) LS_coner_tel varchar2(50); --17.coner_tel: 联系人电话 字符型(50) LS_nwb_adm_type varchar2(3); --18.nwb_adm_type: 新生儿入院类型 字符型(3) LS_nwb_bir_wt varchar2(10); --19.nwb_bir_wt: 新生儿出生体重 数值型(6,2) LS_nwb_adm_wt varchar2(10); --20.nwb_adm_wt: 新生儿入院体重 数值型(6,2) LS_mul_nwb_bir_wt varchar2(50); --21.mul_nwb_bir_wt: 多新生儿出生体重 字符型(50) LS_mul_nwb_adm_wt varchar2(50); --22.mul_nwb_adm_wt: 多新生儿入院体重 字符型(50) LS_opsp_diag_caty varchar2(50); --23.opsp_diag_caty: 门诊慢特病诊断科别 字符型(50) LS_opsp_mdtrt_date varchar2(10); --24.opsp_mdtrt_date: 门诊慢特病就诊日期 日期型() LS_adm_way varchar2(3); --25.adm_way: 入院途径 字符型(3) LS_trt_type varchar2(3); --26.trt_type: 治疗类别 字符型(3) LS_adm_time varchar2(20); --27.adm_time: 入院时间 日期时间型() LS_refldept_dept varchar2(50); --28.refldept_dept: 转科科别 字符型(12) LS_dscg_time varchar2(20); --29.dscg_time: 出院时间 日期时间型() LS_dscg_caty varchar2(6); --30.dscg_caty: 出院科别 字符型(6) LS_otp_wm_dise varchar2(200); --31.otp_wm_dise: 门(急)诊西医诊断 字符型(200) LS_wm_dise_code varchar2(20); --32.wm_dise_code: 西医诊断疾病代码 字符型(20) LS_otp_tcm_dise varchar2(200); --33.otp_tcm_dise: 门(急)诊中医诊断 字符型(200) LS_tcm_dise_code varchar2(20); --34.tcm_dise_code: 中医诊断代码 字符型(20) LS_vent_used_dura varchar2(10); --35.vent_used_dura: 呼吸机使用时长 字符型(10) LS_pwcry_bfadm_coma_dura varchar2(10); --36.pwcry_bfadm_coma_dura: 颅脑损伤患者入院前昏迷时长 字符型(10) LS_pwcry_afadm_coma_dura varchar2(10); --37.pwcry_afadm_coma_dura: 颅脑损伤患者入院后昏迷时长 字符型(10) LS_spga_nurscare_days varchar2(3); --38.spga_nurscare_days: 特级护理天数 数值型(3) LS_lv1_nurscare_days varchar2(3); --39.lv1_nurscare_days: 一级护理天数 数值型(3) LS_scd_nurscare_days varchar2(3); --40.scd_nurscare_days: 二级护理天数 数值型(3) LS_lv3_nurscare_days varchar2(3); --41.lv3_nurscare_days: 三级护理天数 数值型(3) LS_dscg_way varchar2(3); --42.dscg_way: 离院方式 字符型(3) LS_acp_medins_name varchar2(100); --43.acp_medins_name: 拟接收机构名称 字符型(100) LS_acp_optins_code varchar2(30); --44.acp_optins_code: 拟接收机构代码 字符型(30) LS_bill_code varchar2(50); --45.bill_code: 票据代码 字符型(50) LS_bill_no varchar2(30); --46.bill_no: 票据号码 字符型(30) LS_biz_sn varchar2(50); --47.biz_sn: 业务流水号 字符型(50) LS_days_rinp_flag_31 varchar2(3); --48.days_rinp_flag_31: 出院31天内再住院计划标志 字符型(3) LS_days_rinp_pup_31 varchar2(200); --49.days_rinp_pup_31: 出院31天内再住院目的 字符型(200) LS_chfpdr_code varchar2(30); --50.chfpdr_code: 主诊医师代码 字符型(30) LS_setl_begn_date varchar2(10); --51.setl_begn_date: 结算开始日期 日期型() LS_setl_end_date varchar2(10); --52.setl_end_date: 结算结束日期 日期型() LS_medins_fill_dept varchar2(100); --53.medins_fill_dept: 医疗机构填报部门 字符型(100) LS_medins_fill_psn varchar2(50); --54.medins_fill_psn: 医疗机构填报人 字符型(50) LS_resp_nurs_code varchar2(50); --55.resp_nurs_code: 责任护士代码 字符型(50) LS_stas_type varchar2(10); --56.stas_type: 状态分类 字符型(10) LS_hi_paymtd varchar2(3); --57.hi_paymtd: 医保支付方式 字符型(3) LS_adm_caty varchar2(6); --40.adm_caty: 入院科别 字符型(6) LS_fixmedins_name varchar2(200); --3.fixmedins_name: 定点医药机构名称 字符型(200) LS_fixmedins_code varchar2(12); --4.fixmedins_code: 定点医药机构编号 字符型(12) LS_hi_setl_lv varchar2(3); --5.hi_setl_lv: 医保结算等级 字符型(3) LS_psn_name varchar2(50); --9.psn_name: 人员姓名 字符型(50) LS_gend varchar2(6); --10.gend: 性别 字符型(6) LS_brdy varchar2(10); --11.brdy: 出生日期 日期型() LS_age varchar2(10); --12.age: 年龄 数值型(4,1) LS_nwb_age varchar2(3); --14.nwb_age: (年龄不足1周岁)年龄 数值型(3) LS_naty varchar2(3); --15.naty: 民族 字符型(3) LS_patn_cert_type varchar2(6); --16.patn_cert_type: 患者证件类别 字符型(6) LS_certno varchar2(50); --17.certno: 证件号码 字符型(50) LS_hi_type varchar2(3); --28.hi_type: 医保类型 字符型(3) LS_insuplc varchar2(6); --29.insuplc: 参保地 字符型(6) LS_sp_psn_type varchar2(6); --30.sp_psn_type: 特殊人员类型 字符型(6) LS_ipt_med_type varchar2(3); --36.ipt_med_type: 住院医疗类型 字符型(3) LS_act_ipt_days varchar2(5); --44.act_ipt_days: 实际住院天数 数值型(3) LS_diag_code_cnt varchar2(3); --49.diag_code_cnt: 诊断代码计数 数值型(3) LS_oprn_oprt_code_cnt varchar2(3); --50.oprn_oprt_code_cnt: 手术操作代码计数 数值型(3) LS_bld_cat varchar2(3); --54.bld_cat: 输血品种 字符型(3) LS_bld_amt varchar2(6); --55.bld_amt: 输血量 数值型(6) LS_bld_unt varchar2(3); --56.bld_unt: 输血计量单位 字符型(3) LS_chfpdr_name varchar2(50); --69.chfpdr_name: 主诊医师姓名 字符型(50) LS_psn_selfpay varchar2(20); --73.psn_selfpay: 个人自付 数值型(16,2) LS_psn_ownpay varchar2(20); --74.psn_ownpay: 个人自费 数值型(16,2) LS_acct_pay varchar2(20); --75.acct_pay: 个人账户支出 数值型(16,2) LS_psn_cashpay varchar2(20); --76.psn_cashpay: 个人现金支付 数值型(16,2) LS_hsorg varchar2(100); --78.hsorg: 医保机构 字符型(100) LS_hsorg_opter varchar2(50); --79.hsorg_opter: 医保机构经办人 字符型(50) --修改医保发送明细表 cursor CUR_UPDATE_YBJKMX is select YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,JKSXMC,JKFSZ0,JKFHZ0,FSLXBZ from ZY_YBJKMX where YBJKID=PYBJKID and FSLXBZ in ('1','3') order by JKMXID; --查询主项数据 cursor CUR_QUERY_Main is select YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,JKSXMC,JKFSZ0,JKFHZ0,FSLXBZ from ZY_YBJKMX where YBJKID=PYBJKID and FSLXBZ in ('1','3') and CJBM00 in ('AllIn') order by JKMXID; --查询明细数据 cursor CUR_QUERY_detail is select YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,JKSXMC,JKFSZ0,JKFHZ0,FSLXBZ from ZY_YBJKMX where YBJKID=PYBJKID and FSLXBZ in ('1','3') and CJBM00=PJKCJBM and JDBM00='setlinfo' order by JKMXID; --基金支付信息 cursor CUR_QUREY_payinfo is select fund_pay_type,trim(to_char(fund_payamt,'9999999990.99')) as fund_payamt from ZY_YBJSDX where JKJDBM='payinfo' and YBJKID=PYBJKID and fund_pay_type is not null ; --门诊慢特病诊断信息 cursor CUR_QUREY_opspdiseinfo is select diag_name,diag_code,oprn_oprt_name, oprn_oprt_code,maindiag_flag from ZY_YBJSDX where JKJDBM='opspdiseinfo' and YBJKID=PYBJKID and diag_code is not null ; --住院诊断信息 cursor CUR_QUREY_diseinfo is select diag_type,nvl(diag_code,diag_code_zy) as diag_code,nvl(diag_name,diag_name_zy) as diag_name,nvl(adm_cond_type,adm_cond_type_zy) as adm_cond_type, maindiag_flag from ZY_YBJSDX where JKJDBM='diseinfo' and YBJKID=PYBJKID and nvl(diag_code,diag_code_zy) is not null ; --收费项目信息 cursor CUR_QUREY_iteminfo is select MED_CHRGITM_TYPE as med_chrgitm, trim(to_char(amt,'9999999990.99')) as amt, trim(to_char(claa_sumfee,'9999999990.99')) as claa_sumfee, trim(to_char(clab_amt,'9999999990.99')) as clab_amt, trim(to_char(fulamt_ownpay_amt,'9999999990.99')) as fulamt_ownpay_amt, trim(to_char(oth_amt,'9999999990.99')) as oth_amt from ZY_YBJSDX where JKJDBM='iteminfo' and YBJKID=PYBJKID and MED_CHRGITM_TYPE is not null ; --手术操作信息 cursor CUR_QUREY_oprninfo is select main_oprn_flag as oprn_oprt_type,oprn_oprt_name,oprn_oprt_code,anst_way, oper_dr_code,anst_dr_code,oprn_oprt_begntime,oprn_oprt_endtime, anst_begntime,anst_endtime from ZY_YBJSDX where JKJDBM='oprninfo' and YBJKID=PYBJKID and main_oprn_flag is not null ; --重症监护信息 cursor CUR_QUREY_icuinfo is select scs_cutd_ward_type,scs_cutd_inpool_time,scs_cutd_exit_time,scs_cutd_sum_dura from ZY_YBJSDX where JKJDBM='icuinfo' and YBJKID=PYBJKID and scs_cutd_ward_type is not null ; --输血信息 cursor CUR_QUREY_bldinfo is select bld_cat,bld_amt,bld_unt from ZY_YBJSDX where JKJDBM='bldinfo' and YBJKID=PYBJKID and bld_cat is not null and nvl(bld_amt,0)<>0 ; begin PZXZT00:=0; --输出:执行状态 0:失败 1:成功 POUTXML:=null;--输出:出参(XML) PERRMSG:=null;--输出:错误信息 LS_QQDATA:=null;--请求报文 LS_MainJson:=null;---主项Json LS_detailJson:=null;---明细Json LS_inputJson:=null;---input输入 LS_ListJson:=null;--listjson LS_HISCS0:=substrb(PINXML0,1,2000); LS_CZRQ00:=to_char(sysdate,'YYYYMMDD'); LS_CZSJ00:=to_char(sysdate,'HH24:MI:SS'); LS_DateTimeStr:=to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'); --日期时间型:格式为:yyyy-MM-dd HH:mm:ss LS_DateStr:=to_char(sysdate,'YYYY-MM-DD'); --日期型:格式为:yyyy-MM-dd LS_TimeStr:=to_char(sysdate,'HH24:MI:SS'); --时间型:格式为:HH:mm:ss LS_jsqd_Notsend_list:=null;--医疗基金结算清单不发送list多个|隔开 --医疗基金结算清单不发送list多个|隔开(基金:payinfo,慢特病:opspdiseinfo,住院诊断:diseinfo,收费项目:iteminfo,手术:oprninfo,重症监护:icuinfo) 默认值:空值 LS_jsqd_Notsend_list:=trim(substrb(SF_SF_TYZD00('医保新接口参数设置','jsqd_Notsend_list'),1,100)); if nvl(PZYID00,0)>0 then begin select A.psn_no,A.AAE140,A.AAE140_MC,B.psn_no,B.AAE140,B.AAE140_MC into ZY_psn_no,ZY_AAE140,ZY_AAE140_MC,BM_psn_no,BM_AAE140,BM_AAE140_MC from ZY_BRXXB0 A,BM_BRXXB0 B where 1=1 and A.BRID00 = B.BRID00 and A.BRID00=PBRID00 and A.ZYID00=PZYID00; exception when others then BM_psn_no :=null;--psn_no:国家医保]人员编号 BM_AAE140 :=null;--[BM_BRXXB0]险种类型编码:310 BM_AAE140_MC :=null;--[BM_BRXXB0]险种类型名称 ZY_psn_no :=null;--psn_no:国家医保]人员编号 ZY_AAE140 :=null;--[ZY_BRXXB0]险种类型编码:310 ZY_AAE140_MC :=null;--[ZY_BRXXB0]险种类型名称 end; end if; in_JZDH00 := substrb(SF_XT_GETXMLSTR('jzdh00',PINXML0),1,30); if in_JZDH00 is null then in_JZDH00 := substrb(SF_XT_GETXMLSTR('jzdh00',POTHER0),1,30); end if; begin ld_JZDH00 := to_number(in_JZDH00); exception when others then ld_JZDH00 := 0; end; if nvl(ld_JZDH00,0) <= 0 then PERRMSG := '结账单号为空'; PZXZT00:=0; --执行状态 0:失败 1:成功 return; end if; --生成结算清单数据(原过程:SP_ZY_NEWYBJK_JSQDQUERY) 新过程:SP_ZY_GJYBJK_JSQDQUERY SP_ZY_NEWYBJK_JSQDQUERY( PYBJKID ,--输入:医保接口ID: PJKCJBM ,--输入:接口场景编码 YBJK_GJYBJSD_0001:医疗保障基金结算清单查询 YBJK_JSQDXXSC_001:医疗保障基金结算清单信息上传 PZYID00 ,--输入:住院ID PZYH000 ,--输入:住院号 PCZY000 ,--输入:操作员编码 PCZYXM0 ,--输入:操作员姓名 ld_JZDH00 ,--输入:结账单号 9 ,--输入:数据获取类型 0:HIS内部直接生成 1:获取海泰drg更新数据[医保交互后] 2:更新部分[医保交互后] 9:清单上传 PINXML0 ,--输入(可空):请求参数(XML格式) 'N' ,--输入:是否提交事务 Y:提交 N:不提交 PZXZT00 ,--输出:执行状态 0:失败 1:成功 POUTXML ,--输出:返回参数(XML格式) PERRMSG --输出:错误信息 ); if PZXZT00 = 0 then return; end if; --查询主项数据 for C_Main in CUR_QUERY_Main loop LS_MainJson := SF_XT_GETJSONSTR(LS_MainJson,C_Main.JKSXBM,C_Main.JKFSZ0,'0'); end loop; if LS_MainJson is null then PZXZT00:=0; PERRMSG:='主项报文不能为空!'; return; end if; begin select * into RowJSD from ZY_YBJSD0 where YBJKID=PYBJKID; exception when others then PERRMSG := '未找到结算清单数据(ZYID00='||PZYID00||')'; PZXZT00 := 0; --执行状态 0:失败 1:成功 return; end; LS_psn_no := substrb(nvl(nvl(ZY_psn_no,BM_psn_no),RowJSD.psn_no),1,30); --1.psn_no: 人员编号 字符型(30) LS_mdtrt_id := substrb(RowJSD.mdtrt_id,1,30); --2.mdtrt_id: 就诊ID 字符型(30) varchar2(30); LS_setl_id := substrb(RowJSD.setl_id,1,30); --3.setl_id: 结算ID 字符型(30) varchar2(30); LS_hi_no := substrb(RowJSD.hi_no,1,30); --4.hi_no: 医保编号 字符型(30) varchar2(30); LS_medcasno := substrb(RowJSD.medcasno,1,40); --5.medcasno: 病案号 字符型(40) varchar2(40); LS_dcla_time := substrb(RowJSD.dcla_time,1,20); --6.dcla_time: 申报时间 日期时间型() varchar2(20); LS_ntly := substrb(RowJSD.ntly,1,6); --7.ntly: 国籍 字符型(6) varchar2(6); LS_prfs := substrb(RowJSD.prfs,1,6); --8.prfs: 职业 字符型(6) varchar2(6); LS_curr_addr := substrb(RowJSD.curr_addr,1,200); --9.curr_addr: 现住址 字符型(200) varchar2(200); LS_emp_name := substrb(RowJSD.emp_name,1,200); --10.emp_name: 单位名称 字符型(200) varchar2(200); LS_emp_addr := substrb(RowJSD.emp_addr,1,200); --11.emp_addr: 单位地址 字符型(200) varchar2(200); LS_emp_tel := substrb(RowJSD.emp_tel,1,50); --12.emp_tel: 单位电话 字符型(50) varchar2(50); LS_poscode := substrb(RowJSD.poscode,1,6); --13.poscode: 邮编 字符型(6) varchar2(6); LS_coner_name := substrb(RowJSD.coner_name,1,50); --14.coner_name: 联系人姓名 字符型(50) varchar2(50); LS_patn_rlts := substrb(RowJSD.patn_rlts,1,6); --15.patn_rlts: 与患者关系 字符型(6) varchar2(6); LS_coner_addr := substrb(RowJSD.coner_addr,1,200); --16.coner_addr: 联系人地址 字符型(200) varchar2(200); LS_coner_tel := substrb(RowJSD.coner_tel,1,50); --17.coner_tel: 联系人电话 字符型(50) varchar2(50); LS_nwb_adm_type := substrb(RowJSD.nwb_adm_type,1,3); --18.nwb_adm_type: 新生儿入院类型 字符型(3) varchar2(3); LS_nwb_bir_wt := trim(substrb(RowJSD.NWBBIRWT,1,10)); --19.nwb_bir_wt: 新生儿出生体重 数值型(6,2) varchar2(10); LS_nwb_adm_wt := trim(substrb(RowJSD.NWBADMWT,1,10)); --20.nwb_adm_wt: 新生儿入院体重 数值型(6,2) varchar2(10); LS_mul_nwb_bir_wt := substrb(RowJSD.MUL_NWB_BIR_WT,1,50); --21.mul_nwb_bir_wt: 多新生儿出生体重 字符型(50) varchar2(50); LS_mul_nwb_adm_wt := substrb(RowJSD.MUL_NWB_ADM_WT,1,50); --22.mul_nwb_adm_wt: 多新生儿入院体重 字符型(50) varchar2(50); LS_opsp_diag_caty := substrb(RowJSD.opsp_diag_caty,1,50); --23.opsp_diag_caty: 门诊慢特病诊断科别 字符型(50) varchar2(50); LS_opsp_mdtrt_date := substrb(RowJSD.opsp_mdtrt_date,1,10); --24.opsp_mdtrt_date: 门诊慢特病就诊日期 日期型() varchar2(10); LS_adm_way := substrb(RowJSD.adm_way,1,3); --25.adm_way: 入院途径 字符型(3) varchar2(3); LS_trt_type := substrb(RowJSD.trt_type,1,3); --26.trt_type: 治疗类别 字符型(3) varchar2(3); LS_adm_time := substrb(RowJSD.adm_time,1,20); --27.adm_time: 入院时间 日期时间型() varchar2(20); LS_refldept_dept := substrb(RowJSD.refldept_dept,1,50); --28.refldept_dept: 转科科别 字符型(12) varchar2(12); LS_dscg_time := substrb(RowJSD.dscg_time,1,20); --29.dscg_time: 出院时间 日期时间型() varchar2(20); LS_dscg_caty := substrb(RowJSD.dscg_caty,1,6); --30.dscg_caty: 出院科别 字符型(6) varchar2(6); LS_otp_wm_dise := substrb(RowJSD.otp_wm_dise,1,200); --31.otp_wm_dise: 门(急)诊西医诊断 字符型(200) varchar2(200); LS_wm_dise_code := substrb(RowJSD.wm_dise_code,1,20); --32.wm_dise_code: 西医诊断疾病代码 字符型(20) varchar2(20); LS_otp_tcm_dise := substrb(RowJSD.otp_tcm_dise,1,200); --33.otp_tcm_dise: 门(急)诊中医诊断 字符型(200) varchar2(200); LS_tcm_dise_code := substrb(RowJSD.tcm_dise_code,1,20); --34.tcm_dise_code: 中医诊断代码 字符型(20) varchar2(20); LS_vent_used_dura := substrb(RowJSD.vent_used_dura,1,10); --35.vent_used_dura: 呼吸机使用时长 字符型(10) varchar2(10); LS_pwcry_bfadm_coma_dura := substrb(RowJSD.pwcry_bfadm_coma_dura,1,10); --36.pwcry_bfadm_coma_dura: 颅脑损伤患者入院前昏迷时长 字符型(10) varchar2(10); LS_pwcry_afadm_coma_dura := substrb(RowJSD.pwcry_afadm_coma_dura,1,10); --37.pwcry_afadm_coma_dura: 颅脑损伤患者入院后昏迷时长 字符型(10) varchar2(10); LS_spga_nurscare_days := trim(substrb(RowJSD.spga_nurscare_days,1,3)); --38.spga_nurscare_days: 特级护理天数 数值型(3) varchar2(3); LS_lv1_nurscare_days := trim(substrb(RowJSD.lv1_nurscare_days,1,3)); --39.lv1_nurscare_days: 一级护理天数 数值型(3) varchar2(3); LS_scd_nurscare_days := trim(substrb(RowJSD.scd_nurscare_days,1,3)); --40.scd_nurscare_days: 二级护理天数 数值型(3) varchar2(3); LS_lv3_nurscare_days := trim(substrb(RowJSD.lv3_nurscare_days,1,3)); --41.lv3_nurscare_days: 三级护理天数 数值型(3) varchar2(3); LS_dscg_way := substrb(RowJSD.dscg_way,1,3); --42.dscg_way: 离院方式 字符型(3) varchar2(3); LS_acp_medins_name := substrb(RowJSD.acp_medins_name,1,100); --43.acp_medins_name: 拟接收机构名称 字符型(100) varchar2(100); LS_acp_optins_code := substrb(RowJSD.acp_optins_code,1,30); --44.acp_optins_code: 拟接收机构代码 字符型(30) varchar2(30); LS_bill_code := substrb(RowJSD.bill_code,1,50); --45.bill_code: 票据代码 字符型(50) varchar2(50); LS_bill_no := substrb(RowJSD.bill_no,1,30); --46.bill_no: 票据号码 字符型(30) varchar2(30); LS_biz_sn := substrb(RowJSD.biz_sn,1,50); --47.biz_sn: 业务流水号 字符型(50) varchar2(50); LS_days_rinp_flag_31 := substrb(RowJSD.days_rinp_flag_31,1,3); --48.days_rinp_flag_31: 出院31天内再住院计划标志 字符型(3) varchar2(3); LS_days_rinp_pup_31 := substrb(RowJSD.days_rinp_pup_31,1,200); --49.days_rinp_pup_31: 出院31天内再住院目的 字符型(200) varchar2(200); LS_chfpdr_code := substrb(RowJSD.chfpdr_code,1,30); --50.chfpdr_code: 主诊医师代码 字符型(30) varchar2(30); LS_setl_begn_date := substrb(RowJSD.setl_begn_date,1,10); --51.setl_begn_date: 结算开始日期 日期型() varchar2(10); LS_setl_end_date := substrb(RowJSD.setl_end_date,1,10); --52.setl_end_date: 结算结束日期 日期型() varchar2(10); LS_medins_fill_dept := substrb(RowJSD.medins_fill_dept,1,100); --53.medins_fill_dept: 医疗机构填报部门 字符型(100) varchar2(100); LS_medins_fill_psn := substrb(RowJSD.medins_fill_psn,1,50); --54.medins_fill_psn: 医疗机构填报人 字符型(50) varchar2(50); LS_resp_nurs_code := substrb(RowJSD.resp_nurs_code,1,50); --55.resp_nurs_code: 责任护士代码 字符型(50) varchar2(50); LS_stas_type := substrb(RowJSD.stas_type,1,10); --56.stas_type: 状态分类 字符型(10) varchar2(10); LS_hi_paymtd := substrb(RowJSD.hi_paymtd,1,3); --57.hi_paymtd: 医保支付方式 字符型(3) varchar2(3); LS_fixmedins_name := substrb(RowJSD.fixmedins_name,1,200); --3.fixmedins_name: 定点医药机构名称 字符型(200) varchar2(200); LS_fixmedins_code := substrb(RowJSD.fixmedins_code,1,12); --4.fixmedins_code: 定点医药机构编号 字符型(12) varchar2(12); LS_hi_setl_lv := substrb(RowJSD.hi_setl_lv,1,3); --5.hi_setl_lv: 医保结算等级 字符型(3) varchar2(3); LS_psn_name := substrb(RowJSD.psn_name,1,50); --9.psn_name: 人员姓名 字符型(50) varchar2(50); LS_gend := substrb(RowJSD.gend,1,6); --10.gend: 性别 字符型(6) varchar2(6); LS_brdy := substrb(RowJSD.brdy,1,10); --11.brdy: 出生日期 日期型() varchar2(10); LS_age := trim(substrb(RowJSD.age,1,10)); --12.age: 年龄 数值型(4,1) varchar2(10); LS_nwb_age := trim(substrb(RowJSD.nwb_age,1,3)); --14.nwb_age: (年龄不足1周岁)年龄 数值型(3) varchar2(3); LS_naty := substrb(RowJSD.naty,1,3); --15.naty: 民族 字符型(3) varchar2(3); LS_patn_cert_type := substrb(RowJSD.patn_cert_type,1,6); --16.patn_cert_type: 患者证件类别 字符型(6) varchar2(6); LS_certno := substrb(RowJSD.certno,1,50); --17.certno: 证件号码 字符型(50) varchar2(50); LS_hi_type := substrb(RowJSD.hi_type,1,3); --28.hi_type: 医保类型 字符型(3) varchar2(3); LS_insuplc := substrb(RowJSD.INSU_ADMDVS,1,6); --29.insuplc: 参保地 字符型(6) varchar2(6); LS_sp_psn_type := substrb(RowJSD.sp_psn_type,1,6); --30.sp_psn_type: 特殊人员类型 字符型(6) varchar2(6); LS_ipt_med_type := substrb(RowJSD.ipt_med_type,1,3); --36.ipt_med_type: 住院医疗类型 字符型(3) varchar2(3); LS_adm_caty := substrb(RowJSD.adm_caty,1,6); --40.adm_caty: 入院科别 字符型(6) varchar2(6); LS_act_ipt_days := trim(substrb(RowJSD.act_ipt_days,1,5)); --44.act_ipt_days: 实际住院天数 数值型(3) varchar2(5); LS_diag_code_cnt := trim(substrb(RowJSD.diag_code_cnt,1,3)); --49.diag_code_cnt: 诊断代码计数 数值型(3) varchar2(3); LS_oprn_oprt_code_cnt := trim(substrb(RowJSD.oprn_oprt_code_cnt,1,3)); --50.oprn_oprt_code_cnt: 手术操作代码计数 数值型(3) varchar2(3); LS_bld_cat := substrb(RowJSD.bld_cat,1,3); --54.bld_cat: 输血品种 字符型(3) varchar2(3); LS_bld_amt := trim(substrb(RowJSD.bld_amt,1,6)); --55.bld_amt: 输血量 数值型(6) varchar2(6); LS_bld_unt := substrb(RowJSD.bld_unt,1,3); --56.bld_unt: 输血计量单位 字符型(3) varchar2(3); LS_chfpdr_name := substrb(RowJSD.chfpdr_name,1,50); --69.chfpdr_name: 主诊医师姓名 字符型(50) varchar2(50); LS_psn_selfpay := trim(substrb(RowJSD.psn_selfpay,1,20)); --73.psn_selfpay: 个人自付 数值型(16,2) varchar2(20); LS_psn_ownpay := trim(substrb(RowJSD.psn_ownpay,1,20)); --74.psn_ownpay: 个人自费 数值型(16,2) varchar2(20); LS_acct_pay := trim(substrb(RowJSD.acct_pay,1,20)); --75.acct_pay: 个人账户支出 数值型(16,2) varchar2(20); LS_psn_cashpay := trim(substrb(RowJSD.psn_cashpay,1,20)); --76.psn_cashpay: 个人现金支付 数值型(16,2) varchar2(20); LS_hsorg := substrb(RowJSD.HSORG_NAME,1,100); --78.hsorg: 医保机构 字符型(100) varchar2(100); LS_hsorg_opter := substrb(RowJSD.HSORG_OPTER,1,50); --79.hsorg_opter: 医保机构经办人 字符型(50) varchar2(50); --插入表ZY_YBJKMX insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,ZDBM00,ZDMC00, JKSXBM,JKSXMC,JKFSZ0,JKFHZ0,FSLXBZ,ZDLX00,BZ0000,CJBM00) select PYBJKID,A.ZDNBID,A.JDBM00,null,substrb(nvl(A.JKDZBM,A.JKSXBM),1,50),substrb(nvl(A.JKDZMC,JKSXMC),1,100), A.JKSXBM,A.JKSXMC,null,null,substrb(a.JKFSLX,1,1),substrb(a.ZDTYPE,1,1),a.BZ0000,A.CJBM00 from BM_TYCJZD A where A.CJBM00=PJKCJBM and A.JDBM00 in ('setlinfo','data') and nvl(A.SFYX00,'1')='1' and A.JKFSLX in ('1','2','3'); --修改:医保发送变量赋值 for C_YBFS in CUR_UPDATE_YBJKMX loop LS_JKFSZ0:=null;--接口发送值 LS_JKFHZ0:=null;--接口返回值 LS_VALUE0:=null;-- if C_YBFS.JKSXBM='psn_no' then --1.psn_no: 人员编号 LS_JKFSZ0:=substrb(LS_psn_no,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='mdtrt_id' then --2.mdtrt_id: 就诊ID LS_JKFSZ0:=substrb(LS_mdtrt_id,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM = 'setl_id' then --3.setl_id: 结算ID LS_JKFSZ0:=substrb(LS_setl_id,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hi_no' then --4.hi_no: 医保编号 LS_JKFSZ0:=substrb(LS_hi_no,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='medcasno' then --5.medcasno: 病案号 LS_JKFSZ0:=substrb(LS_medcasno,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='dcla_time' then --6.dcla_time: 申报时间 LS_JKFSZ0:=substrb(LS_dcla_time,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='ntly' then --7.ntly: 国籍 LS_JKFSZ0:=substrb(LS_ntly,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='prfs' then --8.prfs: 职业 LS_JKFSZ0:=substrb(LS_prfs,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='curr_addr' then --9.curr_addr: 现住址 LS_JKFSZ0:=substrb(LS_curr_addr,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='emp_name' then --10.emp_name: 单位名称 LS_JKFSZ0:=substrb(LS_emp_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='emp_addr' then --11.emp_addr: 单位地址 LS_JKFSZ0:=substrb(LS_emp_addr,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='emp_tel' then --12.emp_tel: 单位电话 LS_JKFSZ0:=substrb(LS_emp_tel,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='poscode' then --13.poscode: 邮编 LS_JKFSZ0:=substrb(LS_poscode,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='coner_name' then --14.coner_name: 联系人姓名 LS_JKFSZ0:=substrb(LS_coner_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='patn_rlts' then --15.patn_rlts: 与患者关系 LS_JKFSZ0:=substrb(LS_patn_rlts,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='coner_addr' then --16.coner_addr: 联系人地址 LS_JKFSZ0:=substrb(LS_coner_addr,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='coner_tel' then --17.coner_tel: 联系人电话 LS_JKFSZ0:=substrb(LS_coner_tel,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='nwb_adm_type' then --18.nwb_adm_type: 新生儿入院类型 LS_JKFSZ0:=substrb(LS_nwb_adm_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='nwb_bir_wt' then --19.nwb_bir_wt: 新生儿出生体重 LS_JKFSZ0:=substrb(LS_nwb_bir_wt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='nwb_adm_wt' then --20.nwb_adm_wt: 新生儿入院体重 LS_JKFSZ0:=substrb(LS_nwb_adm_wt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='mul_nwb_bir_wt' then --21.nwb_bir_wt: 多新生儿出生体重 LS_JKFSZ0:=substrb(LS_mul_nwb_bir_wt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='mul_nwb_adm_wt' then --22.nwb_adm_wt: 多新生儿入院体重 LS_JKFSZ0:=substrb(LS_mul_nwb_adm_wt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='opsp_diag_caty' then --23.opsp_diag_caty: 门诊慢特病诊断科别 LS_JKFSZ0:=substrb(LS_opsp_diag_caty,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='opsp_mdtrt_date' then --24.opsp_mdtrt_date: 门诊慢特病就诊日期 LS_JKFSZ0:=substrb(LS_opsp_mdtrt_date,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='adm_way' then --25.adm_way: 入院途径 LS_JKFSZ0:=substrb(LS_adm_way,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='trt_type' then --26.trt_type: 治疗类别 LS_JKFSZ0:=substrb(LS_trt_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='adm_time' then --27.adm_time: 入院时间 LS_JKFSZ0:=substrb(LS_adm_time,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='refldept_dept' then --28.refldept_dept: 转科科别 LS_JKFSZ0:=substrb(LS_refldept_dept,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='dscg_time' then --29.dscg_time: 出院时间 LS_JKFSZ0:=substrb(LS_dscg_time,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='dscg_caty' then --30.dscg_caty: 出院科别 LS_JKFSZ0:=substrb(LS_dscg_caty,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='otp_wm_dise' then --31.otp_wm_dise: 门(急)诊西医诊断 LS_JKFSZ0:=substrb(LS_otp_wm_dise,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='wm_dise_code' then --32.wm_dise_code: 西医诊断疾病代码 LS_JKFSZ0:=substrb(LS_wm_dise_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='otp_tcm_dise' then --33.otp_tcm_dise: 门(急)诊中医诊断 LS_JKFSZ0:=substrb(LS_otp_tcm_dise,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='tcm_dise_code' then --34.tcm_dise_code: 中医诊断代码 LS_JKFSZ0:=substrb(LS_tcm_dise_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='vent_used_dura' then --35.vent_used_dura: 呼吸机使用时长 LS_JKFSZ0:=substrb(LS_vent_used_dura,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='pwcry_bfadm_coma_dura' then --36.pwcry_bfadm_coma_dura: 颅脑损伤患者入院前昏迷时长 LS_JKFSZ0:=substrb(LS_pwcry_bfadm_coma_dura,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='pwcry_afadm_coma_dura' then --37.pwcry_afadm_coma_dura: 颅脑损伤患者入院后昏迷时长 LS_JKFSZ0:=substrb(LS_pwcry_afadm_coma_dura,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='spga_nurscare_days' then --38.spga_nurscare_days: 特级护理天数 LS_JKFSZ0:=substrb(LS_spga_nurscare_days,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='lv1_nurscare_days' then --39.lv1_nurscare_days: 一级护理天数 LS_JKFSZ0:=substrb(LS_lv1_nurscare_days,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='scd_nurscare_days' then --40.scd_nurscare_days: 二级护理天数 LS_JKFSZ0:=substrb(LS_scd_nurscare_days,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='lv3_nurscare_days' then --41.lv3_nurscare_days: 三级护理天数 LS_JKFSZ0:=substrb(LS_lv3_nurscare_days,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='dscg_way' then --42.dscg_way: 离院方式 LS_JKFSZ0:=substrb(LS_dscg_way,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='acp_medins_name' then --43.acp_medins_name: 拟接收机构名称 LS_JKFSZ0:=substrb(LS_acp_medins_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='acp_optins_code' then --44.acp_optins_code: 拟接收机构代码 LS_JKFSZ0:=substrb(LS_acp_optins_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='bill_code' then --45.bill_code: 票据代码 LS_JKFSZ0:=substrb(LS_bill_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='bill_no' then --46.bill_no: 票据号码 LS_JKFSZ0:=substrb(LS_bill_no,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='biz_sn' then --47.biz_sn: 业务流水号 LS_JKFSZ0:=substrb(LS_biz_sn,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='days_rinp_flag_31' then --48.days_rinp_flag_31: 出院31天内再住院计划标志 LS_JKFSZ0:=substrb(LS_days_rinp_flag_31,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='days_rinp_pup_31' then --49.days_rinp_pup_31: 出院31天内再住院目的 LS_JKFSZ0:=substrb(LS_days_rinp_pup_31,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='chfpdr_code' then --50.chfpdr_code: 主诊医师代码 LS_JKFSZ0:=substrb(LS_chfpdr_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='setl_begn_date' then --51.setl_begn_date: 结算开始日期 LS_JKFSZ0:=substrb(LS_setl_begn_date,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='setl_end_date' then --52.setl_end_date: 结算结束日期 LS_JKFSZ0:=substrb(LS_setl_end_date,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='medins_fill_dept' then --53.medins_fill_dept: 医疗机构填报部门 LS_JKFSZ0:=substrb(LS_medins_fill_dept,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='medins_fill_psn' then --54.medins_fill_psn: 医疗机构填报人 LS_JKFSZ0:=substrb(LS_medins_fill_psn,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='resp_nurs_code' then --55.resp_nurs_code: 责任护士代码 LS_JKFSZ0:=substrb(LS_resp_nurs_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='stas_type' then --56.stas_type: 状态分类 LS_JKFSZ0:=substrb(LS_stas_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hi_paymtd' then --57.hi_paymtd: 医保支付方式 LS_JKFSZ0:=substrb(LS_hi_paymtd,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='fixmedins_name' then --3.fixmedins_name: 定点医药机构名称 LS_JKFSZ0:=substrb(LS_fixmedins_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='fixmedins_code' then --4.fixmedins_code: 定点医药机构编号 LS_JKFSZ0:=substrb(LS_fixmedins_code,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hi_setl_lv' then --5.hi_setl_lv: 医保结算等级 LS_JKFSZ0:=substrb(LS_hi_setl_lv,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='psn_name' then --9.psn_name: 人员姓名 LS_JKFSZ0:=substrb(LS_psn_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='gend' then --10.gend: 性别 LS_JKFSZ0:=substrb(LS_gend,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='brdy' then --11.brdy: 出生日期 LS_JKFSZ0:=substrb(LS_brdy,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='age' then --12.age: 年龄 LS_JKFSZ0:=substrb(LS_age,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='nwb_age' then --14.nwb_age: (年龄不足1周岁)年龄 LS_JKFSZ0:=substrb(LS_nwb_age,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='naty' then --15.naty: 民族 LS_JKFSZ0:=substrb(LS_naty,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='patn_cert_type' then --16.patn_cert_type: 患者证件类别 LS_JKFSZ0:=substrb(LS_patn_cert_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='certno' then --17.certno: 证件号码 LS_JKFSZ0:=substrb(LS_certno,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hi_type' then --28.hi_type: 医保类型 LS_JKFSZ0:=substrb(LS_hi_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='insuplc' then --29.insuplc: 参保地 LS_JKFSZ0:=substrb(LS_insuplc,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='sp_psn_type' then --30.sp_psn_type: 特殊人员类型 LS_JKFSZ0:=substrb(LS_sp_psn_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='ipt_med_type' then --36.ipt_med_type: 住院医疗类型 LS_JKFSZ0:=substrb(LS_ipt_med_type,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='adm_caty' then --40.adm_caty: 入院科别 LS_JKFSZ0:=substrb(LS_adm_caty,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='act_ipt_days' then --44.act_ipt_days: 实际住院天数 LS_JKFSZ0:=substrb(LS_act_ipt_days,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='diag_code_cnt' then --49.diag_code_cnt: 诊断代码计数 LS_JKFSZ0:=substrb(LS_diag_code_cnt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='oprn_oprt_code_cnt' then --50.oprn_oprt_code_cnt: 手术操作代码计数 LS_JKFSZ0:=substrb(LS_oprn_oprt_code_cnt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='bld_cat' then --54.bld_cat: 输血品种 LS_JKFSZ0:=substrb(LS_bld_cat,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='bld_amt' then --55.bld_amt: 输血量 LS_JKFSZ0:=substrb(LS_bld_amt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='bld_unt' then --56.bld_unt: 输血计量单位 LS_JKFSZ0:=substrb(LS_bld_unt,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='chfpdr_name' then --69.chfpdr_name: 主诊医师姓名 LS_JKFSZ0:=substrb(LS_chfpdr_name,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='psn_selfpay' then --73.psn_selfpay: 个人自付 LS_JKFSZ0:=substrb(LS_psn_selfpay,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='psn_ownpay' then --74.psn_ownpay: 个人自费 LS_JKFSZ0:=substrb(LS_psn_ownpay,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='acct_pay' then --75.acct_pay: 个人账户支出 LS_JKFSZ0:=substrb(LS_acct_pay,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='psn_cashpay' then --76.psn_cashpay: 个人现金支付 LS_JKFSZ0:=substrb(LS_psn_cashpay,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hsorg' then --78.hsorg: 医保机构 LS_JKFSZ0:=substrb(LS_hsorg,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; elsif C_YBFS.JKSXBM='hsorg_opter' then --79.hsorg_opter: 医保机构经办人 LS_JKFSZ0:=substrb(LS_hsorg_opter,1,250); update ZY_YBJKMX set JKFSZ0=LS_JKFSZ0,JKFHZ0=LS_JKFHZ0,VALUE0=LS_VALUE0 where YBJKID=PYBJKID and JKSXBM=C_YBFS.JKSXBM and JKMXID=C_YBFS.JKMXID; end if; end loop; --查询明细数据 for C_detail in CUR_QUERY_detail loop LS_detailJson := SF_XT_GETJSONSTR(LS_detailJson,C_detail.JKSXBM,C_detail.JKFSZ0,'0'); end loop; if LS_detailJson is null then PZXZT00:=0; PERRMSG:='明细报文不能为空!'; return; end if; --基金支付信息 LS_PayinfoList := null; for C_payinfo in CUR_QUREY_payinfo loop LS_payinfo := null; LS_payinfo := SF_XT_GETJSONSTR(LS_payinfo,'fund_pay_type',C_payinfo.fund_pay_type,'0'); LS_payinfo := SF_XT_GETJSONSTR(LS_payinfo,'fund_payamt',C_payinfo.fund_payamt,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'payinfo','setlinfo','Payinfo','基金支付信息',null,null,'1',null,'{'||LS_payinfo||'}' from dual; LS_PayinfoList := SF_XT_GETJSONSTR(LS_PayinfoList,null,LS_payinfo,'1'); end loop; LS_PayinfoList := SF_XT_GETJSONSTR(null,'payinfo',LS_PayinfoList,'2'); --门诊慢特病诊断信息 LS_opspdiseinfoList := null; for C_opspdiseinfo in CUR_QUREY_opspdiseinfo loop LS_opspdiseinfo := null; LS_opspdiseinfo := SF_XT_GETJSONSTR(LS_opspdiseinfo,'diag_name',C_opspdiseinfo.diag_name,'0'); LS_opspdiseinfo := SF_XT_GETJSONSTR(LS_opspdiseinfo,'diag_code',C_opspdiseinfo.diag_code,'0'); LS_opspdiseinfo := SF_XT_GETJSONSTR(LS_opspdiseinfo,'oprn_oprt_name',C_opspdiseinfo.oprn_oprt_name,'0'); LS_opspdiseinfo := SF_XT_GETJSONSTR(LS_opspdiseinfo,'oprn_oprt_code',C_opspdiseinfo.oprn_oprt_code,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'opspdiseinfo','setlinfo','opspdiseinfo','门诊慢特病诊断信息',null,null,'1',null,'{'||LS_opspdiseinfo||'}' from dual; LS_opspdiseinfoList := SF_XT_GETJSONSTR(LS_opspdiseinfoList,null,LS_opspdiseinfo,'1'); end loop; LS_opspdiseinfoList := SF_XT_GETJSONSTR(null,'opspdiseinfo',LS_opspdiseinfoList,'2'); --住院诊断信息 LS_diseinfoList := null; for C_diseinfo in CUR_QUREY_diseinfo loop LS_diseinfo := null; LS_diseinfo := SF_XT_GETJSONSTR(LS_diseinfo,'diag_type',C_diseinfo.diag_type,'0'); LS_diseinfo := SF_XT_GETJSONSTR(LS_diseinfo,'diag_code',C_diseinfo.diag_code,'0'); LS_diseinfo := SF_XT_GETJSONSTR(LS_diseinfo,'diag_name',C_diseinfo.diag_name,'0'); LS_diseinfo := SF_XT_GETJSONSTR(LS_diseinfo,'adm_cond_type',C_diseinfo.adm_cond_type,'0'); LS_diseinfo := SF_XT_GETJSONSTR(LS_diseinfo,'maindiag_flag',C_diseinfo.maindiag_flag,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'diseinfo','setlinfo','diseinfo','住院诊断信息',null,null,'1',null,'{'||LS_diseinfo||'}' from dual; LS_diseinfoList := SF_XT_GETJSONSTR(LS_diseinfoList,null,LS_diseinfo,'1'); end loop; LS_diseinfoList := SF_XT_GETJSONSTR(null,'diseinfo',LS_diseinfoList,'2'); --收费项目信息 LS_iteminfoList := null; for C_iteminfo in CUR_QUREY_iteminfo loop LS_iteminfo := null; LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'med_chrgitm',C_iteminfo.med_chrgitm,'0'); LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'amt',C_iteminfo.amt,'0'); LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'claa_sumfee',C_iteminfo.claa_sumfee,'0'); LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'clab_amt',C_iteminfo.clab_amt,'0'); LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'fulamt_ownpay_amt',C_iteminfo.fulamt_ownpay_amt,'0'); LS_iteminfo := SF_XT_GETJSONSTR(LS_iteminfo,'oth_amt',C_iteminfo.oth_amt,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'iteminfo','setlinfo','iteminfo','收费项目信息',null,null,'1',null,'{'||LS_iteminfo||'}' from dual; LS_iteminfoList := SF_XT_GETJSONSTR(LS_iteminfoList,null,LS_iteminfo,'1'); end loop; LS_iteminfoList := SF_XT_GETJSONSTR(null,'iteminfo',LS_iteminfoList,'2'); --手术操作信息 LS_oprninfoList := null; for C_oprninfo in CUR_QUREY_oprninfo loop LS_oprninfo := null; LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oprn_oprt_type',C_oprninfo.oprn_oprt_type,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oprn_oprt_name',C_oprninfo.oprn_oprt_name,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oprn_oprt_code',C_oprninfo.oprn_oprt_code,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'anst_way',C_oprninfo.anst_way,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oper_dr_code',C_oprninfo.oper_dr_code,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'anst_dr_code',C_oprninfo.anst_dr_code,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oprn_oprt_begntime',C_oprninfo.oprn_oprt_begntime,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'oprn_oprt_endtime',C_oprninfo.oprn_oprt_endtime,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'anst_begntime',C_oprninfo.anst_begntime,'0'); LS_oprninfo := SF_XT_GETJSONSTR(LS_oprninfo,'anst_endtime',C_oprninfo.anst_endtime,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'oprninfo','setlinfo','oprninfo','手术操作信息',null,null,'1',null,'{'||LS_oprninfo||'}' from dual; LS_oprninfoList := SF_XT_GETJSONSTR(LS_oprninfoList,null,LS_oprninfo,'1'); end loop; LS_oprninfoList := SF_XT_GETJSONSTR(null,'oprninfo',LS_oprninfoList,'2'); --重症监护信息 LS_icuinfoList := null; for C_icuinfo in CUR_QUREY_icuinfo loop LS_icuinfo := null; LS_icuinfo := SF_XT_GETJSONSTR(LS_icuinfo,'scs_cutd_ward_type',C_icuinfo.scs_cutd_ward_type,'0'); LS_icuinfo := SF_XT_GETJSONSTR(LS_icuinfo,'scs_cutd_inpool_time',C_icuinfo.scs_cutd_inpool_time,'0'); LS_icuinfo := SF_XT_GETJSONSTR(LS_icuinfo,'scs_cutd_exit_time',C_icuinfo.scs_cutd_exit_time,'0'); LS_icuinfo := SF_XT_GETJSONSTR(LS_icuinfo,'scs_cutd_sum_dura',C_icuinfo.scs_cutd_sum_dura,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'icuinfo','setlinfo','icuinfo','重症监护信息',null,null,'1',null,'{'||LS_icuinfo||'}' from dual; LS_icuinfoList := SF_XT_GETJSONSTR(LS_icuinfoList,null,LS_icuinfo,'1'); end loop; LS_icuinfoList := SF_XT_GETJSONSTR(null,'icuinfo',LS_icuinfoList,'2'); --输血信息 LS_bldinfoList := null; for C_icuinfo in CUR_QUREY_bldinfo loop LS_bldinfo := null; LS_bldinfo := SF_XT_GETJSONSTR(LS_bldinfo,'bld_cat',C_icuinfo.bld_cat,'0'); LS_bldinfo := SF_XT_GETJSONSTR(LS_bldinfo,'bld_amt',trim(to_char(C_icuinfo.bld_amt,'99999999990.99')),'0'); LS_bldinfo := SF_XT_GETJSONSTR(LS_bldinfo,'bld_unt',C_icuinfo.bld_unt,'0'); insert into ZY_YBJKMX(YBJKID,JKMXID,JDBM00,ZJDBM0,JKSXBM,ZDMC00,JKFSZ0,JKFHZ0,FSLXBZ,BZ0000,VALUE0) select PYBJKID,SQ_ZY_YBJKMX_JKMXID.nextval,'bldinfo','setlinfo','bldinfo','输血信息',null,null,'1',null,'{'||LS_bldinfo||'}' from dual; LS_bldinfoList := SF_XT_GETJSONSTR(LS_bldinfoList,null,LS_bldinfo,'1'); end loop; LS_bldinfoList := SF_XT_GETJSONSTR(null,'bldinfo',LS_bldinfoList,'2'); --明细项加标题 LS_detailJson := SF_XT_GETJSONSTR(null,'setlinfo',LS_detailJson,'1'); --基金支付信息开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'payinfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_PayinfoList; else LS_ListJson:=LS_PayinfoList; end if; end if; --门诊慢特病诊断信息开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'opspdiseinfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_opspdiseinfoList; else LS_ListJson:=LS_opspdiseinfoList; end if; end if; --住院诊断信息< diseinfo>开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'diseinfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_diseinfoList; else LS_ListJson:=LS_diseinfoList; end if; end if; --收费项目信息开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'iteminfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_iteminfoList; else LS_ListJson:=LS_iteminfoList; end if; end if; --手术操作信息开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'oprninfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_oprninfoList; else LS_ListJson:=LS_oprninfoList; end if; end if; --重症监护信息开始 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'icuinfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_icuinfoList; else LS_ListJson:=LS_icuinfoList; end if; end if; --输血信息 if LS_jsqd_Notsend_list is null or instrb('|'||LS_jsqd_Notsend_list||'|','|'||'bldinfo'||'|')<=0 then if LS_ListJson is not null then LS_ListJson:=LS_ListJson||','||LS_bldinfoList; else LS_ListJson:=LS_bldinfoList; end if; end if; if LS_ListJson is not null then LS_detailJson:=LS_detailJson||','||LS_ListJson; end if; --input输入 LS_inputJson := SF_XT_GETJSONSTR(LS_inputJson,'input',LS_detailJson,'1'); --拼接整个报文 LS_QQDATA := LS_MainJson||','||LS_inputJson; --LS_QQDATA := SF_XT_GETJSONSTR(LS_QQDATA,'arg0',LS_MainJson||','||LS_inputJson,'1'); LS_QQDATA:='{'||LS_QQDATA||'}'; --修改请求报文 update ZY_YBJKRZ set QQDATA=LS_QQDATA where YBJKID=PYBJKID;--请求报文 if PCOMMIT='Y' then commit; end if; PZXZT00:=1; --输出:执行状态 0:失败 1:成功 PERRMSG:=null; --输出:错误信息 exception when no_data_found then PZXZT00:=0; PERRMSG:=substrb('住院医保接口交互生成失败(清单上传)!原因:'||sqlerrm,1,200); rollback; when others then PZXZT00:=0; PERRMSG:=substrb('住院医保接口交互生成失败(清单上传)!原因:'||sqlerrm,1,200); rollback; end; / ------------视图---- create or replace view vw_zy_gjybjsqdmx as select A.YBJKID ,--YBJKID:医保接口id=ZY_YBJKRZ.YBJKID A.JKJDBM ,--JKJDBM:接口节点编码 A.JKJDMC ,--JKJDMC:接口节点名称 A.SETL_ID ,--setl_id:结算ID A.PSN_NO ,--psn_no:人员编号 A.MDTRT_ID ,--mdtrt_id:就诊ID A.VALI_FLAG ,--vali_flag:有效标志 SF_XT_STRTONUMVALUE(A.RID,0) RID,--rid:唯一记录号 A.UPDT_TIME ,--updt_time:更新时间 A.CRTER_ID ,--crter_id:创建人 A.CRTER_NAME ,--crter_name:创建人姓名 A.CRTE_TIME ,--crte_time:创建时间 A.CRTE_OPTINS_NO ,--crte_optins_no:创建机构 A.OPTER_ID ,--opter_id:经办人ID A.OPTER_NAME ,--opter_name:经办人姓名 A.OPT_TIME ,--opt_time:经办时间 A.OPTINS_NO ,--optins_no:经办机构 A.POOLAREA_NO ,--poolarea_no:统筹区编号 A.FUND_PAY_TYPE ,--fund_pay_type:基金支付信息.基金支付类型 A.POOLAREA_FUND_PAY_TYPE ,--poolarea_fund_pay_type:基金支付信息.统筹区基金支付类型 A.POOLAREA_FUND_PAY_NAME ,--poolarea_fund_pay_name:基金支付信息.统筹区基金支付类型名称 A.FUND_PAYAMT ,--fund_payamt:基金支付信息.基金支付金额 A.SETL_LIST_OPSP_TRT_ID ,--setl_list_opsp_trt_id:门诊慢特病诊断信息.结算清单门慢门特诊疗信息ID nvl(A.DIAG_CODE,a.diag_code_zy) as diag_code ,--diag_code:诊断代码 nvl(A.DIAG_NAME,a.diag_name_zy) as diag_name ,--diag_name:诊断名称 A.OPRN_OPRT_CODE ,--oprn_oprt_code:手术操作代码 A.OPRN_OPRT_NAME ,--oprn_oprt_name:手术操作名称 A.SETL_LIST_DIAG_ID ,--setl_list_diag_id:住院诊断信息.结算清单诊断ID A.DIAG_TYPE ,--diag_type:住院诊断信息.诊断类别 1:西医诊断 2:中医主病诊断 3:中医主证诊断 4:手术操作 A.MAINDIAG_FLAG ,--maindiag_flag:住院诊断信息.主诊断标志 A.ADM_COND_TYPE ,--adm_cond_type:住院诊断信息.入院病情类型 A.ETL_LIST_CHRGITM_ID ,--etl_list_chrgitm_id:收费项目信息.结算清单收费项目ID A.MED_CHRGITM_TYPE ,--med_chrgitm_type:收费项目信息.医疗收费项目类别 A.AMT ,--amt:收费项目信息.金额 A.CLAA_SUMFEE ,--claa_sumfee:收费项目信息.甲类费用合计 A.CLAB_AMT ,--clab_amt:收费项目信息.乙类金额 A.FULAMT_OWNPAY_AMT ,--fulamt_ownpay_amt:收费项目信息.全自费金额 A.OTH_AMT ,--oth_amt:收费项目信息.其他金额 A.SINDISE_CODE_NAME ,--sindise_code_name:收费项目信息.单病种代码名称 A.DAYSRG_CODE_NAME ,--daysrg_code_name:收费项目信息.日间手术代码名称 A.SETL_LIST_OPRN_ID ,--setl_list_oprn_id:手术操作信息.结算清单手术操作ID A.MAIN_OPRN_FLAG ,--main_oprn_flag:手术操作信息.主要手术标志 1:主要手术及操作' '2','其他手术及操作' A.OPRN_OPRT_DATE ,--oprn_oprt_date:手术操作信息.手术操作日期 A.ANST_WAY ,--anst_way:手术操作信息.麻醉方式 nvl(a.anst_way_mc,nvl( substrb(SF_XT_GETYBSXZD('anst_mtd_code',A.ANST_WAY,'3','2'),1,50),'')) as ANST_WAY_MC ,--anst_way_mc:手术操作信息.麻醉方式名称 A.OPER_DR_NAME ,--oper_dr_name:手术操作信息.术者医师姓名 A.OPER_DR_CODE ,--oper_dr_code:手术操作信息.术者医师代码 A.ANST_DR_NAME ,--anst_dr_name:手术操作信息.麻醉医师姓名 A.ANST_DR_CODE ,--anst_dr_code:手术操作信息.麻醉医师代码 A.OPRN_OPRT_BEGNTIME ,--oprn_oprt_begntime:手术操作信息.手术操作开始时间 A.OPRN_OPRT_ENDTIME ,--oprn_oprt_endtime:手术操作信息.手术操作结束时间 A.ANST_BEGNTIME ,--anst_begntime:手术操作信息.麻醉开始时间 A.ANST_ENDTIME ,--anst_endtime:手术操作信息.麻醉结束时间 A.SETL_LIST_SCS_CUTD_ID ,--setl_list_scs_cutd_id:重症监护信息.结算清单重症监护ID nvl(substrb(SF_XT_GETYBSXZD('scs_cutd_ward_type',A.SCS_CUTD_WARD_TYPE,'3','2'),1,50),A.SCS_CUTD_WARD_TYPE) as scs_cutd_ward_type,--scs_cutd_ward_type:重症监护信息.重症监护病房类型 A.SCS_CUTD_INPOOL_TIME ,--scs_cutd_inpool_time:重症监护信息.重症监护进入时间 A.SCS_CUTD_EXIT_TIME ,--scs_cutd_exit_time:重症监护信息.重症监护退出时间 nvl(substrb(SF_XT_GETYBSXZD('scs_cutd_sum_dura',A.SCS_CUTD_SUM_DURA,'',''),1,10),A.SCS_CUTD_SUM_DURA) as SCS_CUTD_SUM_DURA ,--scs_cutd_sum_dura:重症监护信息.重症监护合计时长 A.SETL_LIST_BLD_ID ,--setl_List_bld_Id:输血信息.结算清单输血ID nvl(substrb(SF_XT_GETYBSXZD('bld_cat_code',A.BLD_CAT,'3','2'),1,50),A.BLD_CAT) BLD_CAT ,--bld_cat:输血信息.输血品种 decode(A.BLD_AMT,0,'',A.BLD_AMT) as BLD_AMT ,--bld_amt:输血信息.输血量 A.BLD_UNT ,--bld_unt:输血信息.输血计量单位 A.ADMDVS ,--admdvs:输血信息.医保区划 decode(A.JKJDBM,'iteminfo', nvl(a.adm_cond_type_mc,decode(A.med_chrgitm_type,'90','单病种超标床位费','91','单病种除外耗材','92','单病种标准', nvl(substrb(SF_XT_GETYBSXZD('med_chrgitm_type',nvl(A.med_chrgitm_type,'14') ,'3','2'),1,50),'其他费'))),'') as med_chrgitm_type_mc, --医疗收费项目名称 nvl(a.adm_cond_type_mc,decode(A.JKJDBM,'diseinfo',substrb(SF_XT_GETYBSXZD('adm_cond_type',A.adm_cond_type,'3','2'),1,50),'')) as adm_cond_type_mc, --adm_cond_type:住院诊断信息.入院病情类型 decode(A.JKJDBM,'oprninfo',decode(nvl(A.oprn_oprt_begntime,'无'),'无','',A.oprn_oprt_begntime --substrb(A.oprn_oprt_begntime,1,4)||'年'||substrb(A.oprn_oprt_begntime,5,2)||'月'||substrb(A.oprn_oprt_begntime,7,2)||'日' ),'') as oprn_oprt_begntime_mc, --手术操作开始时间_名称 decode(A.JKJDBM,'oprninfo',decode(nvl(A.oprn_oprt_endtime,'无'),'无','',A.oprn_oprt_endtime --substrb(A.oprn_oprt_endtime,1,4)||'年'||substrb(A.oprn_oprt_endtime,5,2)||'月'||substrb(A.oprn_oprt_endtime,7,2)||'日' ),'') as oprn_oprt_endtime_mc, --手术操作结束时间_名称 decode(A.JKJDBM,'oprninfo',decode(nvl(A.anst_begntime,'无'),'无','',A.anst_begntime --substrb(A.anst_begntime,1,4)||'年'||substrb(A.anst_begntime,5,2)||'月'||substrb(A.anst_begntime,7,2)||'日' ),'') as anst_begntime_mc, --麻醉开始时间_名称 decode(A.JKJDBM,'oprninfo',decode(nvl(A.anst_endtime,'无'),'无','',A.anst_endtime --substrb(A.anst_endtime,1,4)||'年'||substrb(A.anst_endtime,5,2)||'月'||substrb(A.anst_endtime,7,2)||'日' ),'') as anst_endtime_mc , --麻醉结束时间_名称 a.diag_code_zy as diag_code_zy ,--住院诊断信息.中医诊断代码 a.diag_name_zy as diag_name_zy ,--住院诊断信息.中医诊断诊断名称 a.adm_cond_type_zy as adm_cond_type_zy,--住院诊断信息.中医入院病情类型 a.adm_cond_type_zy_mc as adm_cond_type_zy_mc,--住院诊断信息.中医入院病情名称 a.xmlstr as xmlstr ,--备用字段xml decode(A.JKJDBM,'oprninfo',decode(a.MAIN_OPRN_FLAG,'1','主要手术及操作代码','其他手术及操作代码'||SF_SF_GETXMLNOTE('serial',a.xmlstr)) ,'') as oprn_oprt_code_title ,--oprn_oprt_code:手术操作代码(标题) decode(A.JKJDBM,'oprninfo',decode(a.MAIN_OPRN_FLAG,'1','主要手术及操作名称','其他手术及操作名称'||SF_SF_GETXMLNOTE('serial',a.xmlstr)),'') as oprn_oprt_name_title ,--oprn_oprt_name:手术操作名称(标题) decode(A.JKJDBM,'oprninfo',decode(nvl(A.oprn_oprt_begntime,'无'),'无','', A.oprn_oprt_begntime||'-'||A.oprn_oprt_endtime --substrb(A.oprn_oprt_begntime,1,4)||'年'||substrb(A.oprn_oprt_begntime,6,2)||'月'||substrb(A.oprn_oprt_begntime,9,2)||'日'||substrb(A.oprn_oprt_begntime,12,2)||'时' --||'至'|| --substrb(A.oprn_oprt_endtime,1,4)||'年'||substrb(A.oprn_oprt_endtime,6,2)||'月'||substrb(A.oprn_oprt_endtime,9,2)||'日'||substrb(A.oprn_oprt_endtime,12,2)||'时' ),'') as oprn_oprt_begnendtime, --手术及操作起止时间 decode(A.JKJDBM,'oprninfo',decode(nvl(A.anst_begntime,'无'),'无','', A.anst_begntime||'-'||A.anst_endtime --substrb(A.anst_begntime,1,4)||'年'||substrb(A.anst_begntime,6,2)||'月'||substrb(A.anst_begntime,9,2)||'日'||substrb(A.anst_begntime,12,2)||'时' --||'至'|| --substrb(A.anst_endtime,1,4)||'年'||substrb(A.anst_endtime,6,2)||'月'||substrb(A.anst_endtime,9,2)||'日'||substrb(A.anst_endtime,12,2)||'时' ),'') as anst_begnendtime --麻醉起止时间 from ZY_YBJSDX A where 1=1 ;