CREATE OR REPLACE FUNCTION SF_SF_NNDJPJ_JSONSTR ( PCJLYBM varchar2 default 'NN', --厂家来源编码 NN:博思 PJKCJBM varchar2 default '', --接口场景编码 PBRID00 number, --病人ID=BM_BRXXB0.BRID00 PJZDH00 number, --结账单号=SF_JZB000.JZDH00 PCZY000 number default 0, --操作员=BM_YGBM00.YGBH00 PCZYKS0 number default 0, --操作员科室=BM_YGBM00.BMBH00 PFHLXBH number, --返回类型编码 0:完整请求报文 PINTSTR varchar2 default '' --备用参数 xml编码格式传入(其它请求入参或HIS前端请求入参数) ) -- modification history -- Person Date Comments -- chenHeyi 2022.08.23 create MZSF9-20220822-003 -- chenHeyi 2022.09.05 增加查询开具结果MZSF_DZFP_0009场景 MZSF9-20220831-001 -- chenHeyi 2022.11.01 CUR_invoiceDetail单价取XMDJ01 MZSF9-20221026-001 -- chenHeyi 2022.12.28 增加Order.extensionNumber,terminalNumber(分机号,终端号节点) MZSF9-20221228-001 -- chenHeyi 2023.01.16 报文增加发票备注remark,明细项目按发票项目汇总发送 MZSF9-20230116-001 -- chenHeyi 2023.02.27 增加合并开具电子发票报文 MZSF9-20230223-003 -- chenHeyi 2023.05.17 诺诺电子票据接口升级 MZSF9-20230425-003 ------------------------------------------------------ return clob is LS_FHXX00 clob; -- LS_invoiceDetail clob; -- LS_JSQDMX clob; LS_Order clob; in_PJH000 SF_JZB000.PJH000%type; LS_PJH000 SF_JZB000.PJH000%type; LS_CZYXM0 BM_YGBM00.ZWXM00%type; LS_number_std_amt varchar2(100); LS_DJ_format varchar2(20); --单价格式化 LS_SL_format varchar2(20); --数量格式化 LS_JE_format varchar2(20); --金额格式化 LS_salerTaxNum varchar2(20); --销方税号 LS_salerTel varchar2(20); --销方电话 LS_salerAddress varchar2(80); --销方地址 LS_invoiceCode SF_PJSYQK.WBPJDM%type; LS_invoiceNum SF_PJSYQK.WBPJXH%type; LS_FWLSH0 SF_WBFPXX.FWLSH0%type; LS_WBID00 SF_WBFPXX.WBID00%type; LS_orderNo varchar2(20); LS_FPUSER BM_YGBM00.FPUSER%type; LS_COUNT0 number(12,2); -- LS_SFHBDY number(10); --是否合并打印 0:否 1:是 LS_FZPJH0 SF_PJSYQK.FZPJH0%type; LS_YWLSH0 SF_WBFPXX.YWLSH0%type; --业务流水号(院内) LS_callbackUrl BM_TYZD00.MC0000%type; --回调地址 LS_FPLX00 varchar2(2); --发票类型 02:电子发票,03:纸质发票,04:冲红电子发票,05:作废纸质发票 LS_billId SF_WBFPXX.CHFPDM%type; --诺税通saas红字确认单申请接口,返回的billId保存在SF_WBFPXX.CHFPDM LS_extensionNumber BM_TYZD00.MC0000%type; --分机号 cursor CUR_invoiceDetail is select --a.XMBH00 as goodsCode, --商品编码 '3070202000000000000' as goodsCode, --商品编码 substrb(a.XMMC00,1,90) as goodsName, --商品名称 '0' as withTaxFlag, --单价含税标志:0:不含税,1:含税 a.XMDJ01 as price, --单价 sum(a.XMSL00) as num, --数量 substrb(max(a.XMDW00),1,20) as unit, --单位 substrb(max(a.XMGG00),1,40) as specType, --规格型号 0 as tax, --税额 0 as taxRate, --税率 sum(a.HJJE00) as taxExcludedAmount, --不含税金额 sum(a.HJJE00) as taxIncludedAmount, --含税金额 '0' as invoiceLineProperty, --发票行性质:0,正常行;1,折扣行;2,被折扣行 '1' as favouredPolicyFlag, --优惠政策标识:0,不使用;1,使用 '免税' as favouredPolicyName, --增值税特殊管理 '0' as deduction, --扣除额 '1' as zeroRateFlag --零税率标识 from VW_SF_RQDMX8 a where 1=1 and a.BRID00=PBRID00 and a.JZDH00=PJZDH00 group by a.XMBH00,substrb(a.XMMC00,1,90),a.XMDJ01; cursor CUR_FPXMinvoiceDetail is select d.MZFPBM as goodsCode, --商品编码 d.MZFPMC as goodsName, --商品名称 '0' as withTaxFlag, --单价含税标志:0:不含税,1:含税 '' as price, --单价 '' as num, --数量 '' as unit, --单位 '' as specType, --规格型号 0 as tax, --税额 0 as taxRate, --税率 sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00))) as taxExcludedAmount, --不含税金额 sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00))) as taxIncludedAmount, --含税金额 '0' as invoiceLineProperty, --发票行性质:0,正常行;1,折扣行;2,被折扣行 '1' as favouredPolicyFlag, --优惠政策标识:0,不使用;1,使用 '免税' as favouredPolicyName, --增值税特殊管理 '0' as deduction, --扣除额 '1' as zeroRateFlag --零税率标识 from SF_JZB000 a ,SF_FYMX00 b, SF_JZMXXM c,BM_FPXM00 d where a.JZDH00=c.JZDH00 and c.Mxid00=b.Mxid00 and b.MZFPID = d.FPXMID and a.BRID00=PBRID00 and a.JZDH00=PJZDH00 group by d.MZFPBM,d.MZFPMC having sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00)))>0; cursor CUR_FPXMinvoiceDetail_HB is select d.MZFPBM as goodsCode, --商品编码 d.MZFPMC as goodsName, --商品名称 '0' as withTaxFlag, --单价含税标志:0:不含税,1:含税 '' as price, --单价 '' as num, --数量 '' as unit, --单位 '' as specType, --规格型号 0 as tax, --税额 0 as taxRate, --税率 sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00))) as taxExcludedAmount, --不含税金额 sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00))) as taxIncludedAmount, --含税金额 '0' as invoiceLineProperty, --发票行性质:0,正常行;1,折扣行;2,被折扣行 '1' as favouredPolicyFlag, --优惠政策标识:0,不使用;1,使用 '免税' as favouredPolicyName, --增值税特殊管理 '0' as deduction, --扣除额 '1' as zeroRateFlag --零税率标识 from SF_JZB000 a ,SF_FYMX00 b, SF_JZMXXM c,BM_FPXM00 d where a.JZDH00=c.JZDH00 and c.Mxid00=b.Mxid00 and b.MZFPID = d.FPXMID and a.BRID00=PBRID00 and a.PJH000=LS_FZPJH0 group by d.MZFPBM,d.MZFPMC having sum((decode(b.JMBZ00,'4',b.HJJE00+nvl(b.JMJE00,0),b.HJJE00)))>0; cursor CUR_Order is select a.* from VW_SF_NNDZFP_Order a where 1=1 and a.BRID00=PBRID00 and a.JZDH00=PJZDH00; cursor CUR_Order_HB is select a.BRID00, a.PJH000, max(a.JZDH00) as JZDH00, max(a.JZRQ00) as JZRQ00, max(a.JZSJ00) as JZSJ00, max(a.JZY000) as JZY000, max(a.JZYXM0) as JZYXM0, max(a.buyerName) as buyerName, max(a.buyerTaxNum) as buyerTaxNum, max(a.buyerTel) as buyerTel, max(a.buyerAddress) as buyerAddress, max(a.buyerAccount) as buyerAccount, max(a.orderNo) as orderNo, max(a.invoiceDate) as invoiceDate, max(a.clerk) as clerk, max(a.remark) as remark from VW_SF_NNDZFP_Order a where a.PJH000=LS_FZPJH0 group by a.BRID00,a.PJH000; begin LS_FHXX00:=''; LS_invoiceDetail:=''; LS_Order:=''; in_PJH000:=0; LS_SFHBDY:=0; --是否合并打印 0:否 1:是 LS_COUNT0:=0; LS_salerTaxNum:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','NNDZFP_salerTaxNum')),1,20); LS_salerTel:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','NNDZFP_salerTel')),1,20); LS_salerAddress:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','NNDZFP_salerAddress')),1,80); LS_extensionNumber:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','NNDZFP_extensionNumber')),1,10); LS_number_std_amt:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','number_std_amt')),1,100); if LS_number_std_amt is not null then LS_SL_format:=substrb(SF_SF_RETURNINDEXEH(trim(LS_number_std_amt),'|', 1),1,20); --数量格式化(保留4位) LS_DJ_format:=substrb(SF_SF_RETURNINDEXEH(trim(LS_number_std_amt),'|', 2),1,20); --单价格式化(保留4位) LS_JE_format:=substrb(SF_SF_RETURNINDEXEH(trim(LS_number_std_amt),'|', 3),1,20); --金额格式化(保留2位) else LS_SL_format:='999999990.9999'; --数量格式化(保留4位) LS_DJ_format:='999999990.9999'; --单价格式化(保留4位) LS_JE_format:='999999990.99'; --金额格式化(保留2位) end if; begin select substrb(ZWXM00,1,20),FPUSER into LS_CZYXM0,LS_FPUSER from BM_YGBM00 where YGBH00=PCZY000; exception when others then LS_CZYXM0:=''; end; --解析入参报文 if trim(PINTSTR) is not null then --票据号 begin select to_number(SF_SF_GETXMLNOTE('pjh000',trim(PINTSTR))) into in_PJH000 from dual; exception when others then in_PJH000:=0; end; if nvl(in_PJH000,0)>0 then --根据票据号查找结账表数据 begin select FZPJH0 into LS_FZPJH0 from SF_PJSYQk where PJH000=in_PJH000; select count(*) into LS_COUNT0 from SF_JZB000 where BRID00=PBRID00 and PJH000=LS_FZPJH0; exception when others then LS_COUNT0:=0; end; if nvl(LS_COUNT0,0)>1 then --存在>1记录代表合并打印 LS_SFHBDY:=1;--是否合并打印 0:否 1:是 end if; end if; end if; --取LS_YWLSH0 begin select PJH000 into LS_PJH000 from SF_JZB000 where JZDH00=PJZDH00; select YWLSH0 into LS_YWLSH0 from SF_WBFPXX where BRID00=PBRID00 and PJH000=LS_PJH000 and JZDH00=PJZDH00 and rownum=1; exception when others then LS_YWLSH0:=''; end; --select max(nvl(YWLSH0,'')) into LS_orderNo from SF_WBFPXX where JZDH00=PJZDH00; if PJKCJBM in ('MZSF_DZFP_0006','ZYSF_DZFP_0006','MZSST_DZFP_0006','ZYSST_DZFP_0006','MZDD_DZFP_0006','ZYDD_DZFP_0006','MZYD_DZFP_0006','ZYYD_DZFP_0006','MZWLZS_DZFP_0006','ZYWLZS_DZFP_0006') then --电子票据冲红接口 --冲红 LS_callbackUrl:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','callbackUrl_MZCH')),1,300); select PJH000 into LS_PJH000 from SF_JZB000 where JZDH00=PJZDH00; LS_PJH000:=SF_SF_GETYXPJH(LS_PJH000); select WBPJDM, WBPJXH into LS_invoiceCode,LS_invoiceNum from SF_PJSYQK where PJH000=LS_PJH000; if LS_SFHBDY='0' then for REC in CUR_Order loop LS_YWLSH0:=nvl(LS_YWLSH0,REC.orderNo); LS_Order:='"blueInvoiceLine":'||'"pc",' --对应蓝票发票种类: bs:电子发票(增值税专用发票), pc:电子发票(普通发票) ||'"applySource":"0",' --申请方(录入方)身份: 0 销方 1 购方 ||'"blueInvoiceNumber":'||'"'||LS_invoiceNum||'",' --对应蓝字发票号码(蓝票是增值税发票时必传,长度为8位数字,若传20位数字则视为是蓝字数电票号码 ||'"blueInvoiceCode":'||'"'||LS_invoiceCode||'",' --对应蓝字发票代码(蓝票是增值税发票时必传) ||'"blueElecInvoiceNumber":'||'"'||LS_invoiceNum||'",' --对应蓝字数电票号码(数电普票、数电专票、数纸普票、数纸专票都需要传,蓝票是增值税发票时不传) ||'"sellerTaxNo":'||'"'||LS_salerTaxNum||'",' --销方税号 ||'"buyerName":'||'"'||REC.buyerName||'",' --购方名称 ||'"callbackUrl":'||'"'||LS_callbackUrl||'",' --回传地址 ||'"autoInvoice":'||'"1",' ||'"redReason":"2"'; --冲红原因: 1销货退回 2开票有误 3服务中止 4销售折让 end loop; else for REC in CUR_Order_HB loop LS_YWLSH0:=nvl(LS_YWLSH0,REC.orderNo); LS_Order:='"blueInvoiceLine":'||'"pc",' --对应蓝票发票种类: bs:电子发票(增值税专用发票), pc:电子发票(普通发票) ||'"applySource":"0",' --申请方(录入方)身份: 0 销方 1 购方 ||'"blueInvoiceNumber":'||'"'||LS_invoiceNum||'",' --对应蓝字发票号码(蓝票是增值税发票时必传,长度为8位数字,若传20位数字则视为是蓝字数电票号码 ||'"blueInvoiceCode":'||'"'||LS_invoiceCode||'",' --对应蓝字发票代码(蓝票是增值税发票时必传) ||'"blueElecInvoiceNumber":'||'"'||LS_invoiceNum||'",' --对应蓝字数电票号码(数电普票、数电专票、数纸普票、数纸专票都需要传,蓝票是增值税发票时不传) ||'"sellerTaxNo":'||'"'||LS_salerTaxNum||'",' --销方税号 ||'"buyerName":'||'"'||REC.buyerName||'",' --购方名称 ||'"callbackUrl":'||'"'||LS_callbackUrl||'",' --回传地址 ||'"autoInvoice":'||'"1",' ||'"redReason":"2"'; --冲红原因: 1销货退回 2开票有误 3服务中止 4销售折让 end loop; end if; LS_FHXX00:='{'||LS_Order||'}'; elsif PJKCJBM in ('MZSF_DZFP_0009','ZYSF_DZFP_0009') then begin select to_number(SF_SF_GETXMLNOTE('wbid00',trim(PINTSTR))) into LS_WBID00 from dual; exception when others then LS_WBID00:=0; end; select a.FWLSH0,a.DQZT00,a.CHFPDM,a.YWLSH0 into LS_FWLSH0,LS_FPLX00,LS_billId,LS_YWLSH0 from SF_WBFPXX a where a.BRID00=PBRID00 and WBID00=LS_WBID00; if LS_FPLX00='02' then LS_JSQDMX:='"serialNos":["'||LS_FWLSH0||'"]'; --LS_JSQDMX:='"orderNos":["'||LS_YWLSH0||'"]'; LS_FHXX00:='{"isOfferInvoiceDetail":"0",'||LS_JSQDMX||'}'; else LS_JSQDMX:='"identity":"0",' ||'"billId":"'||LS_billId||'"'; --红字确认单申请号 LS_FHXX00:='{'||LS_JSQDMX||'}'; end if; else LS_callbackUrl:=substrb(trim(SF_SF_TYZD00('第三方电子发票平台接口','callbackUrl_MZKJ')),1,300); if LS_SFHBDY='0' then for REC in CUR_FPXMinvoiceDetail loop LS_JSQDMX:=''; LS_JSQDMX:='{' ||'"goodsName":'||'"'||REC.goodsName||'",' --药品名称 ||'"goodsCode":'||'"'||REC.goodsCode||'",' --商品编码 ||'"withTaxFlag":'||'"'||REC.withTaxFlag||'",' --单价含税标志:0:不含税,1:含税 ||'"price":'||'"'||trim(to_char(REC.price,LS_DJ_format))||'",' --单价 ||'"num":'||'"'||trim(to_char(REC.num,LS_SL_format))||'",' --数量 ||'"unit":'||'"'||REC.unit||'",' --单位 ||'"specType":'||'"'||REC.specType||'",' --规格型号 ||'"tax":'||'"'||trim(to_char(REC.tax,LS_JE_format))||'",' --税额 ||'"taxRate":'||'"'||trim(to_char(REC.taxRate,LS_JE_format))||'",' --税率 ||'"taxExcludedAmount":'||'"'||trim(to_char(REC.taxExcludedAmount,LS_JE_format))||'",' --不含税金额 ||'"taxIncludedAmount":'||'"'||trim(to_char(REC.taxIncludedAmount,LS_JE_format))||'",' --含税金额 ||'"invoiceLineProperty":'||'"'||REC.invoiceLineProperty||'",' --发票行性质 ||'"favouredPolicyFlag":'||'"'||REC.favouredPolicyFlag||'",' --优惠政策标识 ||'"favouredPolicyName":'||'"'||REC.favouredPolicyName||'",' --增值税特殊管理 ||'"deduction":'||'"'||REC.deduction||'",' --扣除额 ||'"zeroRateFlag":'||'"'||REC.zeroRateFlag||'"' --零税率标识 ||'}'; if LS_invoiceDetail is not null then LS_invoiceDetail:=LS_invoiceDetail||','||LS_JSQDMX; else LS_invoiceDetail:=LS_JSQDMX; end if; end loop; LS_invoiceDetail:='['||LS_invoiceDetail||']'; for REC in CUR_Order loop LS_YWLSH0:=nvl(LS_YWLSH0,REC.orderNo); LS_Order:='"buyerName":'||'"'||REC.buyerName||'",' --购方名称 ||'"buyerTaxNum":'||'"'||REC.buyerTaxNum||'",' --购方税号 ||'"buyerTel":'||'"'||REC.buyerTel||'",' --购方电话 ||'"buyerAddress":'||'"'||REC.buyerAddress||'",' --购方地址 ||'"buyerAccount":'||'"'||REC.buyerAccount||'",' --购方银行账号及开户行地址 ||'"salerTaxNum":'||'"'||LS_salerTaxNum||'",' --销方税号 ||'"salerTel":'||'"'||LS_salerTel||'",' --销方电话 ||'"salerAddress":'||'"'||LS_salerAddress||'",' --销方地址 ||'"orderNo":'||'"'||LS_YWLSH0||'",' --订单号 ||'"invoiceDate":'||'"'||REC.invoiceDate||'",' --订单时间 ||'"invoiceCode":'||'"",' --冲红时填写的对应蓝票发票代码(红票必填,不满12位请左补0) ||'"invoiceNum":'||'"",' --冲红时填写的对应蓝票发票号码(红票必填,不满8位请左补0) ||'"clerk":'||'"'||LS_CZYXM0||'",' --开票员 ||'"terminalNumber":'||'"'||LS_extensionNumber||'",' --分机号,都是0 ||'"extensionNumber":'||'"'||LS_FPUSER||'",' --终端号,取BM_YGBM00.FPUSER ||'"remark":'||'"'||REC.remark||'",' --发票备注remark ||'"listFlag":'||'"0",' --清单标志:非清单:0;清单:1,默认:0 ||'"pushMode":'||'"-1",' --推送方式:-1,不推送;0,邮箱;1,手机(默认);2,邮箱、手机 ||'"invoiceType":'||'"1",' --开票类型:1:蓝票;2:红票 ||'"callbackUrl":'||'"'||LS_callbackUrl||'",' --回传地址 ||'"invoiceLine":'||'"pc"'; --发票种类:p,普通发票(电票)(默认);c,普通发票(纸票);s,专用发票;e,收购发票(电票);f,收购发票(纸质);r,普通发票(卷式);b,增值税电子专用发票,pc:电子发票(普通发票)-即数电普票(电子), end loop; else for REC in CUR_FPXMinvoiceDetail_HB loop LS_JSQDMX:=''; LS_JSQDMX:='{' ||'"goodsName":'||'"'||REC.goodsName||'",' --药品名称 ||'"goodsCode":'||'"'||REC.goodsCode||'",' --商品编码 ||'"withTaxFlag":'||'"'||REC.withTaxFlag||'",' --单价含税标志:0:不含税,1:含税 ||'"price":'||'"'||trim(to_char(REC.price,LS_DJ_format))||'",' --单价 ||'"num":'||'"'||trim(to_char(REC.num,LS_SL_format))||'",' --数量 ||'"unit":'||'"'||REC.unit||'",' --单位 ||'"specType":'||'"'||REC.specType||'",' --规格型号 ||'"tax":'||'"'||trim(to_char(REC.tax,LS_JE_format))||'",' --税额 ||'"taxRate":'||'"'||trim(to_char(REC.taxRate,LS_JE_format))||'",' --税率 ||'"taxExcludedAmount":'||'"'||trim(to_char(REC.taxExcludedAmount,LS_JE_format))||'",' --不含税金额 ||'"taxIncludedAmount":'||'"'||trim(to_char(REC.taxIncludedAmount,LS_JE_format))||'",' --含税金额 ||'"invoiceLineProperty":'||'"'||REC.invoiceLineProperty||'",' --发票行性质 ||'"favouredPolicyFlag":'||'"'||REC.favouredPolicyFlag||'",' --优惠政策标识 ||'"favouredPolicyName":'||'"'||REC.favouredPolicyName||'",' --增值税特殊管理 ||'"deduction":'||'"'||REC.deduction||'",' --扣除额 ||'"zeroRateFlag":'||'"'||REC.zeroRateFlag||'"' --零税率标识 ||'}'; if LS_invoiceDetail is not null then LS_invoiceDetail:=LS_invoiceDetail||','||LS_JSQDMX; else LS_invoiceDetail:=LS_JSQDMX; end if; end loop; LS_invoiceDetail:='['||LS_invoiceDetail||']'; for REC in CUR_Order_HB loop LS_YWLSH0:=nvl(LS_YWLSH0,REC.orderNo); LS_Order:='"buyerName":'||'"'||REC.buyerName||'",' --购方名称 ||'"buyerTaxNum":'||'"'||REC.buyerTaxNum||'",' --购方税号 ||'"buyerTel":'||'"'||REC.buyerTel||'",' --购方电话 ||'"buyerAddress":'||'"'||REC.buyerAddress||'",' --购方地址 ||'"buyerAccount":'||'"'||REC.buyerAccount||'",' --购方银行账号及开户行地址 ||'"salerTaxNum":'||'"'||LS_salerTaxNum||'",' --销方税号 ||'"salerTel":'||'"'||LS_salerTel||'",' --销方电话 ||'"salerAddress":'||'"'||LS_salerAddress||'",' --销方地址 ||'"orderNo":'||'"'||LS_YWLSH0||'",' --订单号 ||'"invoiceDate":'||'"'||REC.invoiceDate||'",' --订单时间 ||'"invoiceCode":'||'"",' --冲红时填写的对应蓝票发票代码(红票必填,不满12位请左补0) ||'"invoiceNum":'||'"",' --冲红时填写的对应蓝票发票号码(红票必填,不满8位请左补0) ||'"clerk":'||'"'||LS_CZYXM0||'",' --开票员 ||'"terminalNumber":'||'"'||LS_extensionNumber||'",' --分机号,都是0 ||'"extensionNumber":'||'"'||LS_FPUSER||'",' --终端号,取BM_YGBM00.FPUSER ||'"remark":'||'"'||REC.remark||'",' --发票备注remark ||'"listFlag":'||'"0",' --清单标志:非清单:0;清单:1,默认:0 ||'"pushMode":'||'"-1",' --推送方式:-1,不推送;0,邮箱;1,手机(默认);2,邮箱、手机 ||'"invoiceType":'||'"1",' --开票类型:1:蓝票;2:红票 ||'"callbackUrl":'||'"'||LS_callbackUrl||'",' --回传地址 --回传地址 ||'"invoiceLine":'||'"pc"'; --发票种类:p,普通发票(电票)(默认);c,普通发票(纸票);s,专用发票;e,收购发票(电票);f,收购发票(纸质);r,普通发票(卷式);b,增值税电子专用发票,pc:电子发票(普通发票)-即数电普票(电子), end loop; end if; LS_Order:='{'||LS_Order||',"invoiceDetail":'||LS_invoiceDetail||'}'; LS_FHXX00:='{"order":'||LS_Order||'}'; end if; return LS_FHXX00; end;