--1 FUNCTION Sf_SPDHIS_GETURL ( PJKCJBM varchar2 -- 01:条码扫码; 02:计费接口; 03:退费接口; ) -- modification history -- linshu 2024.01.09 Create:获取耗材接口URL; for YF9-20220722-002 return varchar2 is LS_URL000 varchar2(200); LS_CJBM00 BM_TYZD00.MC0000%type; begin select nvl(max(mc0000),'0') into LS_URL000 from BM_TYZD00 where BH0000 = 'GZHCJK_URL00' and ZDMC00='高值耗材通用接口配置参数'; select nvl(max(mc0000),'0') into LS_CJBM00 from BM_TYZD00 where BH0000 = 'GZHCJK_CJBM00' and ZDMC00='高值耗材通用接口配置参数'; if LS_CJBM00 = 'YSY' then --医商云 if PJKCJBM = '01' then LS_URL000 := trim(LS_URL000)||'getExpInfo'; end if; if PJKCJBM = '02' then LS_URL000 := trim(LS_URL000)||'ChageMtrlExpFee'; end if; if PJKCJBM = '03' then LS_URL000 := trim(LS_URL000)||'RefundMtrlExpFee'; end if; end if; LS_URL000 := 'http://10.0.0.120:8080/hscm/webService/HisService'; return LS_URL000; end; --2 function SP_SPDHIS_SCANTM ( PTXM000 varchar2 -- 01:条码扫码; 02:计费接口; 03:退费接口; ) -- modification history -- linshu 2024.01.09 Create:条码扫描推送报文; for YF9-20220722-002 return varchar2 is LS_JKINFO varchar2(2000); LS_CJBM00 BM_TYZD00.MC0000%type; begin select nvl(max(MC0000),'0') into LS_CJBM00 from BM_TYZD00 where BH0000 = 'GZHCJK_CJBM00' and ZDMC00='高值耗材通用接口配置参数'; if LS_CJBM00 = 'YSY' then --医商云 LS_JKINFO := '' ||'getExpInfo' ||'' ||''||PTXM000||'' ||'' ||''; end if; return LS_JKINFO; end; --3 FUNCTION SF_SPDHIS_HCJF00 ( PYJDJH0 varchar2 -- 医技单据号; ) -- modification history -- linshu 2024.01.10 Create:耗材计费推送报文; for YF9-20220722-002 return varchar2 is LS_JKINFO varchar(4000); LS_CJBM00 BM_TYZD00.MC0000%type; LS_INFOMX varchar(1000); LS_INFO00 varchar(4000); LS_YJKSMC BM_BMBM00.BMMC00%type; begin select nvl(max(MC0000),'0') into LS_CJBM00 from BM_TYZD00 where BH0000 = 'GZHCJK_CJBM00' and ZDMC00='高值耗材通用接口配置参数'; for YWJJ in (select rownum MXXH00,b.ID0000,b.SFXMID, ( select ztm000 from SS_GZHCJK where jjid00 =b.id0000 ) ztm000 --lzg ,B.JZJE00,B.ZFJE00,A.BRID00,A.ZYHGHH,'0'||A.MZZYBZ MZZYBZ,A.JZQRRQ,A.JZQRSJ, A.YJKSBH,A.ZXR000,A.KDKSBH,A.ZXRQ00,A.ZXSJ00 from YJ_YWJJ00 b,YJ_YW0000 A where B.YJDJH0 = A.YJDJH0 and b.yjdjh0=Pyjdjh0 and b.CXBZ00='Z'-- and b.ztm000 is not null and exists(select 1 from SS_GZHCJK where YJDJH0=b.YJDJH0 and CKRQ00 is null and SFXMBH=b.SFXMID ) order by b.ID0000 ) loop select BMMC00 into LS_YJKSMC from BM_BMBM00 where BMBH00 = YWJJ.YJKSBH; if LS_CJBM00 = 'YSY' then --医商云(光泽医院)  LS_INFOMX := '' ||''||YWJJ.ZTM000||'' ||'确认状态' ||''||to_char(YWJJ.BRID00)||'' ||''||YWJJ.ZYHGHH||'' ||''||TO_CHAR(YWJJ.JZJE00)||'' ||''||to_char(YWJJ.ZFJE00)||'' ||''||YWJJ.JZQRRQ||' '||YWJJ.JZQRSJ||'' ||''||YWJJ.MZZYBZ||'' -- 0 门诊,1 住院    ||''||TO_CHAR(YWJJ.YJKSBH)||'' ||''||LS_YJKSMC||'' ||''||TO_CHAR(YWJJ.ZXR000)||'' ||''||YWJJ.ZXRQ00||' '||YWJJ.ZXSJ00||'' ||''||TO_CHAR(YWJJ.KDKSBH)||'' ||''||TO_CHAR(YWJJ.YJKSBH)||'' ||''||TO_CHAR(YWJJ.MXXH00)||'' ||''||TO_CHAR(YWJJ.zyhghh)||'' ||''; LS_INFO00 := LS_INFO00||LS_INFOMX; end if; end loop; LS_JKINFO := 'ChageMtrlExpFee'||LS_INFO00||''; return LS_JKINFO; end; --4 FUNCTION SF_SPDHIS_HCTF00 ( PYJDJH0 varchar2 -- 医技单据号; ) -- modification history -- linshu 2024.01.12 Create:耗材计费推送报文; for YF9-20220722-002 return varchar2 is LS_JKINFO varchar(4000); LS_CJBM00 BM_TYZD00.MC0000%type; LS_INFOMX varchar(1000); LS_INFO00 varchar(4000); begin select nvl(max(MC0000),'0') into LS_CJBM00 from BM_TYZD00 where BH0000 = 'GZHCJK_CJBM00' and ZDMC00='高值耗材通用接口配置参数'; for YWJJ in ( select A.ZTM000 ,(select zxr000 from yj_yw0000 where yjdjh0 =PYJDJH0) czy000 from SS_GZHCJK A where A.id0000 = (select cxdjh0 from yj_yw0000 where yjdjh0 =PYJDJH0) ) loop if LS_CJBM00 = 'YSY' then --医商云(光泽医院)  LS_INFOMX := '' ||''||YWJJ.czy000||'' --lzg xj ||''||YWJJ.ZTM000||'' ||''; LS_INFO00 := LS_INFO00||LS_INFOMX; end if; end loop; if LS_CJBM00 = 'YSY' then --医商云(光泽医院)  LS_JKINFO := 'RefundMtrlExpFee'||LS_INFO00||''; end if; return LS_JKINFO; end;