首页 > 代码库 > 巴枪操作关联车辆记录
巴枪操作关联车辆记录
表结构: 1、deal_countdeal_ip默认为0,取消非空限制 2、表中新增delive_code字段; 代码 3、conf中新增trmsCarTaskSwitch开关 #4、conf中新增kafka开关 5、新增mapp.xml配置; select * from a; -- 分中心数据下发接收表 drop table tt_trms_car_task; CREATE TABLE tt_trms_car_task( id NUMBER(18) PRIMARY KEY , original_id NUMBER(18) not null, -- 版本号id send_car_tm DATE , require_id VARCHAR(50), task_id VARCHAR(100) , -- 任务id position_no VARCHAR(10) , line_code VARCHAR(200) , batch_code VARCHAR(50) , -- 卡口编码 plan_start_tm DATE , zone_code VARCHAR(50) , -- 中转场代码(网点) plate_num VARCHAR(50) , del_flag VARCHAR(1) , send_tm DATE, deal_tm DATE , -- 处理时间 deal_flg number(2) default 0, -- 处理标记 deal_ip varchar2(30) , deal_count number(2) , insert_tm timestamp(6) default SYSDATE, --入库时间 delive_code VARCHAR2(50) -- 分中心代码 ); -- 序列 CREATE SEQUENCE SEQ_TT_TRMS_CAR_TASK START WITH 1 INCREMENT BY 1 NOMAXVALUE MINVALUE 1 NOCYCLE NOCACHE -- 中间表 drop table tt_trms_car_task_mid; CREATE TABLE tt_trms_car_task_mid( id NUMBER(18) PRIMARY KEY , original_id NUMBER(18) not null, -- 版本号id send_car_tm DATE , require_id VARCHAR(50), task_id VARCHAR(100) , -- 任务id position_no VARCHAR(10) , line_code VARCHAR(200) , batch_code VARCHAR(50) , -- 卡口编码 plan_start_tm DATE , zone_code VARCHAR(50) , -- 中转场代码(网点) plate_num VARCHAR(50) , del_flag VARCHAR(1) , send_tm DATE, deal_tm DATE , -- 处理时间 deal_flg number(2) default 0, -- 处理标记 deal_ip varchar2(30) , deal_count number(2) , insert_tm timestamp(6) default SYSDATE, --入库时间 delive_code VARCHAR2(50) -- 分中心代码 ); CREATE SEQUENCE SEQ_TT_TRMS_CAR_TASK_MID START WITH 1 INCREMENT BY 1 NOMAXVALUE MINVALUE 1 NOCYCLE NOCACHE -- 下发表 drop table tt_trms_car_task_dist; CREATE TABLE tt_trms_car_task_dist( id NUMBER(18) PRIMARY KEY , original_id NUMBER(18) not null, -- 版本号id send_car_tm DATE , require_id VARCHAR(50), task_id VARCHAR(100) , -- 任务id position_no VARCHAR(10) , line_code VARCHAR(200) , batch_code VARCHAR(50) , -- 卡口编码 plan_start_tm DATE , zone_code VARCHAR(50) , -- 中转场代码(网点) plate_num VARCHAR(50) , del_flag VARCHAR(1) , send_tm DATE, deal_tm DATE , -- 处理时间 deal_flg number(2) default 0, -- 处理标记 deal_ip varchar2(30) , deal_count number(2) , insert_tm timestamp(6) default SYSDATE, --入库时间 delive_code VARCHAR2(50) -- 分中心代码 ); CREATE SEQUENCE SEQ_TT_TRMS_CAR_TASK_DIST START WITH 1 INCREMENT BY 1 NOMAXVALUE MINVALUE 1 NOCYCLE NOCACHE INSERT INTO tt_trms_car_task_mid SELECT * FROM tt_trms_car_task; SELECT M.* ,ROWID AS rid FROM tt_trms_car_task_mid M WHERE ROWNUM=1 SELECT t.*,ROWID FROM tt_trms_car_task t 逻辑: 根据“任务ID+网点+卡口编码”为主键判断,如果该记录不存在,则新增该记录; 根据“任务ID+网点+卡口编码”为主键判断,如果该记录存在,则判断“版本号ID”是否比现有的版本号 ID大,如果大则根据“任务ID+网点+卡口编码”覆盖,否则该数据抛弃。 CREATE OR REPLACE PROCEDURE PROC_TT_AS_OUT_IDENT_MID ( P_HASH_NUM IN NUMBER, --hash并发数量 P_HASH_VALUE IN NUMBER, --hash并发值 P_BATCH_NUM IN NUMBER DEFAULT 5000, --处理数据量 P_COMMIT_NUM IN NUMBER DEFAULT 500 --批次提交数据量 ) AS V_COUNT INT DEFAULT 0; --定义参数以"V_"开头定义 V_BATCH INT DEFAULT 0; --是否需要跟新:0->新增,1->跟新BA,生产出港,99->抛弃 V_BA_RID VARCHAR2(500); V_S_ID NUMBER; V_BATCH_OUT INT DEFAULT -1; --99->抛弃,0—>新增 V_AS_OUT_ID NUMBER; V_SQL_NUM NUMBER; /* CREATE DATE:2016-10-20 CREATE BY:674051 DESC :TT_AS_OUT_IDENT_MID中间表数据关联tm_zno_transit表数据生产出港数据 业务逻辑:首先同TT_AS_OUT_IDENT_BA表进行比较, i :MID中数据比ba表中数据级别高,生产新下发数据 II:MID和BA中级别一致,但是mid中数据较新且weight+des_zno+product不一致,生产新下发数据 III:其他状态数据:抛弃 REMARK:记录修改日志(修改人 修改版本号 修改时间,修改内容) */ BEGIN FOR RX IN ( SELECT T.*,ROWID as rid FROM TT_AS_OUT_IDENT_MID T WHERE T.DEAL_FLG = 0 AND DBMS_UTILITY.GET_HASH_VALUE(T.WAYBILL_NO,0,P_HASH_NUM)=P_HASH_VALUE AND ROWNUM <= P_BATCH_NUM ) LOOP V_BATCH:=0 ; --默认新增ba数据 V_BATCH_OUT :=0; --默认新生成出港数据 --从BA表中抓取基准数据 FOR R0 IN ( SELECT T.ROWID AS RID ,T.* FROM TT_AS_OUT_IDENT_BA T WHERE T.WAYBILL_NO = RX.WAYBILL_NO ) LOOP V_BA_RID:=R0.RID; IF(RX.SRC=http://www.mamicode.com/R0.SRC AND RX.INPUT_TM> R0.INPUT_TM>
巴枪操作关联车辆记录
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。