-- Start of DDL Script for Procedure SD_HOSPITAL.SP_ZY_YBSF00_BCREG0 -- Generated 23-七月-2021 10:22:55 from SD_HOSPITAL@PHXYY CREATE OR REPLACE PROCEDURE sp_zy_ybsf00_bcreg0 ( as_YBDJH0 in char, --医保单据号 ad_JZDH00 in number, --结账单流水号 as_YBLB00 in char, --对应医保类别ID(该字段的尚未使用) ad_DJH000 in number, --病人交费单据流水号(自费部分) ad_TJDJH0 in number, --统筹基金的单据流水号 ad_GZDJH0 in number, --个人账户的单据流水号 ad_ZFJE00 in number, --个人现金支付 ad_TCJJZF in number, --医保统筹基金支付 ad_GRZHZF in number, --医保个人账户支付 ad_YBXJZF in number default 0,--医保现金支付,厦门医保为了统计医保平均数增加 zhr 2003.12.27 ad_SBTJDH in number, --商保统筹基金单据流水号 ad_SBZHDH in number, --商保个人帐户单据流水号 ad_SBZFJE in number, --商保个人现金支付金额 ad_SBTJJE in number, --商保统筹基金支付金额 ad_SBZHJE in number, --商保个人帐户支付金额 as_YBJZRQ in char, --医保结算日期 as_YBJZSJ in char, --医保结算时间 ad_ypwqzf in number default 0, --药品完全自费合计 ad_xmwqzf in number default 0, --项目完全自费合计 ad_ypbfzf in number default 0, --药品部分自付合计 ad_xmbfzf in number default 0, --项目部分自付合计 ad_ybqfje in number default 0, --医保起伏线 ad_ybzhye in number default 0, --医保帐户余额 ad_GWYBZ0 in number default 0, --公务员补助 ad_jjzfe0 in number default 0, --保健基金支付 ad_jjdjh0 in number default 0, --保健基金支付单据号 as_BJJBIE in char default '04', --保健级别 '00':无级别或非保健人员 '01' 一级 '02' 二级 '03' 三级,'04' 是还未从医保那边获取病人的保健级别时的值 ad_SYBXZF in number default 0, --商业保险支付 ad_SYDJH0 in number default 0, --商业保险支付单据号 ad_FYBFY0 in number default 0, --非医保金额 ad_YLZFJE in number default 0, --乙类自付金额 ad_CFDXJE in number default 0, --超封顶线金额 ad_SBZFE0 in number default 0, --商保基金支付额 ad_SBDJH0 in number default 0, --商保基金支付单据号 ad_BJZFE0 in number default 0, --保健基金支付额 ad_BJDJH0 in number default 0, --保健基金支付单据号 ad_GWYDJH in number default 0, --保健基金支付单据号 ad_YBYL01 in number default 0, --民政救助 ad_YBYL02 in number default 0, --计生救助 ad_YBYL03 in number default 0, --残联救助 ad_YBYL04 in number default 0, --单病种限额 ad_YBYL05 in number default 0, --医院支付(医保无返回) ad_YBYL06 in number default 0, --低保基金支付 ad_YBYL07 in number default 0, --一般诊疗费补偿金额 ad_YBYL08 in number default 0, --一般诊疗费费个人支付金额 ad_YBYL09 in number default 0, ---特殊门诊起付线累计 ad_YBYL10 in number default 0, --特殊门诊基金累计 ad_YBYL11 in number default 0, --健康账户支付额 ad_YBYL12 in number default 0, --健康账户余额 ad_YBYL13 in number default 0, --共济账户支付 ad_CFXMS0 in number default 0, --本次住院处方项目总数 ad_BCBXF0 in number default 0, --本次住院医疗费总额 as_YHMSG0 out varchar, --存储过程提示的错误信息 as_SYSMSG out varchar, --系统提示的错误信息 ad_YYYDJH in number default 0, --单病种差额单号 ad_YBYL14 in number default 0, --共济账户余额 ad_YBYL15 in number default 0, --健康账户支付医保费用 ad_YBYL16 in number default 0, --健康账户支付非医保费用 ad_YBYL17 in number default 0, --医保减免金额 ad_YBYL18 in number default 0, --民政(医疗救助基金)补助金额 ad_YBYL19 in number default 0, --超医保上限金额(非医保返回) ad_YBYL20 in number default 0, --个人账户支付自付 ad_YBYL21 in number default 0, --个人现金支付自付 ad_YBYL22 in number default 0, --血费报销金额(血费系统) ad_YBYL23 in number default 0, --医保结算金额误差(总费用-定额) ad_YBYL24 in number default 0, --大额医疗费用报销金额 ad_YBYL25 in number default 0, --单病种补偿金额(定额-总费用) ad_YBYL26 in number default 0, --大病补充补偿金额 ad_YBYL27 in number default 0, --保健医保统筹支付(已包含在统筹中) ad_YBYL28 in number default 0, --择日住院门诊总费用 ad_YBYL29 in number default 0, --择日住院门诊范围内费用 ad_YBYL30 in number default 0, --择日住院门诊统筹(医保未返回) ad_YBSM01 in varchar2 default '', --行政区号+区域 ad_YBSM02 in varchar2 default '', --是否择日住院 ad_YBSM03 in varchar2 default '', --年度结算截止日期 ad_YBSM04 in varchar2 default '', --血费报销ID(血费系统) ad_YBSM05 in varchar2 default '', --单病种登记流水号 ad_YBSM06 in varchar2 default '', --医保说明06 ad_YBSM07 in varchar2 default '', --医保说明07 ad_YBSM08 in varchar2 default '', --医保说明08 ad_DBZBM0 in varchar2 default '', ad_SYZYH0 in varchar2 default '0', --生育住院号 ad_BJZYH0 in varchar2 default '0', --保健住院号 ad_SYLSH0 in varchar2 default '0', --生育单据号 ad_BJLSH0 in varchar2 default '0', --保健单据号 ad_BCKBCS in number default 1 , --本次看病次数 ad_HJJE00 in number default 0, --本次费用总额 ad_mxzje0 in number default 0, --单病种明细总额 ad_YBYL31 in number default 0, ad_YBYL32 in number default 0, ad_YBYL33 in number default 0, ad_YBYL34 in number default 0, ad_YBYL35 in number default 0, ad_YBYL36 in number default 0, ad_YBYL37 in number default 0, ad_YBYL38 in number default 0, ad_YBYL39 in number default 0, ad_YBYL40 in number default 0, ad_YBYL41 in number default 0, ad_YBYL42 in number default 0, ad_YBYL43 in number default 0, ad_YBYL44 in number default 0, ad_YBYL45 in number default 0, --(医保返回)cwhcfw 除外耗材范围内费用 ad_YBYL46 in number default 0, --(医保返回)cbcwf0 超标床位费 ad_YBYL47 in number default 0, ad_YBYL48 in number default 0, ad_YBYL49 in number default 0, ad_ID0000 in number default 0, --发送医保明细中间表ID ad_YBJKLX in varchar2 default '', --接口类型 -1:自费结算 0普通医保 1生育医保 2:工伤 3保健医保 4:生育新接口 ad_YBSM09 in varchar2 default '', --病情编码或CDRG组别 ad_YBSM10 in varchar2 default '', --CDRG病例类型(jsbllx) ad_YBSM11 in varchar2 default '', --CDRG结算ID(monitorID) ad_YBSM12 in varchar2 default '', --医保说明12(字符)单病种耗材ID|耗材编码|超标床位编码 ad_YBSM13 in varchar2 default '', --医保说明13(字符) ad_YBSM14 in varchar2 default '', --医保说明14(字符) ad_YBSM15 in varchar2 default '', --医保说明15(字符) ad_YBSM16 in varchar2 default '', --医保说明16(字符) ad_DDLSH0 in varchar2 default '', --订单流水号 ad_YBYL50 in number default 0, ad_YBYL51 in number default 0, ad_YBYL52 in number default 0,--akc227 医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 ad_YBYL53 in number default 0,--bkc102 基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 ad_YBYL54 in number default 0,--bkc040 个人现金支付金额(实付现金) ad_YBYL55 in number default 0,--bkc041 个人账户支付金额 ad_YBYL56 in number default 0,--bkc045 其中:统筹基金支付 ad_YBYL57 in number default 0,--bkc059 其中:公务员医疗补助(bkc059=bkc059_1+bkc059_2+bkc059_3) ad_YBYL58 in number default 0,--bkc052 其中:商保基金支付(大额补充) ad_YBYL59 in number default 0,--bkc062 其中:精准扶贫医疗叠加 ad_YBYL60 in number default 0,--bkc060 其中:医疗救助基金 ad_YBYL61 in number default 0,--ake173 其中:其他基金支付 ad_YBYL62 in number default 0,--ake026 其中:企业补充 ad_YBYL63 in number default 0,--bkc011 个人自费(非医保费用) ad_YBYL64 in number default 0,--akc087 个人账户余额 ad_YBYL65 in number default 0,--aka151 统筹支付医保费用起付标准 ad_YBYL66 in number default 0,--aka150 本年度住院次数 ad_YBYL67 in number default 0, ad_YBYL68 in number default 0, ad_YBYL69 in number default 0, ad_YBSM17 in varchar2 default '', --医保说明17(字符) ad_YBSM18 in varchar2 default '', --医保说明18(字符) ad_YBSM19 in varchar2 default '', --医保说明19(字符) ad_YBSM20 in varchar2 default '', --医保说明20(字符) ad_YBSM21 in varchar2 default '', --医保说明21(字符) ad_YBSM22 in varchar2 default '', --医保说明22(字符) ad_YBSM23 in varchar2 default '', --医保说明23(字符) ad_YBSM24 in varchar2 default '', --医保说明24(字符) ad_YBSM25 in varchar2 default '', --医保说明25(字符) ad_YBSM26 in varchar2 default '', --医保说明26(字符) ad_YBSM27 in varchar2 default '', --医保说明27(字符) ad_YBSM28 in varchar2 default '', --医保说明28(字符) ad_YBSM29 in varchar2 default '', --医保说明29(字符) as_YBJKID in varchar2 default '', --医保接口ID as_MXLSH0 in varchar2 default '' --明细流水号 ) -- MODIFICATION HISTORY -- Person Date Comments -- xzw 2007.06.20 传递参数增加保健基金单据流水号,保健基金支付额,保健级别; -- jlg 2007.07.30 增加传入参数公务员补助ad_GWYBZ0 -- jlg 2007.08.07 增加商业保险支付金额的处理ZYSF-20070806-004 -- jlg 2007.08.23 增加传入参数非医保金额ad_FYBJE0 -- jlg 2007.10.09 增加传入参数乙类自付金额、超封顶线金额 -- xzw 2008.01.17 医保费用包含商保费用问题进行重新处理,根据IC_YBBRLB中的字段YBBHSB的值进行处理; -- xzw 2008.04.25 增加商保基金支付金额和保健基金支付金额的处理ZYSF-20080425-002 -- xzw 2009.01.06 防止当ic_ybbrlb这张表在fbbh00不一致的前提下yblb00有重复的,导致出现两条记录出错 A.FBBH00=B.FBBH00 -- qks 2009.12.13 修改ZY_JZB000.YBRYRQ,YBZYH0 -- qks 2009.12.29 ls_ybzyh0取值时要去空Trim(ybzyh0) -- xzw 2010.03.04 增加传入参数ad_GWYDJH -- qks 2010.03.24 1、修改公务员补助GWYBZ0、商保(ad_SBZHJE、ad_SBTJJE) 是否包含在统筹金额中的问题; --2、增加传入as_ybyl01--as_ybyl13;自付金额暂时不统一处理;现金付款 增加+nvl(ls_hshjje,0); -- qks 2010.04.29 增加条件and NVL(ld_ZFJE00,0)>=0 ZYSF-20100429-001 -- qks 2010.08.13 只有泉州地区公务员补助是独立的,不包含在统筹基金支付中 -- qks 2010.08.27 公务员补助如果是已包含在统筹基金支付中的,那么值不保存在ZY_JZB000.GWYBZ0中 -- qks 2010.11.29 ad_YBYL01--ad_YBYL13是否独立判断条件更改:只有在对应ic_ybbrlb.ybbhsb有写才算独立;增加入传ad_CFXMS0、ad_BCBXF0 ZYSF-20101130-003 -- zhangyc 2010.12.03 增加限制医保返回的总金额<>院内产生的总费用不允许结算ZYSF-20101201-001 -- qks 2011.03.18 ad_BCBXF0为0时不限制医保返回的总金额=院内产生的总费用 --zhangyc 2011.04.27 判断费用总金额<>医保返回总金额位置前移 by ZYSF-20110426-001 --zhangyc 2011.06.20 插入婴儿姓名 by ZYSF-20110617-002 --zhangyc 2011.09.21 公务员补助金额都保存到结账表中ZYSF-20110914-005 不根据IC_YBBRLB.ybbhsb是否包含15 来判断 --zhangyc 2011.11.30 插入(单病种编码)by ZYSF-20111128-001 --zhanghr 2012.01.16 ZYSF-20120116-003 修改单病种差额算法 --jinfl 2012.02.17 公务员补助独立的医保中心从通用字典表中获取 ZYSF-20120206-001 --zhanghr 2012.03.21 经电话与医保开发人员确认,sbzfe0,bjzfe0是包含在jjzfe0中,铁路医保是不包含在内的。ZYSF-20120321-001 --zhangyc 2012.04.28 by ZYSF-20120426-002 医保返回金额于院内不一致是否允许结算 ZY_SFYXCYJS=Y 是 =N 否 --zhangyc 2013.05.10 扩展字段 ybyl14_ybyl30以及扩展ZY_YBDBZJSJK=M单病种支付 by ZYSF-20130410-001; --zhangyc 2013.06.03 增加显示单病种名称和重新计算医院支付金额 by ZYSF-20130530-001 --zhangyc 2012.06.19 单病种分开结算 by ZYSF-20130619-001 ad_YBSM08<>0(单病种费用表单据号) 时更新单病种费用表结账表票据表 --zhangyc 2013.06.25 医疗救助基金Mzbzje=BM_BRZFFS.ZFFSBH=22 商业保险支付sybxzf=BM_BRZFFS.ZFFSBH=13 BY ZYSF-20130625-002 --zhangyc 2013.07.04 修正单病种结算更新数据异常 by ZYSF-20130703-001 --zhangyc 2013.12.27 修正单病种 by ZYSF-20131218-003 --zhangyc 2014.04.08 as_ybyl24(大额医疗费用sbzfje)不包含在统筹中可用来报销(写入结账表中的统筹基金会包含大额医疗费用) by ZYSF-20140403-002 --zhangyc 2014.05.09 把单病种结算未超额的差额金额记录到YBYL25中 by ZYSF-20140425-001 -- zhangyc 2014.07.10 血费报销金额YBYL22 by ZYSF-20140710-001 --daihq 2014.07.15 扩展参数ZY_SFYXCYJS,实现只有'择日住院'病人才允许医保返回金额不一致结算 for ZYSF-20140526-001 --zhangyc 2014.11.17 增加保健医保接口功能 by ZYSF-20141111-003 --zhangyc 2014.11.28 修正当医保返回mzzfy0 择日住院门诊总费用 个人支付算法错误 by ZYSF-20141128-001 --zhangyc 2015.03.04 修改按床日数单病种支付 by ZYSF-20150204-002 --zhangyc 2014.03.31 修正单病种结算伙食费和代办费的算法 by ZYSF-20150319-003 --zhangyc 2015.04.02 增加入参数 ad_BCKBCS by ZYSF-20150402-003 --zhangyc 2015.04.30 不更新YBSM07 by ZYSF-20150330-001 --zhangyc 2016.01.20 单病种修改 by ZYSF-20160108-001 --zhangyc 2016.03.23 修正未超额时医保返回定额时bug by ZYSF-20160311-001 --zhangyc 2016.04.07 修正医保返回dbzbm0时按单病种结算 by ZYSF-20160330-001 --zhangyc 2016.05.06 修正有伙食费或代办费时,医保结算报错 by ZYSF-20160504-002 --zhangyc 2016.05.27 参数SF_SFQYDBZJK改为ZY_YBDBZJSJK=N 控制 by ZYSF-20160527-003 --zhangyc 2016.07.22 修改大病补偿([zysf].replay.dbbcbcje>0)统筹基金>大于总费用是应退还金额错误 by ZYSF-20160811-001 --zhangyc 2016.09.22 修正ZY_SFYXCYJS=M 医保返回mzzfy0 系统提示医保返回总额不等于院内总额 by ZYSF-20160918-001 --zhangyc 2016.09.23 修正[zysf]replay zhzfe0=0 grzfe0=-1120.11 jjzfe0=5423.86 bcbxf0=4303.75 统筹基金多出的钱补偿给病人 by ZYSF-20160907-003 --zhangyc 2016.12.28 修正参数ZY_JSTKAYJJFS,ZY_ZZJESFXJTC=Y by ZYSF-20161217-001 --zhangyc 2017.03.15 修改单病种 by ZYSF-20170206-001 --zhangyc 2017.03.30 增加打包项目对应国家编码BM_GZHCFL.BZGJBM by ZYSF-20170330-005 --zhangyc 2017.04.17 注释掉ZYSF-20160108-001 修改的需求 by ZYSF-20170417-003 --zhangyc 2017.04.18 增加条件(ad_DBZBM0 is not null) 否则非单病种病人返回费用总额和院内总额不一致会算出单病种金额 by ZYSF-20170418-003 --zhangyc 2017.06.12 修正泉州地区单病种结算医保有返回公务员补助(gwybz0)导致医院支付算错 by ZYSF-20170623-002 --zhangyc 2017.11.29 重新结算,XJYE00扣除掉微信和支付宝退款金额 by ZYSF-20171129-002 --zhangyc 2017.12.09 修改单病种病人(大病补偿)算法 by ZYSF-20171211-002 --zhangyc 2018.01.02 增加CDRG结算功能 by ZYSF-20171230-001 --zhangyc 2018.01.04 CDRG结算修改 by ZYSF-20180106-001 --zhangyc 2018.01.09 修改cdrg发票:个人支付=现金支付+A账户支付+B账户支付 by ZYSF-20180109-002 --zhangyc 2018.01.12 修正超标床位费,超标耗材,可报耗材未写入到结账表 by ZYSF-20180112-001 --zhangyc 2018.01.29 增加插入ZY_BZFPMX表之前先清空,避免自费转医保重复插入 by ZYSF-20171220-001 --zhangyc 2018.03.12 修改未发送cdrg CDRG病例类型(jsbllx) LS_YBSM10 变量清空 by ZYSF-20180312-001 --zhangyc 2018.03.12 增加参数ZY_BZFPCWHCCWF控制病种发票(ZY_BZFPMX) by ZYSF-20180312-002 --zhangyc 2018.03.16 增加函数SF_ZY_SFDBZFZ取值判断(Y:是否 N:否 ) by ZYSF-20180308-003 --zhangyc 2018.03.23 增加生育新接口改造ad_YBJKLX=4(生育新接口 ) by ZYSF-20180322-003 --zhangyc 2018.03.30 修正新生育接口医保返回(akc227=4404.11<>bkc045=2400+bkc040=2804.11) by ZYSF-20180330-001 --zhangyc 2018.04.02 增加单病种清单打印 ZYSF-20180329-001 --zhangyc 2018.05.04 修正医保返回大额医疗费用报销金额(sbzfje)医院支付错误 by ZYSF-20180503-002 --zhuyr 2018.05.15 把医保预留新增字段加进来,ZYSF-20180504-003 --zhangyc 2018.08.03 单病种增加民政补助金额(ZY_JZB000.YBYL18=mzbzje) 判断 by ZYSF-20180803-002 --zhangyc 2018.08.07 还原大额医疗费用:(ZY_JZB000.YBYL24=sbzfje) 判断 by ZYSF-20180807-003 --zhuyr 2018.11.20 医保病人在进行新流程的重新结算时,不把ZY_JZB000中的ZFJE00写入ZY_BRJFB0中的JFJE00中 by ZYSF-20181113-001 --zhangyc 2019.08.08 精准扶贫接口改造(结账表写入:DBZMC0,BZBMLB) by ZYSF-20190808-005 --zhangyc 2019.12.14 新医保接口增加调用SP_ZY_NEWYBJK_JKFHJX by ZYSF-20191214-001 --zhangyc 2019.12.16 新医保接口统筹总额(bkc102:基金支付总额)、医保账户(bkc041:个人账户支付金额)、个人自付(bkc040:个人现金支付金额(实付现金)) 按医保返回为准 by ZYSF-20191217-001 --zhangyc 2019.12.25 结账表增加写入BKC001_MC、AAE140、AAE140_MC、BKE174、BKE174_MC by ZYSF-20191225-002 --zhangyc 2020.05.13 根据BM_GZHCFL.HCFLBH 耗材分类编码:1:除外耗材费用 2:特需医疗服务费用 by ZYSF-20200512-001 --zhangyc 2020.06.20 增加新医保接口 bkc134:乙类先行自付额 bke856:超封顶线金额 by ZYSF-20200622-001 --zhangyc 2020.07.15 修改存在大病补偿(sbzfje)金额时,医院支付金额错误问题 by ZYSF-20200527-001 --zhangyc 2020.07.27 扩展参数LS_TCJJQZFS=D(bkc045,bkc059,bkc052,bkc060独立写入)by ZYSF-20200727-003 --zhangyc 2020.08.12 新结账表写入YBSM24(his收费单据流水号(bke298))、YBSM25(his流水号(bke042) by ZYSF-20200812-006 --zhangyc 2020.10.12 扩展参数LS_TCJJQZFS=D时 (bkc045=bkc045+ake173+ake026)by ZYSF-20201009-001 --zhangyc 2020.10.16 新医保接口结算保存bke361:普门累计或特门累计 (YBYL37 pmlj00 普通门诊累计)(YBYL38 tmlj00 特殊门诊累计) by ZYSF-20201016-001 --linbin 2020.11.04 新医保接口结算保存bkc620(本地)成员共济账户支付、bkc619(异地)成员共济账户支付 by ZYSF-20201029-002 --zhangyc 2020.12.10 ZY_JZB000保存一些新的字段(FKJSLX,FKLSH0,FKJZDH,FKJZJE,YBBXZE,DLTCJJ,DLZHZF,YBQTZE,DLSYBX,DLJZFP,DLQTJJ,DLQYBC,MZBZJE,DLSBJE,GWBZJE,DLDBJJ,CJBTCE ) by ZYSF-20201210-002 --zhangyc 2020.12.28 增加医保跨年拆分业务处理 by ZYSF-20201229-004 --zhangyc 2021.01.25 非单病种病人存在发送给医保数据比院内少如果发送:7371.48 院内:7371.49 修改自费金额以及非单病种院内合计金额跟医保返回合计金额大于0.02报错 by ZYSF-20210126-001 --zhangyc 2021.03.15 如果入参ad_DBZBM0为空,取ZY_BRXXB0.DBZBM0 by ZYSF-20210316-001 --zhangyc 2021.04.26 参数LS_TCJJQZFS=D时,医保接口返回bkc062:其中:精准扶贫医疗叠加 累加到统筹基金中 by ZYSF-20210426-004 --zhangyc 2021.05.26 增加精神病院按床日数定额报销功能 BY ZYSF-20210517-002 as LS_JZRQ00 ZY_JZB000.JZRQ00%TYPE; LS_JZSJ00 ZY_JZB000.JZSJ00%TYPE; ls_PJH000 ZY_JZB000.PJH000%TYPE; LS_XJYE00 ZY_JZB000.XJYE00%TYPE; LS_ZZYE00 ZY_JZB000.ZZYE00%TYPE; LS_YSZJE0 ZY_JZB000.YSZJE0%TYPE; LS_ZZZJE0 ZY_JZB000.ZZZJE0%TYPE; ls_brid00 zy_jzb000.brid00%type; ls_hshjje zy_jzb000.hjje00%type; ls_hjje00 zy_jzb000.hjje00%type; --ld_ZFJE00 zy_jzb000.zfje00%type; ls_YBBHSB IC_YBBRLB.YBBHSB%TYPE; ls_zyid00 zy_jzb000.zyid00%type; ls_ybryrq zy_jzb000.ybryrq%type; ls_ybzyh0 zy_jzb000.ybzyh0%type; ld_SBTJJE zy_jzb000.SBTCJJ%type; ld_SBZHJE zy_jzb000.SBTCJJ%type; ld_GWYBZ0 zy_jzb000.SBTCJJ%type; ld_TCJJZF zy_jzb000.TCJJZF%type; ld_YBYL00 ZY_JZB000.YBYL01%TYPE; ls_YBMC00 IC_YBBRLB.YBMC00%TYPE; LS_JMJE00 ZY_FYMX00.JMJE00%TYPE; --减免金额 LS_FYHSF0 ZY_FYMX00.ZFJE00%TYPE; --伙食费 LS_TOTAL0 ZY_FYMX00.HJJE00%TYPE; --总金额 ld_YYJMJE ZY_JZB000.YBYL17%TYPE; ld_Mzbzje ZY_JZB000.YBYL18%TYPE; LS_YBYL19 ZY_JZB000.YBYL19%TYPE; ad_YEXM00 varchar2(40); --婴儿姓名 ls_jzfs00 varchar2(20); --结算方式 LS_DBZBM0 ZY_JZB000.DBZBM0%type; LS_DBZMC0 ZY_JZB000.DBZMC0%type; LS_BZBMLB ZY_JZB000.BZBMLB%type; ls_SFXNH0 IC_YBBRLB.SFXNH0%TYPE; ls_DBZJK0 varchar2(100); ld_YBYL05 number(12,4); ld_sbzfe0 number(12,4); ld_bjzfe0 number(12,4); ls_count0 number(10); ls_DBZDJH number(10); ls_FDBZDJH number(10); LS_SFYXCYJS XT_XTCS00.VALUE0%type; LS_DBZCEFKJS XT_XTCS00.VALUE0%type; LS_PJXH00 ZY_PJSYQK.PJXH00%type; LS_PJXH01 ZY_PJSYQK.PJXH00%type; LS_CZY000 ZY_PJSYQK.CZY000%type; LS_JFLBID ZY_BRZHXX.JFLBID%type; LS_JZY000 ZY_JZB000.JZY000%type; LS_JZYXM0 BM_YGBM00.ZWXM00%type; LS_BMBH00 bm_ygbm00.BMBH00%type; LS_YBLB00 bm_brxxb0.YBLB00%type; LS_YBYL25 number(12,4);--单病种补偿金额(总费用-定额) ls_RYLB00 ZY_BRXXB0.RYLB00%type; LS_SYZYH0 varchar2(30); --生育住院号 LS_BJZYH0 varchar2(30); --保健住院号 LS_bcbxf0 number(12,2); --医保返回的费用总额 LS_bcbxf1 number(12,2); --医保返回的费用总额 LS_MZZRTC number(12,2); --门诊择日统筹 LS_YBHDJE BM_DBZDEB.YBHDJE%type; --单病种核定金额 LS_YBYL04 number(12,2); LS_DBBCCE number(12,2);--大病补偿差额 LS_YBSM01 ZY_JZB000.YBSM01%type; LS_YBSM02 ZY_JZB000.YBSM02%type; LS_YBSM03 ZY_JZB000.YBSM03%type; LS_YBSM04 ZY_JZB000.YBSM04%type; LS_YBSM05 ZY_JZB000.YBSM05%type; LS_YBSM06 ZY_JZB000.YBSM06%type; LS_YBSM08 ZY_JZB000.YBSM08%type; LS_YBSM09 ZY_JZB000.YBSM09%type;--病情编码或CDRG组别 LS_YBSM10 ZY_JZB000.YBSM10%type;--CDRG病例类型(jsbllx) LS_YBSM11 ZY_JZB000.YBSM11%type;--CDRG结算ID(monitorID) LS_YBSM12 ZY_JZB000.YBSM12%type;--医保说明12(字符) LS_YBSM13 ZY_JZB000.YBSM13%type;--医保说明13(字符) LS_YBSM14 ZY_JZB000.YBSM14%type;--医保说明14(字符) LS_YBSM15 ZY_JZB000.YBSM15%type;--医保说明15(字符) LS_YBSM16 ZY_JZB000.YBSM16%type;--医保说明16(字符) LS_YBYL32 ZY_JZB000.YBYL32%type; LS_YBYL33 ZY_JZB000.YBYL33%type; --单病种超标床位费用(医保未返回) LS_YBYL34 ZY_JZB000.YBYL34%type; --单病种除外耗材费用(医保未返回) LS_ypwqzf number(12,2); LS_xmwqzf number(12,2); LS_ypbfzf number(12,2); LS_xmbfzf number(12,2); LS_ybqfje number(12,2); LS_ybzhye number(12,2); LS_BZCBCW ZY_BRZHXX.DBZCWF%type; --单病种超标床位费 LS_BZLSHC ZY_BRZHXX.DBZHCF%type; --单病种另收耗材费 LS_BZKBHC number(12,2); --病种可报耗材 LS_YBJKLX varchar2(30);--接口类型 -1:自费结算 0普通医保 1生育医保 2:工伤 3保健医保 4:生育新接口 5:医保新接口 LS_YHTKJE number(12,2); --应退银行卡 LS_WXTK00 number(12,2); --应退微信 LS_ZFBTK0 number(12,2); --应退支付宝 LS_CXJZDH ZY_JZB000.CXJZDH%type; LS_CDRGJK varchar2(10);--CDRG接口 Y:启用 N:不启用 LS_CDRGFS ZY_BASYXX.CDRGFS%type; ZY_BZFPCWHCCWF XT_XTCS00.VALUE0%type; LS_RETURN number(10); --单病种接口启用 返回结果 0:不启用 1:启用 LS_SFDBZFZ varchar2(50); --是否按单病种接口支付 Y:是否 N:否 LS_GZHCID varchar2(50); --高值耗材打包ID LS_HCDBBM varchar2(50); --高值耗材打包编码 LS_CBWHBM varchar2(50); --超标床位编码 LS_YBSM17 ZY_JZB000.YBSM17%type;--医保说明17(字符) LS_YBSM18 ZY_JZB000.YBSM18%type;--医保说明18(字符) LS_YBSM19 ZY_JZB000.YBSM19%type;--医保说明19(字符) LS_YBSM21 ZY_JZB000.YBSM21%type;--医保说明21(字符) LS_YBSM22 ZY_JZB000.YBSM22%type;--医保说明22(字符) LS_YBSM23 ZY_JZB000.YBSM23%type;--医保说明23(字符) LS_YBSM26 ZY_JZB000.YBSM26%type;--医保说明26(字符) LS_YBSM27 ZY_JZB000.YBSM27%type;--医保说明27(字符) LS_YBSM28 ZY_JZB000.YBSM28%type;--医保说明28(字符) LS_YBSM29 ZY_JZB000.YBSM29%type;--医保说明29(字符) LS_ZY_SFQYCXJSXLC varchar2(10); --控制是否启用重新结算新流程的参数 LS_ZXZT00 number(10);--输出:执行状态 0:失败 1:成功 LS_ERRMSG varchar2(400);--输出:错误信息 LS_MXLSH0 SF_JZB000.MXLSH0%type; --明细流水号 LS_YBJKID varchar2(20) ;--医保接口ID LS_akc227 number(12,2);--akc227 医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 LS_bkc102 number(12,2);--bkc102 基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 LS_bkc040 number(12,2);--bkc040 个人现金支付金额(实付现金) LS_bkc041 number(12,2);--bkc041 个人账户支付金额 LS_bkc045 number(12,2);--bkc045 其中:统筹基金支付 LS_bkc059 number(12,2);--bkc059 其中:公务员医疗补助(bkc059=bkc059_1+bkc059_2+bkc059_3) LS_bkc052 number(12,2);--bkc052 其中:商保基金支付(大额补充) LS_bkc062 number(12,2);--bkc062 其中:精准扶贫医疗叠加 LS_bkc060 number(12,2);--bkc060 其中:医疗救助基金 LS_ake173 number(12,2);--ake173 其中:其他基金支付 LS_ake026 number(12,2);--ake026 其中:企业补充 LS_bkc011 number(12,2);--bkc011 个人自费(非医保费用) LS_akc087 number(12,2);--akc087 个人账户余额 LS_aka151 number(12,2);--aka151 统筹支付医保费用起付标准 LS_aka150 number(12,2);--aka150 本年度住院次数 LS_bkc612 number(12,2);--bkc612 补助基金支付bkc612=bkc052 大病保险基金支付+bkc059公务员医疗补助+bkc062精准扶贫医疗叠加+bkc060医疗救助基金+ake173 其他基金支付+ake026企业补充+bkc061保健基金支付 LS_FYJSCE number(12,2);--费用结算差额 LD_GRZHZF ZY_JZB000.GRZHZF%type;--医保账户支付 LD_jjzfe0 ZY_JZB000.jjzfe0%type;--保健基金 LD_SYBXZF ZY_JZB000.SYBXZF%type;--商业保险支付 LD_ZFJE00 ZY_JZB000.ZFJE00%type;--现金支付金额 BM_bkc001_mc ZY_BRXXB0.bkc001_mc%type;--人员待遇类别名称(城乡居民、普通在职人员等等) BM_aae140 ZY_BRXXB0.aae140%type;--险种类型编码:310 城镇职工基本医疗保险 320:公务员医疗补助 380:新型农村合作医疗 390:城乡居民基本医疗保险 410:工伤保险 510:生育保险 520:机关生育 BM_aae140_mc ZY_BRXXB0.aae140_mc%type;--险种类型名称:城乡居民基本医疗保险、城镇职工基本医疗保险等等 LS_bkc001_mc ZY_JZB000.bkc001_mc%type;--人员待遇类别名称(城乡居民、普通在职人员等等) LS_aae140 ZY_JZB000.aae140%type;--险种类型编码:310 城镇职工基本医疗保险 320:公务员医疗补助 380:新型农村合作医疗 390:城乡居民基本医疗保险 410:工伤保险 510:生育保险 520:机关生育 LS_aae140_mc ZY_JZB000.aae140_mc%type;--险种类型名称:城乡居民基本医疗保险、城镇职工基本医疗保险等等 LS_bke174 ZY_JZB000.bke174%type;--异地就医类型编码:1 省内 2 省外 3 市内 4 市外 LS_bke174_mc ZY_JZB000.bke174_mc%type;--异地就医类型名称:(省内、省外、市内、市外) LS_JSQYE0 ZY_JZB000.JSQYE0%type;--结算前账户余额 LS_JSHYE0 ZY_JZB000.JSQYE0%type;--结算后账户余额 LS_HCFLBH BM_GZHCFL.HCFLBH%type; --耗材分类编码:1:除外耗材费用 2:特需医疗服务费用 LS_YBYL69 ZY_JZB000.YBYL69%type; --特需医疗服务费用 LS_TXYLFY number(12,2); --特需医疗服务费用 LS_BZFPMC ZY_BZFPMX.XMMC00%type; --病种发票名称 LS_YLZFJE ZY_JZB000.YLZFJE%type; --乙类自付金额 LS_CFDXJE ZY_JZB000.CFDXJE%type; --超封顶线金额 LS_ZY_DBZBM0 ZY_BRXXB0.DBZBM0%type;--单病种编码 LS_TCJJQZFS varchar2(10);--新医保接口统筹基金取值方式 Y:取基金总额:bkc102,N:取其中基金支付:bkc045和补偿总额bkc612合并到bkc102 D:bkc045,bkc059,bkc052,bkc060独立写入 默认:Y LS_YBBCZE number(12,2);--医保补偿(总额) LS_GRZFZE number(12,2);--个人自付(总额) LS_QTTCJJ number(12,2);--统筹基金(其它) LS_SFXMYBJK varchar2(10);--是否厦门医保接口 Y:是 N:否 LS_YBSM20 ZY_JZB000.YBSM20%type;--akc190 医保挂号或医保住院号 LS_YBSM24 ZY_JZB000.YBSM24%type;--his收费单据流水号(bke298) LS_YBSM25 ZY_JZB000.YBSM25%type;--his流水号(bke042) LS_akc190 ZY_YBJKRZ.akc190%type;--akc190 医保挂号或医保住院号 LS_bke298 ZY_YBJKRZ.bke298%type;--his收费单据流水号(bke298) LS_bke042 ZY_YBJKRZ.bke042%type;--his流水号(bke042) LS_pmlj00 number(12,2);--YBYL37 pmlj00 普通门诊累计 LS_tmlj00 number(12,2);--YBYL38 tmlj00 特殊门诊累计 LS_bke361 number(12,2);--bke361(收普门时返回普门累计,收特殊门诊返回本次特门病种累计) LS_TSBZBH ZY_JZB000.TSBZBH%type;--特殊病种编码 LS_bkc620 number(12,2);--bkc620(本地)成员共济账户支付 LS_bkc619 number(12,2);--bkc619(异地)成员共济账户支付 LS_FKJSLX ZY_JZB000.FKJSLX%type;--分开结算类型 空值正常结算 FYCF_ZF:拆分_自费 FYCF_YB:拆分_医保 FYCF_YE:拆分_婴儿 FYCF_MQ:拆分_母亲 ZFJS:自费结算 YBJS:医保结算 CXJS:重新结算 LS_FKLSH0 ZY_JZB000.FKLSH0%type;--分开结算流水号 LS_FKJZDH ZY_JZB000.FKJZDH%type;--分开结算单号 LS_FKJZJE ZY_JZB000.FKJZJE%type;--分开结算金额 LS_YBBXZE ZY_JZB000.YBBXZE%type;--医保报销总额(DLTCJJ+DLZHZF+YBQTZE+DLSYBX+DLJZFP+DLQTJJ+DLQYBC+MZBZJE+DLSBJE+GWBZJE+DLDBJJ) LS_DLTCJJ ZY_JZB000.DLTCJJ%type;--实际医保统筹基金 LS_DLZHZF ZY_JZB000.DLZHZF%type;--实际医保账户支付 LS_YBQTZE ZY_JZB000.YBQTZE%type;--医保其它总额 LS_DLSYBX ZY_JZB000.DLSYBX%type;--商业保险支付(独立于统筹基金金额) LS_DLJZFP ZY_JZB000.DLJZFP%type;--精准扶贫医疗(独立于统筹基金金额) LS_DLQTJJ ZY_JZB000.DLQTJJ%type;--其他基金支付(独立于统筹基金金额) LS_DLQYBC ZY_JZB000.DLQYBC%type;--企业补充(独立于统筹基金金额) LS_DLMZBZ ZY_JZB000.MZBZJE%type;--民政补助金额(独立于统筹基金金额) LS_DLSBJE ZY_JZB000.DLSBJE%type;--商保支付金额(独立于统筹基金金额) LS_GWBZJE ZY_JZB000.GWBZJE%type;--公务员补助金额(独立于统筹基金金额) LS_DLDBJJ ZY_JZB000.DLDBJJ%type;--大病基金支付金额(独立于统筹基金金额) LS_CJBTCE ZY_JZB000.CJBTCE%type;--产检检查费(bkc064)超出个人自付金额后需补退的差额 LS_DBZFPMC_DBZBZ varchar2(50);--单病种发票名称:单病种标准 LS_DBZFPMC_CBCWF varchar2(50);--单病种发票名称:超标床位费 LS_DBZFPMC_CWHCF varchar2(50);--单病种发票名称:除外耗材费 LS_DBZFPYX_CBCWF varchar2(2); --单病种发票是否显示:超标床位费(1:显示 0:不显示 有值:都显示) LS_DBZFPYX_CWHCF varchar2(2); --单病种发票是否显示:除外耗材费(1:显示 0:不显示 有值:都显示) LS_CRSDBZ_OPEN varchar2(2); --床日数病种开启 1:开启 0:不开启 LS_CRSDBZ_ALL varchar2(2); --床日数病种全院开启标识 1:开启 0:不开启 LS_CRSDBZ_DQKS varchar2(2); --床日数病种科室开启标识 1:开启 0:不开启 LS_DQKS00 ZY_BRXXB0.DQKS00%type; --当前科室 LS_DQBQ00 ZY_BRXXB0.DQBQ00%type; --当前病区 LS_TempNum number(12,2);--临时变量 BEGIN begin select substrb(value0,1,1) into ls_ZY_SFQYCXJSXLC from XT_XTCS00 where name00 = 'ZY_SFQYCXJSXLC'; exception when others then ls_ZY_SFQYCXJSXLC:='N'; end; LS_ZZYE00:=0; LS_XJYE00:=0; LS_YSZJE0:=0; LS_ZZZJE0:=0; ls_hshjje:=0; ls_hjje00:=0; LS_JMJE00:=0; LS_TOTAL0:=0; LS_YBBCZE:=0;--医保补偿(总额) LS_GRZFZE:=0;--个人自付(总额) LS_QTTCJJ:=0;--统筹基金(其它) LD_ZFJE00:=nvl(ad_ZFJE00,0); --个人支付(现金) ld_TCJJZF:=nvl(ad_TCJJZF,0);--统筹基金支付 ld_GRZHZF:=nvl(ad_GRZHZF,0); --医保账户支付 Ld_jjzfe0:=nvl(ad_jjzfe0,0);--保健基金 LD_SYBXZF:=nvl(ad_SYBXZF,0);--商业保险支付 ad_YEXM00:=nvl(ls_jzfs00,'全部'); LS_YBYL04:=nvl(ad_YBYL04,0); --病种定额 ld_YBYL05:=nvl(ad_YBYL05,0); --医院支付 LS_YBYL25:=nvl(ad_YBYL25,0);--单病种补偿金额(总费用-定额) LS_YBYL19:=nvl(ad_YBYL19,0); --超医保上限金额或未发送金额(非医保返回) LS_YBSM01:=ad_YBSM01; LS_YBSM02:=ad_YBSM02; LS_YBSM03:=ad_YBSM03; LS_YBSM04:=ad_YBSM04; LS_YBSM05:=ad_YBSM05; LS_YBSM06:=ad_YBSM06; LS_YBSM08:=ad_YBSM08; LS_YBSM09:=ad_YBSM09;--病情编码或CDRG组别 LS_YBSM10:=ad_YBSM10;--CDRG病例类型(jsbllx) LS_YBSM11:=ad_YBSM11;--CDRG结算ID(monitorID) LS_YBSM12:=ad_YBSM12;--医保说明12(字符) LS_YBSM13:=ad_YBSM13;--医保说明13(字符) LS_YBSM14:=ad_YBSM14;--医保说明14(字符) LS_YBSM15:=ad_YBSM15;--医保说明15(字符) LS_YBSM16:=ad_YBSM16;--医保说明16(字符) LS_YBSM17:=ad_YBSM17;--医保说明17(字符) LS_YBSM18:=ad_YBSM18;--医保说明18(字符) LS_YBSM19:=ad_YBSM19;--医保说明19(字符) LS_YBSM21:=ad_YBSM21;--医保说明21(字符) LS_YBSM22:=ad_YBSM22;--医保说明22(字符) LS_YBSM23:=ad_YBSM23;--医保说明23(字符) LS_YBSM26:=ad_YBSM26;--医保说明26(字符) LS_YBSM27:=ad_YBSM27;--医保说明27(字符) LS_YBSM28:=ad_YBSM28;--医保说明28(字符) LS_YBSM29:=ad_YBSM29;--医保说明29(字符) LS_YBYL32:=nvl(ad_YBYL32,0); LS_YBJKLX:=substrb(ad_YBJKLX,1,30);--接口类型 -1:自费结算 0普通医保 1生育医保 2:工伤 3保健医保 4:生育新接口 5:医保新接口 LS_BZCBCW:=0; --单病种超标床位费 LS_BZLSHC:=0; --单病种另收耗材费 LS_BZKBHC:=0; --病种可报耗材 LS_YBYL33:=nvl(ad_YBYL33,0);--单病种超标床位费用(医保未返回) LS_YBYL34:=nvl(ad_YBYL34,0);--单病种除外耗材费用(医保未返回) LS_YBYL69:=nvl(ad_YBYL69,0);--特需医疗服务费用 LS_TXYLFY:=0; --特需医疗服务费用 LS_YBSM20:=substrb(ad_YBSM20,1,50);--akc190 医保挂号或医保住院号 LS_YBSM24:=substrb(ad_YBSM24,1,50);--his收费单据流水号(bke298) LS_YBSM25:=substrb(ad_YBSM25,1,50);--his流水号(bke042) LS_pmlj00:=nvl(ad_YBYL37,0);--YBYL37 pmlj00 普通门诊累计 LS_tmlj00:=nvl(ad_YBYL38,0);--YBYL38 tmlj00 特殊门诊累计 LS_FKJSLX:='YBJS';--分开结算类型 空值正常结算 FYCF_ZF:拆分_自费 FYCF_YB:拆分_医保 FYCF_YE:拆分_婴儿 FYCF_MQ:拆分_母亲 ZFJS:自费结算 YBJS:医保结算 CXJS:重新结算 LS_FKLSH0:=null;--分开结算流水号 LS_FKJZDH:=null;--分开结算单号 LS_FKJZJE:=null;--分开结算金额 LS_YBBXZE:=0;--医保报销总额(DLTCJJ+DLZHZF+YBQTZE+DLSYBX+DLJZFP+DLQTJJ+DLQYBC+MZBZJE+DLSBJE+GWBZJE+DLDBJJ) LS_DLTCJJ:=0;--实际医保统筹基金 LS_DLZHZF:=0;--实际医保账户支付 LS_YBQTZE:=0;--医保其它总额 LS_DLSYBX:=0;--商业保险支付(独立于统筹基金金额) LS_DLJZFP:=0;--精准扶贫医疗(独立于统筹基金金额) LS_DLQTJJ:=0;--其他基金支付(独立于统筹基金金额) LS_DLQYBC:=0;--企业补充(独立于统筹基金金额) LS_DLMZBZ:=0;--民政补助金额(独立于统筹基金金额) LS_DLSBJE:=0;--商保支付金额(独立于统筹基金金额) LS_GWBZJE:=0;--公务员补助金额(独立于统筹基金金额) LS_DLDBJJ:=0;--大病基金支付金额(独立于统筹基金金额) LS_CJBTCE:=0;--产检检查费(bkc064)超出个人自付金额后需补退的差额 LS_DBZFPMC_DBZBZ:=null;--单病种发票名称:单病种标准 LS_DBZFPMC_CBCWF:=null;--单病种发票名称:超标床位费 LS_DBZFPMC_CWHCF:=null;--单病种发票名称:除外耗材费 LS_DBZFPYX_CBCWF:='1'; --单病种发票是否显示:超标床位费(1:显示 0:不显示 有值:都显示) LS_DBZFPYX_CWHCF:='1'; --单病种发票是否显示:除外耗材费(1:显示 0:不显示 有值:都显示) LS_CRSDBZ_OPEN:='0'; --床日数病种开启 1:开启 0:不开启 LS_CRSDBZ_ALL:='0'; --床日数病种全院开启标识 1:开启 0:不开启 LS_CRSDBZ_DQKS:='0'; --床日数病种科室开启标识 1:开启 0:不开启 LS_TempNum:=0;--临时变量 if LS_YBJKLX is not null then LS_YBSM06:=LS_YBJKLX; end if; begin LS_ypwqzf:=ad_ypwqzf; exception when others then LS_ypwqzf:=0; end; begin LS_xmwqzf:=ad_xmwqzf; exception when others then LS_xmwqzf:=0; end; begin LS_ypbfzf:=ad_ypbfzf; exception when others then LS_ypbfzf:=0; end; begin LS_xmbfzf:=ad_xmbfzf; exception when others then LS_xmbfzf:=0; end; begin LS_ybqfje:=ad_ybqfje; exception when others then LS_ybqfje:=0; end; begin LS_ybzhye:=ad_ybzhye; exception when others then LS_ybzhye:=0; end; LS_YBJKID:=substrb(nvl(as_YBJKID,ad_YBSM19),1,20);--医保接口ID LS_akc227:=nvl(ad_YBYL52,0);--医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 LS_bkc102:=nvl(ad_YBYL53,0);--基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 LS_bkc040:=nvl(ad_YBYL54,0);--个人现金支付金额(实付现金) LS_bkc041:=nvl(ad_YBYL55,0);--个人账户支付金额 LS_bkc045:=nvl(ad_YBYL56,0);--其中:统筹基金支付 LS_bkc059:=nvl(ad_YBYL57,0);--其中:公务员医疗补助(bkc059=bkc059_1+bkc059_2+bkc059_3) LS_bkc052:=nvl(ad_YBYL58,0);--其中:商保基金支付(大额补充) LS_bkc062:=nvl(ad_YBYL59,0);--其中:精准扶贫医疗叠加 LS_bkc060:=nvl(ad_YBYL60,0);--其中:医疗救助基金 LS_ake173:=nvl(ad_YBYL61,0);--其中:其他基金支付 LS_ake026:=nvl(ad_YBYL62,0);--其中:企业补充 LS_bkc011:=nvl(ad_YBYL63,0);--个人自费(非医保费用) LS_akc087:=nvl(ad_YBYL64,0);--个人账户余额 LS_aka151:=nvl(ad_YBYL65,0);--统筹支付医保费用起付标准 LS_aka150:=nvl(ad_YBYL66,0);--本年度住院次数 LS_bkc612:=nvl(ad_YBYL67,0);--bkc612 补助基金支付bkc612=bkc052 大病保险基金支付+bkc059公务员医疗补助+bkc062精准扶贫医疗叠加+bkc060医疗救助基金+ake173 其他基金支付+ake026企业补充+bkc061保健基金支付 LS_FYJSCE:=0;--费用结算差额 LS_YLZFJE:=nvl(ad_YLZFJE,0); --乙类自付金额[bkc134] LS_CFDXJE:=nvl(ad_CFDXJE,0); --超封顶线金额[bke856] LS_MXLSH0:=substrb(trim(as_MXLSH0),1,50);--明细流水号 if LS_MXLSH0='0' then LS_MXLSH0:=''; end if; if ad_JZDH00=0 then Return; end if; LS_bcbxf0:=ad_bcbxf0; LS_bcbxf1:=LS_bcbxf0; LS_MZZRTC:=nvl(ad_YBYL30,0); LS_DBZBM0:=substrb(trim(ad_DBZBM0),1,50); --择日住院门诊总费用 如果有值医保返回在总金额扣除掉该值 if nvl(ad_YBYL28,0)<>0 then LS_bcbxf0:=LS_bcbxf0-nvl(ad_YBYL28,0); LS_bcbxf1:=LS_bcbxf0; end if; --住院病人出院结算医保返回的金额与院内金额不一致是否允许结算 Y:允许结算,M:只有择日住院病人才允许医保返回金额与院内产生的总费用不一致结算, N:不允许结算 默认为:N begin select trim(value0) into LS_SFYXCYJS FROM XT_XTCS00 WHERE name00='ZY_SFYXCYJS'; exception when others then LS_SFYXCYJS:='N'; end; --单病种结算超额是否分开结算 Y:农合和医保都分开结算 M:医保分开结算(农合除外) P:农合分开结算(医保除外) N:都不分开结算 默认值N:不分开结算(ZY_YBDBZJSJK=M有效) begin select trim(value0) into LS_DBZCEFKJS FROM XT_XTCS00 WHERE name00='ZY_DBZCEFKJS'; exception when others then LS_DBZCEFKJS:='N'; end; --ZY_BZFPCWHCCWF 住院收费医保单病种结算(ZY_BZFPMX)是否增加医保返回的除外耗材费或超标床位费医保返回 Y:+除外耗材费和超标床位费 Q:+除外耗材费 T:+超标床位费 默认值:N 不增加 begin select trim(value0) into ZY_BZFPCWHCCWF from XT_XTCS00 where name00='ZY_BZFPCWHCCWF'; exception when others then ZY_BZFPCWHCCWF:='N'; end; ----是否厦门医保接口 Y:是 N:否 begin select substrb(trim(value0),1,10) into LS_SFXMYBJK from xt_xtcs00 where name00='ZY_SFXMYBJK'; exception when others then LS_SFXMYBJK:='N'; end; LS_TCJJQZFS:=nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','TCJJQZFS'),1,10),'Y'); select Trim(nvl(max(value0),'N')) into ls_DBZJK0 from xt_xtcs00 where name00='ZY_YBDBZJSJK'; if ad_YEXM00='全部' or ad_YEXM00='母亲' then--伙食费 select sum(XMJE00) into ls_HSHJJE from ZY_JZMX00 where JZDH00=ad_JZDH00 and sfylxm='N'; end if; select YSZJE0,ZZZJE0,BRID00,HJJE00,ZYID00,JZFS00,DBZBM0,JZY000,nvl(CXJZDH,0)CXJZDH,nvl(YHTKJE,0)YHTKJE,nvl(WXTK00,0)WXTK00,nvl(ZFBTK0,0)ZFBTK0,TSBZBH into LS_YSZJE0,LS_ZZZJE0,LS_BRID00,LS_HJJE00,LS_ZYID00,LS_JZFS00,LS_DBZBM0,LS_JZY000,LS_CXJZDH,LS_YHTKJE,LS_WXTK00,LS_ZFBTK0,LS_TSBZBH from ZY_JZB000 where JZDH00 = ad_JZDH00; select greatest(ryrq00,to_char(sysdate,'YYYY')||'0101'),Trim(YBZYH0)YBZYH0,trim(RYLB00)RYLB00,nvl(SYZYH0,'0')SYZYH0,nvl(BJZYH0,'0')BJZYH0, BKC001_MC,AAE140, AAE140_MC,DBZBM0,DQKS00,DQBQ00 into ls_ybryrq,ls_ybzyh0,ls_RYLB00,LS_SYZYH0,LS_BJZYH0, BM_BKC001_MC,BM_AAE140,BM_AAE140_MC,LS_ZY_DBZBM0,LS_DQKS00,LS_DQBQ00 from ZY_BRXXB0 where ZYID00=LS_ZYID00; if substrb(trim(ad_DBZBM0),1,50) is not null then LS_DBZBM0:=substrb(trim(ad_DBZBM0),1,50); end if; --2021.03.15 如果变量LS_DBZBM0为空 并且ZY_BRXXB0.DBZBM0=LS_ZY_DBZBM0 不为空,按住院病人信息单病种编码为准 if trim(LS_DBZBM0) is null and trim(LS_ZY_DBZBM0) is not null then LS_DBZBM0:=substrb(trim(LS_ZY_DBZBM0),1,50); end if; if nvl(ad_ID0000,0)>0 then update ZY_YBFSMX set JZDH00=ad_JZDH00,ZYID00=LS_ZYID00 where ID0000=ad_ID0000; end if; if (ad_SYZYH0 not in ('0')) and (ad_SYZYH0 is not null) then if LS_SYZYH0<>ad_SYZYH0 then LS_SYZYH0:=ad_SYZYH0; end if; end if; IF (ad_BJZYH0 not in ('0')) and (ad_BJZYH0 is not null) then if LS_BJZYH0<>ad_BJZYH0 then LS_BJZYH0:=ad_BJZYH0; end if; end if; update zy_brxxb0 set SYZYH0=nvl(LS_SYZYH0,'0'),BJZYH0=nvl(LS_BJZYH0,'0') where zyid00=LS_ZYID00; begin select SF_ZY_XTCS00_SFQYJK(LS_BRID00,'ZY_YBDBZJSJK','N') into LS_RETURN from dual; --单病种接口启用 0:不启用 1:启用 exception when others then LS_RETURN:=0; end; --获取结算前账户总余额 (参数:0:门诊 1:住院 参数2:BRID00 参数3:1:门诊 2:住院 参数4:0:可用余额 1:总余额 2:现金余额 3:停用金额) begin select SF_SF_GETBRZHYE(1,LS_BRID00,2,1) into LS_JSQYE0 from dual; exception when others then LS_JSQYE0:=0; end; --2018.03.16 重大疾病院内没有登记单病种医保接口会返回dbzbm0=C20_1 begin select substrb(SF_ZY_SFDBZFZ(LS_ZYID00,0,LS_RETURN,LS_DBZBM0,'1'),1,50) into LS_SFDBZFZ from dual; exception when others then LS_SFDBZFZ:='N'; end; if LS_SFDBZFZ='N' then --是否按单病种接口支付 Y:是否 N:否 LS_DBZBM0:=null; end if; --LS_CDRGJK varchar2(10);--CDRG接口 Y:启用 N:不启用 begin select SF_ZY_XTCS00(LS_BRID00,'ZY_CDRGJKQY') into LS_CDRGJK from dual; exception when others then LS_CDRGJK:='N'; end; begin select JFLBID into LS_JFLBID from ZY_BRZHXX where BRID00=LS_BRID00 ; exception when others then LS_JFLBID:=2; end; if LS_CDRGJK='Y' then begin select CDRGFS into LS_CDRGFS from ZY_BASYXX where ZYID00=LS_ZYID00; exception when others then LS_CDRGFS:=null; end; --CDRG发送标志 0未发送,1已经发送 if LS_CDRGFS not in ('1') then LS_YBSM10:='';--CDRG病例类型(jsbllx) end if; end if; -- by ZYSF-20150204-002 if LS_DBZBM0 is not null then begin select YBHDJE,DBZMC0,BZBMLB into LS_YBHDJE,LS_DBZMC0,LS_BZBMLB from BM_DBZDEB where trim(DBZBM0)=LS_DBZBM0 and YBZXLB=SF_ZY_SFQYDBZJK(LS_ZYID00); exception when others then LS_YBHDJE:=0; LS_DBZMC0:=null; LS_BZBMLB:=null; end; select SF_ZY_DBZCBFY(LS_ZYID00,LS_BRID00,LS_DBZBM0,ad_ID0000,0) into LS_BZCBCW from dual;--超标床位费 select SF_ZY_DBZCBFY(LS_ZYID00,LS_BRID00,LS_DBZBM0,ad_ID0000,1) into LS_BZLSHC from dual;--除外耗材费 --zhangyc 2018.04.02 by ZYSF-20180329-001 select substrb(SF_ZY_DBZQTXX(LS_ZYID00,ad_JZDH00,LS_DBZBM0,ad_ID0000,0),1,50) into LS_GZHCID from dual;--高值耗材打包ID select substrb(SF_ZY_DBZQTXX(LS_ZYID00,ad_JZDH00,LS_DBZBM0,ad_ID0000,1),1,50) into LS_HCDBBM from dual;--高值耗材打包编码 select substrb(SF_ZY_DBZQTXX(LS_ZYID00,ad_JZDH00,LS_DBZBM0,ad_ID0000,3),1,50) into LS_CBWHBM from dual;--超标床位编码 --2020.05.13 根据HCFLBH:1:除外耗材费用 2:特需医疗服务费用 分开插入 if LS_GZHCID>0 then begin select nvl(HCFLBH,'1') into LS_HCFLBH from BM_GZHCFL where GZHCID=LS_GZHCID; exception when others then LS_HCFLBH:='1'; end; end if; if LS_HCFLBH='2' then --耗材分类编码:1:除外耗材费用 2:特需医疗服务费用 LS_TXYLFY:=nvl(LS_BZLSHC,0); --特需医疗服务费用 LS_BZLSHC:=0; --除外耗材费 else LS_TXYLFY:=0; --特需医疗服务费用 LS_BZLSHC:=nvl(LS_BZLSHC,0); --除外耗材费 end if; LS_YBYL33:=nvl(LS_BZCBCW,0);--单病种超标床位费用(医保未返回) LS_YBYL34:=nvl(LS_BZLSHC,0);--单病种除外耗材费用(医保未返回) LS_YBYL69:=nvl(LS_TXYLFY,0);--特需医疗服务费用 --单病种耗材ID|耗材编码|超标床位编码|耗材分类编码 LS_YBSM12:=substrb(LS_GZHCID||'|'||LS_HCDBBM||'|'||LS_CBWHBM||'|'||LS_HCFLBH,1,50); end if; LS_YBYL19:=nvl(ls_HSHJJE,0); --伙食费 if nvl(ad_mxzje0,0)>0 then --单病种明细总额 LS_bcbxf1:=nvl(ad_mxzje0,0); end if; --增加条件(LS_DBZBM0 is not null) 否则非单病种病人返回费用总额和院内总额不一致会算出单病种金额 by if (LS_RETURN=1) and (LS_DBZBM0 is not null or LS_ZY_DBZBM0 is not null) then --增加参数判断 0:不启用 1:启用 by ZYSF-20160527-003 --2016.03.22 医保返回的总金额<>院内总金额 if (nvl(ad_bcbxf0,0)<>nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0)) and ((nvl(ad_YBYL04,0)=0) or (LS_DBZBM0 is not null))and (nvl(ad_HJJE00,0)>0) then LS_bcbxf1:=nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0); LS_YBYL04:=nvl(ad_bcbxf0,0); --单病种定额 ld_YBYL05:=nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0)-nvl(ad_bcbxf0,0);--医院支付 end if; end if; --CDRG医保返回费用总额于院内不一样判断 if LS_CDRGJK='Y' and nvl(LS_YBSM10,'00') not in ('00') and nvl(ad_bcbxf0,0)<>nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0) then LS_bcbxf1:=nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0); LS_YBYL04:=nvl(ad_bcbxf0,0); --单病种定额 ld_YBYL05:=nvl(ad_HJJE00,0)-nvl(ls_HSHJJE,0)-nvl(ad_bcbxf0,0);--医院支付 end if; -----ZYSF-20101201-001---begin----- ---医保返回的总金额<>院内产生的总费用不允许结算 if (LS_bcbxf1<>0) and ((trim(LS_SFYXCYJS)='N') or ((LS_SFYXCYJS='M') and(trim(ls_RYLB00)<>'择日住院')) ) then select sum(decode(a.JMBZ00,'4',nvl(a.HJJE00,0)+nvl(a.JMJE00,0),'3',0,(nvl(a.HJJE00,0)-nvl(a.JMJE00,0)))), sum(decode(a.JMBZ00,'3',-1*a.HJJE00,'4',a.JMJE00,0)) into LS_TOTAL0,LS_JMJE00 from ZY_FYMX00 A,BM_FPXM00 B,BM_YYSFXM C,ZY_BRFY00 D where d.jzdh00 in (select k.jzdh00 from ZY_JZB000 k where k.BRID00=ls_brid00 start with k.jzdh00=ad_JZDH00 connect by prior k.cxjzdh=k.jzdh00) and a.XMBH00 = C.SFXMID and C.ZYFPID = B.FPXMID and D.DJH000=a.DJH000 and B.SFYLXM='Y' and a.JMBZ00<>'2' and (decode(nvl(d.yexm00,'0'),'0','母亲',d.yexm00)=ad_YEXM00 or ad_YEXM00='全部') ; if abs(nvl(LS_TOTAL0,0) -nvl(LS_BCBXF1,0))>0.01 then as_YHMSG0:='出错原因:(病人费用总金额:'||to_char(LS_TOTAL0)||'元'|| ' 不等于 医保返回总金额:'||to_char(LS_bcbxf1)||'元'||'),请联系管理员!'; as_SYSMSG:=substr(SQLERRM||'执行存储过程错误',1,150); rollback; end if; end if; --新接口--begin-- if LS_YBJKID is not null and LS_YBJKID not in ('0') then begin select akc190,bke298,bke042 into LS_akc190,LS_bke298,LS_bke042 from ZY_YBJKRZ where BRID00=LS_BRID00 and YBJKID=LS_YBJKID; exception when others then LS_akc190:='';--akc190 医保挂号或医保住院号 LS_bke298:='';--his收费单据流水号(bke298) LS_bke042:='';--his流水号(bke042) end; --akc190 医保挂号或医保住院号 if LS_akc190 is null or LS_akc190 in ('0') then LS_akc190:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'akc190','1'),1,30); end if; --his收费单据流水号(bke298) if LS_bke298 is null or LS_bke298 in ('0') then LS_bke298:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'bke298','1'),1,30); end if; --his流水号(bke042) if LS_bke042 is null or LS_bke042 in ('0') then LS_bke042:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'bke042','1'),1,30); end if; LS_YBSM20:=substrb(LS_akc190,1,50);--akc190 医保挂号或医保住院号 LS_YBSM24:=substrb(LS_bke298,1,50);--his收费单据流水号(bke298) LS_YBSM25:=substrb(LS_bke042,1,50);--his流水号(bke042) ld_TCJJZF:=nvl(LS_bkc102,0);--基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 ld_GRZHZF:=nvl(LS_bkc041,0); --医保账户支付bkc041(个人账户支付总额)=bkc077(帐户支付)+bkc076(本人健康帐户支付)+bkc075(家庭共济帐户支付) ld_ZFJE00:=nvl(LS_bkc040,0); --个人支付(现金支付) ld_SBTJJE:=0;--商保统筹基金支付 ld_SBZHJE:=0;--商保个人帐户支付 ld_JJZFE0:=0;--保健基金支付 ld_SYBXZF:=0;--商业保险支付金额 ld_SBZFE0:=0;--商业账户支付 ld_BJZFE0:=0;--保健账户支付 ld_GWYBZ0:=0;--公务员补助 ld_MZBZJE:=0;--民政医疗救助 ld_YYJMJE:=0;--医院减免金额 ld_YBYL00:=0;--医保预留金额 LS_bke361:=SF_ZY_GETYBJKMX(LS_YBJKID,'bke361','1');--bke361(收普门时返回普门累计,收特殊门诊返回本次特门病种累计) if trim(ad_DBZBM0) is not null or trim(LS_DBZBM0) is not null or trim(LS_TSBZBH) is not null or trim(LS_TSBZBH) is not null then LS_pmlj00:=0;--YBYL37 pmlj00 普通门诊累计 LS_tmlj00:=nvl(LS_bke361,0);--YBYL38 tmlj00 特殊门诊累计 else LS_pmlj00:=nvl(LS_bke361,0);--YBYL37 pmlj00 普通门诊累计 LS_tmlj00:=0;--YBYL38 tmlj00 特殊门诊累计 end if; LS_bkc620:=SF_ZY_GETYBJKMX(LS_YBJKID,'bkc620','1');--bkc620(本地)成员共济账户支付 LS_bkc619:=SF_ZY_GETYBJKMX(LS_YBJKID,'bkc619','1');--bkc619(异地)成员共济账户支付 LS_BKC001_MC:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'bkc001_mc','1'),1,50);--bkc001_mc:人员待遇类别名称(城乡居民、普通在职人员等等) LS_AAE140:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'aae140','1'),1,10); --aae140:险种类型编码:310 城镇职工基本医疗保险 320:公务员医疗补助 380:新型农村合作医疗 390:城乡居民基本医疗保险 410:工伤保险 510:生育保险 520:机关生育 LS_AAE140_MC:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'aae140_mc','1'),1,50);--aae140_mc:险种类型名称:城乡居民基本医疗保险、城镇职工基本医疗保险等等 LS_BKE174:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'bke174','1'),1,10); --bke174:异地就医类型编码:1 省内 2 省外 3 市内 4 市外 LS_BKE174_MC:=substrb(SF_ZY_GETYBJKMX(LS_YBJKID,'bke174_mc','1'),1,50);--bke174_mc:异地就医类型名称:(省内、省外、市内、市外) LS_YLZFJE:=SF_ZY_GETYBJKMX_NUM(LS_YBJKID,'bkc134','1'); --乙类自付金额[bkc134] LS_CFDXJE:=SF_ZY_GETYBJKMX_NUM(LS_YBJKID,'bke856','1'); --超封顶线金额[bke856] if LS_TCJJQZFS in ('D') then --统筹基金、公务员补助、商业保险支付、医疗救助基金 各个项目独立生成 (ake173 其他基金支付+ake026企业补充 合并到统筹基金中) ld_TCJJZF:=nvl(LS_bkc045,0); --YBYL56 统筹基金(bkc045,jjzfe0) --2020.10.12 某个跨省病人医保返回ake173 改值是独立核算的,顾直接累加到统筹中 by ZYSF-20201009-001 --(ake173:其中:其他基金支付 +ake026:其中:企业补充+bkc062:其中:精准扶贫医疗叠加 没有独立支付方式直接累加到统筹中) ld_TCJJZF:=nvl(ld_TCJJZF,0) +SF_SF_YBFHJE(LS_BRID00,'','YBYL61',nvl(LS_ake173,0)) --YBYL61=ake173其中:其他基金支付 +SF_SF_YBFHJE(LS_BRID00,'','YBYL62',nvl(LS_ake026,0)) --YBYL62=ake026其中:企业补充 +SF_SF_YBFHJE(LS_BRID00,'','YBYL59',nvl(LS_bkc062,0)) --YBYL59=bkc062其中:精准扶贫医疗叠加 ; ld_GWYBZ0:=SF_SF_YBFHJE(LS_BRID00,'','YBYL57',nvl(LS_bkc059,0)); --YBYL57 公务员补助(bkc059,gwybz0) if LS_SFXMYBJK='Y' then --厦门医保bkc052=sybxzf ld_SYBXZF:=SF_SF_YBFHJE(LS_BRID00,'','YBYL58',nvl(LS_bkc052,0)); --YBYL58 商业保险支付bkc052,sybxzf(大病保险基金支付) else ld_SBTJJE:=SF_SF_YBFHJE(LS_BRID00,'','YBYL58',nvl(LS_bkc052,0));--YBYL58 其中:商保基金支付(大额补充)bkc052 end if; ld_MZBZJE:=SF_SF_YBFHJE(LS_BRID00,'','YBYL60',nvl(LS_bkc060,0)); --YBYL60 医疗救助基金(bkc060、mzbzje) end if; --新接口--end-- else --旧接口--begin-- ---MODIFY BY modify by ZYSF-20111128-001 --YBYL04 单病种限额 YBYL05医院支付--- --为避免IC_YBBRLB.ybbhsb 中数据出现4,5 故不加YBYL04,YBYL05 select decode(sign(Instrb(','||trim(b.ybbhsb)||',',',1,')),1,ad_YBYL01,0) +decode(sign(Instrb(','||trim(b.ybbhsb)||',',',2,')),1,ad_YBYL02,0) +decode(sign(Instrb(','||trim(b.ybbhsb)||',',',3,')),1,ad_YBYL03,0) +decode(sign(Instrb(','||trim(b.ybbhsb)||',',',11,')),1,ad_YBYL11,0) --健康账户支付 +decode(sign(Instrb(','||trim(b.ybbhsb)||',',',13,')),1,ad_YBYL13,0) --共济账户支付 +decode(sign(Instrb(','||trim(ybbhsb)||',',',24,')),1,0,nvl(ad_YBYL24,0)) --by ZYSF-20140403-002 +decode(sign(Instrb(','||trim(ybbhsb)||',',',26,')),1,nvl(ad_YBYL26,0),0), decode(sign(Instrb(','||trim(b.ybbhsb)||',',',14,')),1,0,ad_SBTJJE), decode(sign(Instrb(','||trim(b.ybbhsb)||',',',14,')),1,0,ad_SBZHJE), decode(sign(Instrb(','||trim(b.ybbhsb)||',',',15,')),1,0,ad_GWYBZ0),--泉州地区公务员补助为独立字段 decode(sign(Instrb(','||trim(ybbhsb)||',',',17,')),1,0,nvl(ad_YBYL17,0)), decode(sign(Instrb(','||trim(ybbhsb)||',',',18,')),1,0,nvl(ad_YBYL18,0)), Trim(b.YBMC00),SFXNH0, --decode(b.YBLB00,'Z',ad_sbzfe0,0), decode(sign(Instrb(','||trim(b.ybbhsb)||',',',14,')),1,0,nvl(ad_sbzfe0,0)), decode(b.YBLB00,'Z',ad_bjzfe0,0), b.YBLB00 into ld_YBYL00, ld_SBTJJE, ld_SBZHJE, ld_GWYBZ0, ld_YYJMJE, ld_Mzbzje, ls_YBMC00, ls_SFXNH0, ld_SBZFE0, ld_bjzfe0, ls_YBLB00 from ZY_BRXXB0 C,IC_YBBRLB B,BM_BRXXB0 A where C.ZYID00=LS_ZYID00 and C.FBBH00=B.FBBH00 and C.YBLB00=B.YBLB00 and C.BRID00=A.BRID00; --from BM_BRXXB0 A,IC_YBBRLB B --WHERE BRID00=LS_BRID00 AND A.YBLB00=B.YBLB00 and A.FBBH00=B.FBBH00; ld_TCJJZF:=ld_TCJJZF+ld_YBYL00; --择日住院门诊总费用 从新算统筹支付 if nvl(ad_YBYL28,0)<>0 then LS_MZZRTC:=ld_TCJJZF-LS_bcbxf0; --如果统筹支付-本次总费用>0 实际统筹按总费用报销 if LS_MZZRTC>0 then ld_TCJJZF:=LS_bcbxf0; --暂时这样处理 --ld_TCJJZF:=ld_TCJJZF; LS_MZZRTC:=LS_MZZRTC; else LS_MZZRTC:=0; end if; end if; --旧接口--END-- end if; --自付金额=自付金额+伙食费+减免金额 LD_ZFJE00:=nvl(LD_ZFJE00,0)+nvl(LS_HSHJJE,0)-nvl(LS_JMJE00,0); --个人自付(总额) LS_GRZFZE:=nvl(LD_ZFJE00,0); --医保补偿(总额)=统筹基金+账户支付+商保统筹基金+商保账户支付+保健基金+保健账户支付+商业保险+公务员补助+医院减免+民政补助 LS_YBBCZE:=nvl(ld_TCJJZF,0)+nvl(ld_GRZHZF,0)+nvl(ld_SBTJJE,0)+nvl(ld_SBZHJE,0)+nvl(LD_jjzfe0,0)+nvl(ld_bjzfe0,0)+nvl(LD_SYBXZF,0)+nvl(ld_GWYBZ0,0)+nvl(ld_YYJMJE,0)+nvl(ld_Mzbzje,0); --2021.01.25 新医保接口判断药品存在差额--begin-- if LS_YBJKID is not null and LS_YBJKID not in ('0') and LS_DBZBM0 is null then LS_FYJSCE:=nvl(LS_HJJE00,0)-(nvl(LS_YBBCZE,0)+nvl(LD_ZFJE00,0)); --费用结算差额=院内金额-(基金支付总额+个人现金支付) ld_ZFJE00:=nvl(ld_ZFJE00,0)+nvl(LS_FYJSCE,0);--自付金额+差额 if nvl(ld_ZFJE00,0)<0 then ld_ZFJE00:=0; end if; LS_GRZFZE:=nvl(LD_ZFJE00,0); if abs(LS_FYJSCE)>0.02 then as_YHMSG0:= '结算失败,原因:院内实付现金同医保返回不一致,院内实付现金:'||trim(to_char(ld_ZFJE00,'999999990.99')); as_YHMSG0:=as_YHMSG0||' 医保实付现金:'||trim(to_char(nvl(LS_bkc040,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 费用总额:'||trim(to_char(nvl(LS_akc227,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 统筹总额:'||trim(to_char(nvl(LS_bkc102,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 其中:统筹基金:'||trim(to_char(nvl(LS_bkc045,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 账户支付:'||trim(to_char(nvl(LS_bkc041,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 现金支付:'||trim(to_char(nvl(LS_bkc040,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 商保支付:'||trim(to_char(nvl(LS_bkc052,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 公务员补助:'||trim(to_char(nvl(LS_bkc059,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 医疗救助:'||trim(to_char(nvl(LS_bkc060,0),'999999990.99')); as_YHMSG0:=as_YHMSG0||' 补助总额:'||trim(to_char(nvl(LS_bkc612,0),'999999990.99')); as_SYSMSG:=''; rollback; return; end if; end if; --2021.01.25 新医保接口判断药品存在差额--end-- if ((ls_SFXNH0=1) and (ls_DBZJK0='Y')) and (nvl(ad_YBYL04,0)=0) then--由于农合启用了单病种接口却不传单病种限额as_YBYL04,只能倒算出单病种差额 if nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)<>nvl(LS_bcbxf0,0) then ld_YBYL05:=nvl(LS_bcbxf0,0)-nvl(LS_GRZFZE,0)-nvl(LS_YBBCZE,0); end if; end if; --(新模式单病种结算)by ZYSF-20131218-003 有单病种结算时 个人支付和医院支付有前台传入 if (LS_DBZJK0='M') and (nvl(ad_YBYL04,0)>0) and (LS_DBZBM0 is not null) then LD_YBYL05:=nvl(ad_YBYL05,0); LD_ZFJE00:=NVL(LD_ZFJE00,0); --by ZYSF-20150204-002 床日数单病种没有维护定额 if (LS_YBHDJE=0) then LS_YBYL04:=nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0); ld_YBYL05:=nvl(LS_bcbxf0,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; if nvl(LS_HJJE00,0)<>nvl(LS_bcbxf0,0) then LS_YBYL04:=nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0); LD_YBYL05:=nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; else --by ZYSF-20160330-001 if (LS_DBZBM0 is not null) and (nvl(LS_bcbxf0,0)<>nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)) and (nvl(LS_BCBXF0,0)>0) then LS_YBYL04:=nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0); LD_YBYL05:=nvl(LS_bcbxf0,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; end if; --2018.03.16 重大疾病院内没有登记单病种医保接口会返回dbzbm0=C20_1 by ZYSF-20180308-003 --是否按单病种接口支付 LS_SFDBZFZ=N:否 and 医保有返回单病种编码时 and nvl(ld_TCJJZF,0)+nvl(ld_GRZHZF,0)<>nvl(LS_HJJE00,0) 否则发票的应退金额和缴费表不一致 if LS_CDRGJK='N'and LS_SFDBZFZ='N' and ad_DBZBM0 is not null and nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)<>nvl(LS_HJJE00,0) then LS_YBYL04:=nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0); LD_YBYL05:=nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; --2018.03.30 新生育接口修改当:akc227=4404.11<>bkc045=2400+bkc040=2804.11 if LS_YBJKLX in ('4') and nvl(LS_HJJE00,0)<>nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0) then --接口类型 -1:自费结算 0普通医保 1生育医保 2:工伤 3保健医保 4:生育新接口 5:医保新接口 LD_ZFJE00:=nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); if LD_ZFJE00<0 then LD_ZFJE00:=0; LD_YBYL05:=nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; end if; --2020.05.28 单病种病人数据从新校验 by ZYSF-20200527-001 if (LS_DBZBM0 is not null or LS_ZY_DBZBM0 is not null) and nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)+nvl(LD_YBYL05,0))<>0 then LD_YBYL05:=nvl(LS_HJJE00,0)-(nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)); end if; if LS_ZZZJE0>=nvl(LD_ZFJE00,0) and nvl(LD_ZFJE00,0)>=0 THEN LS_ZZYE00:=LS_ZZZJE0-(NVL(LD_ZFJE00,0)); LS_XJYE00:=LS_YSZJE0; else LS_XJYE00:=(LS_ZZZJE0+LS_YSZJE0)-(nvl(LD_ZFJE00,0)); LS_ZZYE00:=0; end if; LS_XJYE00:=LS_XJYE00+nvl(ad_YBYL22,0); --select PJH000 into ls_PJH000 from ZY_JZB000 where JZDH00 = ad_JZDH00; if ad_YEXM00='全部' then Update ZY_BRFY00 set YBDJH0 = as_YBDJH0 where jzdh00 in ( select b.jzdh00 from ZY_JZB000 B where b.brid00=ls_brid00 start with B.jzdh00=ad_JZDH00 connect by prior B.cxjzdh=B.jzdh00); else if ad_YEXM00='母亲' then Update ZY_BRFY00 set YBDJH0 = as_YBDJH0 where jzdh00 in ( select b.jzdh00 from ZY_JZB000 B where b.brid00=ls_brid00 start with B.jzdh00=ad_JZDH00 connect by prior B.cxjzdh=B.jzdh00) and yexm00 is null; else Update ZY_BRFY00 set YBDJH0 = as_YBDJH0 where jzdh00 in ( select b.jzdh00 from ZY_JZB000 B where b.brid00=ls_brid00 start with B.jzdh00=ad_JZDH00 connect by prior B.cxjzdh=B.jzdh00) and yexm00=ad_YEXM00; end if; end if; Update ZY_BRFY00 set YBDJH0 = nvl(as_YBDJH0,'0'), SYDJH0 = nvl(ad_SYLSH0,'0'), BJDJH0 = nvl(ad_BJLSH0,'0') where JZDH00 = ad_JZDH00 and ZYID00=LS_ZYID00; if (ad_DJH000 > 0) and (ls_ZY_SFQYCXJSXLC = 'Y') then --考虑中途结算也调用本存储过程,中途结算不针对现金病人 update ZY_BRJFB0 set JFJE00 = nvl(JFJE00,0) - nvl(ld_TCJJZF,0) where DJH000 = ad_DJH000; else update ZY_BRJFB0 set JFJE00 = nvl(LD_ZFJE00,0) where DJH000 = ad_DJH000; end if; --修改缴费表-->统筹基金支付 Update ZY_BRJFB0 set JFJE00 = ld_TCJJZF where DJH000 = ad_TJDJH0 and BRID00=LS_BRID00; --修改缴费表-->医保账户支付 Update ZY_BRJFB0 set JFJE00 = ld_GRZHZF where DJH000 = ad_GZDJH0 and BRID00=LS_BRID00; --修改缴费表-->商保统筹基金支付 Update ZY_BRJFB0 set JFJE00 = ld_SBTJJE where DJH000 = ad_SBTJDH and BRID00=LS_BRID00; --修改缴费表-->商保个人帐户支付 Update ZY_BRJFB0 set JFJE00 = ld_SBZHJE where DJH000 = ad_SBZHDH and BRID00=LS_BRID00; --修改缴费表-->保健基金支付 Update ZY_BRJFB0 set JFJE00 = LD_jjzfe0 where DJH000 = ad_JJDJH0 and BRID00=LS_BRID00; --修改缴费表-->商业保险支付金额 Update ZY_BRJFB0 set JFJE00 = LD_SYBXZF where DJH000 = ad_SYDJH0 and BRID00=LS_BRID00; --修改缴费表-->商业账户支付 Update ZY_BRJFB0 set JFJE00 = ld_SBZFE0 where DJH000 = ad_SBDJH0 and BRID00=LS_BRID00; --修改缴费表-->保健账户支付 Update ZY_BRJFB0 set JFJE00 = ld_BJZFE0 where DJH000 = ad_BJDJH0 and BRID00=LS_BRID00; --修改缴费表-->公务员补助 Update ZY_BRJFB0 set JFJE00 = ld_GWYBZ0 where DJH000 = ad_GWYDJH and BRID00=LS_BRID00; --修改缴费表-->医院支付 if nvl(ld_YBYL05,0)<>0 then Update ZY_BRJFB0 set JFJE00 = ld_YBYL05 where DJH000 = ad_YYYDJH and BRID00=LS_BRID00; end if; --修改缴费表-->民政医疗救助--begin-- if nvl(LD_MZBZJE,0)<>0 then begin select ZWXM00,BMBH00 into LS_JZYXM0,ls_BMBH00 from BM_YGBM00 where YGBH00=LS_JZY000; exception when others then LS_JZYXM0:='超级用户'; LS_JZY000:=0; ls_BMBH00:=0; end; --在过程SP_ZY_BRFY00_JS0000 中ZY_BRJFB0.ZPZH00=病人所属医保中心的编号=bm_brxxb0.yblb00 begin select PJH000,JZRQ00,JZSJ00 into ls_PJH000,LS_JZRQ00,LS_JZSJ00 from ZY_JZB000 where JZDH00 = ad_JZDH00 and ZYID00=LS_ZYID00; exception when others then LS_PJH000:=null; LS_JZRQ00:=to_char(sysdate,'YYYYMMDD'); LS_JZSJ00:=to_char(sysdate,'HH24:MI:SS'); end; Insert into ZY_BRJFB0(DJH000,BRID00,JFLBID,JFJE00,ZFFS00,ZFFSMC,ZPZH00,PJH000, JFRQ00,JFSJ00,JFCZY0,CZYXM0,BRYE00,JFBZ00,JKBID0,JZDH00,ZYID00,CZYKS0) select SQ_ZY_BRJFB0_DJH000.nextval,ls_BRID00,LS_JFLBID,ld_Mzbzje,22,'民政医疗救助',ls_YBLB00,ls_PJH000, nvl(LS_JZRQ00,to_char(sysdate,'YYYYMMDD')),nvl(LS_JZSJ00,to_char(sysdate,'HH24:MI:SS')),LS_JZY000,LS_JZYXM0,0,'0',0,ad_JZDH00, ls_zyid00,ls_BMBH00 from dual; end if; --修改缴费表-->民政医疗救助--end-- LS_DLTCJJ:=nvl(ld_TCJJZF,0);--实际医保统筹基金 LS_DLZHZF:=nvl(ld_GRZHZF,0);--实际医保账户支付 LS_YBQTZE:=0;--医保其它总额 LS_DLSYBX:=nvl(LD_SYBXZF,0);--商业保险支付(独立于统筹基金金额) LS_DLJZFP:=0;--精准扶贫医疗(独立于统筹基金金额) LS_DLQTJJ:=nvl(LD_jjzfe0,0);--其他基金支付(独立于统筹基金金额) LS_DLQYBC:=0;--企业补充(独立于统筹基金金额) LS_DLMZBZ:=nvl(LD_MZBZJE,0);--民政补助金额(独立于统筹基金金额) LS_DLSBJE:=nvl(ld_SBTJJE,0);--商保支付金额(独立于统筹基金金额) LS_GWBZJE:=nvl(ld_GWYBZ0,0);--公务员补助金额(独立于统筹基金金额) LS_DLDBJJ:=0;--大病基金支付金额(独立于统筹基金金额) LS_CJBTCE:=0;--产检检查费(bkc064)超出个人自付金额后需补退的差额 --医保报销总额(DLTCJJ+DLZHZF+YBQTZE+DLSYBX+DLJZFP+DLQTJJ+DLQYBC+MZBZJE+DLSBJE+GWBZJE+DLDBJJ) LS_YBBXZE:=nvl(LS_DLTCJJ,0)+nvl(LS_DLZHZF,0)+nvl(LS_YBQTZE,0)+nvl(LS_DLSYBX,0)+nvl(LS_DLJZFP,0)+nvl(LS_DLQTJJ,0)+nvl(LS_DLQYBC,0)+nvl(LS_DLMZBZ,0)+nvl(LS_DLSBJE,0)+nvl(LS_GWBZJE,0)+nvl(LS_DLDBJJ,0); -----ZYSF-20101201-001---end----- if (LD_ZFJE00 < 0)and (trim(LS_SFYXCYJS)='N') then as_YHMSG0:='出错原因:结帐表的自付金额为负数('||to_char(LD_ZFJE00)||'),请联系管理员!'; as_SYSMSG:=substr(SQLERRM||'执行存储过程错误',1,150); rollback; end if; --2016.07.19 zhangyc 大病补偿修改 ZYSF-20160811-001 if nvl(ad_YBYL26,0)>0 then LS_DBBCCE:=nvl(ad_bcbxf0,0)-(nvl(LD_ZFJE00,0)+nvl(ld_TCJJZF,0)+nvl(ld_GRZHZF,0)+nvl(ld_YBYL05,0)); if (LS_DBBCCE<0) and (SF_ZY_XTCS00_SFQYJK(LS_BRID00,'ZY_YBDBZJSJK','N')=0) then --如果大病补偿的总费用<统筹+医保账户 LS_XJYE00:=nvl(LS_XJYE00,0)-nvl(LS_DBBCCE,0); LS_YBYL32:=LS_DBBCCE; LS_YBSM01:='大病补偿结算'; end if; end if; --2016.09.23 zhangyc by ZYSF-20160907-003 --[zysf]replay zhzfe0=0 grzfe0=-1120.11 jjzfe0=5423.86 bcbxf0=4303.75 --当医保返回的个人小于0时,说明统筹超过总费用,把超过的费用返还给病人 if nvl(ad_YBYL31,0)<0 then LS_DBBCCE:=nvl(ad_bcbxf0,0)-(nvl(LD_ZFJE00,0)+nvl(ld_TCJJZF,0)+nvl(ld_GRZHZF,0)+nvl(ld_YBYL05,0)); if (LS_DBBCCE<0) and (SF_ZY_XTCS00_SFQYJK(LS_BRID00,'ZY_YBDBZJSJK','N')=0) then LS_XJYE00:=nvl(LS_XJYE00,0)-nvl(LS_DBBCCE,0); LS_YBYL32:=LS_DBBCCE; LS_YBSM01:='大病补偿结算'; end if; end if; --2017.03.18 zhangyc by ZYSF-20170206-001 if (LS_DBZBM0 is not null) and (nvl(LS_YBHDJE,0)>0) then LS_YBYL04:=nvl(LS_YBHDJE,0); end if; --2021.05.26 床日数病种定额报销业务处理(精神病院)--begin-- if LS_DBZBM0 is not null then begin select substrb(MC0000,1,1) into LS_CRSDBZ_ALL from BM_TYZD00 where ZDMC00='发送普通病床天数科室编号' and BH0000='ALL' and YXBZ00='1'; exception when others then LS_CRSDBZ_ALL:='0'; end; if LS_CRSDBZ_ALL='1' then --床日数病种全院开启标识 1:开启 0:不开启 LS_CRSDBZ_OPEN:='1'; --床日数病种开启 1:开启 0:不开启 else select count(1) into LS_TempNum from BM_TYZD00 where ZDMC00='发送普通病床天数科室编号' and BH0000=to_char(LS_DQKS00) and YXBZ00='1'; if nvl(LS_TempNum,0)>0 then LS_CRSDBZ_OPEN:='1'; --床日数病种开启 1:开启 0:不开启 end if; end if; if LS_CRSDBZ_OPEN='1' then --医保定额=个人自付金额+医保补偿总额-LS_BZCBCW:超标床位费-LS_BZLSHC:除外耗材费 LS_YBYL04:=nvl(LS_GRZFZE,0)+nvl(LS_YBBCZE,0)-nvl(LS_BZCBCW,0)-nvl(LS_BZLSHC,0); if nvl(LS_YBYL04,0)<0 then LS_YBYL04:=0; end if; end if; end if; --2021.05.26 床日数病种定额报销业务处理(精神病院)--end-- if LS_CXJZDH>0 then --XJYE00 扣除掉退银行卡,退微信,退支付 LS_XJYE00:=nvl(LS_XJYE00,0)-nvl(LS_YHTKJE,0)-nvl(LS_WXTK00,0)-nvl(LS_ZFBTK0,0); end if; --获取结算后账户总余额 (参数:0:门诊 1:住院 参数2:BRID00 参数3:1:门诊 2:住院 参数4:0:可用余额 1:总余额 2:现金余额 3:停用金额) begin select SF_SF_GETBRZHYE(1,LS_BRID00,2,1) into LS_JSHYE0 from dual; exception when others then LS_JSHYE0:=0; end; update ZY_JZB000 set YBDJH0 = nvl(as_YBDJH0,'0'), --医保单据号 SYDJH0 = nvl(ad_SYLSH0,'0'), --生育单据号 BJDJH0 = nvl(ad_BJLSH0,'0'), --保健单据号 YBRYRQ = LS_YBRYRQ, --医保入院日期 YBZYH0 = nvl(LS_YBZYH0,'0'), --医保住院号 GRZHZF = nvl(ld_GRZHZF,0), --个人账户支付 TCJJZF = nvl(ld_TCJJZF,0), --ad_TCJJZF,--统筹基金支付 ZFJE00 = nvl(LD_ZFJE00,0), --个人现金支付 YBXJZF = nvl(ad_YBXJZF,0), --医保现金支付 YBJZRQ = as_YBJZRQ, --医保结算日期 YBJZSJ = as_YBJZSJ, --医保结算时间 XJFKJE = nvl(LD_ZFJE00,0), --现金付款金额 SBGRZH = nvl(ad_SBZHJE,0), --商保个人帐户金额 SBTCJJ = nvl(ad_SBTJJE,0), --商保统筹基金 XJYE00 = nvl(LS_XJYE00,0), --现金余额 ZZYE00 = nvl(LS_ZZYE00,0), --转账余额 YPWQZF = nvl(LS_ypwqzf,0), --医保药品完全自费合计 XMWQZF = nvl(LS_xmwqzf,0), --医保项目完全自费合计 YPBFZF = nvl(LS_ypbfzf,0), --医保药品部分自付合计 XMBFZF = nvl(LS_xmbfzf,0), --医保项目部分自付合计 YBQFJE = nvl(LS_ybqfje,0), --医保起伏线 GWYBZ0 = nvl(ad_GWYBZ0,0),--公务员补助 ybzhye = nvl(LS_ybzhye,0),--医保账户余额 jjzfe0 = nvl(ad_jjzfe0,0),--保健基金 SYBXZF = nvl(ad_SYBXZF,0),--商业保险支付 SBZFE0 = nvl(ad_SBZFE0,0),--商业支付 BJZFE0 = nvl(ad_BJZFE0,0),--保健支付额 YLZFJE = nvl(LS_YLZFJE,0),--乙类自付金额 CFDXJE = nvl(LS_CFDXJE,0),--超封顶线金额 FYBJE0 = nvl(ad_FYBFY0,0),--非医保金额 YBYL01 = nvl(ad_YBYL01,0), --民政救助 YBYL02 = nvl(ad_YBYL02,0), --计生救助 YBYL03 = nvl(ad_YBYL03,0), --残联救助 YBYL04 = nvl(LS_YBYL04,0), --单病种限额 YBYL05 = nvl(ld_YBYL05,0), --医院支付(医保无返回) YBYL06 = nvl(ad_YBYL06,0), --低保基金支付 YBYL07 = nvl(ad_YBYL07,0), --一般诊疗费补偿金额 YBYL08 = nvl(ad_YBYL08,0), --一般诊疗费费个人支付金额 YBYL09 = nvl(ad_YBYL09,0), -- YBYL10 = nvl(ad_YBYL10,0), -- YBYL11 = nvl(ad_YBYL11,0), --健康账户支付额 YBYL12 = nvl(ad_YBYL12,0), --健康账户余额 YBYL13 = nvl(ad_YBYL13,0), --共济账户支付 CFXMS0 = nvl(ad_CFXMS0,0), -- BCBXF0 = nvl(LS_bcbxf1,0), -- YBYL14 = nvl(ad_YBYL14,0), --共济账户余额 YBYL15 = nvl(ad_YBYL15,0), --健康账户支付医保费用 YBYL16 = nvl(ad_YBYL16,0), --健康账户支付非医保费用 YBYL17 = nvl(ad_YBYL17,0), --医保减免金额 YBYL18 = nvl(ad_YBYL18,0), --民政(医疗救助基金)补助金额 YBYL19 = nvl(LS_YBYL19,0),--CYBSXJE:超医保上限金额(非医保返回) YBYL20 = nvl(ad_YBYL20,0),--zhzfd0:个人账户支付自付 YBYL21 = nvl(ad_YBYL21,0),--xjzfd0:个人现金支付自付 YBYL22 = nvl(ad_YBYL22,0),--XFBXJE:血费报销金额(血费系统) YBYL23 = nvl(ad_YBYL23,0),--YBJSWC:医保结算金额误差(院内总额-医保总额) YBYL24 = nvl(ad_YBYL24,0),--sbzfje:大额医疗费用报销金额 YBYL25 =nvl(LS_YBYL25,0),--DBZCE0:单病种补偿金额(总费用-定额) YBYL26 = nvl(ad_YBYL26,0),--dbbcbcje:大病补充补偿金额 YBYL27 = nvl(ad_YBYL27,0),--BJYBTCJJ:保健医保统筹支付(已包含在统筹中) YBYL28 = nvl(ad_YBYL28,0),--mzzfy0 择日住院门诊总费用 YBYL29 = nvl(ad_YBYL29,0),--mzfwn0 择日住院门诊范围内费用 YBYL30 = nvl(LS_MZZRTC,0),--zrzrmztc 择日住院门诊统筹(医保未返回) XZQH00 = substrb(LS_YBSM01,1,10), YBSM01 = LS_YBSM01, YBSM02 = LS_YBSM02, YBSM03 = LS_YBSM03, YBSM04 = LS_YBSM04, YBSM05 = LS_YBSM05, YBSM06 = LS_YBSM06, --YBSM07 = ad_YBSM07,暂时不更新改字段,该字段记录重新扣退银行的日志 YBSM08 = LS_YBSM08, YBSM09 = LS_YBSM09,--病情编码或CDRG组别 YBSM10 = LS_YBSM10,--CDRG病例类型(jsbllx) YBSM11 = LS_YBSM11,--CDRG结算ID(monitorID) YBSM12 = LS_YBSM12,--医保说明12(字符) YBSM13 = LS_YBSM13,--医保说明13(字符) YBSM14 = LS_YBSM14,--医保说明14(字符) YBSM15 = LS_YBSM15,--医保说明15(字符) YBSM16 = LS_YBSM16,--医保说明16(字符) DBZBM0 = nvl(ad_DBZBM0,LS_ZY_DBZBM0),--单病种编码 DBZMC0 = LS_DBZMC0,--单病种名称 BZBMLB = LS_BZBMLB,--病种编码类别 0:单病种编码 1:精准扶贫编码 2:出院诊断 BCKBCS = ad_BCKBCS, mxzje0 = nvl(ad_mxzje0,0), YBYL31 = nvl(ad_YBYL31,0),--grzfe0 个人支付金额(医保返回) YBYL32 = nvl(LS_YBYL32,0),--DBGRZFCE 大病补偿个人支付差额(医保返回) YBYL33 = nvl(LS_YBYL33,0),--DBZCBCWFY 单病种超标床位费用(医保未返回) YBYL34 = nvl(LS_YBYL34,0),--DBZCWHCFY 单病种除外耗材费用(医保未返回) YBYL35 = nvl(ad_YBYL35,0),--bcbxf0:医保结算返回本次费用总额 YBYL36 = nvl(ad_YBYL36,0),--ljfd00:累计封顶金额 YBYL37 = nvl(LS_pmlj00,0),--pmlj00:普通门诊累计 YBYL38 = nvl(LS_tmlj00,0),--tmlj00:特殊门诊累计 YBYL39 = nvl(ad_YBYL39,0),--CDRG个人支付金额 YBYL40 = nvl(ad_YBYL40,0),--dbbcbcje:城乡居民大病补助 YBYL41 = nvl(ad_YBYL41,0),--bkzfe0:离休B卡支付金额 YBYL42 = nvl(ad_YBYL42,0),--bkzhye:离休B账户余额 YBYL43 = nvl(ad_YBYL43,0),--jzfpje:精准扶贫补助总金额 YBYL44 = nvl(ad_YBYL44,0),--kbgzhcfy:可报高值耗材费用(医保未返回) YBYL45 = nvl(ad_YBYL45,0),--cwhcfw:除外耗材范围内费用 YBYL46 = nvl(ad_YBYL46,0),--cbcwf0:超标床位费 YBYL47 = nvl(ad_YBYL47,0),--jzfp01:精准扶贫第一道补助 YBYL48 = nvl(ad_YBYL48,0),--jzfp02:精准扶贫第二道补助 YBYL49 = nvl(ad_YBYL49,0),--jzfp03:精准医疗扶贫慈善救助 YBYL50 = nvl(ad_YBYL50,0),--csjz00:慈善救助政策的补助 YBYL51 = nvl(ad_YBYL51,0),--jjzfe0:统筹基金 YBYL52 = nvl(ad_YBYL52,0),--akc227:医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 YBYL53 = nvl(ad_YBYL53,0),--bkc102:基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 YBYL54 = nvl(ad_YBYL54,0),--bkc040:个人现金支付金额(实付现金) YBYL55 = nvl(ad_YBYL55,0),--bkc041:个人账户支付金额 YBYL56 = nvl(ad_YBYL56,0),--bkc045:其中:统筹基金支付 YBYL57 = nvl(ad_YBYL57,0),--bkc059:其中:公务员医疗补助(bkc059=bkc059_1+bkc059_2+bkc059_3) YBYL58 = nvl(ad_YBYL58,0),--bkc052:其中:商保基金支付(大额补充) YBYL59 = nvl(ad_YBYL59,0),--bkc062:其中:精准扶贫医疗叠加 YBYL60 = nvl(ad_YBYL60,0),--bkc060:其中:医疗救助基金 YBYL61 = nvl(ad_YBYL61,0),--ake173:其中:其他基金支付 YBYL62 = nvl(ad_YBYL62,0),--ake026:其中:企业补充 YBYL63 = nvl(ad_YBYL63,0),--bkc011:个人自费(非医保费用) YBYL64 = nvl(ad_YBYL64,0),--akc087:个人账户余额 YBYL65 = nvl(ad_YBYL65,0),--aka151:统筹支付医保费用起付标准 YBYL66 = nvl(ad_YBYL66,0),--aka150:本年度住院次数 YBYL67 = nvl(ad_YBYL67,0), YBYL68 = nvl(ad_YBYL68,0), YBYL69 = nvl(LS_YBYL69,0), --需医疗服务费用 YBSM17 = LS_YBSM17,--医保说明17(字符) YBSM18 = LS_YBSM18,--医保说明18(字符) YBSM19 = LS_YBSM19,--医保说明19(字符) YBSM20 = LS_YBSM20,--医保说明20(字符) YBSM21 = LS_YBSM21,--医保说明21(字符) YBSM22 = LS_YBSM22,--医保说明22(字符) YBSM23 = LS_YBSM23,--医保说明23(字符) YBSM24 = LS_YBSM24,--医保说明24(字符) YBSM25 = LS_YBSM25,--医保说明25(字符) YBSM26 = LS_YBSM26,--医保说明26(字符) YBSM27 = LS_YBSM27,--医保说明27(字符) YBSM28 = LS_YBSM28,--医保说明28(字符) YBSM29 = LS_YBSM29,--医保说明29(字符) YBJKID =LS_YBJKID, --医保接口id MXLSH0 =LS_MXLSH0, --明细ID JSQYE0=nvl(LS_JSQYE0,0),--结算前账户余额 JSHYE0=nvl(LS_JSHYE0,0),--结算后账户余额 BKC001_MC=nvl(LS_BKC001_MC,BM_BKC001_MC) ,--人员待遇类别名称(城乡居民、普通在职人员等等) AAE140=nvl(LS_AAE140,BM_AAE140) ,--险种类型编码:310 城镇职工基本医疗保险 320:公务员医疗补助 380:新型农村合作医疗 390:城乡居民基本医疗保险 410:工伤保险 510:生育保险 520:机关生育 AAE140_MC=nvl(LS_AAE140_MC,BM_AAE140_MC) ,--险种类型名称:城乡居民基本医疗保险、城镇职工基本医疗保险等等 BKE174=LS_BKE174 ,--异地就医类型编码:1 省内 2 省外 3 市内 4 市外 BKE174_MC=LS_BKE174_MC ,--异地就医类型名称:(省内、省外、市内、市外) BKC620=LS_bkc620 ,--bkc620(本地)成员共济账户支付 BKC619=LS_bkc619 ,--bkc619(异地)成员共济账户支付 FKJSLX=nvl(FKJSLX,LS_FKJSLX) ,--分开结算类型 空值正常结算 FYCF_ZF:拆分_自费 FYCF_YB:拆分_医保 FYCF_YE:拆分_婴儿 FYCF_MQ:拆分_母亲 ZFJS:自费结算 YBJS:医保结算 CXJS:重新结算 FYCF_SND:拆分_上年度 FYCF_BND:拆分_本年度 YBBXZE=LS_YBBXZE ,--医保报销总额(DLTCJJ+DLZHZF+YBQTZE+DLSYBX+DLJZFP+DLQTJJ+DLQYBC+MZBZJE+DLSBJE+GWBZJE+DLDBJJ) DLTCJJ=LS_DLTCJJ ,--实际医保统筹基金 DLZHZF=LS_DLZHZF ,--实际医保账户支付 YBQTZE=LS_YBQTZE ,--医保其它总额 DLSYBX=LS_DLSYBX ,--商业保险支付(独立于统筹基金金额) DLJZFP=LS_DLJZFP ,--精准扶贫医疗(独立于统筹基金金额) DLQTJJ=LS_DLQTJJ ,--其他基金支付(独立于统筹基金金额) DLQYBC=LS_DLQYBC ,--企业补充(独立于统筹基金金额) MZBZJE=LS_DLMZBZ ,--民政补助金额(独立于统筹基金金额) DLSBJE=LS_DLSBJE ,--商保支付金额(独立于统筹基金金额) GWBZJE=LS_GWBZJE ,--公务员补助金额(独立于统筹基金金额) DLDBJJ=LS_DLDBJJ ,--大病基金支付金额(独立于统筹基金金额) CJBTCE=LS_CJBTCE --产检检查费(bkc064)超出个人自付金额后需补退的差额 where JZDH00 = ad_JZDH00 and ZYID00=LS_ZYID00; update ZY_BRZHXX set YBYJS0=0 ,YBYZF0 =0 where BRID00=LS_BRID00 and JFLBID = 2; update BM_BRXXB0 SET BJJBIE=as_BJJBIE where BRID00=ls_BRID00; if (nvl(ad_YBSM08,'0')<>'0') and (LS_DBZCEFKJS<>'N') then begin select substrb(ad_YBSM08,1,instr(ad_YBSM08,',')-1) into ls_DBZDJH from dual; select substrb(ad_YBSM08,instr(ad_YBSM08,',')+1,10) into ls_FDBZDJH from dual; exception when others then ls_DBZDJH:=0; ls_FDBZDJH:=0; end; if ls_DBZDJH<>0 then begin select PJH000 into ls_PJH000 from ZY_JZB000 where JZDH00 = ad_JZDH00 and ZYID00=LS_ZYID00; exception when others then ls_PJH000:=0; end; begin select PJXH00,CZY000 INTO ls_PJXH00,LS_CZY000 from ZY_PJSYQK where pjh000=ls_PJH000; exception when others then ls_PJXH00:='0'; LS_CZY000:=0; end; begin select SF_ZY_GETPJXH(LS_CZY000,3) into LS_PJXH01 from dual; exception when others then LS_PJXH01:='0'; end; update ZY_BRFY00_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_DBZDJH; update ZY_BRFY00_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_FDBZDJH; update ZY_FYMX00_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_DBZDJH; update ZY_FYMX00_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_FDBZDJH; update ZY_JZB000_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_DBZDJH; update ZY_JZB000_DBZ000 set ZCJZDH=ad_JZDH00 where ZYID00=LS_ZYID00 and DJH000=ls_FDBZDJH; update ZY_PJSYQK_DBZ000 set ZCPJH0=ls_PJH000,PJXH00=ls_PJXH00 where ZYID00=LS_ZYID00 and DJH000=ls_DBZDJH; update ZY_PJSYQK_DBZ000 set ZCPJH0=ls_PJH000,PJXH00=LS_PJXH01 where ZYID00=LS_ZYID00 and DJH000=ls_FDBZDJH; Update BM_PJLYQK set PJDQH0 =lpad(to_number(LS_PJXH01)+1,greatest(length(trim(PJDQH0)),length(nvl(PJDQH0,0)+1)),'0') where PJLXBM = 3 and PJSYR0 = LS_CZY000 and SYBZ00 = 'Y'; end if; end if; --插入单病种发票明细 ZY_BZFPMX--begin-- if LS_DBZBM0 is not null then --ZY_BZFPCWHCCWF 住院收费医保单病种结算(ZY_BZFPMX)是否增加医保返回的除外耗材费或超标床位费 Y:+除外耗材费和超标床位费 Q:+除外耗材费 T:+超标床位费 默认值:N 不增加 --(医保返回)YBYL45: cwhcfw 除外耗材范围内费用 YBYL46:cbcwf0 超标床位费 if ZY_BZFPCWHCCWF='Y' then LS_BZCBCW:=nvl(LS_BZCBCW,0)+nvl(ad_YBYL46,0); LS_BZLSHC:=nvl(LS_BZLSHC,0)+nvl(ad_YBYL45,0); elsif ZY_BZFPCWHCCWF='Q' then LS_BZLSHC:=nvl(LS_BZLSHC,0)+nvl(ad_YBYL45,0); elsif ZY_BZFPCWHCCWF='T' then LS_BZCBCW:=nvl(LS_BZCBCW,0)+nvl(ad_YBYL46,0); end if; delete ZY_BZFPMX where ZYID00=LS_ZYID00 and JZDH00=ad_JZDH00; --ZYSF-20171220-001 --单病种发票名称:单病种标准 begin select substrb(MC0000,1,50) into LS_DBZFPMC_DBZBZ from BM_TYZD00 where ZDMC00='单病种发票项目名称字典' and BH0000='YBYL04'; exception when others then LS_DBZFPMC_DBZBZ:='单病种标准'; end; --单病种发票名称:超标床位费 begin select substrb(MC0000,1,50),YXBZ00 into LS_DBZFPMC_CBCWF,LS_DBZFPYX_CBCWF from BM_TYZD00 where ZDMC00='单病种发票项目名称字典' and BH0000='YBYL33'; exception when others then LS_DBZFPMC_CBCWF:='超标床位费'; LS_DBZFPYX_CBCWF:='1'; end; --单病种发票名称:除外耗材费 begin select substrb(MC0000,1,50),YXBZ00 into LS_DBZFPMC_CWHCF,LS_DBZFPYX_CWHCF from BM_TYZD00 where ZDMC00='单病种发票项目名称字典' and BH0000='YBYL34'; exception when others then LS_DBZFPMC_CWHCF:='除外耗材费'; LS_DBZFPYX_CWHCF:='1'; end; LS_DBZFPMC_DBZBZ:=nvl(LS_DBZFPMC_DBZBZ,'单病种标准');--单病种发票名称:单病种标准 LS_DBZFPMC_CBCWF:=nvl(LS_DBZFPMC_CBCWF,'超标床位费');--单病种发票名称:超标床位费 LS_DBZFPMC_CWHCF:=nvl(LS_DBZFPMC_CWHCF,'除外耗材费');--单病种发票名称:除外耗材费 LS_DBZFPYX_CBCWF:=nvl(LS_DBZFPYX_CBCWF,'1'); --单病种发票是否显示:超标床位费(1:显示 0:不显示 有值:都显示) LS_DBZFPYX_CWHCF:=nvl(LS_DBZFPYX_CWHCF,'1'); --单病种发票是否显示:除外耗材费(1:显示 0:不显示 有值:都显示) --单病种标准 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'YBYL04',LS_DBZFPMC_DBZBZ,nvl(LS_YBYL04,0),''); --单病种超标床位费 if nvl(LS_BZCBCW,0)<>0 then LS_DBZFPYX_CBCWF:='1'; end if; if LS_DBZFPYX_CBCWF not in ('0') then --1:显示 0:不显示 有值:都显示 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'YBYL33',LS_DBZFPMC_CBCWF,nvl(LS_BZCBCW,0),''); end if; --单病种另收耗材费 if nvl(LS_BZLSHC,0)<>0 then LS_DBZFPYX_CWHCF:='1'; end if; if LS_DBZFPYX_CWHCF not in ('0') then--1:显示 0:不显示 有值:都显示 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'YBYL34',LS_DBZFPMC_CWHCF,nvl(LS_BZLSHC,0),''); end if; --特需医疗服务费--begin--- if LS_HCFLBH='2' then begin select substrb(MC0000,1,50) into LS_BZFPMC from BM_TYZD00 where ZDMC00='病种打包耗材分类编码字典' and BH0000=LS_HCFLBH; exception when others then LS_BZFPMC:='特需医疗服务费'; end; LS_BZFPMC:=nvl(LS_BZFPMC,'特需医疗服务费'); --特需医疗服务费用 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'YBYL69',LS_BZFPMC,nvl(LS_TXYLFY,0),''); end if; --特需医疗服务费--end--- end if; --插入单病种发票明细 ZY_BZFPMX--end-- --修改除外耗材和超标床位 update ZY_BRZHXX set DBZCWF=nvl(LS_BZCBCW,0),DBZHCF=nvl(LS_BZLSHC,0)+nvl(LS_TXYLFY,0) where BRID00=LS_BRID00 and JFLBID = 2; --插入CDRG发票明细--begin-- if LS_CDRGJK='Y' and nvl(LS_YBSM10,'00') not in ('00') then delete ZY_BZFPMX where ZYID00=LS_ZYID00 and JZDH00=ad_JZDH00; --ZYSF-20171220-001 select SF_ZY_DBZCBFY(LS_ZYID00,LS_BRID00,LS_DBZBM0,ad_ID0000,0) into LS_BZCBCW from dual;--超标床位费 select SF_ZY_DBZCBFY(LS_ZYID00,LS_BRID00,LS_DBZBM0,ad_ID0000,2) into LS_BZLSHC from dual;--2:CDRG超标高值耗材 select SF_ZY_DBZCBFY(LS_ZYID00,LS_BRID00,LS_DBZBM0,ad_ID0000,3) into LS_BZKBHC from dual;--3:CDRG 可报高值耗材费 --标准费用:ZY_JZB000.YBYL39 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1000','标准费用',nvl(ad_YBYL39,0),'ZY_JZB000.YBYL39'); --个人支付:ZY_JZB000.ZFJE00 (个人支付=现金支付+A账户支付+B账户支付) insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1001','个人支付',nvl(ld_ZFJE00,0)+nvl(ad_GRZHZF,0)+nvl(ad_YBYL41,0),'个人支付=现金支付+A账户支付+B账户支付'); --统筹支付:ZY_JZB000.TCJJZF insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1002','统筹支付',nvl(ld_TCJJZF,0),'ZY_JZB000.TCJJZF'); --可报高值耗材费: insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1003','可报高值耗材费',nvl(LS_BZKBHC,0),'可报高值耗材费'); --A账户支付:ZY_JZB000.GRZHZF insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1004','A账户支付',nvl(ad_GRZHZF,0),'ZY_JZB000.GRZHZF'); --公务员补助:ZY_JZB000.GWYBZ0 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1005','公务员补助',nvl(ad_GWYBZ0,0),'ZY_JZB000.GWYBZ0'); --超标床位费:ZY_JZB000.YBYL33 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1006','超标床位费',nvl(LS_BZCBCW,0),'ZY_JZB000.YBYL33'); --B账户支付:ZY_JZB000.YBYL41(bkzfe0) insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1007','B账户支付',nvl(ad_YBYL41,0),'ZY_JZB000.YBYL41'); --民政救助:ZY_JZB000.YBYL01(bcyljz) insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1008','民政救助',nvl(ad_YBYL01,0),'ZY_JZB000.YBYL01'); --超标高值耗材:ZY_JZB000.YBYL34 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1009','超标高值耗材',nvl(LS_BZLSHC,0),'ZY_JZB000.YBYL34'); --现金支付:ZY_JZB000.ZFJE00 insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1010','现金支付',nvl(ld_ZFJE00,0),'ZY_JZB000.ZFJE00'); --大病保险:ZY_JZB000.YBYL40(dbbcbcje) insert into ZY_BZFPMX(ZYID00,JZDH00,XMBH00,XMMC00,XMJE00,BZ0000)values(LS_ZYID00,ad_JZDH00,'1011','大病保险',nvl(ad_YBYL40,0),'ZY_JZB000.YBYL40'); --修改结账表 YBYL33:单病种超标床位费用(医保未返回) YBYL34:单病种除外耗材费用(医保未返回) YBYL44:可报高值耗材费 Update ZY_JZB000 set YBYL33 = nvl(LS_BZCBCW,0),YBYL34=nvl(LS_BZLSHC,0),YBYL44=nvl(LS_BZKBHC,0) where JZDH00 = ad_JZDH00 and ZYID00=LS_ZYID00; end if; --插入CDRG发票明细--end-- if LS_BZBMLB is not null then update ZY_BRXXB0 set BZBMLB=LS_BZBMLB where ZYID00=LS_ZYID00 and BZBMLB is null ; end if; --新医保接口结算调用SP_ZY_NEWYBJK_JKFHJX解析(补助明细、医保发票费用开始) --ad_YBSM19 医保接口id if trim(LS_YBJKID) is not null and trim(LS_YBJKID) not in ('0') then --修改ZY_YBJKRZ.JZDH00 update ZY_YBJKRZ set JZDH00=ad_JZDH00 where BRID00=LS_BRID00 and YBJKID=LS_YBJKID; SP_ZY_NEWYBJK_JKFHJX( LS_BRID00,--PBRID00 in number ,--输入:病人ID ad_JZDH00,--PJZDH00 in number ,--输入:结账单号 LS_YBJKID,--PYBJKID in varchar2 ,--输入:医保接口ID '1',--PMZZYBZ in varchar2 ,--输入:门诊住院标识 0:门诊 1:住院 '1,2',--PJXLX00 in varchar2 ,--输入:解析类型(同时解析传1,2) 1:fplist 2:mzlist 'N',--PCOMMIT in varchar2 default 'N' ,--输入:是否提交事务 Y:提交 N:不提交 LS_ZXZT00,--PZXZT00 out number ,--输出:执行状态 0:失败 1:成功 LS_ERRMSG--PERRMSG out varchar2 --输出:错误信息 ); if LS_ZXZT00=0 then as_YHMSG0:=LS_ERRMSG; as_SYSMSG:=LS_ERRMSG; end if; end if; exception when others then as_YHMSG0:='出错原因不详,请记录此信息并和系统管理员联系!'; as_SYSMSG:=substr(SQLERRM||'执行存储过程错误:SP_ZY_YBSF00_BCREG0('||as_YBDJH0||','||to_char(ad_DJH000)||','||to_char(ad_TJDJH0)||','|| to_char(ad_GZDJH0)||','||to_char(ad_JZDH00)||','||as_YBLB00||','||to_char(ad_ZFJE00)||','||to_char(ad_TCJJZF)||','||to_char(ad_GRZHZF)||',as_YHMSG0,as_SYSMSG)',1,150); ROLLBACK; END; / -- End of DDL Script for Procedure SD_HOSPITAL.SP_ZY_YBSF00_BCREG0