注册网站流程,河南新乡做网站公司,培训餐饮网站建设,网站单页面日常记录
使用到了apex_json方式接收
、、、1
首先#xff0c;接口通过body传递过来#xff0c;成功接收到#xff0c; 数据格式为 JSON_OBJECT_T
l_json : JSON_OBJECT_T.parse(:body);
这里我用参数接收到
然后 里面是包含了 data
我用 继续接收到这个
l…日常记录
使用到了apex_json方式接收
、、、1
首先接口通过body传递过来成功接收到 数据格式为 JSON_OBJECT_T
l_json : JSON_OBJECT_T.parse(:body);
这里我用参数接收到
然后 里面是包含了 data
我用 继续接收到这个
l_data : l_json.get_object(data);、、、2
但是有个问题如果是使用系统原始的 get_array(persons) 之类的始终是报错
我只能将代码转成clob格式存放到系统的参数中
V_JSON_DATA : l_data.To_Clob;、、、3apex_json.parse(V_JSON_DATA);
apex_json.parse函数来解析JSON字符串使用 apex_json.parse(V_JSON_DATA); 将 CLOB 类型的 JSON 数据解析为 APEX 的 JSON 对象。
然后尝试使用 apex_json.get_varchar2 函数来访问解析后的 JSON 数据。
apex_json.get_varchar2 函数是线程安全的这意味着同一时间的多个请求不会互相影响。
每个 APEX 应用程序实例即每个用户会话都有自己的内存空间
因此一个会话中的 apex_json.get_varchar2 调用不会影响另一个会话中的调用。
代码
DECLAREl_json JSON_OBJECT_T;l_data JSON_OBJECT_T;V_JSON JSON_OBJECT_T;V_DATA JSON_OBJECT_T;V_JSON_DATA CLOB;V_VISITORS JSON_ARRAY_T;V_VISITOR JSON_OBJECT_T;PAR_DATA_NO NUMBER;PAR_EXISTS NUMBER;RETURNOBJ JSON_OBJECT_T; -- 返回V_SQLCODE VARCHAR2(4000); -- 错误代码V_SQLERRM VARCHAR2(4000); -- 错误内容BEGINl_json : JSON_OBJECT_T.parse(:body);-- 获取嵌套的data对象l_data : l_json.get_object(data);V_JSON_DATA : l_data.To_Clob;apex_json.parse(V_JSON_DATA);-- 当前流程标题是否存在SELECT COUNT(*)INTO PAR_EXISTSFROM TZ_FREE_TICKETSWHERE PROCESS_TITLE apex_json.get_varchar2(process_title)AND DEL_FLAG 1;IF PAR_EXISTS 0 THEN-- 获取原有批次号 SELECT DATA_NOINTO PAR_DATA_NOFROM TZ_FREE_TICKETSWHERE PROCESS_TITLE apex_json.get_varchar2(process_title)AND DEL_FLAG 1;-- 原有数据删除重新插入UPDATE TZ_FREE_TICKETSSET DEL_FLAG 0, UPDATE_TIME SYSDATEWHERE PROCESS_TITLE apex_json.get_varchar2(process_title)AND DEL_FLAG 1; -- 根据流程单据名称更新ELSESELECT TZ_FREE_TICKETS_DATA_NO_SEQ.NEXTVAL INTO PAR_DATA_NO FROM DUAL; -- 获取当前批次号 END IF;-- 插入主表数据INSERT INTO TZ_FREE_TICKETS(DATA_NO,OPEN_INVOICE, -- 是否出票 是/否APPLY_TIME, -- 申请日期PROCESS_TITLE, -- 流程单据名称PROCESS_NUMBER, -- OA流程编号APPLY_DEPT, -- 申请部门APPLY_BY, -- 申请人FREE_TICKET_TYPE, -- 免票类型ENTER_GARDEN_CAUSE, -- 入园事由ENTER_GARDEN_DATE, -- 入园日期 TICKET_NAME, -- 票种名称TICKET_PRICE, -- 门票单价APPLY_NUM, -- 申请入园人数FREE_TICKET_PRICE, -- 免票金额RECIPIENT_UNIT, -- 领用人/单位RECIPIENT_PHONE, --领用人联系电话REMARKS, -- 备注BUSID -- 景区 莽山221)VALUES(PAR_DATA_NO,apex_json.get_varchar2(open_invoice),apex_json.get_varchar2(apply_time),apex_json.get_varchar2(process_title),apex_json.get_varchar2(process_number),apex_json.get_varchar2(apply_dept),apex_json.get_varchar2(apply_by),apex_json.get_varchar2(free_ticket_type),apex_json.get_varchar2(enter_garden_cause),apex_json.get_varchar2(enter_garden_date),apex_json.get_varchar2(ticket_name),apex_json.get_number(ticket_price),apex_json.get_number(apply_num),apex_json.get_number(free_ticket_price),apex_json.get_varchar2(recipient_unit),apex_json.get_varchar2(recipient_phone),apex_json.get_varchar2(remarks),apex_json.get_varchar2(busid));-- 插入游客信息表数据FOR I IN 1 .. apex_json.get_count(visitors) LOOPINSERT INTO TZ_FREE_TICKETS_VISITOR(DATA_NO,VISITOR_NAME, -- 游客姓名VISITOR_ID_NUMBER, -- 游客身份证号ENTRY_STATUS, -- 入园状态是 否TICKET_ORDER_NO, -- 关联票务订单号BUSID)VALUES(PAR_DATA_NO,apex_json.get_varchar2(visitors[%d].visitor_name, i),apex_json.get_varchar2(visitors[%d].visitor_id_number, i),apex_json.get_varchar2(visitors[%d].entry_status, i),apex_json.get_varchar2(visitors[%d].ticket_order_number, i),apex_json.get_varchar2(busid));END LOOP;COMMIT;-- 设置返回信息RETURNOBJ : NEW JSON_OBJECT_T;RETURNOBJ.PUT(msg, 成功);RETURNOBJ.PUT(code, 200);SYS.HTP.PRINT(RETURNOBJ.TO_STRING());EXCEPTIONWHEN OTHERS THENV_SQLCODE : SQLCODE;V_SQLERRM : SUBSTR(SQLERRM, 1, 2000);RETURNOBJ : NEW JSON_OBJECT_T;RETURNOBJ.PUT(msg, 失败 || V_SQLERRM);RETURNOBJ.PUT(code, 500);SYS.HTP.PRINT(RETURNOBJ.TO_STRING());
END;
参数
{data: {open_invoice: 是,apply_time: 2024-05-20,process_title: 测试流程单,process_number: PR202405200001,apply_dept: 人力资源部,apply_by: 张三,free_ticket_type: VIP,enter_garden_cause: 商务合作,enter_garden_date: 2024-05-22,ticket_name: 普通门票,ticket_price: 120.00,apply_num: 4,free_ticket_price: 480.00,recipient_unit: 合作伙伴公司,recipient_phone: 13800000000,remarks: 请尽快处理,busid: 221,visitors: [{visitor_name: 张三,visitor_id_number: 123456789012345678,entry_status: 是,ticket_order_number: T11111111},{visitor_name: 李四,visitor_id_number: 123456789012345679,entry_status: 是,ticket_order_number: T11111111},{visitor_name: 王五,visitor_id_number: 123456789012345670,entry_status: 是,ticket_order_number: T11111111},{visitor_name: 赵六,visitor_id_number: 123456789012345671,entry_status: 是,ticket_order_number: T11111111}]}
}
文章转载自: http://www.morning.gnbtp.cn.gov.cn.gnbtp.cn http://www.morning.wkknm.cn.gov.cn.wkknm.cn http://www.morning.dyzbt.cn.gov.cn.dyzbt.cn http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn http://www.morning.ltzkk.cn.gov.cn.ltzkk.cn http://www.morning.nchlk.cn.gov.cn.nchlk.cn http://www.morning.fpzz1.cn.gov.cn.fpzz1.cn http://www.morning.wmdlp.cn.gov.cn.wmdlp.cn http://www.morning.krhkb.cn.gov.cn.krhkb.cn http://www.morning.zkbxx.cn.gov.cn.zkbxx.cn http://www.morning.clqpj.cn.gov.cn.clqpj.cn http://www.morning.wfyqn.cn.gov.cn.wfyqn.cn http://www.morning.kdlzz.cn.gov.cn.kdlzz.cn http://www.morning.jnkng.cn.gov.cn.jnkng.cn http://www.morning.synlt.cn.gov.cn.synlt.cn http://www.morning.jqbpn.cn.gov.cn.jqbpn.cn http://www.morning.rtspr.cn.gov.cn.rtspr.cn http://www.morning.fqmcc.cn.gov.cn.fqmcc.cn http://www.morning.jjrsk.cn.gov.cn.jjrsk.cn http://www.morning.gbsfs.com.gov.cn.gbsfs.com http://www.morning.bwfsn.cn.gov.cn.bwfsn.cn http://www.morning.tqrjj.cn.gov.cn.tqrjj.cn http://www.morning.rdnjc.cn.gov.cn.rdnjc.cn http://www.morning.qlrwf.cn.gov.cn.qlrwf.cn http://www.morning.kwxr.cn.gov.cn.kwxr.cn http://www.morning.pzlhq.cn.gov.cn.pzlhq.cn http://www.morning.yhgbd.cn.gov.cn.yhgbd.cn http://www.morning.rbbyd.cn.gov.cn.rbbyd.cn http://www.morning.rqmr.cn.gov.cn.rqmr.cn http://www.morning.ljmbd.cn.gov.cn.ljmbd.cn http://www.morning.touziyou.cn.gov.cn.touziyou.cn http://www.morning.bnjnp.cn.gov.cn.bnjnp.cn http://www.morning.woyoua.com.gov.cn.woyoua.com http://www.morning.xlbtz.cn.gov.cn.xlbtz.cn http://www.morning.cyjjp.cn.gov.cn.cyjjp.cn http://www.morning.rbbyd.cn.gov.cn.rbbyd.cn http://www.morning.fjkkx.cn.gov.cn.fjkkx.cn http://www.morning.24vy.com.gov.cn.24vy.com http://www.morning.brmbm.cn.gov.cn.brmbm.cn http://www.morning.rrqgf.cn.gov.cn.rrqgf.cn http://www.morning.ffbl.cn.gov.cn.ffbl.cn http://www.morning.hlzpb.cn.gov.cn.hlzpb.cn http://www.morning.hnkkm.cn.gov.cn.hnkkm.cn http://www.morning.ktmnq.cn.gov.cn.ktmnq.cn http://www.morning.fgkwh.cn.gov.cn.fgkwh.cn http://www.morning.yhywx.cn.gov.cn.yhywx.cn http://www.morning.tsdjj.cn.gov.cn.tsdjj.cn http://www.morning.wjxyg.cn.gov.cn.wjxyg.cn http://www.morning.qsyyp.cn.gov.cn.qsyyp.cn http://www.morning.tnyanzou.com.gov.cn.tnyanzou.com http://www.morning.cnkrd.cn.gov.cn.cnkrd.cn http://www.morning.xptkl.cn.gov.cn.xptkl.cn http://www.morning.xiaobaixinyong.cn.gov.cn.xiaobaixinyong.cn http://www.morning.knqzd.cn.gov.cn.knqzd.cn http://www.morning.rwyd.cn.gov.cn.rwyd.cn http://www.morning.dgknl.cn.gov.cn.dgknl.cn http://www.morning.mknxd.cn.gov.cn.mknxd.cn http://www.morning.msbct.cn.gov.cn.msbct.cn http://www.morning.lgcqj.cn.gov.cn.lgcqj.cn http://www.morning.wpqwk.cn.gov.cn.wpqwk.cn http://www.morning.jqhrk.cn.gov.cn.jqhrk.cn http://www.morning.yrpg.cn.gov.cn.yrpg.cn http://www.morning.pplxd.cn.gov.cn.pplxd.cn http://www.morning.mhrzd.cn.gov.cn.mhrzd.cn http://www.morning.dhwyl.cn.gov.cn.dhwyl.cn http://www.morning.lnbcx.cn.gov.cn.lnbcx.cn http://www.morning.fhykt.cn.gov.cn.fhykt.cn http://www.morning.lffbz.cn.gov.cn.lffbz.cn http://www.morning.ymsdr.cn.gov.cn.ymsdr.cn http://www.morning.xnwjt.cn.gov.cn.xnwjt.cn http://www.morning.xnnxp.cn.gov.cn.xnnxp.cn http://www.morning.ykkrg.cn.gov.cn.ykkrg.cn http://www.morning.rbrd.cn.gov.cn.rbrd.cn http://www.morning.ntzfj.cn.gov.cn.ntzfj.cn http://www.morning.smpb.cn.gov.cn.smpb.cn http://www.morning.lwwnq.cn.gov.cn.lwwnq.cn http://www.morning.nqmhf.cn.gov.cn.nqmhf.cn http://www.morning.yzdth.cn.gov.cn.yzdth.cn http://www.morning.jkdtz.cn.gov.cn.jkdtz.cn http://www.morning.rqknq.cn.gov.cn.rqknq.cn