From f5a53e2f55361332c40deb405b7b13539a3b4b50 Mon Sep 17 00:00:00 2001 From: Kane Wang Date: Tue, 15 Aug 2023 09:51:54 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=9D=E5=AD=98=E8=BF=9B=E5=BA=A6=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/db/pkg/telsale_pkg.pck | 626 +++++++++--------- .../db/建表/车非每日保费临时表.sql | 28 +- 2 files changed, 327 insertions(+), 327 deletions(-) diff --git a/code/db/pkg/telsale_pkg.pck b/code/db/pkg/telsale_pkg.pck index 3bcc477..a226c62 100644 --- a/code/db/pkg/telsale_pkg.pck +++ b/code/db/pkg/telsale_pkg.pck @@ -2,21 +2,21 @@ CREATE OR REPLACE PACKAGE telsale_pkg IS -- Author : WANGWEI-202 -- Created : 2023/3/10 15:13:34 - -- Purpose : Ŀɰ + -- Purpose : 桌面霸屏项目基础数据生成包 - PROCEDURE ǻ + PROCEDURE 车非基础数据 ( a_start_date IN DATE, a_end_date IN DATE ); - PROCEDURE gen_ʱ + PROCEDURE gen_车非临时数据 ( a_start_date IN DATE, a_end_date IN DATE ); - PROCEDURE ; + PROCEDURE 续保基本数据; PROCEDURE chefei_daily_job; PROCEDURE xubao_daily_job; @@ -25,32 +25,32 @@ END telsale_pkg; / CREATE OR REPLACE PACKAGE BODY telsale_pkg IS - PROCEDURE ǻ + PROCEDURE 车非基础数据 ( a_start_date IN DATE, a_end_date IN DATE ) IS - --l_count INTEGER; --м¼ + --l_count INTEGER; --已有记录的数量 BEGIN - --ʱ - gen_ʱ(a_start_date, + --产生临时数据 + gen_车非临时数据(a_start_date, a_end_date); FOR caller_record IN (SELECT * - FROM desktop_archievement_admin.ϯÿձ_t) + FROM desktop_archievement_admin.坐席车非每日保费_t) LOOP BEGIN - DELETE desktop_archievement_admin.ϯÿձ cf - WHERE cf.ǩ = caller_record.ǩ - AND cf. = caller_record. - AND cf.n = caller_record.n - AND cf.ϯ = caller_record.ϯ; + DELETE desktop_archievement_admin.坐席车非每日保费 cf + WHERE cf.签单日期 = caller_record.签单日期 + AND cf.部门 = caller_record.部门 + AND cf.经办人n = caller_record.经办人n + AND cf.坐席工号 = caller_record.坐席工号; EXCEPTION WHEN no_data_found THEN - dbms_output.put_line(caller_record.ǩ || 'ظ'); + dbms_output.put_line(caller_record.签单日期 || '无重复数据'); END; - INSERT INTO desktop_archievement_admin.ϯÿձ + INSERT INTO desktop_archievement_admin.坐席车非每日保费 VALUES caller_record; END LOOP; @@ -63,7 +63,7 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS /**********************************************************************/ - PROCEDURE gen_ʱ + PROCEDURE gen_车非临时数据 ( a_start_date IN DATE, a_end_date IN DATE @@ -71,10 +71,10 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS BEGIN desktop_archievement_admin.clean_temp_data; - INSERT INTO desktop_archievement_admin.ϯÿձ_t + INSERT INTO desktop_archievement_admin.坐席车非每日保费_t WITH aa AS (SELECT to_char(t.signature_date, - 'yyyy-mm-dd') ǩ, + 'yyyy-mm-dd') 签单日期, (to_char(T.signature_date, 'yyyy')) the_year, (to_char(T.signature_date, @@ -82,7 +82,7 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS t.policy_no bdh, t.endorsement_no pdh, qt.t_cre tid, - QT.B_CRE BTID, -----ֶ + QT.B_CRE BTID, -----添加字段 e.inception_date qbsj, e.planned_end_date zzsj, pt.premium_amount - nvl(pt.tax_amount, @@ -97,40 +97,40 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS WHEN (et.telpartnercode LIKE '%HC%' OR zx.workerno IN (SELECT code FROM datacenter.dc_lsj_zx_hc)) THEN - '׷ῥ' + '海沧丰骏' ELSE '' - END Ƿῥ, + END 是否丰骏, nvl(zx.workerno, - et.telpartnercode) ϯ, + et.telpartnercode) 坐席工号, (CASE WHEN nvl(zx.workerno, et.telpartnercode) = 'DX001' AND - xx.staff_name LIKE '%%' THEN - 'ΰ' + xx.staff_name LIKE '%建发凯迪%' THEN + '林伟华' WHEN nvl(zx.workerno, et.telpartnercode) = 'DX001' AND - xx.staff_name NOT LIKE '%%' THEN - '' + xx.staff_name NOT LIKE '%建发凯迪%' THEN + '其他' ELSE - to_char(ys.ϯ) - END) ϯ, - YS.Ŷ ϯŶ, - nvl(YS.Ŷ, - y.section_office_name) N, + to_char(ys.坐席姓名) + END) 坐席名称, + YS.团队 坐席团队, + nvl(YS.团队, + y.section_office_name) 科室N, nvl((CASE WHEN nvl(zx.workerno, et.telpartnercode) = 'DX001' AND - xx.staff_name LIKE '%%' THEN - 'ΰ' + xx.staff_name LIKE '%建发凯迪%' THEN + '林伟华' WHEN nvl(zx.workerno, et.telpartnercode) = 'DX001' AND - xx.staff_name NOT LIKE '%%' THEN - '' + xx.staff_name NOT LIKE '%建发凯迪%' THEN + '其他' ELSE - to_char(ys.ϯ) + to_char(ys.坐席姓名) END), - xx.staff_name) N + xx.staff_name) 经办人N FROM idst0.auto_agreement_request_t t LEFT JOIN idst0.auto_agreement_t e ON e.policy_no = t.policy_no @@ -160,7 +160,7 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS LEFT JOIN datacenter.dc_yangg_qdcode qd ON qd.code = e.selling_channel_type LEFT JOIN datacenter.dc_tb_jc_c_tag cl - ON cl. = e.policy_no + ON cl.保单号 = e.policy_no LEFT JOIN datacenter.dc_yangg_basecode_teams fg ON fg.bm = z.department_name AND fg.ks = y.section_office_name @@ -171,84 +171,84 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS LEFT JOIN idst0.t_sell_policy_autobase_t zx ON zx.policy_no = e.policy_no LEFT JOIN datacenter.dc_YZH_ZXYS YS - ON YS.ϯ = nvl(zx.workerno, + ON YS.坐席工号 = nvl(zx.workerno, et.telpartnercode) - --left join v_lsj_dimian dm on dm.vin=v.vin and e.selling_channel_type='25' and dm.MEMO like'%%' + --left join v_lsj_dimian dm on dm.vin=v.vin and e.selling_channel_type='25' and dm.MEMO like'%地面续保%' --left join datacenter.dc_lsj_zx_team zt on zt.name=coalesce(zc.name,zc1.name,bc.name,dm.JBRMC) WHERE t.signature_date >= to_date('2023-01-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND t.signature_date < to_date(to_char(SYSDATE - 1, 'yyyy-mm-dd') || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - --and t.endorsement_no = '' - AND e.policy_status = '1' --Ч - AND qt.tflag = '0' --Ϊ - AND qt.usage_xm = 'ͥó' - --ᳵĦг + --and t.endorsement_no = '无' + AND e.policy_status = '1' --条件:保单有效 + AND qt.tflag = '0' --条件:类型为个人 + AND qt.usage_xm = '家庭自用车' + --条件:单程提车、摩托车、拖拉机 --and e.policy_no in ('AXIMC90Y1419B038594J','AXIMC90CTP19B039593R','AXIMC04CTP19B013473X') AND e.planned_end_date - e.inception_date >= 360 - -- + --条件:保单周期 ) - -----ֶ + -----添加字段 , dd2 AS - (SELECT ǩ, + (SELECT 签单日期, the_year, the_month, bm, bmdm, - ϯ, - ϯ, - ϯŶ, - N, - N, + 坐席工号, + 坐席名称, + 坐席团队, + 科室N, + 经办人N, CASE - WHEN pdh = '' THEN + WHEN pdh = '无' THEN tid END tid, - to_number('1') ͻ, + to_number('1') 客户数, COUNT(DISTINCT CASE - WHEN pdh = '' THEN + WHEN pdh = '无' THEN bdh - END) , - SUM(bf) + END) 保单数, + SUM(bf) 保费 FROM (SELECT DISTINCT * FROM aa) aa GROUP BY bm, bmdm, CASE - WHEN pdh = '' THEN + WHEN pdh = '无' THEN tid END, the_year, the_month, BTID, - ϯ, - ϯ, - ϯŶ, - ǩ, - N, - N + 坐席工号, + 坐席名称, + 坐席团队, + 签单日期, + 科室N, + 经办人N UNION - SELECT ǩ, + SELECT 签单日期, the_year, the_month, bm, bmdm, - ϯ, - ϯ, - ϯŶ, - N, - N, + 坐席工号, + 坐席名称, + 坐席团队, + 科室N, + 经办人N, CASE WHEN btid = tid THEN '' ELSE btid END btid, - to_number('0') ͻ, - to_number('0') , - to_number('0') + to_number('0') 客户数, + to_number('0') 保单数, + to_number('0') 保费 FROM (SELECT DISTINCT * FROM aa) aa), DD AS @@ -262,11 +262,11 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS q.endorsement_no pdh, qna.t_cre tid, to_number(to_char(q.signature_date, - 'yyyy')) || '' nf, + 'yyyy')) || '年' nf, (to_char(q.signature_date, 'mm')) mm_f, to_char(q.signature_date, - 'dd') || '' dd, + 'dd') || '日' dd, q.signature_date sj, round((pt.premium_amount - nvl(pt.taxamount, 0)) * c.rate / 100, @@ -296,23 +296,23 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS LEFT JOIN ywglxt.q_nonauto_agreement_t qna ON qna.policy_no = q.policy_no LEFT JOIN datacenter.dc_yangg_gkxzh gk - ON gk.product_code = e.product_code --ɢ - --left join datacenter.dc_yangg_zbxzh zb on zb.product_code = e.product_code -- + ON gk.product_code = e.product_code --分散型险种 + --left join datacenter.dc_yangg_zbxzh zb on zb.product_code = e.product_code --政保险种 LEFT JOIN dd ON dd.tid = qna.t_cre WHERE qna.tflag = '0' AND (CASE - WHEN q.endorsement_no != '' AND + WHEN q.endorsement_no != '无' AND round((pt.premium_amount - nvl(pt.taxamount, 0)) * c.rate / 100, 2) != 0 THEN - '' + '是' END) IS NULL - --and q.endorsement_no = '' + --and q.endorsement_no = '无' AND e.policy_status = '1' AND gk.product_code IS NOT NULL - AND (e.product_code LIKE '2%' OR e.product_code LIKE '1106%' --⽡ -- - OR e.product_code LIKE '1107%' OR e.product_code LIKE '1108%' OR e.product_code LIKE '1307%' OR e.product_code LIKE '1304A400%' --Ҳ + AND (e.product_code LIKE '2%' OR e.product_code LIKE '1106%' --意健 --责任 + OR e.product_code LIKE '1107%' OR e.product_code LIKE '1108%' OR e.product_code LIKE '1307%' OR e.product_code LIKE '1304A400%' --家财 ) --and e.product_code not in ('22KC9800') @@ -323,15 +323,15 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS 'yyyy-mm-dd hh24:mi:ss') AND e.planned_end_date - e.inception_date >= 90 AND dd.tid IS NOT NULL - --ո˿ͻ) + --车险个人客户) ) --SELECT * FROM BB , cc AS (SELECT mm_f, - tid ں֤, - COUNT(DISTINCT bdh) ںϱ, - SUM(bf) ںϱ + tid 融合证件, + COUNT(DISTINCT bdh) 融合保数, + SUM(bf) 融合保费 FROM bb GROUP BY tid, mm_f), @@ -340,55 +340,55 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS cc.* FROM dd LEFT JOIN cc - ON cc.ں֤ = dd.tid - AND cc.mm_f = dd.the_month) --OR cc.ں֤ = dd.btid + ON cc.融合证件 = dd.tid + AND cc.mm_f = dd.the_month) --OR cc.融合证件 = dd.btid --select * from ff - SELECT to_date(ǩ, - 'yyyy-mm-dd') ǩ, - the_year , - the_month ·, - bm , - bmdm Ŵ, - N, - N, - ϯ, - ϯ, - ϯŶ, - nvl(SUM(), - 0) ո˿ͻ, - nvl(SUM(ںϱ), - 0) ںϱ + SELECT to_date(签单日期, + 'yyyy-mm-dd') 签单日期, + the_year 年份, + the_month 月份, + bm 部门, + bmdm 部门代码, + 科室N, + 经办人N, + 坐席工号, + 坐席名称, + 坐席团队, + nvl(SUM(保费), + 0) 车险个人客户保费, + nvl(SUM(融合保费), + 0) 车非融合保费 FROM ff - WHERE to_date(ff.ǩ, + WHERE to_date(ff.签单日期, 'yyyy-mm-dd') >= a_start_date - AND to_date(ff.ǩ, + AND to_date(ff.签单日期, 'yyyy-mm-dd') < a_end_date - AND bm IN ('ҵ', - '֧˾') - GROUP BY ǩ, + AND bm IN ('续保业务部', + '湖里支公司') + GROUP BY 签单日期, the_year, the_month, bm, bmdm, - ϯ, - ϯ, - ϯŶ, - N, - N - ORDER BY , - ϯ; + 坐席工号, + 坐席名称, + 坐席团队, + 科室N, + 经办人N + ORDER BY 部门, + 坐席名称; COMMIT; END; /**********************************************************************/ - PROCEDURE IS + PROCEDURE 续保基本数据 IS BEGIN - -- + --清理旧数据 desktop_archievement_admin.clean_mensual_renewal; - -- - INSERT INTO desktop_archievement_admin.ϯͳ + --生成新数据 + INSERT INTO desktop_archievement_admin.坐席续保统计 WITH cc AS (SELECT pt.policy_no policy_no, SUM(pt.premium_amount) premium_amount, @@ -398,158 +398,158 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS , bb AS - (SELECT t.policy_no , + (SELECT t.policy_no 保单号, (CASE WHEN e.product_code LIKE '1102%' AND e.product_code NOT LIKE '110224%' AND e.product_code != '11026000' THEN - 'ձ' + '机动车险保险' WHEN e.product_code LIKE '1101%' OR e.product_code LIKE '1301%' OR e.product_code LIKE '11110000%' THEN - 'Ʋ' + '财产险' WHEN e.product_code LIKE '1107%' OR e.product_code LIKE '1307%' OR e.product_code LIKE '1304A400%' THEN - '' + '责任险' WHEN e.product_code LIKE '1106%' OR e.product_code LIKE '51015700' THEN - 'Ҳ' + '家财险' WHEN (e.product_code LIKE '1104%' OR e.product_code LIKE '1204%' OR e.product_code LIKE '13040000%') AND e.product_code NOT LIKE '120404%' THEN - '' + '货运险' WHEN e.product_code LIKE '1203%' OR e.product_code LIKE '1103%' OR e.product_code LIKE '120404%' THEN - '' + '船舶险' WHEN e.product_code LIKE '1305%' THEN - '' + '工程险' WHEN e.product_code LIKE '111%' AND e.product_code NOT LIKE '11110000%' THEN - 'ũҵ' + '农业险' WHEN e.product_code LIKE '1109%' OR e.product_code LIKE '1309%' THEN - '֤' + '保证保险' WHEN e.product_code LIKE '1312%' THEN - '' + '特殊风险' WHEN e.product_code LIKE '1308%' THEN - '' + '信用险' WHEN e.product_code LIKE '23%' THEN - '' + '意外险' WHEN e.product_code LIKE '22%' THEN - '' + '健康险' WHEN e.product_code LIKE '110224%' OR e.product_code = '11026000' THEN - 'ǿ' + '交强险' ELSE - 'δ' - END) AS ִ + '未分配' + END) AS 险种大类 FROM idst0.auto_agreement_request_t t LEFT JOIN idst0.auto_agreement_t e ON e.policy_no = t.policy_no) , aa1 AS - (SELECT a.policy_no ɱ, - a.selling_shop_code ̴, - a.planned_end_date ʱ, + (SELECT a.policy_no 旧保单, + a.selling_shop_code 车商代码, + a.planned_end_date 到期时间, CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - 'רҵһ' + '个车专业化销售一科' WHEN a.planned_end_date > to_date('2023-04-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND (a.selling_shop_code || a.tel_sale_4s_code IN ('00EA', '00F1', '00G9')) THEN - 'רҵһ' + '个车专业化销售一科' ELSE - nvl(dt., + nvl(dt.科室名称, z.section_office_name) - END , + END 科室, (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2023' AND - nvl(dt., - y.department_name) NOT LIKE '֧˾' andcd.memo LIKE '%%' OR - cd.memo LIKE '%%' and v.vehicle_brand IN ('˹', - 'ε', - '', - 'С', - '', - '', + nvl(dt.部门, + y.department_name) NOT LIKE '湖里支公司' and(cd.memo LIKE '%深圳%' OR + cd.memo LIKE '%地面%' )and v.vehicle_brand IN ('特斯拉', + '蔚来', + '理想', + '小鹏', + '极氪', + '极狐', 'AITO', - 'ARCFOX', - '˹й', - '˹(й)') AND + 'ARCFOX极狐', + '特斯拉(中国)', + '特斯拉(中国)') AND v.vin NOT IN ('LJ1E6A2UXL7744108', 'LW433B10XL1001411', 'LJ1E6A3U2L7742089', 'L1NSPGHB0MA002652') THEN - 'Դҵչŷ' + '新能源车事业发展中心厦门分中心' WHEN (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) - END) = '֧˾' THEN + END) = '湖里支公司' THEN (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) END) - WHEN cd.memo LIKE '%%' OR - cd.memo LIKE '%%' THEN - 'ҵ' + WHEN (cd.memo LIKE '%地面%' OR + cd.memo LIKE '%深圳%' ) THEN + '续保业务部' WHEN a.planned_end_date > to_date('2023-04-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND (a.selling_shop_code || a.tel_sale_4s_code IN ('00EA', '00F1', '00G9')) THEN - '֧ͬ˾' + '同安支公司' ELSE (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) END) - END) β, - qa.USAGE_XM ʹ, + END) 责任部门, + qa.USAGE_XM 使用性质, decode(qa.bd_type, '1', - 'ǿ', + '单交强', '2', - 'ҵ', + '单商业', '3', - '̹', - '') , + '交商共保', + '其它') 保单类型, (CASE WHEN (qa.bd_type = '1' AND nt.ecompensation_rate > 1) THEN - '' - END) Ԥ, - x.staff_name AS , - bb.ִ, - cc.signature_date ±ǩʱ, - (SELECT hmd.ܿ + '是' + END) 高预赔, + x.staff_name AS 经办, + bb.险种大类, + cc.signature_date 新保单签发时间, + (SELECT hmd.管控类型 FROM (SELECT DISTINCT * FROM dc_lsj_xb_hmd) hmd - WHERE hmd.vin = v.vin) ܿ + WHERE hmd.vin = v.vin) 管控类型 FROM idst0.auto_agreement_t a LEFT JOIN bb - ON bb. = a.policy_no + ON bb.保单号 = a.policy_no LEFT JOIN ywglxt.w_dxbd_i i ON a.policy_no = i.bdh LEFT JOIN idst0.motorised_vehicle_t v @@ -559,7 +559,7 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS LEFT JOIN idst0.auto_new_product_info_t nt ON nt.policy_no = a.policy_no - AND nt.endorsement_no = '' + AND nt.endorsement_no = '无' LEFT JOIN idst0.rydm_t x ON x.staff_code = nvl(upper(i.zhjywy), a.operator_code) @@ -579,18 +579,18 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS WHEN aa.inception_date - aa.issue_date >= '30' THEN vv.vin END) if30, - bb.ִ + bb.险种大类 FROM idst0.auto_agreement_t aa LEFT JOIN bb - ON bb. = aa.policy_no + ON bb.保单号 = aa.policy_no LEFT JOIN idst0.motorised_vehicle_t vv ON vv.policy_no = aa.policy_no LEFT JOIN idst0.auto_agreement_request_t t ON t.policy_no = aa.policy_no - AND t.endorsement_no = '' + AND t.endorsement_no = '无' LEFT JOIN idst0.auto_premium_t pt ON pt.policy_no = aa.policy_no - AND pt.endorsement_no = '' + AND pt.endorsement_no = '无' WHERE aa.policy_no = vv.policy_no AND aa.policy_status = '1' --and aa.product_code not in ('11022400','11023900','11024000','11024600','11026000') AND aa.branch_company_code = '3080100' @@ -601,12 +601,12 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS AND aa.inception_date < to_date('2023-11-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND aa.branch_company_code = vv.branch_company_code) cc - ON (cc.vin = v.vin AND cc.ִ = bb.ִ) - AND cc.inception_date > a.planned_end_date - 30 --ʱƷſΪ30 + ON (cc.vin = v.vin AND cc.险种大类 = bb.险种大类) + AND cc.inception_date > a.planned_end_date - 30 --时间限制放宽为30天 LEFT JOIN dc_yangg_cx_dianxiaodoudi cd ON cd.policy_no = a.policy_no LEFT JOIN dc_tb_jc_c_tag dt - ON dt. = a.policy_no + ON dt.保单号 = a.policy_no LEFT JOIN idst0.auto_agreement_t aa ON aa.policy_no = cc.policy_no LEFT JOIN cc pt1 @@ -618,106 +618,106 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS AND a.planned_end_date < to_date('2023-10-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss')), aa2 AS - (SELECT a.policy_no ɱ, - a.selling_shop_code ̴, - a.planned_end_date ʱ, + (SELECT a.policy_no 旧保单, + a.selling_shop_code 车商代码, + a.planned_end_date 到期时间, CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - 'רҵһ' + '个车专业化销售一科' WHEN a.planned_end_date > to_date('2023-04-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND (a.selling_shop_code || a.tel_sale_4s_code IN ('00EA', '00F1', '00G9')) THEN - 'רҵһ' + '个车专业化销售一科' ELSE - nvl(dt., + nvl(dt.科室名称, z.section_office_name) - END , + END 科室, (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2023' AND - nvl(dt., - y.department_name) NOT LIKE '֧˾' andcd.memo LIKE '%%' OR - cd.memo LIKE '%%' and v.vehicle_brand IN ('˹', - 'ε', - '', - 'С', - '', - '', + nvl(dt.部门, + y.department_name) NOT LIKE '湖里支公司' and(cd.memo LIKE '%深圳%' OR + cd.memo LIKE '%地面%' )and v.vehicle_brand IN ('特斯拉', + '蔚来', + '理想', + '小鹏', + '极氪', + '极狐', 'AITO', - 'ARCFOX', - '˹й', - '˹(й)') AND + 'ARCFOX极狐', + '特斯拉(中国)', + '特斯拉(中国)') AND v.vin NOT IN ('LJ1E6A2UXL7744108', 'LW433B10XL1001411', 'LJ1E6A3U2L7742089', 'L1NSPGHB0MA002652') THEN - 'Դҵչŷ' + '新能源车事业发展中心厦门分中心' WHEN (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) - END) = '֧˾' THEN + END) = '湖里支公司' THEN (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) END) - WHEN cd.memo LIKE '%%' OR - cd.memo LIKE '%%' THEN - 'ҵ' + WHEN (cd.memo LIKE '%地面%' OR + cd.memo LIKE '%深圳%' ) THEN + '续保业务部' WHEN a.planned_end_date > to_date('2023-04-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND (a.selling_shop_code || a.tel_sale_4s_code IN ('00EA', '00F1', '00G9')) THEN - '֧ͬ˾' + '同安支公司' ELSE (CASE WHEN to_number(to_char(a.planned_end_date, 'yyyy')) = '2022' AND a.selling_shop_code || a.tel_sale_4s_code = '00GK' THEN - '֧˾' + '集美支公司' ELSE - nvl(dt., + nvl(dt.部门, y.department_name) END) - END) β, - qa.USAGE_XM ʹ, + END) 责任部门, + qa.USAGE_XM 使用性质, decode(qa.bd_type, '1', - 'ǿ', + '单交强', '2', - 'ҵ', + '单商业', '3', - '̹', - '') , + '交商共保', + '其它') 保单类型, (CASE WHEN (qa.bd_type = '1' AND nt.ecompensation_rate > 1) THEN - '' - END) Ԥ, - x.staff_name AS , - bb.ִ, - cc.signature_date ±ǩʱ, - (SELECT hmd.ܿ + '是' + END) 高预赔, + x.staff_name AS 经办, + bb.险种大类, + cc.signature_date 新保单签发时间, + (SELECT hmd.管控类型 FROM (SELECT DISTINCT * FROM dc_lsj_xb_hmd) hmd - WHERE hmd.vin = v.vin) ܿ + WHERE hmd.vin = v.vin) 管控类型 FROM idst0.auto_agreement_t a LEFT JOIN bb - ON bb. = a.policy_no + ON bb.保单号 = a.policy_no LEFT JOIN ywglxt.w_dxbd_i i ON a.policy_no = i.bdh LEFT JOIN idst0.motorised_vehicle_t v @@ -726,7 +726,7 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS ON qa.policy_no = a.policy_no LEFT JOIN idst0.auto_new_product_info_t nt ON nt.policy_no = a.policy_no - AND nt.endorsement_no = '' + AND nt.endorsement_no = '无' LEFT JOIN idst0.rydm_t x ON x.staff_code = nvl(upper(i.zhjywy), a.operator_code) @@ -746,18 +746,18 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS WHEN aa.inception_date - aa.issue_date >= '30' THEN vv.vin END) if30, - bb.ִ + bb.险种大类 FROM idst0.auto_agreement_t aa LEFT JOIN bb - ON bb. = aa.policy_no + ON bb.保单号 = aa.policy_no LEFT JOIN idst0.motorised_vehicle_t vv ON vv.policy_no = aa.policy_no LEFT JOIN idst0.auto_agreement_request_t t ON t.policy_no = aa.policy_no - AND t.endorsement_no = '' + AND t.endorsement_no = '无' LEFT JOIN idst0.auto_premium_t pt ON pt.policy_no = aa.policy_no - AND pt.endorsement_no = '' + AND pt.endorsement_no = '无' WHERE aa.policy_no = vv.policy_no AND aa.policy_status = '1' --and aa.product_code not in ('11022400','11023900','11024000','11024600','11026000') AND aa.branch_company_code = '3080100' @@ -768,12 +768,12 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS AND aa.inception_date < to_date('2023-11-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND aa.branch_company_code = vv.branch_company_code) cc - ON (cc.vin = v.vin AND cc.ִ = bb.ִ) - AND cc.inception_date > a.planned_end_date - 30 --ʱƷſΪ30 + ON (cc.vin = v.vin AND cc.险种大类 = bb.险种大类) + AND cc.inception_date > a.planned_end_date - 30 --时间限制放宽为30天 LEFT JOIN dc_yangg_cx_dianxiaodoudi cd ON cd.policy_no = a.policy_no LEFT JOIN dc_tb_jc_c_tag dt - ON dt. = a.policy_no + ON dt.保单号 = a.policy_no LEFT JOIN idst0.auto_agreement_t aa ON aa.policy_no = cc.policy_no LEFT JOIN cc pt1 @@ -795,121 +795,121 @@ CREATE OR REPLACE PACKAGE BODY telsale_pkg IS , AA AS (SELECT AA3.*, - nvlzx.workerno, - et.telpartnercode) ϯ, - (CASE WHEN nvlzx.workerno, + nvl(zx.workerno, + et.telpartnercode) 坐席工号, + (CASE WHEN nvl(zx.workerno, et.telpartnercode) = - 'DX001' AND aa3. LIKE - '%%' THEN - 'ΰ' WHEN nvlzx.workerno, + 'DX001' AND aa3.经办 LIKE + '%建发凯迪%' THEN + '林伟华' WHEN nvl(zx.workerno, et.telpartnercode) = - 'DX001' AND aa3. NOT LIKE - '%%' THEN - '' ELSE to_char - (ys.ϯ) END) ϯ, - YS.Ŷ ϯŶ FROM AA3 LEFT JOIN idst0.auto_agreement_extend_t et ON et.policy_no = AA3.ɱ LEFT JOIN idst0.t_sell_policy_autobase_t zx ON zx.policy_no = AA3.ɱ LEFT JOIN dc_YZH_ZXYS YS ON YS.ϯ = nvlzx.workerno, + 'DX001' AND aa3.经办 NOT LIKE + '%建发凯迪%' THEN + '其他' ELSE to_char + (ys.坐席姓名) END) 坐席名称, + YS.团队 坐席团队 FROM AA3 LEFT JOIN idst0.auto_agreement_extend_t et ON et.policy_no = AA3.旧保单 LEFT JOIN idst0.t_sell_policy_autobase_t zx ON zx.policy_no = AA3.旧保单 LEFT JOIN dc_YZH_ZXYS YS ON YS.坐席工号 = nvl(zx.workerno, et.telpartnercode)) , yxb AS ( - --- - SELECT aa.β , - aa., - aa., - aa.ϯŶ, - aa.ϯ, - aa.ϯ, - --(case when a.ʶ=''and A.β='ҵ' then 'ҵ' else A. end) , + ---已续保 + SELECT aa.责任部门 部门, + aa.科室, + aa.经办, + aa.坐席团队, + aa.坐席名称, + aa.坐席工号, + --(case when a.标识='非首续'and A.责任部门='续保业务部' then '续保业务部' else A.部门 end) 部门, (CASE WHEN COUNT(1) IS NULL THEN 0 ELSE COUNT(1) - END) ۼ + END) 已续保累计 FROM aa - WHERE aa.ʹ IN ('ͥó', - 'ҵͳ') - AND aa.Ԥ IS NULL - AND aa.ܿ IS NULL - AND aa. IN '̹', 'ǿ' - AND aa.ʱ >= to_date(to_char(SYSDATE, + WHERE aa.使用性质 IN ('家庭自用车', + '企业客车') + AND aa.高预赔 IS NULL + AND aa.管控类型 IS NULL + AND aa.保单类型 IN ( '交商共保', '单交强' ) + AND aa.到期时间 >= to_date(to_char(SYSDATE, 'yyyy-mm') || '-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') - AND aa.ʱ < to_date(to_char(SYSDATE - 1, + AND aa.到期时间 < to_date(to_char(SYSDATE - 1, 'yyyy-mm-dd') || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - AND aa.±ǩʱ <= to_date(to_char(SYSDATE - 1, + AND aa.新保单签发时间 <= to_date(to_char(SYSDATE - 1, 'yyyy-mm-dd') || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - GROUP BY aa.β, - aa., - aa., - aa.ϯŶ, - aa.ϯ, - aa.ϯ) - --=-ۼ/-ۼ + GROUP BY aa.责任部门, + aa.科室, + aa.经办, + aa.坐席团队, + aa.坐席名称, + aa.坐席工号) + --个车续保率=已续数-累计/到期数-累计 , dqs AS ( - --- - SELECT aa.β , - aa., - aa., - aa.ϯŶ, - aa.ϯ, - aa.ϯ, + ---到期数 + SELECT aa.责任部门 部门, + aa.科室, + aa.经办, + aa.坐席团队, + aa.坐席名称, + aa.坐席工号, (CASE WHEN COUNT(1) IS NULL THEN 0 ELSE COUNT(1) - END) + END) 到期数 FROM aa - WHERE aa.ʹ IN ('ͥó', - 'ҵͳ') - AND aa.Ԥ IS NULL - AND aa.ܿ IS NULL - AND aa. IN '̹', 'ǿ' - AND aa.ʱ >= to_date(to_char(SYSDATE, + WHERE aa.使用性质 IN ('家庭自用车', + '企业客车') + AND aa.高预赔 IS NULL + AND aa.管控类型 IS NULL + AND aa.保单类型 IN ( '交商共保', '单交强' ) + AND aa.到期时间 >= to_date(to_char(SYSDATE, 'yyyy-mm') || '-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss') - AND aa.ʱ < to_date(to_char(SYSDATE - 1, + AND aa.到期时间 < to_date(to_char(SYSDATE - 1, 'yyyy-mm-dd') || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - GROUP BY aa.β, - aa., - aa., - aa.ϯŶ, - aa.ϯ, - aa.ϯ) - SELECT dqs., - dqs., - dqs., - dqs.ϯŶ, - dqs.ϯ, - dqs.ϯ, - yxb.ۼ, - dqs. + GROUP BY aa.责任部门, + aa.科室, + aa.经办, + aa.坐席团队, + aa.坐席名称, + aa.坐席工号) + SELECT dqs.部门, + dqs.科室, + dqs.经办, + dqs.坐席团队, + dqs.坐席名称, + dqs.坐席工号, + yxb.已续保累计, + dqs.到期数 FROM yxb, dqs --,sdqs,syxs,cyxs,cdqs - WHERE dqs. = yxb. - AND dqs. = yxb. - AND dqs. = yxb. - AND dqs.ϯ = yxb.ϯ - AND dqs.ϯ = yxb.ϯ; + WHERE dqs.部门 = yxb.部门 + AND dqs.经办 = yxb.经办 + AND dqs.科室 = yxb.科室 + AND dqs.坐席名称 = yxb.坐席名称 + AND dqs.坐席工号 = yxb.坐席工号; COMMIT; END; PROCEDURE chefei_daily_job IS BEGIN - ǻ(SYSDATE - 3, + 车非基础数据(SYSDATE - 3, SYSDATE); END; PROCEDURE xubao_daily_job IS BEGIN - ; + 续保基本数据; END; BEGIN diff --git a/code/db/建表/车非每日保费临时表.sql b/code/db/建表/车非每日保费临时表.sql index 09590f1..0cc9183 100644 --- a/code/db/建表/车非每日保费临时表.sql +++ b/code/db/建表/车非每日保费临时表.sql @@ -1,18 +1,18 @@ -drop table ÿձ_T; -create global temporary table ÿձ_T +drop table 车非每日保费_T; +create global temporary table 车非每日保费_T ( - ǩ DATE not null, - · VARCHAR2(10) not null, - VARCHAR2(100) not null, - Ŵ varchar2(100) not null, - n VARCHAR2(100) not null, - n VARCHAR2(100), - ϯ VARCHAR2(20), - ϯ VARCHAR2(30), - ϯŶ VARCHAR2(100), - ո˿ͻ NUMBER(16,2), - ںϱ NUMBER(16,2) + 签单日期 DATE not null, + 月份 VARCHAR2(10) not null, + 部门 VARCHAR2(100) not null, + 部门代码 varchar2(100) not null, + 科室n VARCHAR2(100) not null, + 经办人n VARCHAR2(100), + 坐席工号 VARCHAR2(20), + 坐席名称 VARCHAR2(30), + 坐席团队 VARCHAR2(100), + 车险个人客户保费 NUMBER(16,2), + 车非融合保费 NUMBER(16,2) ) on commit preserve rows; -- Grant/Revoke object privileges -grant select, insert, delete, alter on ÿձ_T to DATACENTER; +grant select, insert, delete, alter on 车非每日保费_T to DATACENTER;