create or replace procedure SP_SST_ZY_JSMX_YKT ( P_ZDBH00 in varchar2, --终端编号 P_FZXBH0 in varchar2, --参保机构编号(DD:多点结算 YD:移动结算 YB:医保结算) P_YYJGDM in varchar2, --医院机构代码(员工编码) P_CARDTYPE in varchar2, --0 代表院内卡 1 代表社保卡 2:住院号 P_CARDNO in varchar2, --IC卡号或住院号 P_BYRC00 in varchar2, --备用入参 P_DDLSH0 in varchar2 default '', --订单流水号 P_CZY000 in number default 0, --操作员编码 P_ZYID00 in number default 0, --住院ID P_ERRMSG out varchar2 --出错信息 ) -- MODIFICATION HISTORY -- Person Date Comments -- jlg 2020.06.22 created 移植自7.0同名过程 ZYSF9-20200619-001 -- qks 2020.07.07 医保患者获取ZY_YBFSMX相关数据,改为统一调用SP_ZY_YBJK00_FJ0000生成。 -- zhangyc 2020.07.14 增加获取FMBQBH赋值到bqbm00 --zhangyc 2020.08.14 由于CDRG在整理费用明细时,超标床位费会重复插入,顾HJJE00只能取费用表 by ZYSF9-20200814-002 --zhangyc 2021.05.12 增加新医保接口 by ZYSF9-20210513-001 --zhangyc 2021.05.19 医联入院登记增加节点dkfs00、yljzfs、yllb00、yyksbm、yyksmc by ZZJJK9-20210520-002 --zhangyc 2021.05.24 参考SP_ZY_NEWYBJK_YBJKRZ根据参数YPDWSFFSYBBM修改发票项目名称: fpxmmc by ZYSF9-20210524-003 --zhangyc 2021.05.27 单病种aka130赋值错误 by ZZJJK9-20210528-002 --zhangyc 2021.06.02 bke042根据参数LS_HISLSHQZFS不同状态赋值(跟收费窗口一致SP_ZY_NEWYBJK_YBJKRZ)by ZZJJK9-20210602-001 --zhangyc 2021.06.04 aac002证件号码(社会保障号)取BM_brxxb0.BRZJBH并且用函数SP_SF_CHECKSFZH(LS_BRZJBH)=1 (1:正常 0:不正常) and length(LS_BRZJBH)=18 by ZZJJK9-20210604-001 --zhangyc 2021.07.14 修改主表SST_JSDP_JBXX(CFXMS0,itemcount)处方项目数 by ZYSF9-20210714-001 --zhangyc 2021.07.29 增加写入sst_jsdp_dzmx by ZZJJK9-20210802-001 --zhangyc 2021.10.14 SST_JSDP_JBXX.BAE465:国家病种代码取值 by ZYSF9-20211014-001 as LS_CZRQ00 varchar2(8); --操作日期 LS_CZSJ00 varchar2(8); --操作时间 LS_CZY000 number(5); LS_CZYKS0 number(5); LS_CZYXM0 varchar2(50); LS_ERRORS varchar2(100); LS_COUNT0 number(10); LS_DDLSH0 ZY_YBJK00.DDLSH0%type; LS_JKLXBH ZY_YBJK00.JKLXBM%type; --接口类型编号 LS_JKLX00 varchar2(20); --RQDSC:日清单上传 DD:多点结算 YD:移动结算 YB:医保结算 LS_BRID00 ZY_BRXXB0.BRID00%type; --BRID00 LS_ZYID00 ZY_BRXXB0.ZYID00%type; --住院ID LS_ZYH000 ZY_BRXXB0.ZYH000%type; --住院号 LS_JZDH00 number(12); --结账单号 LS_CSNBID varchar2(100); --参数内部ID(可为空值) LS_OTHERS varchar2(100); --输入其它参数 LS_YEXM00 varchar2(100); --婴儿姓名 LS_EXESQL varchar2(1000); LS_ERRMSG varchar2(400); --出错信息 LS_ID0000 number(12); RBRXX BM_BRXXB0%rowtype; RZYXX ZY_BRXXB0%rowtype; RZYJK ZY_YBJK00%rowtype; RYBLB IC_YBBRLB%rowtype; LS_ZHYE00 ZY_BRZHXX.ZYE000%type; --账户余额 LS_XJYE00 ZY_BRZHXX.XJYE00%type; --现金余额 LS_ZZYE00 ZY_BRZHXX.ZZYE00%type; --现金余额 LS_YJJYE0 number(12,4); --结算前预交金余额(现金余额) LS_DZQBYE number(12,4); --结算前预交金余额(转账余额) --LS_CFXMS0 number(12,4); --处方项目数 LS_SFTSMZ varchar2(2); --是否特殊门诊 Y是 N否 LS_SFTSBZ varchar2(2); --是否特殊病种 Y是 N否 LS_BQZDBM SST_JSDP_JBXX.BQZDBM%type; --病情诊断编码 LS_BQZDMS SST_JSDP_JBXX.BQZDMS%type; --病情诊断描述 LS_MZLB00 SST_JSDP_JBXX.MZLB00%type; --门诊类别=普通门诊:101 急诊:102 急诊观留床:103 LS_MZLX00 SST_JSDP_JBXX.MZLB00%type; --mzlx00:P-普通门诊 T-特殊门诊 LS_YSZJDJ SST_JSDP_JBXX.YSZJDJ%type; --医生神经等级 LS_SFXTGH SST_JSDP_JBXX.SFXTGH%type; --是否系统挂号 LS_FZXBH0 SST_JSDP_JBXX.FZXBH0%type; --分中心编码 LS_XTGZH0 SST_JSDP_JBXX.XTGZH0%type; --系统跟踪号 LS_YSXM00 SST_JSDP_JBXX.YSXM00%type; --医生姓名 LS_YYKSBM BM_BMBM00.YYKSBM%type; --医院科室编码 LS_YSZJHM BM_YGBM00.YSZJHM%type; --医生证件编码 LS_FYJE00 number(12,4); --费用金额 LS_CFJE00 number(12,4); --处方金额 LS_YJJE00 number(12,4); --医技金额 LS_HJJE00 number(12,4); --总金额 LS_BCFYZE number(12,4); --医保结算金额 LS_XJZFFS varchar2(2); --现金支付方式 1、银行委托支付;2、预缴金支付;3、电子钱包支付 LS_SFSYU0 varchar2(2); --是否生育收费 SF_BRXXB0.BXLB00=’ 工伤’ OR SF_BRXXB0.BXLB00=’ 生育’ LS_PJHM SST_JSDP_JBXX.PJHM%type; --非税票据号码 LS_PJLX SST_JSDP_JBXX.PJLX%type; --非税票据类型 LS_PJZCH SST_JSDP_JBXX.PJZCH%type; --非税票据注册号 LS_JSH SST_JSDP_JBXX.JSH%type; --非税结算号 LS_organ SST_JSDP_JBXX.organ%type; --非税机构代码 LS_service SST_JSDP_JBXX.service%type; --非税交易代码 LS_fpuser SST_JSDP_JBXX.fpuser%type; --非税用户名 LS_fppwd SST_JSDP_JBXX.fppwd%type; --非税密码 LS_FHJG00 SST_JSDP_JBXX.FHJG00%type; --非税返回结果 true执行成功、false执行失败 LS_FHXX00 SST_JSDP_JBXX.FHXX00%type; --非税返回响应信息 LS_SZZW00 SST_JSDP_JBXX.SZZW00%type; --非税数字指纹 LS_JDPH00 SST_JSDP_JBXX.JDPH00%type; --非税机打票号 LS_PJHM00 SST_JSDP_JBXX.PJHM00%type; --非税票据号码 LS_PJLX00 SST_JSDP_JBXX.PJLX00%type; --非税票据类型 LS_PJMC00 SST_JSDP_JBXX.PJMC00%type; --非税票据名称 LS_PJZCH0 SST_JSDP_JBXX.PJZCH0%type; --非税票据注册号 LS_PJLYID BM_PJLYQK.PJLYID%type; LS_SFLG00 varchar2(10); LS_SFJZLB SF_BRXXB0.SFJZLB%type; LS_AYPXZFKJS varchar2(10); LS_YPXZ00 varchar2(1); --YF_MZCF00.YPXZ00%type; LS_BRZTQK BM_BRXXB0.BRZTQK%type; LS_SFYGWD SST_JSDP_JBXX.YSZJDJ%type; --是否医改网点 Y/N LS_YJZJE0 ZY_FYMX00.HJJE00%type; LS_COUNTGZ number(5); LS_GHKSMC BM_BMBM00.BMMC00%type; LS_BRNL00 number(3); --病人年龄 LS_ZYTS00 number(5); --住院天数 LS_ZYLSH0 SST_JSDP_JBXX.ZYLSH0%type; --住院流水号 LS_PTBCTS SST_JSDP_JBXX.PTBCTS%type; --普通病床日 LS_CRBCTS SST_JSDP_JBXX.CRBCTS%type; --传染病床日 LS_ZYLB00 SST_JSDP_JBXX.ZYLB00%type; --住院类别(普通,家庭病床) LS_DDJSZDBH varchar2(30); --多点结算操作员终端编号对应(=SST_YGBHDY.ZZJBH0),未维护按实际操作员 --LS_JKQQCS BM_ZFPTCS.JKQQCS%type; LS_QSDJH0 ZY_FYMX00.DJH000%type; --起始单据号 LS_ZZDJH0 ZY_FYMX00.DJH000%type; --终止单据号 LS_QSRQ00 ZY_FYMX00.CZRQ00%type; --起始日期 LS_ZZRQ00 ZY_FYMX00.CZRQ00%type; --截至日期 LS_BQBM00 varchar2(20); --病情编码 LS_BQMC00 varchar2(50); --病情名称 LS_RYLB00 ZY_BRXXB0.RYLB00%type; -- LS_DBZBM0 ZY_BRXXB0.DBZBM0%type; --单病种编码 LS_FFBZBM ZY_BRXXB0.FFBZBM%type; --付费病种编码 --新医保变量--begin-- LS_TSBZBH varchar2(50);--病情编码 LS_MZZYBZ varchar2(1);--门诊住院标识 0:门诊 1:住院 LS_JKLXBM varchar2(50);--接口类型 -1无 0普通医保 1生育医保 2:工伤 3保健医保 LS_BZBMLB varchar2(1);--病种类别 0:单病种 1:精准扶贫 A:生育病种 --LS_BKE284 varchar2(50);--身份认证类型 身份认证类型 01:读卡 02:融合码 06:医保码 20:医疗证 LS_BZDYBH varchar2(20);--对照编码 LS_YBJKID SST_JSDP_JBXX.YBJKID%type;--number(12) ,--医保接口ID(HIS内部使用) LS_YBBZ00 SST_JSDP_JBXX.YBBZ00%type;--varchar2(2) ,--自助机填写:医保标志(区分新旧医保)1:新医保,0:旧医保 LS_aaz501 SST_JSDP_JBXX.aaz501%type;--varchar2(32) ,--自助机填写:卡识别码 LS_bke286 SST_JSDP_JBXX.bke286%type;--varchar2(3) ,--自助机填写:结算标识 0:预结算 1:中途结算 2:门诊结算/出院结算 LS_bke241 SST_JSDP_JBXX.bke241%type;--varchar2(3) ,--自助机填写:数据来源 50:收费终端 51:自助终端 52:医生工作站 53:移动支付 LS_aaz500 SST_JSDP_JBXX.aaz500%type;--varchar2(30) ,--his填写:社会保障卡号 LS_aac002 SST_JSDP_JBXX.aac002%type;--varchar2(30) ,--his填写:证件号码(社会保障号) LS_aac003 SST_JSDP_JBXX.aac003%type;--varchar2(50) ,--his填写:姓名 LS_aac004 SST_JSDP_JBXX.aac004%type;--varchar2(1) ,--his填写:性别 1男 2女 LS_akc023 SST_JSDP_JBXX.akc023%type;--number(3) ,--his填写:年龄 LS_aka078 SST_JSDP_JBXX.aka078%type;--varchar2(3) ,--his填写:医疗就诊方式 LS_aka130 SST_JSDP_JBXX.aka130%type;--varchar2(3) ,--his填写:医疗类别 LS_bke298 SST_JSDP_JBXX.bke298%type;--varchar2(32) ,--his填写:his收费单据流水号 LS_bke042 SST_JSDP_JBXX.bke042%type;--varchar2(32) ,--his填写:his流水号 LS_aab034 SST_JSDP_JBXX.aab034%type;--varchar2(8) ,--医保返回:所属经办机构编码(分中心编码) LS_aab034_mc SST_JSDP_JBXX.aab034_mc%type;--varchar2(100) ,--医保返回:所属经办机构编码名称(分中心名称) LS_akc069 SST_JSDP_JBXX.akc069%type;--varchar2(3) ,--his填写:急诊标志 0 否,1 是 LS_akc066 SST_JSDP_JBXX.akc066%type;--varchar2(3) ,--his填写:外伤标志 0 否,1 是 LS_aaz149 SST_JSDP_JBXX.aaz149%type;--varchar2(20) ,--his填写:特殊病种编号 LS_aka121 SST_JSDP_JBXX.aka121%type;--varchar2(50) ,--his填写:特殊病种名称 LS_akf001 SST_JSDP_JBXX.akf001%type;--varchar2(50) ,--his填写:院内科室编码 LS_akf002 SST_JSDP_JBXX.akf002%type;--varchar2(50) ,--his填写:院内科室名称 LS_bkf237 SST_JSDP_JBXX.bkf237%type;--varchar2(50) ,--his填写:医保科室编码 LS_bkf238 SST_JSDP_JBXX.bkf238%type;--varchar2(50) ,--his填写:医保科室名称 LS_bkc014 SST_JSDP_JBXX.bkc014%type;--varchar2(8) ,--his填写:实际就诊日期 LS_bkc171 SST_JSDP_JBXX.bkc171%type;--varchar2(6) ,--his填写:实际就诊时间 LS_akc192 SST_JSDP_JBXX.akc192%type;--varchar2(14) ,--his填写:实际门诊/入院日期 LS_aae030 SST_JSDP_JBXX.aae030%type;--varchar2(8) ,--his填写:择日住院起始日期 LS_aae031 SST_JSDP_JBXX.aae031%type;--varchar2(8) ,--his填写:择日住院截止日期 LS_bka190 SST_JSDP_JBXX.bka190%type;--varchar2(2) ,--his填写:是否共济扣款 y:共济扣款 n:不共济扣款 LS_akc193 SST_JSDP_JBXX.akc193%type;--varchar2(50) ,--his填写:入院登记主诊断编码 LS_bka535 SST_JSDP_JBXX.bka535%type;--varchar2(3) ,--his填写:医师诊查费等级 LS_bkea92 SST_JSDP_JBXX.bkea92%type;--varchar2(6) ,--his填写:保健体检项目编号 LS_aka042 SST_JSDP_JBXX.aka042%type;--varchar2(3) ,--his填写:住院类别 LS_akc194 SST_JSDP_JBXX.akc194%type;--varchar2(14) ,--his填写:出院日期 LS_bke078 SST_JSDP_JBXX.bke078%type;--varchar2(3) ,--his填写:离院方式 LS_bke058 SST_JSDP_JBXX.bke058%type;--varchar2(4) ,--his填写:住院天数 LS_amc029 SST_JSDP_JBXX.amc029%type;--varchar2(3) ,--his填写:计划生育手术类别 LS_amc026 SST_JSDP_JBXX.amc026%type;--varchar2(3) ,--his填写:生育类别 LS_amc028 SST_JSDP_JBXX.amc028%type;--varchar2(3) ,--his填写:胎儿数 LS_amc020 SST_JSDP_JBXX.amc020%type;--varchar2(8) ,--his填写:计划生育手术或生育日期 LS_bmc041 SST_JSDP_JBXX.bmc041%type;--varchar2(3) ,--his填写:怀孕天数 LS_bkc007 SST_JSDP_JBXX.bkc007%type;--varchar2(18) ,--his填写:医疗服务人员证件号码 LS_bkc006 SST_JSDP_JBXX.bkc006%type;--varchar2(50) ,--his填写:医疗服务人员姓名 LS_itemcount SST_JSDP_JBXX.itemcount%type;--number(3) ,--his填写:明细项目数量 LS_akc190 SST_JSDP_JBXX.akc190%type;--varchar2(16) ,--医保返回:医保门诊挂号流水号/住院登记流水号 LS_bke297 SST_JSDP_JBXX.bke297%type;--varchar2(20) ,--医保返回:医保明细流水号 LS_aae072 SST_JSDP_JBXX.aae072%type;--varchar2(16) ,--医保返回:医保收费流水号 LS_aac999 SST_JSDP_JBXX.aac999%type;--varchar2(20) ,--医保返回:个人管理码地市唯一标识码(id0000) LS_bka531 SST_JSDP_JBXX.bka531%type;--varchar2(1) ,--医保返回: 是否精准扶贫对象 LS_bkc001 SST_JSDP_JBXX.bkc001%type;--varchar2(3) ,--医保返回:人员待遇类别 LS_bkc001_mc SST_JSDP_JBXX.bkc001_mc%type;--varchar2(30) ,--医保返回:人员待遇类别名称 LS_bkc026 SST_JSDP_JBXX.bkc026%type;--varchar2(3) ,--医保返回:医疗待遇状态 LS_bkc026_mc SST_JSDP_JBXX.bkc026_mc%type;--varchar2(30) ,--医保返回:医疗待遇状态名称 LS_bke174 SST_JSDP_JBXX.bke174%type;--varchar2(3) ,--医保返回:异地就医类型 LS_bke174_mc SST_JSDP_JBXX.bke174_mc %type;--varchar2(30) ,--医保返回:异地就医类型名称 LS_akc227 SST_JSDP_JBXX.akc227%type;--number(12,2) ,--医保返回:医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 LS_bkc040 SST_JSDP_JBXX.bkc040%type;--number(12,2) ,--医保返回:个人现金支付金额(实付现金) LS_bkc041 SST_JSDP_JBXX.bkc041%type;--number(12,2) ,--医保返回:个人账户支付金额 LS_bkc102 SST_JSDP_JBXX.bkc102%type;--number(12,2) ,--医保返回:医保基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 LS_bkc045 SST_JSDP_JBXX.bkc045%type;--number(12,2) ,--医保返回:其中:统筹基金支付 LS_bkc052 SST_JSDP_JBXX.bkc052%type;--number(12,2) ,--医保返回:其中:大病保险基金支付(商保支付或商业保险) LS_bkc059 SST_JSDP_JBXX.bkc059%type;--number(12,2) ,--医保返回:公务员医疗补助 LS_bkc062 SST_JSDP_JBXX.bkc062%type;--number(12,2) ,--医保返回:其中:精准扶贫医疗叠加 LS_bkc060 SST_JSDP_JBXX.bkc060%type;--number(12,2) ,--医保返回:其中:医疗救助基金 LS_ake173 SST_JSDP_JBXX.ake173%type;--number(12,2) ,--医保返回:其中:其他基金支付 LS_ake026 SST_JSDP_JBXX.ake026%type;--number(12,2) ,--医保返回:其中:企业补充 LS_bke921 SST_JSDP_JBXX.bke921%type;--varchar2(40) ,--医保返回:(家庭健康)共济账户扣款人 LS_bke922 SST_JSDP_JBXX.bke922%type;--varchar2(40) ,--医保返回:(家庭健康)共济账户扣款人金额 LS_bkc166 SST_JSDP_JBXX.bkc166%type;--number(12,2) ,--医保返回:(其中)一般诊疗费补偿金额 LS_bkc167 SST_JSDP_JBXX.bkc167%type;--number(12,2) ,--医保返回:(其中)一般诊疗费个人支付金额 LS_bkc011 SST_JSDP_JBXX.bkc011%type;--number(12,2) ,--医保返回:个人自费(非医保费用) LS_akc087 SST_JSDP_JBXX.akc087%type;--number(12,2) ,--医保返回:个人账户余额 LS_bkc591 SST_JSDP_JBXX.bkc591%type;--number(12,2) ,--医保返回:家庭共济账户余额 LS_bkc075 SST_JSDP_JBXX.bkc075%type;--number(12,2) ,--医保返回:家庭共济账户支付 LS_bkc054 SST_JSDP_JBXX.bkc054%type;--number(12,2) ,--医保返回:商保账户支付 LS_bkc612 SST_JSDP_JBXX.bkc612%type;--number(12,2) ,--医保返回:补助基金支付bkc612=bkc052 大病保险基金支付+bkc059公务员医疗补助+bkc062精准扶贫医疗叠加+bkc060医疗救助基金+ake173 其他基金支付+ake026企业补充+bkc061保健基金支付 LS_bkc061 SST_JSDP_JBXX.bkc061%type;--number(12,2) ,--医保返回:其中:保健基金支付 LS_bkc077 SST_JSDP_JBXX.bkc077%type;--number(12,2) ,--医保返回:其中:账户支付 LS_bkc076 SST_JSDP_JBXX.bkc076%type;--number(12,2) ,--医保返回:其中:健康账户支付 LS_ake094 SST_JSDP_JBXX.ake094%type;--number(12,2) ,--医保返回:个人自付 LS_bkc160 SST_JSDP_JBXX.bkc160%type;--number(12,2) ,--医保返回:公务员体检帐户余额 LS_bkc079 SST_JSDP_JBXX.bkc079%type;--number(12,2) ,--医保返回:健康账户余额 LS_bkec26 SST_JSDP_JBXX.bkec26%type;--number(12,2) ,--医保返回:职工医疗互助 LS_bkc101 SST_JSDP_JBXX.bkc101%type;--number(12,2) ,--医保返回:除外耗材范围内费用 LS_bkc125 SST_JSDP_JBXX.bkc125%type;--number(12,2) ,--医保返回:超标床位费 LS_bkc053 SST_JSDP_JBXX.bkc053%type;--number(12,2) ,--医保返回:商保现金支付 LS_aka151 SST_JSDP_JBXX.aka151%type;--number(12,2) ,--医保返回:统筹支付医保费用起付标准 LS_aka150 SST_JSDP_JBXX.aka150%type;--number(3) ,--医保返回:本年度住院次数 LS_bka193 SST_JSDP_JBXX.bka193%type;--varchar2(3) ,--医保返回:保健级别 LS_bka193_mc SST_JSDP_JBXX.bka193_mc%type;--varchar2(50) ,--医保返回:保健级别名称 LS_bka555 SST_JSDP_JBXX.bka555%type;--varchar2(3) ,--医保返回:对账数据分类 LS_bka188 SST_JSDP_JBXX.bka188%type;--varchar2(2) ,--医保返回:是否进入单病种结算 LS_ake007 SST_JSDP_JBXX.ake007%type;--varchar2(8) ,--医保返回:费用发生日期(结算日期) LS_bae029 SST_JSDP_JBXX.bae029%type;--varchar2(4) ,--医保返回:费用发生时间(结算时间) LS_aae011 SST_JSDP_JBXX.aae011%type;--varchar2(20) ,--医保返回:收费人 LS_bka079 SST_JSDP_JBXX.bka079%type;--number(12,2) ,--his填写:收付费定额 LS_akc196 SST_JSDP_JBXX.akc196%type;--varchar2(50) ,--his填写:出院主要诊断 LS_bkc038 SST_JSDP_JBXX.bkc038%type;--varchar2(50) ,--his填写:出院次要诊断 LS_bkc039 SST_JSDP_JBXX.bkc039%type;--varchar2(50) ,--his填写:出院第三诊断 LS_ake021 SST_JSDP_JBXX.ake021%type;--varchar2(50) ,--his填写:出院诊断医生 LS_bkc511 SST_JSDP_JBXX.bkc511%type;--varchar2(50) ,--his填写:医保签约号 LS_bae113 SST_JSDP_JBXX.bae113%type;--varchar2(50) ,--his填写:签约受理人身份证号 LS_bkc023 SST_JSDP_JBXX.bkc023%type;--varchar2(50) ,--his填写:签约人关系 LS_itemcountys SST_JSDP_JBXX.itemcountys%type;--varchar2(4) ,--his填写:医生数量 LS_bke598 SST_JSDP_JBXX.bke598%type;--varchar2(14) ,--his填写:签约开始日期 LS_bke599 SST_JSDP_JBXX.bke599%type;--varchar2(14) ,--his填写: 签约截至日期 LS_bkc512 SST_JSDP_JBXX.bkc512%type;--varchar2(20) ,--his填写:医院签约号 LS_aae005 SST_JSDP_JBXX.aae005%type;--varchar2(20) ,--his填写:联系电话 LS_aae006 SST_JSDP_JBXX.aae006%type;--varchar2(200) ,--his填写:通讯地址 LS_bke466 SST_JSDP_JBXX.bke466%type;--varchar2(100) ,--his填写:签约病种 LS_bke467 SST_JSDP_JBXX.bke467%type;--varchar2(200) ,--his填写: 服务内容 LS_bke468 SST_JSDP_JBXX.bke468%type;--varchar2(10) ,--his填写: 服务方式 LS_OutYbghJson SST_JSDP_JBXX.OutYbghJson%type;--varchar2(2000) ,--医保返回:医保登记返回的消息串 LS_OutYbsfJson SST_JSDP_JBXX.OutYbsfJson%type;--varchar2(4000) --医保返回:医保收费返回的消息串 LS_BRLBBH varchar2(10);--类别编码:0:普通 1:生育 2:工伤 3:体检 4:单病种 LS_TSBZFL BM_TSBZB0.TSBZFL%type;--病种分类 0:特殊病种 1:生育病种 2:单病种 LS_YYKSBMFSLX varchar2(50);--新医保医院科室编码类型0:(akf001:医保编码bkf237:院内编码)1:(akf001:院内编码bkf237:医保编码)默认值:0 LS_HISLSHQZFS varchar2(10);--新医保接口His流水号(bke042)取值方式 Y:系统序列号 N:挂号ID或住院ID 默认:N LS_KHQZ00 varchar2(1); --卡号第一位 LS_BKEH83 SST_JSDP_JSMX.BKEH83%type;--国家标准对应编码 LS_BKEH05 SST_JSDP_JSMX.BKEH05%type;--医保备用1 LS_BKEH06 SST_JSDP_JSMX.BKEH06%type;--医保备用2 LS_BAKXML SST_JSDP_JSMX.BAKXML%type;--HIS备用字段(xml格式)后续扩展 LS_DYBZBM xt_ICD900.DYBZBM%type;--医保诊断对应编码 LS_DYJBMC xt_ICD900.DYJBMC%type;--医保诊断对应名称 LS_bke091 varchar2(50); --手术及操作编码 LS_bke092 varchar2(200); --手术及操作名称 LS_ZDBMBGCS varchar2(50); --change_zdbm_ssbm:新医保接口门诊和住院系统:诊断和手术编码是否转为医保编码发送 0:不转化 1:转成医保编码 默认:0 LS_JKQQCS varchar2(2000); --接口请求参数 LS_CFLSHQZFS varchar2(10);--新医保接口费用结算处方项目数(itemcount)取值方式 Y:处方项目数 N:医保明细流水号个数 默认:N LS_JKLSID number(8); LS_bke284 SST_JSDP_JBXX.bke284%type;--身份认证类型 01:读卡 06:医保凭证 LS_bkeg23 SST_JSDP_JBXX.bkeg23%type;--是否账户抵扣 1:是 0:否 LS_CFXMS0 SST_JSDP_JBXX.CFXMS0%type;--处方项目数 LS_BAE465 BM_BZSFBZ.BAE465%type; --国家病种代码 LS_BAEMC0 BM_BZSFBZ.BAEMC0%type; --国家病种名称 LS_JSOSTR varchar2(2000); LS_ZDQZLX varchar2(1);--0:组合报文 1:直接取ZDLIST LS_BKE301 varchar2(3); --诊断或症状类型 y 参见编码附件 LS_BKE302 varchar2(3); --诊断或症状序号 y 参见编码附件 LS_BKE087 varchar2(50); --诊断或症状编码 y 见icd-10或症状表编码 LS_BKE088 varchar2(100);--诊断或症状名称 y 见icd-10或症状表名称 --新医保变量--end-- LS_YBJKFPLBCS varchar2(50); --新医保接口发票类别(aka063)(格式:门诊,住院) 0:发送编码 1:发送名称 默认:0,0 LS_BRZJBH BM_BRXXB0.BRZJBH%type; --身份证号 LS_YYID00 BM_BMBM00.YYID00%type; LS_BMYYID varchar2(10);--HIS内部医院id LS_orgCode varchar2(10);--HIS内部医院id LS_patientType varchar2(2);--费别类型编码(易惠) 00 自费 01 医保 LS_AKB065 SST_JSDP_JBXX.AKB065%type;--费用总额 LS_DQBQ00 ZY_BRXXB0.DQBQ00%type;--当前病区编码 LS_DQBQMC BM_BMBM00.BMMC00%type;--挂号科室名称 LS_DQKS00 ZY_BRXXB0.DQKS00%type;--当前科室编码 LS_DQKSMC BM_BMBM00.BMMC00%type;--当前科室名称 LS_Change_aaz149_bae465 varchar2(10);--aaz149(病种编码)是否转化为bae465(国家编码) LS_bkb526 SST_JSDP_JBXX.bkb526%type; --bkb526:医疗机构国家码 LS_BKC007_FSYSGJBM BM_TYZD00.MC0000%type; -- 新医保接口明细上传bkc007节点是否开启发送医师国家编码(=BM_YGBM00.YBYGDM),=0原来模式[0:否,1:门诊,2:住院,3:门诊住院] 默认0 LS_YBYGDM BM_YGBM00.YBYGDM%type; --医保员工代码 --诊断信息 cursor CUR_BRZDXX is select a.*,b.ZDBM00,b.VALUE0 ZDBMMC from BQ_BRZDXX a,XT_ZD0000 b where a.ZYID00=LS_ZYID00 and a.ZDLB00=b.DM0000 and b.zdbm00 in ('ZDLB00','ZYZDLB') order by a.ZDM000; begin --保存接口请求参数 LS_JKQQCS:=''; LS_JKQQCS:=substrb(LS_JKQQCS||''||P_ZDBH00||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_FZXBH0||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_YYJGDM||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_CARDTYPE||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_CARDNO||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_BYRC00||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_DDLSH0||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_CZY000||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||''||P_ZYID00||'',1,2000); LS_JKQQCS:=substrb(LS_JKQQCS||'',1,2000); P_ERRMSG:=''; LS_COUNT0:=0; LS_CZRQ00:=to_char(sysdate,'YYYYMMDD'); --操作日期 LS_CZSJ00:=to_char(sysdate,'HH24:MI:SS'); --操作时间 LS_CZY000:=P_CZY000; LS_SFTSMZ:='N';--是否特殊门诊 Y是 N否 LS_SFTSBZ:='N';--是否特殊病种 Y是 N否 LS_JKLX00:='DD';--输入:RQDSC:日清单上传 DD:多点结算 YD:移动结算 YB:医保结算 if P_CARDTYPE not in ('2') then P_ERRMSG:='参数P_CARDTYPE传值错误(0:代表院内卡 1:代表社保卡 2:住院号)'; return; end if; LS_YYKSBMFSLX:=nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','yyksbmfslx'),1,50),'0');--新医保医院科室编码类型0:(akf001:医保编码bkf237:院内编码)1:(akf001:院内编码bkf237:医保编码)默认值:0 LS_HISLSHQZFS:=nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','HISLSHQZFS'),1,10),'N');--LS_HISLSHQZFS HISLSHQZFS:新医保接口His流水号(bke042)取值方式 Y:系统序列号 N:挂号ID或住院ID 默认:N LS_ZDBMBGCS:=nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','change_zdbm_ssbm'),1,50),'0');--change_zdbm_ssbm:新医保接口门诊和住院系统:诊断和手术编码是否转为医保编码发送 0:不转化 1:转成医保编码 默认:0 LS_CFLSHQZFS:=nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','SST_FYJSCFXMSQZFS'),1,10),'N');--SST_FYJSCFXMSQZFS:(自助机)新医保接口费用结算处方项目数(itemcount)取值方式 Y:处方项目数 N:医保明细流水号个数=1 默认:Y --新医保接口发票类别(aka063)(格式:门诊,住院) 0:发送编码 1:发送名称 默认:0,0 LS_YBJKFPLBCS:= nvl(SF_XT_RETURNINDEXEH(nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','aka063'),1,50),'0,0'),',',2),'0'); --aaz149(病种编码)是否转化为bae465(国家编码)[BM_DBZDEB或BM_TSBZB0.BAE465] 1:门诊开启 2:住院开启 3:门诊和住院都开启 0:不开启 默认值:0 LS_Change_aaz149_bae465:= nvl(substrb(SF_SF_TYZD00('医保新接口参数设置','Change_aaz149_bae465'),1,10),'0'); --医保新接口参数设置','BKC007_FSYSGJBM','0','新医保接口明细上传bkc007节点是否开启发送医师国家编码(=BM_YGBM00.YBYGDM),=0原来模式[0:否,1:门诊,2:住院,3:门诊住院] 默认0 LS_BKC007_FSYSGJBM := trim(SF_SF_TYZD00('医保新接口参数设置','BKC007_FSYSGJBM')); --获取字典对应的操作员 begin select substrb(SF_SF_TYZD00('多点结算接口参数','DDJSZDBH_ZY'),1,30) into LS_DDJSZDBH from dual; exception when others then LS_DDJSZDBH:=''; end; if trim(LS_DDJSZDBH) is not null and trim(LS_DDJSZDBH) not in ('0') then select count(*) into LS_COUNT0 from VW_SST_YGBMDYXX where ZZJBH0=LS_DDJSZDBH; end if; if nvl(LS_CZY000,0)>0 then select ZWXM00,BMBH00 into LS_CZYXM0,LS_CZYKS0 from BM_YGBM00 where YGBH00=LS_CZY000; end if; --判断住院病人状态 LS_ERRORS:='[获取住院ID]'; if nvl(P_ZYID00,0)>0 then LS_ZYID00:=P_ZYID00; else begin select SF_SST_ZYID00_YKT('','',trim(P_CARDNO),'0') into LS_ZYID00 from dual; exception when others then LS_ZYID00:=0; end; end if; if nvl(LS_ZYID00,0)<=0 then P_ERRMSG:='未找到有效的住院病人信息!住院号='||P_CARDNO; return; end if; --获取住院病人信息 if nvl(LS_ZYID00,0)>0 then LS_ERRORS:='[查找病人基本信息]'; begin select * into RZYXX from ZY_BRXXB0 where ZYID00=LS_ZYID00; select * into RBRXX from BM_BRXXB0 where BRID00=RZYXX.BRID00; select * into RYBLB from IC_YBBRLB where YBLB00=RBRXX.YBLB00 and FBBH00=RBRXX.FBBH00; exception when others then P_ERRMSG:='未找到有效的住院基本信息(ZY_BRXXB0)!';--输出:错误信息 return; end; end if; LS_BRZJBH:=trim(RBRXX.BRZJBH); --身份证号 LS_YYID00:=SF_SF_GETYYID00(); --获取挂号科室对应医院id begin select aa.YYID00 into LS_BMYYID from BM_BMBM00 aa where aa.BMBH00 =RZYXX.DQKS00; exception when no_data_found then LS_BMYYID:=LS_YYID00; end; LS_BMYYID:=trim(nvl(LS_BMYYID,LS_YYID00));--挂号科室对应的医院ID LS_orgCode:=LS_BMYYID;--机构编号 --bkb526:医疗机构国家码 begin select c.GJBZBM into LS_bkb526 from BM_BMBM00 b,XT_YYXX00 c where b.BMBH00=RZYXX.DQKS00 and b.YYID00=c.YYID00; exception when others then LS_bkb526 := ''; end; --获取病人年龄 begin select SF_YS_CSRQTONL(RBRXX.BRCSRQ) into LS_BRNL00 from dual; exception when others then LS_BRNL00:=0; end; --获取住院天数 begin select to_date(nvl(RZYXX.CYRQ00,to_char(sysdate,'YYYYMMDD')),'YYYYMMDD')-to_date(RZYXX.RYRQ00,'YYYYMMDD') into LS_ZYTS00 from dual; exception when others then LS_ZYTS00:=0; end; --判断住院病人状态 if RZYXX.BRZT00 in ('4','9') then P_ERRMSG:='该病人已出院,无法结算!';--输出:错误信息 return; elsif substrb(RZYXX.BRZT00,1,1) not in ('2','3') then P_ERRMSG:='该病人病区未做出院登记,无法结算';--输出:错误信息 return; end if; if P_DDLSH0 is null or P_DDLSH0 in ('0') then select lpad(SQ_ZY_YBJK00_DDLSH0.nextval,4,'0') into LS_DDLSH0 from dual; LS_DDLSH0:='ZZ'||to_char(sysdate,'YYYYMMDDHH24MISS')||LS_DDLSH0; else LS_DDLSH0:=P_DDLSH0; begin select * into RZYJK from ZY_YBJK00 where DDLSH0=LS_DDLSH0; exception when others then P_ERRMSG:='未找到有效的记录(ZY_YBJK00)!';--输出:错误信息 return; end; end if; select SST_JSDP_JBXX_XTGZH0.nextval into LS_XTGZH0 from dual; --获取账户总余额、现金余额、转账余额 begin select nvl(sum(XJYE00),0),nvl(sum(ZZYE00),0),nvl(sum(ZYE000),0) into LS_XJYE00,LS_ZZYE00,LS_ZHYE00 from ZY_BRZHXX where BRID00=RZYXX.BRID00 and JFLBID=2; exception when others then LS_XJYE00:=0; LS_ZZYE00:=0; LS_ZHYE00:=0; end; --判断是否有没有发送日清单 if SF_ZY_RQDFSSL(RZYXX.ZYID00,'')>0 then P_ERRMSG:='该病人在院内执行了医保日清单发送,请先冲销日清单发送后再出院结算!';--输出:错误信息 return; end if; LS_JKLXBH:=RZYJK.JKLXBM; --接口类型编号 LS_JKLX00:='DD';--RQDSC:日清单上传 DD:多点结算 YD:移动结算 YB:医保结算 LS_BRID00:=RZYXX.BRID00; --BRID00 LS_ZYID00:=RZYXX.ZYID00;--住院ID LS_ZYH000:=RZYXX.ZYH000; --住院号 LS_DBZBM0:=RZYXX.DBZBM0; --单病种编码 LS_FFBZBM:=RZYXX.FFBZBM; --付费病种编码 LS_JZDH00:=0; --结账单号 LS_CSNBID:=''; --参数内部ID(可为空值) LS_OTHERS:=''; --输入其它参数 LS_YEXM00:='全部'; --婴儿姓名 LS_YJJYE0:=0; --结算前预交金余额 LS_CFXMS0:=0; --处方项目数 LS_BQZDBM:=null;--病情诊断编码 LS_BQZDMS:=null;--病情诊断描述 LS_MZLB00:='21';--类别 LS_MZLX00:='P';--mzlx00:P-普通门诊 T-特殊门诊 LS_YSZJDJ:=null;--医生神经等级 LS_SFXTGH:=null;--是否系统挂号 LS_FZXBH0:=null;--分中心编码 --LS_XTGZH0:=LS_DDLSH0;--系统跟踪号 LS_YYKSBM:=null;--医院科室编码 LS_YSZJHM:=null;--医生证件编码 LS_FYJE00:=0;--费用金额 LS_CFJE00:=0;--处方金额 LS_YJJE00:=0;--医技金额 LS_HJJE00:=0;--总金额 LS_BCFYZE:=0;--医保结算金额 LS_XJZFFS:='2';--现金支付方式 1、银行委托支付;2、预缴金支付;3、电子钱包支付 LS_SFSYU0:=null;--是否生育收费 SF_BRXXB0.BXLB00=’ 工伤’ OR SF_BRXXB0.BXLB00=’ 生育’ LS_PJHM:=null;--非税票据号码 LS_PJLX:=null;--非税票据类型 LS_PJZCH:=null;--非税票据注册号 LS_JSH:=null;--非税结算号 LS_ORGAN:=null;--非税机构代码 LS_SERVICE:=null;--非税交易代码 LS_FPUSER:=null;--非税用户名 LS_FPPWD:=null;--非税密码 LS_FHJG00:=null;--非税返回结果 true执行成功、false执行失败 LS_FHXX00:=null;--非税返回响应信息 LS_SZZW00:=null;--非税数字指纹 LS_JDPH00:=null;--非税机打票号 LS_PJHM00:=null;--非税票据号码 LS_PJLX00:=null;--非税票据类型 LS_PJMC00:=null;--非税票据名称 LS_PJZCH0:=null;--非税票据注册号 LS_PJLYID:=null; LS_SFLG00:=null; LS_SFJZLB:=null; LS_AYPXZFKJS:=null; LS_YPXZ00:=null; LS_BRZTQK:=null; LS_SFYGWD:='Y';--是否医改网点 Y/N LS_YJZJE0:=0; LS_DQBQ00:=RZYXX.DQBQ00;--当前病区编码 LS_DQKS00:=RZYXX.DQKS00;--当前科室编码 --当前科室编码和科室名称 begin select D.BMMC00,D.YBKSBH into LS_DQKSMC,LS_YYKSBM from BM_BMBM00 D where D.BMBH00=LS_DQKS00; exception when others then LS_DQKSMC:= ''; LS_YYKSBM:= ''; end; --当前病区编码和病区名称 begin select D.BMMC00 into LS_DQBQMC from BM_BMBM00 D where D.BMBH00=LS_DQBQ00; exception when others then LS_DQBQMC := ''; end; LS_GHKSMC:=substrb(LS_DQKSMC,1,50); /* --门诊类别 11 普通门诊 51 生育门诊 12 急诊 52 生育住院 13 门诊大病(特殊病种门诊) 61 失业门诊 21 普通住院 62 失业住院 22 特殊病种住院 71 工伤门诊 23 转外诊治住院 72 工伤住院 31 家庭病床 81 体检 41 定点药店购药 24 择日住院 --住院类别 21 普通住院 22 特殊病种住院 31 家庭病床 52 生育住院 62 失业住院 72 工伤住院 */ if RZYXX.FFBZBM is not null then LS_SFTSMZ:='Y';--是否特殊门诊 Y是 N否 LS_SFTSBZ:='Y';--是否特殊病种 Y是 N否 LS_MZLB00:='22';--类别 LS_MZLX00:='T';--mzlx00:P-普通门诊 T-特殊门诊 end if; LS_YJJYE0:=nvl(LS_XJYE00,0); --结算前预交金余额(现金余额) LS_DZQBYE:=nvl(LS_ZZYE00,0); --结算前预交金余额(转账余额) LS_XTGZH0:=substrb(LS_JKLX00||''||'ZY'||LS_XTGZH0,1,20); LS_ZYLSH0:=trim(RZYXX.YBZYH0);--住院流水号 LS_PTBCTS:=LS_ZYTS00;--普通病床日 LS_CRBCTS:='0';--传染病床日 LS_ZYLB00:='21';--住院类别(普通,家庭病床) --执行业务过程SP_ZY_YBJK00_DATA /* PDDLSH0 in varchar2 ,--输入:订单流水号 PJKLXBH in number ,--输入:接口类型编号 PJKLX00 in varchar2 ,--输入:RQDSC:日清单上传 DD:多点结算 YD:移动结算 YB:医保结算 PBRID00 in number ,--输入:BRID00 PZYID00 in number ,--输入:住院ID PZYH000 in varchar2 ,--输入:住院号 PJZDH00 in number ,--输入:结账单号 PCSNBID in varchar2 ,--输入:输入参数内部ID(可为空值) POTHERS in varchar2 ,--输入:输入其它参数 --PYEXM00 in varchar2 default '全部' , --婴儿姓名 PID0000 out number ,--序列号ID PSYSMSG out varchar --存储过程提示的错误信息 */ --医保患者获取ZY_YBFSMX相关数据,改为统一调用SP_ZY_YBJK00_FJ0000生成 if RZYXX.FBBH00=3 then select min(DJH000),max(DJH000),min(CZRQ00),max(CZRQ00) into LS_QSDJH0,LS_ZZDJH0,LS_QSRQ00,LS_ZZRQ00 from ZY_FYMX00 where ZYID00=LS_ZYID00 and JZDH00+0=0; LS_ERRORS:='执行过程[SP_ZY_YBJK00_FJ0000]'; LS_EXESQL:='begin SP_ZY_YBJK00_FJ0000(:v1,:v2,:v3,:v4,:v5,:v6,:v7,:v8,:v9,:v10,:v11,:v12,:v13); end;'; execute immediate LS_EXESQL using in out LS_QSDJH0,in out LS_ZZDJH0,in LS_JZDH00,in out LS_ZYID00, in LS_QSRQ00,in LS_ZZRQ00,out LS_ID0000,in '2', out LS_OTHERS,out LS_ERRMSG,in '全部',in '1',in 0; if LS_OTHERS is null then LS_ERRMSG := null; Update ZY_YBFSMX set DDLSH0=LS_DDLSH0, MXID00=nvl(MXID00,SQ_ZY_YBFSZX_MXID00.nextval), YYKSBM=nvl(LS_DQKS00,YYKSBM), YYKSMC=nvl(LS_DQKSMC,YYKSMC), YYBQBM=nvl(LS_DQBQ00,YYBQBM), YYBQMC=nvl(LS_DQBQMC,YYBQMC) where ID0000=LS_ID0000 and ZYID00=LS_ZYID00 and nvl(DDLSH0,'0')='0'; else LS_ERRMSG := LS_OTHERS||';'||LS_ERRMSG; end if; else LS_ERRORS:='执行过程[SP_ZY_YBJK00_DATA]'; LS_EXESQL:='begin SP_ZY_YBJK00_DATA(:v1,:v2,:v3,:v4,:v5,:v6,:v7,:v8,:v9,:v10,:v11); end;'; execute immediate LS_EXESQL using in LS_DDLSH0,in LS_JKLXBH,in LS_JKLX00,in LS_BRID00, in LS_ZYID00,in LS_ZYH000,in LS_JZDH00,in LS_CSNBID, in LS_OTHERS,out LS_ID0000,out LS_ERRMSG; end if; if LS_ERRMSG is not null then P_ERRMSG:=LS_ERRMSG;--输出:错误信息 return; else --查找中间表数据 select count(1) as CFXMS0,sum(XMJE00) as BCFYZE into LS_CFXMS0,LS_BCFYZE from ZY_YBFSMX where ID0000=LS_ID0000 and ZYID00=LS_ZYID00; if nvl(LS_CFXMS0,0)<=0 then P_ERRMSG:='住院床边结算中间表(ZY_YBFSMX)未找到有效明细数据!';--输出:错误信息 return; end if; --2020.08.14 取费用明细表合计金额 select nvl(sum(A.HJJE00),0)HJJE00 into LS_HJJE00 from ZY_FYMX00 A where 1=1 and A.ZYID00 = LS_ZYID00 and A.JZDH00+0=0; if nvl(LS_HJJE00,0)=0 and nvl(LS_BCFYZE,0)>0 then LS_HJJE00:=nvl(LS_BCFYZE,0); end if; /* 20011:门诊刷卡 20012:门诊挂号 20013:门诊挂号冲销 20014:门诊收费 20015:门诊收费冲销 20021:住院刷卡 20022:入院登记 20023:入院登记冲销 20024:住院预结算 20025:住院收费 20026:住院收费冲销 20027:出院登记 20028:出院登记冲销 20001:门诊交易查询 20002:门诊收费明细查询 20003:住院交易查询 20004:住院收费明细查询 */ --查找ZY_YBJK00,未找到插入记录 select count(1) into LS_COUNT0 from ZY_YBJK00 where DDLSH0=LS_DDLSH0 and ZYID00=LS_ZYID00; if nvl(LS_COUNT0,0)<=0 then LS_ERRORS:='[插入ZY_YBJK00]'; insert into ZY_YBJK00(DDLSH0,ID0000,JKLXBM,JKLXMC,JKLX00,JKMXLX,CZRQ00,CZSJ00,CZY000,CZYXM0,YBZYH0,JZDH00, BRID00,ZYID00,ZYH000,BRXM00,BRXB00,BRZJBH,YBKH00,YBID00,CZLXBZ,INCS00,HJJE00,JKNBCS, JKQQCS,JKFHCS,DBZBM0,YBMC00) values(LS_DDLSH0,LS_ID0000,'20025','住院自助结算','ZZ','自助结算',LS_CZRQ00,LS_CZSJ00,LS_CZY000,LS_CZYXM0,RZYXX.YBZYH0,LS_JZDH00, RZYXX.BRID00,RZYXX.ZYID00,RZYXX.ZYH000,RBRXX.BRXM00,RBRXX.BRXB00,RBRXX.BRZJBH,RBRXX.YBKH00,RBRXX.YBID00,'0',null,0,null, null,null,RZYXX.FFBZBM,null); end if; LS_ERRORS:='[插入SST_JSDP_JBXX]'; delete SST_JSDP_JBXX where CARDNO=trim(LS_ZYH000) and BRID00=LS_BRID00; delete SST_JSDP_JSMX where CARDNO=trim(LS_ZYH000) and BRID00=LS_BRID00; --zhangyc 20200717 修改 LS_BQBM00:=substrb(trim(RZYXX.FFBZBM),1,20); --病情编码 LS_BQMC00:=substrb(trim(RZYXX.DBZMC0),1,50); --病情名称 if (RZYXX.RYLB00 = '生育') or (RZYXX.FMBQBH <> '') or (RZYXX.FMBQBH is not null ) then LS_BQBM00:=substrb(trim(RZYXX.FMBQBH),1,20); --病情编码 if LS_BQBM00 is not null then begin select substrb(trim(MC0000),1,50) into LS_BQMC00 from bm_tyzd00 where zdmc00='生育病种名称维护' and BH0000=LS_BQBM00; exception when others then LS_BQMC00:=null; end; end if; end if; --新医保接口变量赋值 LS_ERRORS:='[新医保接口变量赋值]'; select SQ_ZY_YBJKRZ_YBJKID.nextval into LS_YBJKID from dual; --医保接口ID(HIS内部使用) LS_YBBZ00:='0'; --varchar2(2) ,--自助机填写:医保标志(区分新旧医保)1:新医保,0:旧医保 LS_aaz501:=null; --varchar2(32) ,--自助机填写:卡识别码 if LS_JKLXBH=20024 then --20024:住院预结算 20025:住院收费 LS_bke286:='0'; else LS_bke286:='2'; --varchar2(3) ,--自助机填写:结算标识 0:预结算 1:中途结算 2:门诊结算/出院结算 end if; LS_bke241:='51'; --varchar2(3) ,--自助机填写:数据来源 50:收费终端 51:自助终端 52:医生工作站 53:移动支付 if trim(RBRXX.YBKH00) is not null and trim(RBRXX.YBKH00) not in ('0') then LS_aaz500:=trim(RBRXX.YBKH00); else LS_aaz500:=null; --varchar2(30) ,--his填写:社会保障卡号 end if; if trim(RBRXX.YBID00) is not null and trim(RBRXX.YBID00) not in ('0') then LS_aac002:=trim(RBRXX.YBID00); else LS_aac002:=null; --varchar2(30) ,--his填写:证件号码(社会保障号) end if; LS_aac003:=substrb(RBRXX.BRXM00,1,50); --varchar2(50) ,--his填写:姓名 if RBRXX.BRXB00='男' then LS_aac004:='1'; else LS_aac004:='2'; --varchar2(1) ,--his填写:性别 1男 2女 end if; LS_akc023:=LS_BRNL00; --number(3) ,--his填写:年龄 LS_aka078:='20'; --varchar2(3) ,--his填写:医疗就诊方式 10:门(急)诊 20:住院 81:生育门诊 82:生育住院91:工伤门诊 92:工伤住院 50:特殊门诊 LS_aka130:='21'; --varchar2(3) ,--his填写:医疗类别 11:普通门诊 12:急诊、13:门诊慢(特)病种 16:急诊观留床 21:普通住院 29:择日住院 52:生育住院 LS_bke298:=LS_YBJKID; --varchar2(32) ,--his填写:his收费单据流水号 LS_bke042:=LS_YBJKID; --varchar2(32) ,--his填写:his流水号 LS_aab034:=substrb(RBRXX.XZQH00,1,8); --varchar2(8) ,--医保返回:所属经办机构编码(分中心编码) LS_aab034_mc:=substrb(RYBLB.YBMC00,1,100); --varchar2(100) ,--医保返回:所属经办机构编码名称(分中心名称) LS_akc069:='0'; --varchar2(3) ,--his填写:急诊标志 0 否,1 是 LS_akc066:='0'; --varchar2(3) ,--his填写:外伤标志 0 否,1 是 LS_aaz149:=substrb(nvl(LS_DBZBM0,LS_FFBZBM),1,500); --varchar2(20) ,--his填写:特殊病种编号 LS_aka121:=substrb(RZYXX.DBZMC0,1,50); --varchar2(50) ,--his填写:特殊病种名称 LS_akf001:=null; --varchar2(50) ,--his填写:院内科室编码 LS_akf002:=null; --varchar2(50) ,--his填写:院内科室名称 LS_bkf237:=null; --varchar2(50) ,--his填写:医保科室编码 LS_bkf238:=null; --varchar2(50) ,--his填写:医保科室名称 LS_bkc014:=to_char(sysdate,'YYYYMMDD'); --varchar2(8) ,--his填写:实际就诊日期 LS_bkc171:=to_char(sysdate,'HH24MISS'); --varchar2(6) ,--his填写:实际就诊时间 LS_akc192:=null; --varchar2(14) ,--his填写:实际门诊/入院日期 LS_aae030:=null; --varchar2(8) ,--his填写:择日住院起始日期 LS_aae031:=null; --varchar2(8) ,--his填写:择日住院截止日期 LS_bka190:='Y'; --varchar2(2) ,--his填写:是否共济扣款 y:共济扣款 n:不共济扣款 LS_akc193:=null; --varchar2(50) ,--his填写:入院登记主诊断编码 LS_bka535:='110'; --varchar2(3) ,--医师诊查费等级 110 普通医师 111 主治医师 112 副主任医师 113 主任医师 114 专家 120 普通医师[中医辩证] 121 主治医师[中医辩证] 122 副主任医师[中医辩证] 123 主任医师[中医辩证] 124 国医大师[中医辩证] LS_bkea92:=null; --varchar2(6) ,--his填写:保健体检项目编号 LS_aka042:=null; --varchar2(3) ,--his填写:住院类别 LS_akc194:=to_char(sysdate,'YYYYMMDDHH24MISS'); --varchar2(14) ,--his填写:出院日期 LS_bke078:='09'; --varchar2(3) ,--his填写:离院方式bke078:01:医嘱离院02:医嘱转院03:医嘱转社区卫生服务机构/乡镇卫生院04:非医嘱离院05:死亡09:其他 LS_bke058:=LS_ZYTS00; --varchar2(4) ,--his填写:住院天数 LS_amc029:=null; --varchar2(3) ,--his填写:计划生育手术类别 LS_amc026:=null; --varchar2(3) ,--his填写:生育类别 LS_amc028:=null; --varchar2(3) ,--his填写:胎儿数 LS_amc020:=null; --varchar2(8) ,--his填写:计划生育手术或生育日期 LS_bmc041:=null; --varchar2(3) ,--his填写:怀孕天数 LS_bkc007:=null; --varchar2(18) ,--his填写:医疗服务人员证件号码 LS_bkc006:=null; --varchar2(50) ,--his填写:医疗服务人员姓名 LS_itemcount:=null; --number(3) ,--his填写:明细项目数量 if trim(RZYXX.YBZYH0) is not null and trim(RZYXX.YBZYH0) not in ('0') then LS_akc190:=substrb(trim(RZYXX.YBZYH0),1,16); else LS_akc190:=null; --varchar2(16) ,--医保返回:医保门诊挂号流水号/住院登记流水号 end if; LS_bke297:=null; --varchar2(20) ,--医保返回:医保明细流水号 LS_aae072:=null; --varchar2(16) ,--医保返回:医保收费流水号 if trim(RBRXX.YBID00) is null and trim(RBRXX.YBID00) not in ('0') then LS_aac999:=substrb(trim(RBRXX.YBID00),1,20); else LS_aac999:=null; --varchar2(20) ,--医保返回:个人管理码地市唯一标识码(id0000) end if; LS_bka531:=null; --varchar2(1) ,--医保返回: 是否精准扶贫对象 LS_bkc001:=null; --varchar2(3) ,--医保返回:人员待遇类别 LS_bkc001_mc:=null; --varchar2(30) ,--医保返回:人员待遇类别名称 LS_bkc026:=null; --varchar2(3) ,--医保返回:医疗待遇状态 LS_bkc026_mc:=null; --varchar2(30) ,--医保返回:医疗待遇状态名称 LS_bke174:=null; --varchar2(3) ,--医保返回:异地就医类型 LS_bke174_mc:=null; --varchar2(30) ,--医保返回:异地就医类型名称 LS_akc227:=0; --number(12,2) ,--医保返回:医疗费总金额=个人现金支付金额+个人账户支付金额+基金支付总额 LS_bkc040:=0; --number(12,2) ,--医保返回:个人现金支付金额(实付现金) LS_bkc041:=0; --number(12,2) ,--医保返回:个人账户支付金额 LS_bkc102:=0; --number(12,2) ,--医保返回:医保基金支付总额=统筹基金支付+商保基金支付+公务员医疗补助+精准扶贫医疗叠加+医疗救助基金+其他基金支付+企业补充 LS_bkc045:=0; --number(12,2) ,--医保返回:其中:统筹基金支付 LS_bkc052:=0; --number(12,2) ,--医保返回:其中:大病保险基金支付(商保支付或商业保险) LS_bkc059:=0; --number(12,2) ,--医保返回:公务员医疗补助 LS_bkc062:=0; --number(12,2) ,--医保返回:其中:精准扶贫医疗叠加 LS_bkc060:=0; --number(12,2) ,--医保返回:其中:医疗救助基金 LS_ake173:=0; --number(12,2) ,--医保返回:其中:其他基金支付 LS_ake026:=0; --number(12,2) ,--医保返回:其中:企业补充 LS_bke921:=null; --varchar2(40) ,--医保返回:(家庭健康)共济账户扣款人 LS_bke922:=null; --varchar2(40) ,--医保返回:(家庭健康)共济账户扣款人金额 LS_bkc166:=0; --number(12,2) ,--医保返回:(其中)一般诊疗费补偿金额 LS_bkc167:=0; --number(12,2) ,--医保返回:(其中)一般诊疗费个人支付金额 LS_bkc011:=0; --number(12,2) ,--医保返回:个人自费(非医保费用) LS_akc087:=0; --number(12,2) ,--医保返回:个人账户余额 LS_bkc591:=0; --number(12,2) ,--医保返回:家庭共济账户余额 LS_bkc075:=0; --number(12,2) ,--医保返回:家庭共济账户支付 LS_bkc054:=0; --number(12,2) ,--医保返回:商保账户支付 LS_bkc612:=0; --number(12,2) ,--医保返回:补助基金支付bkc612=bkc052 大病保险基金支付+bkc059公务员医疗补助+bkc062精准扶贫医疗叠加+bkc060医疗救助基金+ake173 其他基金支付+ake026企业补充+bkc061保健基金支付 LS_bkc061:=0; --number(12,2) ,--医保返回:其中:保健基金支付 LS_bkc077:=0; --number(12,2) ,--医保返回:其中:账户支付 LS_bkc076:=0; --number(12,2) ,--医保返回:其中:健康账户支付 LS_ake094:=0; --number(12,2) ,--医保返回:个人自付 LS_bkc160:=0; --number(12,2) ,--医保返回:公务员体检帐户余额 LS_bkc079:=0; --number(12,2) ,--医保返回:健康账户余额 LS_bkec26:=0; --number(12,2) ,--医保返回:职工医疗互助 LS_bkc101:=0; --number(12,2) ,--医保返回:除外耗材范围内费用 LS_bkc125:=0; --number(12,2) ,--医保返回:超标床位费 LS_bkc053:=0; --number(12,2) ,--医保返回:商保现金支付 LS_aka151:=0; --number(12,2) ,--医保返回:统筹支付医保费用起付标准 LS_aka150:=0; --number(3) ,--医保返回:本年度住院次数 LS_bka193:=null; --varchar2(3) ,--医保返回:保健级别 LS_bka193_mc:=null; --varchar2(50) ,--医保返回:保健级别名称 LS_bka555:=null; --varchar2(3) ,--医保返回:对账数据分类 LS_bka188:=null; --varchar2(2) ,--医保返回:是否进入单病种结算 LS_ake007:=null; --varchar2(8) ,--医保返回:费用发生日期(结算日期) LS_bae029:=null; --varchar2(4) ,--医保返回:费用发生时间(结算时间) LS_aae011:=null; --varchar2(20) ,--医保返回:收费人 LS_bka079:=null; --number(12,2) ,--his填写:收付费定额 LS_akc196:=null; --varchar2(50) ,--his填写:出院主要诊断 LS_bkc038:=null; --varchar2(50) ,--his填写:出院次要诊断 LS_bkc039:=null; --varchar2(50) ,--his填写:出院第三诊断 LS_ake021:=null; --varchar2(50) ,--his填写:出院诊断医生 LS_bkc511:=null; --varchar2(50) ,--his填写:医保签约号 LS_bae113:=null; --varchar2(50) ,--his填写:签约受理人身份证号 LS_bkc023:=null; --varchar2(50) ,--his填写:签约人关系 LS_itemcountys:=null; --varchar2(4) ,--his填写:医生数量 LS_bke598:=null; --varchar2(14) ,--his填写:签约开始日期 LS_bke599:=null; --varchar2(14) ,--his填写: 签约截至日期 LS_bkc512:=null; --varchar2(20) ,--his填写:医院签约号 LS_aae005:=null; --varchar2(20) ,--his填写:联系电话 LS_aae006:=null; --varchar2(200) ,--his填写:通讯地址 LS_bke466:=null; --varchar2(100) ,--his填写:签约病种 LS_bke467:=null; --varchar2(200) ,--his填写: 服务内容 LS_bke468:=null; --varchar2(10) ,--his填写: 服务方式 LS_OutYbghJson:=null; --varchar2(2000) ,--医保返回:医保登记返回的消息串 LS_OutYbsfJson:=null; --varchar2(4000) --医保返回:医保收费返回的消息串 --类别编码:0:普通 1:生育 2:工伤 3:体检 4:单病种 5:择日住院 if LS_RYLB00 = '普通' or trim(LS_RYLB00) is null then LS_BRLBBH := '0'; elsif LS_RYLB00 = '生育' or instrb(LS_RYLB00,'生育') > 0 then LS_BRLBBH := '1'; elsif LS_RYLB00 = '工伤' then LS_BRLBBH := '2'; else LS_BRLBBH := '0'; end if; begin Select ZWXM00,YSZJHM,YBYGDM into LS_YSXM00,LS_YSZJHM,LS_YBYGDM from BM_YGBM00 where YGBH00=decode(nvl(RZYXX.SXYS00,0),0,RZYXX.ZZYS00,RZYXX.SXYS00);--先取住院医生 exception when others then LS_YSXM00:=null; LS_YSZJHM:=null; end; LS_bkc006:=substrb(LS_YSXM00,1,50);--医疗服务人员姓名 LS_bkc007:=substrb(LS_YSZJHM,1,18);--医疗服务人员证件号码 --2021.10.10 医生证件编码转化为医师代码 if LS_BKC007_FSYSGJBM in ('2','3') and trim(LS_YBYGDM) is not null then LS_YSZJHM := substrb(trim(LS_YBYGDM),1,18); LS_bkc007 := substrb(trim(LS_YBYGDM),1,18); end if; --医保科室编码 if LS_YYKSBMFSLX='1' then --新医保医院科室编码类型0:(akf001:医保编码bkf237:院内编码)1:(akf001:院内编码bkf237:医保编码)默认值:0 LS_AKF001:=substrb(LS_DQKS00,1,50);--院内科室编码 LS_AKF002:=substrb(LS_DQKSMC,1,50);--院内科室名称 LS_BKF237:=substrb(LS_YYKSBM,1,50);--医保科室编码 LS_BKF238:=substrb(LS_DQKSMC,1,50);--医保科室名称 else LS_AKF001:=substrb(LS_YYKSBM,1,50);--医保科室编码 LS_AKF002:=substrb(LS_DQKSMC,1,50);--医保科室名称 LS_BKF237:=substrb(LS_DQKS00,1,50);--院内科室编码 LS_BKF238:=substrb(LS_DQKSMC,1,50);--院内科室名称 end if; --医疗就诊方式 10:门(急)诊 20:住院 81:生育门诊 82:生育住院91:工伤门诊 92:工伤住院 50:特殊门诊 LS_AKA078:=SF_ZY_GETYBSXZD(LS_ZYID00,'1','aka078',LS_BQBM00,LS_BRLBBH,''); --医疗类别11:普通门诊12:急诊13:门诊慢(特)病种16:急诊观留床21:普通住院29:择日住院31:家庭病床34:按病种住院42:处方购药43:非处方购药A1:体检52:生育住院 LS_AKA130:=SF_ZY_GETYBSXZD(LS_ZYID00,'1','aka130',LS_BQBM00,LS_BRLBBH,''); --择日住院处理 if LS_AAE030 is not null and LS_AAE031 is not null then LS_AKA130 := '29'; end if; --数据来源bke241: 50:收费终端 51:自助终端 52:医生工作站 53:移动支付 LS_BKE241:=SF_ZY_GETYBSXZD(LS_ZYID00,'1','bke241',LS_BQBM00,LS_BRLBBH,''); --身份认证类型bke284:01:读卡 02:融合码 06:医保码 20:医疗证 LS_BKE284:=SF_ZY_GETYBSXZD(LS_ZYID00,'1','bke284',LS_BQBM00,LS_BRLBBH,''); --单病种医疗类别判断 if LS_DBZBM0 is not null or LS_FFBZBM is not null then if LS_BRLBBH = '1' then --生育单病种 LS_AKA130 := trim(SF_XT_TYZDMC('医保新接口参数设置','aka130_SYFMDBZ')); end if; if LS_BRLBBH <> '1' or LS_AKA130 is null then --单病种 LS_AKA130 := SF_XT_TYZDMC('医保新接口参数设置','aka130_DBZ'); end if; if LS_AKA130 is null then --默认为34 LS_AKA130:='34';--34:按病种住院 end if; end if; --350128:平潭 359900:省直(K) 350100:福州(A) 350300:莆田(B) 350500:泉州(C) 350200:厦门(D) 350600:漳州(E) 350800:龙岩(F) 350400: 三明(G) 350700:南平(H) 350900:宁德(J) if trim(LS_aaz500) is not null then LS_KHQZ00:=substrb(LS_aaz500,1,1); end if; if trim(RBRXX.XZQH00) is not null and trim(RBRXX.XZQH00) not in ('本地') then LS_aab034:=substrb(trim(RBRXX.XZQH00),1,8); else if LS_KHQZ00='K' then LS_aab034:='359900'; --省直 elsif LS_KHQZ00='A' then LS_aab034:='350100'; --福州 elsif LS_KHQZ00='B' then LS_aab034:='350300'; --莆田 elsif LS_KHQZ00='C' then LS_aab034:='350500'; --泉州 elsif LS_KHQZ00='D' then LS_aab034:='350200'; --厦门 elsif LS_KHQZ00='E' then LS_aab034:='350600'; --漳州 elsif LS_KHQZ00='F' then LS_aab034:='350800'; --龙岩 elsif LS_KHQZ00='G' then LS_aab034:='350400'; --三明 elsif LS_KHQZ00='H' then LS_aab034:='350700'; --南平 elsif LS_KHQZ00='J' then LS_aab034:='350900'; --宁德 end if; end if; --获取病种对应的国家编码BAE465:国家病种代码 if trim(LS_AAZ149) is not null then begin select BAE465,BAEMC0 into LS_BAE465,LS_BAEMC0 from BM_BZSFBZ A where A.FFBZBM=LS_AAZ149 and A.FBBH00=RYBLB.FBBH00 and A.YBZXLB=RYBLB.YBZXLB and rownum=1; exception when others then LS_BAE465:=null; LS_BAEMC0:=null; end; end if; --2021.06.04 判断aac002是否是身份证 if SP_SF_CHECKSFZH(LS_BRZJBH)=1 and length(LS_BRZJBH)=18 then LS_aac002:=trim(LS_BRZJBH); end if; -- update ZY_YBFSMX set YPYL00='1' where ID0000=LS_ID0000 and ZYID00=LS_ZYID00 and (trim(YPYL00) is null or trim(YPYL00) in ('*')); update ZY_YBFSMX set YPPL00='9999' where ID0000=LS_ID0000 and ZYID00=LS_ZYID00 and (trim(YPPL00) is null or trim(YPPL00) in ('*')); --医保发票是否发送名称, 1是0否 if LS_YBJKFPLBCS = '1' and RZYXX.FBBH00=3 then update ZY_YBFSMX a set a.FPXMMC=nvl((select max(XMMC00) from BM_YBFPXM b where b.BH0000=a.FPXMBH and b.YBZXLB=RYBLB.YBZXLB and rownum=1),a.FPXMMC) where A.ID0000=LS_ID0000 and A.ZYID00=LS_ZYID00 and A.FPXMBH is not null; end if; --2021.06.02 跟收费窗口一样控制,bke042(his流水号)参数不为Y 赋值院内zyid00 if nvl(LS_ZYID00,0)>0 and LS_HISLSHQZFS not in ('Y') then LS_BKE042:=LS_ZYID00; end if; --2021.09.25 aaz149(病种编码)是否转化为bae465(国家编码)[BM_DBZDEB或BM_TSBZB0.BAE465] 1:门诊开启 2:住院开启 3:门诊和住院都开启 0:不开启 默认值:0 if LS_Change_aaz149_bae465 in ('2','3') then if trim(LS_bae465) is not null and trim(LS_AAZ149) is not null then LS_AAZ149:=substrb(trim(LS_bae465),1,30); end if; end if; insert into SST_JSDP_JBXX( XTGZH0,BRID00,FBBH00,YBZXLB,YBLB00,YBMC00,YBKH00,YBID00,SFZHAO,CARDNO, JZDH00,GHID00,GHH000,ID0000,XMING0,XBIE00,MZLSH0,BQBM00,BQMC00,BRNL00, BCKBCS,BCSFCS,GHKSMC,SFTSMZ,SFTSBZ,YSXM00,BCFYZE,XJZFFS,JSXXTS,SFSYU0, SERIALNO,ZDBH00,QBKKQR,HJJE00,KSBM00,YSZJHM,YJJYE0,DZQBYE,CFXMS0,SFXTGH,FZXBH0, YYDJH0,YYKSBM,BQZDBM,BQZDMS,MZLB00,YSZJDJ,PJHM,PJLX,PJZCH,JSH, ORGAN,SERVICE,FPUSER,FPPWD,FHJG00,FHXX00,SZZW00,JDPH00,PJHM00,PJLX00, PJMC00,PJZCH0,SFYGWD,MZLX00,ZYH000,ZYID00,YBZYH0,MZZYBZ,DDLSH0, ZYLSH0,PTBCTS,CRBCTS,ZYLB00,CZRQ00,CZSJ00, YBJKID,YBBZ00,aaz501,bke286,bke241,aaz500,aac002,aac003,aac004,akc023, aka078,aka130 ,bke298 ,bke042,aab034,aab034_mc,akc069,akc066,aaz149,aka121, akf001,akf002,bkf237,bkf238,bkc014,bkc171,akc192,aae030,aae031,bka190, akc193,bka535,bkea92,aka042,akc194,bke078,bke058,amc029,amc026,amc028, amc020,bmc041,itemcount,akc190,bke297,aae072,aac999,bka531,bkc001,bkc001_mc, bkc026,bkc026_mc,bke174 ,bke174_mc,akc227,bkc040,bkc041,bkc102,bkc045,bkc052, bkc059,bkc062,bkc060,ake173,ake026,bke921,bke922,bkc166,bkc167,bkc011, akc087,bkc591,bkc075,bkc054,bkc612,bkc061,bkc077,bkc076,ake094,bkc160, bkc079,bkec26,bkc101,bkc125,bkc053,aka151,aka150,bka193,bka193_mc,bka555, bka188,ake007,bae029,aae011,bka079,akc196,bkc038,bkc039,ake021,bkc511, bae113,bkc023,itemcountys,bke598,bke599,bkc512,aae005,aae006,bke466,bke467, bke468,OutYbghJson,OutYbsfJson,bkc006,bkc007,bke284,bkeg23,BAE465,yyid00,orgCode,patientType,AKB065,bkb526) values(LS_XTGZH0,RBRXX.BRID00,RYBLB.FBBH00,RYBLB.YBZXLB,RYBLB.YBLB00,RYBLB.YBMC00,trim(RBRXX.YBKH00),trim(RBRXX.YBID00),trim(RBRXX.BRZJBH), trim(RZYXX.ZYH000),LS_JZDH00,RZYXX.ZYID00,RZYXX.ZYH000,trim(RBRXX.YBKH00),RBRXX.BRXM00,decode(RBRXX.BRXB00,'男','1','0'),trim(RZYXX.YBZYH0), nvl(LS_BQBM00,'无'),nvl(LS_BQMC00,'无'),LS_BRNL00,0,0,nvl(LS_GHKSMC,'无'),LS_SFTSMZ,LS_SFTSBZ,nvl(LS_YSXM00,'无'), LS_BCFYZE,LS_XJZFFS,'无','N','无',P_ZDBH00,LS_SFSYU0,LS_HJJE00,LS_YYKSBM,LS_YSZJHM, LS_YJJYE0,LS_DZQBYE,LS_CFXMS0,LS_SFXTGH,LS_FZXBH0,0,LS_YYKSBM,LS_BQZDBM,LS_BQZDMS,LS_MZLB00,LS_YSZJDJ, LS_PJHM,LS_PJLX,LS_PJZCH,LS_JSH,LS_ORGAN,LS_SERVICE,LS_FPUSER,LS_FPPWD,LS_FHJG00,LS_FHXX00,LS_SZZW00,LS_JDPH00, LS_PJHM00,LS_PJLX00,LS_PJMC00,LS_PJZCH0,LS_SFYGWD,LS_MZLX00,trim(LS_ZYH000),RZYXX.ZYID00,trim(RZYXX.YBZYH0),'1',LS_DDLSH0, LS_ZYLSH0,LS_PTBCTS,LS_CRBCTS,LS_ZYLB00,LS_CZRQ00,LS_CZSJ00, LS_YBJKID,LS_YBBZ00,LS_aaz501,LS_bke286,LS_bke241,LS_aaz500,LS_aac002,LS_aac003,LS_aac004,LS_akc023, LS_aka078,LS_aka130 ,LS_bke298 ,LS_bke042,LS_aab034,LS_aab034_mc,LS_akc069,LS_akc066,LS_aaz149,LS_aka121, LS_akf001,LS_akf002,LS_bkf237,LS_bkf238,LS_bkc014,LS_bkc171,LS_akc192,LS_aae030,LS_aae031,LS_bka190, LS_akc193,LS_bka535,LS_bkea92,LS_aka042,LS_akc194,LS_bke078,LS_bke058,LS_amc029,LS_amc026,LS_amc028, LS_amc020,LS_bmc041,LS_itemcount,LS_akc190,LS_bke297,LS_aae072,LS_aac999,LS_bka531,LS_bkc001,LS_bkc001_mc, LS_bkc026,LS_bkc026_mc,LS_bke174 ,LS_bke174_mc,LS_akc227,LS_bkc040,LS_bkc041,LS_bkc102,LS_bkc045,LS_bkc052, LS_bkc059,LS_bkc062,LS_bkc060,LS_ake173,LS_ake026,LS_bke921,LS_bke922,LS_bkc166,LS_bkc167,LS_bkc011, LS_akc087,LS_bkc591,LS_bkc075,LS_bkc054,LS_bkc612,LS_bkc061,LS_bkc077,LS_bkc076,LS_ake094,LS_bkc160, LS_bkc079,LS_bkec26,LS_bkc101,LS_bkc125,LS_bkc053,LS_aka151,LS_aka150,LS_bka193,LS_bka193_mc,LS_bka555, LS_bka188,LS_ake007,LS_bae029,LS_aae011,LS_bka079,LS_akc196,LS_bkc038,LS_bkc039,LS_ake021,LS_bkc511, LS_bae113,LS_bkc023,LS_itemcountys,LS_bke598,LS_bke599,LS_bkc512,LS_aae005,LS_aae006,LS_bke466,LS_bke467, LS_bke468,LS_OutYbghJson,LS_OutYbsfJson,LS_bkc006,LS_bkc007,LS_bke284,LS_bkeg23,LS_BAE465,LS_yyid00,LS_orgCode,LS_patientType,LS_BCFYZE,LS_bkb526); LS_ERRORS:='[插入SST_JSDP_JSMX]'; insert into SST_JSDP_JSMX( XTGZH0,XMBH00,SFYBXM,FPXMBH,XMMC00,XMDJ00,XMSL00,XMJE00,XMDW00,XMGG00, SFKF00,XMRQ00,XMSJ00,XMKS00,YSXM00,GNAME0,GRZFBL,YYTSXX,SFLSCF,FPXMMC, CARDNO,YPYL00,YPTS00,YPPL00,YSZJHM,SFYJZ0,BRID00,SFTHML,ZFFSBZ,CFHAO0, JX0000,DCYYDW,QYZL00,QYZLDW,YLTS00,GYTJ00,QDFSBZ, bke162,bkea97,bke045,bke046,bke181,bke182,aka063,aka074,aka070,aka067, akc225,akc226,akc227,aka071,aka072,aka073,akc221,bkec27,akc229,akf001, akf002,bkf237,bkf238,bkc006,bkc007,bkc541,bkea96,bke506,bke507,bke508, bke509,bkeaa0,bkeaa1,bkeaa2,bkeaa3,bka001,BKEH83,BKEH05,BKEH06,BAKXML, BKC507,BKC506 ) select LS_XTGZH0,XMBH00,nvl(SFYB00,'N'),nvl(FPXMBH,YNFPBH),XMMC00,XMDJ00,XMSL00,XMJE00,XMDW00,XMGG00, 'Y',CZRQ00,nvl(CZSJ00,to_char(sysdate,'HH24:MI:SS')),YYBQMC,YSXM00,null,ZFBL00,null,FLAG00,substrb(FPXMMC,1,30), trim(LS_ZYH000),YPYL00,YPTS00,YPPL00,YSZJHM,'Y',LS_BRID00,'0','N',CFHAO0, JX0000,DCYYDW,QYZL00,QYZLDW,YLTS00,GYTJ00,'N', LS_YBJKID as BKE162, --bke162 varchar2(20) ,--his 处方号 SQ_ZY_YBJKMX_JKMXID.nextval as BKEA97, --bkea97 varchar2(50) ,--his 处方明细流水号 substrb(trim(A.XMBH00),1,50) as BKE045, --bke045 varchar2(20) ,--收费项目编码 substrb(trim(A.XMMC00),1,100) as BKE046, --bke046 varchar2(100) ,--收费项目名称 substrb(nvl(A.BKE181,nvl(to_char(A.SFXMID),trim(A.XMBH00))),1,50) as BKE181,--bke181 varchar2(50) ,--HIS 院内项目编码 substrb(nvl(a.bke182,trim(A.XMMC00)),1,100) as BKE182, --bke182 varchar2(100) ,--HIS 院内项目名称 substrb(nvl(A.FPXMBH,'13'),1,3) as AKA063, --aka063 varchar2(3) ,--发票项目类别 nvl(substrb(trim(A.XMGG00),1,20),'无') as AKA074, --aka074 varchar2(50) ,--规格型号 '000' as AKA070, --aka070 varchar2(3) ,--剂型 nvl(substrb(trim(A.XMDW00),1,20),'无') as AKA067, --aka067 varchar2(20) ,--单位 A.XMDJ00 as AKC225, --akc225 number(12,4) ,--单价 A.XMSL00 as AKC226, --akc226 number(12,4) ,--数量 A.XMJE00 as AKC227, --akc227 number(12,2) ,--金额 SF_SF_STRTONUM(substrb(nvl(trim(A.YPYL00),'1'),1,3)) as AKA071, --aka071 number(5,2) ,--每次用量 nvl(trim(A.YPPL00),'9999') as AKA072, --aka072 varchar2(10) ,--使用频次 ''as AKA073, --aka073 varchar2(10) ,--给药途径 nvl(trim(A.CZRQ00),LS_CZRQ00) as AKC221, --akc221 varchar2(8) ,--处方日期 nvl(trim(A.CZRQ00),LS_CZRQ00) as BKEC27, --bkec27 varchar2(8) ,--记帐日期 trim(A.YPTS00) as AKC229, --akc229 number(4,1) ,--执行天数 substrb(LS_AKF001,1,50) as AKF001, --akf001 varchar2(50) ,--院内科室编码 substrb(LS_AKF002,1,50) as AKF002, --akf002 varchar2(50) ,--院内科室名称 substrb(LS_BKF237,1,50) as BKF237, --bkf237 varchar2(50) ,--医保科室编码 substrb(LS_BKF238,1,50) as BKF238, --bkf238 varchar2(50) ,--医保科室名称 substrb(nvl(trim(A.YSXM00),trim(LS_BKC006)),1,50) as BKC006,--bkc006 varchar2(50) ,--医疗服务人员姓名 substrb(nvl(trim(A.YSZJHM),trim(LS_BKC007)),1,18) as BKC007,--bkc007 varchar2(18) ,--医疗服务人员证件号码 '001' as BKC541, --bkc541 varchar2(3) 医保服务人员类别:001:医师 002:护师(士) 003:药师(士) 004:技师 005:收费员 006:助理医师 007:心理咨询师 substrb(trim(A.SFYB00),1,3) as BKEA96, --bkea96 varchar2(3) ,--限制范围类别 Y-范围内、N-范围外 substrb(trim(A.DCYYDW),1,20) as BKE506,--bke506 varchar2(20) ,--单次用药单位 substrb(trim(A.QYZL00),1,20) as BKE507,--bke507 varchar2(20) ,--取药总量 substrb(trim(A.QYZLDW),1,20) as BKE508,--bke508 varchar2(20) ,--取药总量单位 substrb(nvl(trim(A.YPTS00),'1'),1,3) as BKE509, --bke509 number(5,2) ,--药量天数 'N' as bkeaa0, --bkeaa0 处方外流标志 varchar2(3) y Y-外流项目、N-非外流项目 (1)处方开具医疗机构如果有处方外流需求的,需要标识外流项目和非外流项目 如果没有外流需求的,默认设置为非外流项目 null as bkeaa1, --bkeaa1 处方开具医疗机构 varchar2(40) y 开具处方时默认填入,处方执行时由流转平台 null as bkeaa2, --bkeaa2 处方执行医疗机构 varchar2(40) n 处方执行医疗机构编号 null as bkeaa3, --bkeaa3 处方外流对应流水号 varchar2(20) n 处方开具时归属的医保流水号 substrb(A.SFYB00,1,2) as bka001, --bka001 varchar2(3) --是否医保项目y:是 n:否 A.BKEH83,A.BKEH05,A.BKEH06,A.BAKXML, A.BKC507,A.BKC506 from ZY_YBFSMX A where A.ID0000=LS_ID0000 and A.ZYID00=LS_ZYID00 and XMJE00<>0; end if; --2021.07.14 修改主表SST_JSDP_JBXX(CFXMS0,itemcount)处方项目数 select count(1),sum(AKC227) into LS_CFXMS0,LS_AKB065 from SST_JSDP_JSMX where XTGZH0=LS_XTGZH0; update SST_JSDP_JBXX set CFXMS0=nvl(LS_CFXMS0,0),itemcount=nvl(LS_CFXMS0,0),AKB065=nvl(LS_AKB065,0) where XTGZH0=LS_XTGZH0 and ZYID00=LS_ZYID00; --生成诊断列表--begin-- for C_ZDXX in CUR_BRZDXX loop LS_JSOSTR:=''; LS_ZDQZLX:='0';--0:组合报文 1:直接取ZDLIST if C_ZDXX.ZDLB00='1' then --'3'主要,'4'其他;中医'1'疾病,'2'症候 LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='02'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 elsif C_ZDXX.ZDLB00='2' then --'3'主要,'4'其他;中医'1'疾病,'2'症候 LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='02'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 elsif C_ZDXX.ZDLB00='3' then --'3'主要,'4'其他;中医'1'疾病,'2'症候 LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='01'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 elsif C_ZDXX.ZDLB00='4' then --'3'主要,'4'其他;中医'1'疾病,'2'症候 LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='02'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 elsif C_ZDXX.ZDLB00='5' then --'3'主要,'4'其他;中医'1'疾病,'2'症候 LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='02'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 else LS_BKE301:='01'; --bke301:01:门诊 02:入院 03:出院 04:病理诊断 LS_BKE302:='02'; --bke302:01:主要、主病 02:次要、主症、其它 03:第三等 end if; if LS_ZDBMBGCS='1' then --诊断编码参数开启=1后转化 begin if C_ZDXX.ZDBM00='ZYZDLB' and instrb(C_ZDXX.ZDBMMC,'疾病')>0 then --中医 select DYBZBM,DYJBMC into LS_DYBZBM,LS_DYJBMC from BM_ZYJB00 B where B.JBBH00=C_ZDXX.ZDM000 and nvl(b.SYBZ00,'1')='1' and rownum=1; elsif C_ZDXX.ZDBM00='ZYZDLB' and (instrb(C_ZDXX.ZDBMMC,'证候')>0 or instrb(C_ZDXX.ZDBMMC,'症候')>0) then --症候 select DYBZBM,DYJBMC into LS_DYBZBM,LS_DYJBMC from BM_ZYZH00 B where B.ZHBH00=C_ZDXX.ZDM000 and nvl(b.SYBZ00,'1')='1' and rownum=1; else select DYBZBM,DYJBMC into LS_DYBZBM,LS_DYJBMC from xt_ICD900 B where B.ICD900=C_ZDXX.ZDM000 and nvl(SYBZ00,'1')='1'; end if; exception when others then LS_DYBZBM:=substrb(C_ZDXX.ZDM000,1,50); LS_DYJBMC:=substrb(C_ZDXX.ZDMC00,1,200); end; LS_BKE087:=substrb(nvl(LS_DYBZBM,C_ZDXX.ZDM000),1,50); --诊断或症状编码 y 见icd-10或症状表编码 LS_BKE088:=substrb(nvl(LS_DYJBMC,C_ZDXX.ZDMC00),1,100);--诊断或症状名称 y 见icd-10或症状表名称 else LS_BKE087:=substrb(trim(C_ZDXX.ZDM000),1,50); --诊断或症状编码 y 见icd-10或症状表编码 LS_BKE088:=substrb(trim(C_ZDXX.ZDMC00),1,100);--诊断或症状名称 y 见icd-10或症状表名称 end if; LS_JSOSTR:=LS_JSOSTR||'{'; LS_JSOSTR:=LS_JSOSTR||'"bke301"'||':'||'"'||trim(LS_BKE301)||'"'||','; LS_JSOSTR:=LS_JSOSTR||'"bke302"'||':'||'"'||trim(LS_BKE302)||'"'||','; LS_JSOSTR:=LS_JSOSTR||'"bke087"'||':'||'"'||trim(LS_BKE087)||'"'||','; LS_JSOSTR:=LS_JSOSTR||'"bke088"'||':'||'"'||trim(LS_BKE088)||'"'||','; LS_JSOSTR:=LS_JSOSTR||'"bke091"'||':'||'"'||LS_bke091||'"'||','; LS_JSOSTR:=LS_JSOSTR||'"bke092"'||':'||'"'||LS_bke092||'"'||''; LS_JSOSTR:=LS_JSOSTR||'}'; insert into SST_JSDP_DZMX(XTGZH0,bke301,bke302,bke087,bke088,zdqzlx,zdlist) select LS_XTGZH0,LS_BKE301,LS_BKE302,LS_BKE087,LS_BKE088,LS_ZDQZLX,LS_JSOSTR from dual; end loop; --生成诊断列表--end-- --增加写入表BM_YBJKLS if RZYXX.FBBH00=3 then select SQ_BM_YBJKLS_JKLSID.nextval into LS_JKLSID from dual; insert into BM_YBJKLS ( JKLSID ,--number(12) primary key ,--接口流水表ID=SQ_BM_YBJKLS_JKLSID.NEXTVAL YBJKID ,--number(12) ,--医保接口ID=SF_YBJKRZ.YBJKID或ZY_YBJKRZ.YBJKID MZZYBZ ,--char(1) ,--门诊住院标识 0:门诊 1:住院 CZLX00 ,--char(1) ,--操作类型 0:发送 1:返回 JKZTBZ ,--char(1) ,--接口状态 0:接口失败 1:接口成功 2:院内执行失败 3:院内执行成功 4:冲销失败 5:冲销成功 BRID00 ,--number(10) ,--病人ID ZYGHID ,--number(10) ,--住院(ZYID00)或门诊(GHID000)流水号 ZYHGHH ,--varchar2(12) ,--住院(ZYH000)或门诊(GHH000)号(冗余) JZDH00 ,--number(10) ,--结账单号 HJJE00 ,--number(12,4) ,--合计金额 CZY000 ,--number(5) ,--操作员编码 CZYXM0 ,--varchar2(50) ,--操作员姓名 CZYKS0 ,--number(5) ,--操作员科室 JKCJBM ,--varchar2(50) ,--接口场景编码 YBJKBM ,--varchar2(50) ,--医保接口编号 JKCJMC ,--varchar2(50) ,--接口场景名称 CZRQ00 ,--char(8) ,--操作日期 CZSJ00 ,--char(8) ,--操作时间 BKE284 ,--varchar2(10) ,--身份认证类型(01:读卡02:融合码06:医保码20:医疗证) AAZ500 ,--varchar2(30) ,--社会保障卡号 AAC002 ,--varchar2(30) ,--证件号码(社会保障号) AAC003 ,--varchar2(50) ,--姓名 AAC004 ,--varchar2(2) ,--性别 AAC004_MC ,--varchar2(10) ,--性别名称 AAC006 ,--char(8) , --出生日期 AAC999 ,--varchar2(30) ,--个人管理码 BKA531 ,--varchar2(10) ,--是否精准扶贫对象 AAB034 ,--varchar2(10) ,--所属经办机构编码(分中心) AAB034_MC ,--varchar2(100) ,--所属经办机构编码名称 AAB301 ,--varchar2(10) ,--参保地行政区划 AAB301_MC ,--varchar2(100) ,--参保地行政区划名称 AKA078 ,--varchar2(10) ,--医疗就诊方式 AKA130 ,--varchar2(10) ,--医疗类别 AAZ149 ,--varchar2(30) ,--病种编码 BKE286 ,--varchar2(3) ,--结算标识 BKC014 ,--varchar2(14) ,--实际就诊日期 BKC171 ,--varchar2(14) ,--实际就诊时间 AKC194 ,--varchar2(14) ,--出院日期 BKE078 ,--varchar2(3) ,--离院方式 BKE241 ,--varchar2(3) ,--数据来源 AKA042 ,--varchar2(3) ,--住院类别 BKA555 ,--varchar2(10) ,--对账数据分类 BKA556 ,--varchar2(10) ,--费用结算方式 AKE007 ,--varchar2(14) ,--医保结算日期 BAE029 ,--varchar2(14) ,--医保结算时间 AAE011 ,--varchar2(50) ,--收费人 BKE298 ,--varchar2(30) ,--his收费单据流水号 BKE042 ,--varchar2(30) ,--his流水号 BKEE70 ,--varchar2(30) ,--His退费流水号 AKC190 ,--varchar2(30) ,--医保挂号号或医保住院号 AAE072 ,--varchar2(30) ,--医保收费流水号 BKE297 ,--varchar2(200) ,--医保明细流水号 AKB065 ,--number(12,4) ,--医疗费总金额 AKC227 ,--number(12,4) ,--医疗费总金额 BKC040 ,--number(12,4) ,--个人现金支付金额(实付现金) BKC041 ,--number(12,4) ,--个人账户支付金额 BKC102 ,--number(12,4) ,--基金支付总额 BKC045 ,--number(12,4) ,--其中:统筹基金支付 BKC052 ,--number(12,4) ,--其中:商保基金支付(大额补充) BKC053 ,--number(12,4) ,--其中:商保现金支付 BKC054 ,--number(12,4) ,--其中:商保账户支付 BKC059 ,--number(12,4) ,--其中:公务员医疗补助 BKC062 ,--number(12,4) ,--其中:精准扶贫医疗叠加 BKC060 ,--number(12,4) ,--其中:医疗救助基金 AKE173 ,--number(12,4) ,--其中:其他基金支付 AKE026 ,--number(12,4) ,--其中:企业补充 BKC061 ,--number(12,4) ,--其中:保健基金支付 BKC166 ,--number(12,4) ,--其中:一般诊疗费补偿金额 BKC167 ,--number(12,4) ,--其中:一般诊疗费个人支付金额 BKC612 ,--number(12,4) ,--其中:补助基金支付 BKC075 ,--number(12,4) ,--其中:家庭共济账户支付 BKC076 ,--number(12,4) ,--其中:健康账户支付[健康帐户支付(jkzhzf)- 共济帐户支付(gjzhzf)] BKC077 ,--number(12,4) ,--其中:账户支付[帐户支付额(zhzfe0)-健康帐户支付(jkzhzf)] BKC134 ,--number(12,4) ,--其中:乙类先行自付 BKE856 ,--number(12,4) ,--其中:超封顶线金额 BKC101 ,--number(12,4) ,--其中:除外耗材范围内费用 BKC125 ,--number(12,4) ,--其中:超标床位费 BKC079 ,--number(12,4) ,--其中:健康账户余额 AKC087 ,--number(12,4) ,--其中:医保账户余额 BKC591 ,--number(12,4) ,--其中:家庭共济账户余额 BKZFE0 ,--number(12,4) ,--其中:三明离休b卡支付额 BKZHYE ,--number(12,4) ,--其中:三明离休b卡账户余额 FLAG ,--varchar2(10) ,--操作成功标志 校验标志(0-未通过 1-已通过) CAUSE ,--varchar2(250) ,--失败原因说明 BZ0000 ,--varchar2(200) ,--备注说明 HISCS0 ,--varchar2(2000) ,--HIS前台请求参数 DATASTR , --BLOB --请求数据和返回数据 BKE361 , --number(12,2) null ,--普门累计或特门累计 BKC064 , --number(12,2) null ,--产前检查费 BKC620 , --number(12,2) null ,--(本地)成员共济账户支付 BKC619 , --number(12,2) null ,--(异地)成员共济账户支付 BKEH73 , --number(12,2) null ,--职工医疗费补助 BKC048 , --number(12,2) null ,--处级及以上干部补助 DRGZFE , --number(12,2) null ,--DRG付费标准 BKE921 , --varchar2(50) null ,--(家庭健康)共济账户扣款人 BKE922 , --varchar2(50) null ,--(家庭健康)共济账户扣款人金额 JSBLLX , --varchar2(10) null ,--DRG结算病例类型 BKEG23 , --varchar2(50) null ,--是否账户抵扣 BKA190 --varchar2(50) null --是否共济扣款 ) select LS_JKLSID as JKLSID ,--number(12) primary key ,--接口流水表ID=SQ_BM_YBJKLS_JKLSID.NEXTVAL A.YBJKID as YBJKID ,--number(12) ,--医保接口ID=SF_YBJKRZ.YBJKID或ZY_YBJKRZ.YBJKID '1' as MZZYBZ ,--char(1) ,--门诊住院标识 0:门诊 1:住院 '0' as CZLX00 ,--char(1) ,--操作类型 0:发送 1:返回 '1' as JKZTBZ ,--char(1) ,--接口状态 0:接口失败 1:接口成功 2:院内执行失败 3:院内执行成功 4:冲销失败 5:冲销成功 RZYXX.BRID00 as BRID00 ,--number(10) ,--病人ID RZYXX.ZYID00 as ZYGHID ,--number(10) ,--住院(ZYID00)或门诊(GHID000)流水号 trim(RZYXX.ZYH000) as ZYHGHH ,--varchar2(12) ,--住院(ZYH000)或门诊(GHH000)号(冗余) A.JZDH00 as JZDH00 ,--number(10) ,--结账单号 A.HJJE00 ,--number(12,4) ,--合计金额 LS_CZY000 as CZY000 ,--number(5) ,--操作员编码 LS_CZYXM0 as CZYXM0 ,--varchar2(50) ,--操作员姓名 LS_CZYKS0 as CZYKS0 ,--number(5) ,--操作员科室 'YBJK_TYSF_0021' as JKCJBM ,--varchar2(50) ,--接口场景编码 'yb04.07.01.04' as YBJKBM ,--varchar2(50) ,--医保接口编号 '住院自助通用收费' as JKCJMC ,--varchar2(50) ,--接口场景名称 LS_CZRQ00 as CZRQ00 ,--char(8) ,--操作日期 ls_CZSJ00 as CZSJ00 ,--char(8) ,--操作时间 nvl(A.BKE284,'01') as BKE284 ,--varchar2(10) ,--身份认证类型(01:读卡02:融合码06:医保码20:医疗证) substrb(A.AAZ500,1,30) as AAZ500 ,--varchar2(30) ,--社会保障卡号 substrb(A.AAC002,1,30) as AAC002 ,--varchar2(30) ,--证件号码(社会保障号) substrb(A.AAC003,1,50) as AAC003 ,--varchar2(50) ,--姓名 substrb(A.AAC004,1,2) as AAC004 ,--varchar2(2) ,--性别 substrb(RBRXX.BRXB00,1,20) as AAC004_MC ,--varchar2(10) ,--性别名称 substrb(RBRXX.BRCSRQ,1,8) as AAC006 ,--char(8) , --出生日期 substrb(A.AAC999,1,30) as AAC999 ,--varchar2(30) ,--个人管理码 substrb(A.BKA531,1,10) as BKA531 ,--varchar2(10) ,--是否精准扶贫对象 substrb(A.AAB034,1,10) as AAB034 ,--varchar2(10) ,--所属经办机构编码(分中心) substrb(A.AAB034_MC,1,100) as AAB034_MC ,--varchar2(100) ,--所属经办机构编码名称 A.aab301 as AAB301 ,--varchar2(10) ,--参保地行政区划 null as AAB301_MC ,--varchar2(100) ,--参保地行政区划名称 substrb(A.AKA078,1,10) as AKA078 ,--varchar2(10) ,--医疗就诊方式 substrb(A.AKA130,1,10) as AKA130 ,--varchar2(10) ,--医疗类别 substrb(A.AAZ149,1,30) as AAZ149 ,--varchar2(30) ,--病种编码 substrb(A.BKE286,1,3) as BKE286 ,--varchar2(3) ,--结算标识 substrb(A.BKC014,1,14) as BKC014 ,--varchar2(14) ,--实际就诊日期 substrb(A.BKC171,1,14) as BKC171 ,--varchar2(14) ,--实际就诊时间 substrb(A.AKC194,1,14) as AKC194 ,--varchar2(14) ,--出院日期 substrb(A.BKE078,1,3) as BKE078 ,--varchar2(3) ,--离院方式 substrb(A.BKE241,1,3) as BKE241 ,--varchar2(3) ,--数据来源 substrb(A.AKA042,1,3) as AKA042 ,--varchar2(3) ,--住院类别 substrb(A.BKA555,1,10) as BKA555 ,--varchar2(10) ,--对账数据分类 null as BKA556 ,--varchar2(10) ,--费用结算方式 substrb(A.AKE007,1,14) as AKE007 ,--varchar2(14) ,--医保结算日期 substrb(A.BAE029,1,14) as BAE029 ,--varchar2(14) ,--医保结算时间 substrb(A.AAE011,1,50) as AAE011 ,--varchar2(50) ,--收费人 substrb(A.BKE298,1,30) as BKE298 ,--varchar2(30) ,--his收费单据流水号 substrb(A.BKE042,1,30) as BKE042 ,--varchar2(30) ,--his流水号 null as BKEE70 ,--varchar2(30) ,--His退费流水号 substrb(A.AKC190,1,30) as AKC190 ,--varchar2(30) ,--医保挂号号或医保住院号 substrb(A.AAE072,1,30) as AAE072 ,--varchar2(30) ,--医保收费流水号 substrb(A.BKE297,1,200) as BKE297 ,--varchar2(200) ,--医保明细流水号 A.AKB065 ,--number(12,4) ,--医疗费总金额 A.AKC227 ,--number(12,4) ,--医疗费总金额 A.BKC040 ,--number(12,4) ,--个人现金支付金额(实付现金) A.BKC041 ,--number(12,4) ,--个人账户支付金额 A.BKC102 ,--number(12,4) ,--基金支付总额 A.BKC045 ,--number(12,4) ,--其中:统筹基金支付 A.BKC052 ,--number(12,4) ,--其中:商保基金支付(大额补充) A.BKC053 ,--number(12,4) ,--其中:商保现金支付 A.BKC054 ,--number(12,4) ,--其中:商保账户支付 A.BKC059 ,--number(12,4) ,--其中:公务员医疗补助 A.BKC062 ,--number(12,4) ,--其中:精准扶贫医疗叠加 A.BKC060 ,--number(12,4) ,--其中:医疗救助基金 A.AKE173 ,--number(12,4) ,--其中:其他基金支付 A.AKE026 ,--number(12,4) ,--其中:企业补充 A.BKC061 ,--number(12,4) ,--其中:保健基金支付 A.BKC166 ,--number(12,4) ,--其中:一般诊疗费补偿金额 A.BKC167 ,--number(12,4) ,--其中:一般诊疗费个人支付金额 A.BKC612 ,--number(12,4) ,--其中:补助基金支付 A.BKC075 ,--number(12,4) ,--其中:家庭共济账户支付 A.BKC076 ,--number(12,4) ,--其中:健康账户支付[健康帐户支付(jkzhzf)- 共济帐户支付(gjzhzf)] A.BKC077 ,--number(12,4) ,--其中:账户支付[帐户支付额(zhzfe0)-健康帐户支付(jkzhzf)] A.BKC134 ,--number(12,4) ,--其中:乙类先行自付 A.BKE856 ,--number(12,4) ,--其中:超封顶线金额 A.BKC101 ,--number(12,4) ,--其中:除外耗材范围内费用 A.BKC125 ,--number(12,4) ,--其中:超标床位费 A.BKC079 ,--number(12,4) ,--其中:健康账户余额 A.AKC087 ,--number(12,4) ,--其中:医保账户余额 A.BKC591 ,--number(12,4) ,--其中:家庭共济账户余额 A.BKZFE0 ,--number(12,4) ,--其中:三明离休b卡支付额 A.BKZHYE ,--number(12,4) ,--其中:三明离休b卡账户余额 '1' as FLAG ,--varchar2(10) ,--操作成功标志 校验标志(0-未通过 1-已通过) null as CAUSE ,--varchar2(250) ,--失败原因说明 null as BZ0000 ,--varchar2(200) ,--备注说明 LS_JKQQCS as HISCS0 ,--varchar2(2000) ,--HIS前台请求参数 null as DATASTR ,--BLOB --请求数据和返回数据 A.BKE361 , --number(12,2) null ,--普门累计或特门累计 A.BKC064 , --number(12,2) null ,--产前检查费 A.BKC620 , --number(12,2) null ,--(本地)成员共济账户支付 A.BKC619 , --number(12,2) null ,--(异地)成员共济账户支付 A.BKEH73 , --number(12,2) null ,--职工医疗费补助 A.BKC048 , --number(12,2) null ,--处级及以上干部补助 A.DRGZFE , --number(12,2) null ,--DRG付费标准 A.BKE921 , --varchar2(50) null ,--(家庭健康)共济账户扣款人 A.BKE922 , --varchar2(50) null ,--(家庭健康)共济账户扣款人金额 A.JSBLLX , --varchar2(10) null ,--DRG结算病例类型 A.BKEG23 , --varchar2(50) null ,--是否账户抵扣 A.BKA190 --varchar2(50) null --是否共济扣款 from SST_JSDP_JBXX A where XTGZH0 = LS_XTGZH0 and brid00=RBRXX.BRID00; --更新日志表BM_YBJKLS.DATASTR --update BM_YBJKLS set JSONSTR=SF_SST_ZZJS_JKQQBW('0','ZZJ',LS_BRID00,LS_XTGZH0,'1','1','') where brid00=LS_BRID00 and JKLSID=LS_JKLSID and YBJKID=LS_YBJKID; end if; exception when no_data_found then P_ERRMSG:=substrb('床边获取处方失败,'||'位置:['||LS_ERRORS||']原因:'||sqlerrm,1,255); when others then P_ERRMSG:=substrb('床边获取处方失败,'||'位置:['||LS_ERRORS||']原因:'||sqlerrm,1,255); end;