create or replace procedure SP_BA_BAJKDR ( PZYID00 in char ) as -- MODIFICATION HISTORY -- Person Date Comments -- xuxq 2019.11.27 病案接口导入 --shieq 2020.03.13 添加病案首页附页 --shieq 20200611 备份评分 COUNTER1 number(3); COUNTER number(3); begin --病案首页 select count(*) into COUNTER1 from BA_BRZYXX where LSH000=PZYID00; if COUNTER1=0 then insert into BA_BRZYXX(LSH000,BAH000,ZYCS00,ZYH000,BRXM00,BRXB00,BRCSRQ,BRNL00,HYZK00,ZY0000, BRLY00,CSSF00,CSXS00,MZ0000,GJ0000,SFZH00,GZDW00,GZDH00,GZYB00,JTDZ00,JTDH00,JTYB00,LXRXM0, LXRDZ0,LXRDH0,LXRGX0,ZDFS00,RYQK00,RYRQ00,RYSJ00,RYKB00,RYKBMC,RYBF00,ZKKB00,ZKKBMC,CYRQ00, CYSJ00,CYKB00,CYKBMC,CYBF00,ZYTS00,QZRQ00,BLZD00,GMYW00,HBSAG0,HCVAB0,HIVAB0,MZCYFH,RYCYFH, SQSHFH,LCBLFH,FSBLFH,QJCS00,CGCS00,BAZL00,SFSJ00,DYBL00,SFSZ00,SZQX00,SJBL00,XX0000,RH0000, SXFY00,HXB000,XXB000,XJ0000,QX0000,SXQT00,ZKRQ00,BAZT00,SRRK00,LRRY00,LRRQ00,JFFS00,ZJE000, ZYLSH0,CARDNO,BZ0000,JKDAH0,CSDS00,YECSTZ,YERYTZ,XZZXC0,XZZDH0,XZZYB0,BLZDBM,BLH000,SFYWGM, LYFS00,ZYYLJG,ZZYJH0,ZZYMD0,HMRYQD,HMRYQH,HMRYQM,HMRYHD,HMRYHH,HMRYHM,LRRYMC,SHBZ00, JGSF00,JGXS00,RYTJ00,SSZDWY,SSZDBM,LCLJ01,BRNLMM,BRNLDD,xgrq00,xgsj00,zlsb00, zljs00, bzsh00,ZTXHS0) select LSH000,BAH000,ZYCS00,ZYH000,BRXM00,BRXB00,BRCSRQ,BRNL00,HYZK00,ZY0000, BRLY00,CSSF00,CSXS00,MZ0000,GJ0000,SFZH00,GZDW00,GZDH00,GZYB00,JTDZ00,JTDH00,JTYB00,LXRXM0, LXRDZ0,LXRDH0,LXRGX0,ZDFS00,RYQK00,RYRQ00,RYSJ00,RYKB00,RYKBMC,RYBF00,ZKKB00,ZKKBMC,CYRQ00, CYSJ00,CYKB00,CYKBMC,CYBF00,ZYTS00,QZRQ00,BLZD00,GMYW00,HBSAG0,HCVAB0,HIVAB0,MZCYFH,RYCYFH, SQSHFH,LCBLFH,FSBLFH,QJCS00,CGCS00,BAZL00,SFSJ00,DYBL00,SFSZ00,SZQX00,SJBL00,XX0000,RH0000, SXFY00,HXB000,XXB000,XJ0000,QX0000,SXQT00,ZKRQ00,BAZT00,SRRK00,LRRY00,LRRQ00,JFFS00,ZJE000, ZYLSH0,CARDNO,BZ0000,JKDAH0,CSDS00,YECSTZ,YERYTZ,XZZ000,XZZDH0,XZZYB0,BLZDBM,BLH000,SFYWGM, LYFS00,ZYYLJG,ZZYJH0,ZZYMD0,HMRYQD,HMRYQH,HMRYQM,HMRYHD,HMRYHH,HMRYHM,LRRYMC,SHBZ00, JGSF00,JGXS00,RYTJ00,SSZDWY,SSZDBM,LCLJ01,BRNLMM,BRNLDD,xgrq00,xgsj00,zlsb00, zljs00, bzsh00,ZTXHS0 from VW_MR_BRZYXX where LSH000=PZYID00; commit; merge into BA_BRZYXX a using (select * from VW_MR_BAYSXX where lsh000=to_char(PZYID00)) b on (to_char(a.lsh000)=b.lsh000) when matched then update set a.KZR000=b.KZR000,a.KZRMC0=b.KZRMC0, a.FZR000=b.FZR000,a.FZRMC0=b.FZRMC0,a.ZZYS00=b.ZZYS00,a.ZZYSMC=b.ZZYSMC,a.ZYYS00=b.ZYYS00, a.ZYYSMC=b.ZYYSMC,a.JXYS00=b.JXYS00,a.JXYSMC=b.JXYSMC,a.YJSYS0=b.YJSYS0, a.YJSMC0=b.YJSMC0,a.SXYS00=b.SXYS00,a.SXYSMC=b.SXYSMC,a.ZKYS00=b.ZKYS00,a.ZKYSMC=b.ZKYSMC, a.ZKHS00=b.ZKHS00,a.ZKHSMC=b.ZKHSMC,a.ZRHS00=b.ZRHS00,a.ZRHSMC=b.ZRHSMC; commit; insert into BA_BRZY02(LSH000,BAH000,ZYCS00,ZYH000,BRXM00,BRXB00,BRCSRQ,BRNL00,HYZK00,ZY0000, BRLY00,CSSF00,CSXS00,MZ0000,GJ0000,SFZH00,GZDW00,GZDH00,GZYB00,JTDZ00,JTDH00,JTYB00,LXRXM0, LXRDZ0,LXRDH0,LXRGX0,ZDFS00,RYQK00,RYRQ00,RYSJ00,RYKB00,RYKBMC,RYBF00,ZKKB00,ZKKBMC,CYRQ00, CYSJ00,CYKB00,CYKBMC,CYBF00,ZYTS00,QZRQ00,BLZD00,GMYW00,HBSAG0,HCVAB0,HIVAB0,MZCYFH,RYCYFH, SQSHFH,LCBLFH,FSBLFH,QJCS00,CGCS00,BAZL00,SFSJ00,DYBL00,SFSZ00,SZQX00,SJBL00,XX0000,RH0000, SXFY00,HXB000,XXB000,XJ0000,QX0000,SXQT00,ZKRQ00,BAZT00,SRRK00,LRRY00,LRRQ00,JFFS00,ZJE000, ZYLSH0,CARDNO,BZ0000,JKDAH0,CSDS00,YECSTZ,YERYTZ,XZZXC0,XZZDH0,XZZYB0,BLZDBM,BLH000,SFYWGM, LYFS00,ZYYLJG,ZZYJH0,ZZYMD0,HMRYQD,HMRYQH,HMRYQM,HMRYHD,HMRYHH,HMRYHM,LRRYMC,SHBZ00, JGSF00,JGXS00,RYTJ00,SSZDWY,SSZDBM,LCLJ01,BRNLMM,BRNLDD,xgrq00,xgsj00, KZR000,KZRMC0,FZR000,FZRMC0,ZZYS00,ZZYSMC,ZYYS00,ZYYSMC,JXYS00,JXYSMC,YJSYS0,YJSMC0, SXYS00,SXYSMC,ZKYS00,ZKYSMC,ZKHS00,ZKHSMC,ZRHS00,ZRHSMC) select LSH000,BAH000,ZYCS00,ZYH000,BRXM00,BRXB00,BRCSRQ,BRNL00,HYZK00,ZY0000, BRLY00,CSSF00,CSXS00,MZ0000,GJ0000,SFZH00,GZDW00,GZDH00,GZYB00,JTDZ00,JTDH00,JTYB00,LXRXM0, LXRDZ0,LXRDH0,LXRGX0,ZDFS00,RYQK00,RYRQ00,RYSJ00,RYKB00,RYKBMC,RYBF00,ZKKB00,ZKKBMC,CYRQ00, CYSJ00,CYKB00,CYKBMC,CYBF00,ZYTS00,QZRQ00,BLZD00,GMYW00,HBSAG0,HCVAB0,HIVAB0,MZCYFH,RYCYFH, SQSHFH,LCBLFH,FSBLFH,QJCS00,CGCS00,BAZL00,SFSJ00,DYBL00,SFSZ00,SZQX00,SJBL00,XX0000,RH0000, SXFY00,HXB000,XXB000,XJ0000,QX0000,SXQT00,ZKRQ00,BAZT00,SRRK00,LRRY00,LRRQ00,JFFS00,ZJE000, ZYLSH0,CARDNO,BZ0000,JKDAH0,CSDS00,YECSTZ,YERYTZ,XZZXC0,XZZDH0,XZZYB0,BLZDBM,BLH000,SFYWGM, LYFS00,ZYYLJG,ZZYJH0,ZZYMD0,HMRYQD,HMRYQH,HMRYQM,HMRYHD,HMRYHH,HMRYHM,LRRYMC,SHBZ00, JGSF00,JGXS00,RYTJ00,SSZDWY,SSZDBM,LCLJ01,BRNLMM,BRNLDD,xgrq00,xgsj00, KZR000,KZRMC0,FZR000,FZRMC0,ZZYS00,ZZYSMC,ZYYS00,ZYYSMC,JXYS00,JXYSMC,YJSYS0,YJSMC0, SXYS00,SXYSMC,ZKYS00,ZKYSMC,ZKHS00,ZKHSMC,ZRHS00,ZRHSMC from BA_BRZYXX where LSH000=PZYID00; commit; end if; --手术表 select count(*) into COUNTER from BA_BRSSXX where LSH000=PZYID00; if COUNTER=0 then insert into BA_BRSSXX(LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00, SSYSMC,IYS000,IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,lb0000) select LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00, SSYSMC,IYS000,IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,lb0000 from VW_MR_BRSSXX where LSH000 =PZYID00; commit; insert into BA_BRSS02(LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00, SSYSMC,IYS000,IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,lb0000) select LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00, SSYSMC,IYS000,IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,lb0000 from BA_BRSSXX where LSH000 =PZYID00; commit; end if; --诊断表 select count(*) into COUNTER from BQ_BRZDXX where ZYID00=PZYID00; if COUNTER=0 then insert into BQ_BRZDXX(ID0000,ZYID00,PLXH00,ZDLB00,ZDM000,ZDMC00,FZBM00,FZMC00,ZDRQ00,ZLXG00,SFYZ00,M16800,RYBQ00,BRID00) select SQ_BQ_BRZDXX_ID0000.nextval,ZYID00,PLXH00,ZDLB00,ZDM000,ZDMC00,FZBM00,FZMC00,ZDRQ00,ZLXG00,SFYZ00,M16800,RYBQ00,BRID00 from VW_MR_BRZDXX t where ZYID00=PZYID00; commit; insert into BQ_BRZD02(ID0000,ZYID00,PLXH00,ZDLB00,ZDM000,ZDMC00,FZBM00,FZMC00,ZDRQ00,ZLXG00,SFYZ00,M16800,RYBQ00,BRID00) select ID0000,ZYID00,PLXH00,ZDLB00,ZDM000,ZDMC00,FZBM00,FZMC00,ZDRQ00,ZLXG00,SFYZ00,M16800,RYBQ00,BRID00 from BQ_BRZDXX where ZYID00=PZYID00; commit; end if; --医生表 select count(*) into COUNTER from BA_SSYSB0 where LSH000=PZYID00; if COUNTER=0 then insert into BA_SSYSB0(LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00,SSYSMC,IYS000, IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,SQSHFH,CZRQ00,CZSJ00,CZY000, SFMZSW,BWMC00,FWMC00,BCSM00) select LSH000,SSXH00,SSLB00,SSM000,SSMC00,SSRQ00,SSSJ00,SSZL00,SSYS00,SSYSMC,IYS000, IYSMC0,IIYS00,IIYSMC,MZFS00,QKYHDJ,MZYS00,MZYSMC,SQSHFH,CZRQ00,CZSJ00,CZY000, SFMZSW,BWMC00,FWMC00,BCSM00 from BA_BRSSXX T where T.LSH000=PZYID00; end if; --接生信息 select count(*) into COUNTER from BA_BRJSXX where LSH000=PZYID00; if COUNTER=0 then insert into BA_BRJSXX(LSH000,JSXH00,YC0000,CC0000,TS0000,FMFS00,HYPL00,HYZS00,SYTS00,YEQK00,APGAR0,JSYS00,JSYSMC,YECSRQ,YETZ00,YEXB00,YEXM00) select LSH000,JSXH00,YC0000,CC0000,TS0000,FMFS00,HYPL00,HYZS00,SYTS00,YEQK00,APGAR0,JSYS00,JSYSMC,YECSRQ,YETZ00,YEXB00,YEXM00 from VW_MR_BRJSXX where lsh000 =PZYID00; end if; --费用表 select count(*) into COUNTER from BA_SYFYB0 where ZYID00=PZYID00; if COUNTER=0 then insert into BA_SYFYB0(ZYID00,ZYZFY0,ZFJE00,YBYLFW,ZYBZLZ,ZYBZHZ,YBZLCZ,HLF000,QTFY00,BLZDF0,SYSZDF,YXXZDF,LCZDXM,FSSZLF,LCWLZL,SSZLF0, MZF000,SSF000,KFF000,ZYZD00,ZYZL00,ZYWZ00,ZYGS00,ZCYJF0,ZYTNZL,ZYGCZL,ZYTSZL,ZYQT00,ZYTSTP,BZSSF0,XYF000,KJYWF0,ZCYF00,ZYZJF0,ZCYF10, XF0000,BDBLZP,QDBLZP,NXYZZP,XBYZZP,JCYCLF,ZLYCLF,SSYCLF,QTF000) select ZYID00,ZYZFY0,ZFJE00,YBYLFW,ZYBZLZ,ZYBZHZ,YBZLCZ,HLF000,QTFY00,BLZDF0,SYSZDF,YXXZDF,LCZDXM,FSSZLF,LCWLZL,SSZLF0, MZF000,SSF000,KFF000,ZYZD00,ZYZL00,ZYWZ00,ZYGS00,ZCYJF0,ZYTNZL,ZYGCZL,ZYTSZL,ZYQT00,ZYTSTP,BZSSF0,XYF000,KJYWF0,ZCYF00,ZYZJF0,ZCYF10, XF0000,BDBLZP,QDBLZP,NXYZZP,XBYZZP,JCYCLF,ZLYCLF,SSYCLF,QTF000 from VW_MR_BRZYFY where ZYID00=PZYID00; end if; --病案首页附页 select count(*) into COUNTER from BA_BRZYFY where ZYID00=PZYID00; if COUNTER=0 then /*insert into BA_BRZYFY (ZYID00,ZYH000,JLLCLJ,JXDBFF,ZYSFBW,SFSX00,SFYYGR) select ZYID00,ZYH000,JLLCLJ,JXDBFF,ZYSFBW,SFSX00,SFYYGR from vw_mr_fyxx00 where ZYID00=PZYID00;*/ /* insert into BA_BRZYFY (ZYID00,ZYH000,jllclj,jxdbff,zysfbw,sfsx00,sfyygr,zlxg00,wclclj,wwcyy0,wcdbz0,rzrq00,rzsj00,sfsy00,sxsyfy,lcljmc,lcljbm,dbzmc0,dbzbm0,sfswbl,yngrmc,sfrjss, jicurq,jicusj,cicurq,cicusj,hxjysj) select ZYID00,ZYH000,jllclj,jxdbff,zysfbw,sfsx00,sfyygr,zlxg00,wclclj,wwcyy0,wcdbz0,rzrq00,rzsj00,sfsy00,sxsyfy,lcljmc,lcljbm,dbzmc0,dbzbm0,sfswbl,yngrmc,sfrjss, jicurq,jicusj,cicurq,cicusj,hxjysj from vw_mr_fyxx00 where ZYID00=PZYID00||'';*/ insert into BA_BRZYFY (ZYID00,ZYH000,jllclj,jxdbff,zysfbw,sfsx00,sfyygr,zlxg00,wclclj,wwcyy0,wcdbz0,rzrq00,rzsj00,sfsy00,sxsyfy,lcljmc,lcljbm,dbzmc0,dbzbm0,sfswbl,yngrmc,sfrjss,zzjhs0, jicurq,jicusj,cicurq,cicusj,hxjysj,sfricu,gcys00,gcysmc) select ZYID00,ZYH000,jllclj,jxdbff,zysfbw,trim(sfsx00),sfyygr,zlxg00,wclclj,wwcyy0,wcdbz0,rzrq00,rzsj00,trim(sfsy00),trim(sxsyfy),lcljmc,lcljbm,dbzmc0,dbzbm0,trim(sfswbl),yngrmc,trim(sfrjss),icumc, jicurq,jicusj,cicurq,cicusj,hxjysj,sfricu,gcys00,gcysmc from vw_mr_fyxx00 where ZYID00=PZYID00; end if; commit; if COUNTER1=0 then SP_BA_BASYSJZLPFBZBYLSH000(PZYID00,9999,'9999'); end if; exception when others then raise_application_error(-20001,'流水号'||PZYID00||'执行过程SP_TransLog出错!'); end;