CREATE OR REPLACE FUNCTION SF_ZY_GETFPXX_REMARK ( P_FLAG00 varchar2 ,--标志 0:VW_ZY_op_electronic_bill 1:VW_ZY_FP0000 P_BZFPGS varchar2 ,--Y:病种发票 N:普通发票 Q:CDRG发票 D:DRG发票 P_ZYID00 number ,--住院ID P_BRID00 number ,--病人ID P_JZDH00 number ,--结账单号 P_PJH000 number ,--票据号 P_YBJKID varchar2 ,--医保接口ID P_DBZBM0 varchar2 ,--单病种编码 P_DBZMC0 varchar2 ,--单病种名称 P_YBYL04 number ,--单病种限额 P_YBYL05 number ,--医院支付金额 P_DRG_CODE varchar2 ,--DRG组编码 P_DRG_NAME varchar2 ,--DRG组名称 P_DRGZFE number ,--DRG付费标准 P_CWNRZE number ,--DRG除外总金额 P_ZLKSRQ varchar2 ,--诊疗开始日期,格式:YYYYMMDD P_ZLKSSJ varchar2 ,--诊疗开始时间,格式:HH24:MI:SS P_ZLFWBM varchar2 ,--诊疗服务编码 P_ZLFWMC varchar2 ,--诊疗服务名称 P_ZLFWJE number ,--诊疗服务金额 p_BRZJE0 number ,--病人费用总金额 p_JZJE00 number ,--记帐金额 p_GFJE00 number ,--公费金额 p_HJJE00 number ,--合计应收金额 p_JMJE00 number ,--减免金额 p_TCJJZF number ,--统筹基金支付 p_GRZHZF number ,--个人医疗帐户支付 p_ZFJE00 number ,--自付金额 p_XJFKJE number ,--现金付款,为了方便打印发票而设置的 p_ZZFKJE number ,--转帐付款 p_WXTK00 number ,--微信退款 p_ZFBTK0 number ,--支付宝退款 p_YHTKJE number ,--银行卡退款 p_DZZFJE number ,--电子支付金额 p_YSZJE0 number ,--预收款现金 p_ZZZJE0 number ,--预收款总账 p_XJYE00 number ,--现金余额 p_ZZYE00 number ,--转账余额 P_YBJXJ0 number ,--应补交现金 P_YBJZZ0 number ,--应补交转账 P_YBJZE0 number ,--应补交总额 P_YTHXJ0 number ,--应退还现金 P_YTHZZ0 number ,--应退还转账 P_YTHZE0 number ,--应退还总额 P_BAKXML varchar2 --备用XML ) return varchar2 is -- Person Date Comments -- zhangyc 2022.09.18 create by 发票其它信息过程 ZYSF-20220829-003 LS_FHXX00 varchar2(200); --返回值 LS_FLAG00 varchar2(10); --标志 0:VW_ZY_op_electronic_bill 1:VW_ZY_FP0000 LS_BZFPGS varchar2(10); --Y:病种发票 N:普通发票 Q:CDRG发票 D:DRG发票 LS_TYZD_remark_way varchar2(10); begin LS_FHXX00:=null; --返回值 LS_FLAG00:=substrb(P_FLAG00,1,10); --标志 0:VW_ZY_op_electronic_bill 1:VW_ZY_FP0000 LS_BZFPGS:=substrb(P_BZFPGS,1,10); --Y:病种发票 N:普通发票 Q:CDRG发票 D:DRG发票 if LS_FLAG00=0 then if LS_BZFPGS='D' then LS_FHXX00:=substrb(LS_FHXX00||' 备注:'||' ',1,200);--15个空格 LS_FHXX00:=substrb(LS_FHXX00||' DRG编码:'||P_DRG_CODE,1,200);--DRG编码 LS_FHXX00:=substrb(LS_FHXX00||' DRG名称:'||P_DRG_NAME,1,200);--DRG编码 if nvl(p_XJYE00,0)<0 then LS_FHXX00:=substrb(LS_FHXX00||' 应补现金:'||abs(p_XJYE00),1,200); else LS_FHXX00:=substrb(LS_FHXX00||' 应退现金:'||abs(p_XJYE00),1,200); end if; if nvl(p_WXTK00,0)>0 then LS_FHXX00:=substrb(LS_FHXX00||' 退微信:'||p_WXTK00,1,200); end if; if nvl(p_ZFBTK0,0)>0 then LS_FHXX00:=substrb(LS_FHXX00||' 退支付宝:'||p_ZFBTK0,1,200); end if; if nvl(p_JMJE00,0)>0 then LS_FHXX00:=substrb(LS_FHXX00||' 减免:'||p_JMJE00,1,200); end if; if nvl(p_YHTKJE,0)>0 then LS_FHXX00:=substrb(LS_FHXX00||' 退POS:'||p_YHTKJE,1,200); end if; if nvl(p_DZZFJE,0)>0 then LS_FHXX00:=substrb(LS_FHXX00||' 退电子支付:'||p_DZZFJE,1,200); end if; else --开具票据remark取值方式 0:微信、支付宝退款,1:所有退款,2:单病种名称,3:直接从自定义函数SF_ZY_GETDZPJBZ_ZDY获取 默认 0 LS_TYZD_remark_way:=substrb(nvl(SF_SF_TYZD00('第三方电子发票平台接口','remark_way'),'0'),1,10); if LS_TYZD_remark_way='0' then LS_FHXX00:=substrb(LS_FHXX00||' 微信:'||p_WXTK00,1,200); LS_FHXX00:=substrb(LS_FHXX00||',支付宝:'||p_ZFBTK0,1,200); LS_FHXX00:=substrb(LS_FHXX00||',转账'||p_ZZZJE0,1,200); LS_FHXX00:=substrb(LS_FHXX00||',退转账:'||-p_ZZYE00,1,200); LS_FHXX00:=substrb(LS_FHXX00||',减免:'||p_JMJE00,1,200); elsif LS_TYZD_remark_way='1' then LS_FHXX00:=substrb(LS_FHXX00||' 现金:'||-p_XJYE00,1,200); LS_FHXX00:=substrb(LS_FHXX00||',转账:'||-p_ZZYE00,1,200); LS_FHXX00:=substrb(LS_FHXX00||',微信:'||-p_WXTK00,1,200); LS_FHXX00:=substrb(LS_FHXX00||',支付宝:'||-p_ZFBTK0,1,200); elsif LS_TYZD_remark_way='2' then LS_FHXX00:=substrb(P_DBZMC0,1,200); --返回值 elsif LS_TYZD_remark_way='3' then LS_FHXX00:=substrb(SF_ZY_GETDZPJBZ(P_JZDH00),1,200); --返回值 end if; end if; end if; return trim(LS_FHXX00); end;