desktop_task_schedule/code/db/pkg/telsale_pkg.pck

919 lines
43 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

CREATE OR REPLACE PACKAGE telsale_pkg IS
-- Author : WANGWEI-202
-- Created : 2023/3/10 15:13:34
-- Purpose : 桌面霸屏项目基础数据生成包
PROCEDURE 车非基础数据
(
a_start_date IN DATE,
a_end_date IN DATE
);
PROCEDURE gen_车非临时数据
(
a_start_date IN DATE,
a_end_date IN DATE
);
PROCEDURE 续保基本数据;
PROCEDURE chefei_daily_job;
PROCEDURE xubao_daily_job;
END telsale_pkg;
/
CREATE OR REPLACE PACKAGE BODY telsale_pkg IS
PROCEDURE 车非基础数据
(
a_start_date IN DATE,
a_end_date IN DATE
) IS
--l_count INTEGER; --已有记录的数量
BEGIN
--产生临时数据
gen_车非临时数据(a_start_date,
a_end_date);
FOR caller_record IN (SELECT *
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.坐席工号;
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line(caller_record.签单日期 || '无重复数据');
END;
INSERT INTO desktop_archievement_admin.坐席车非每日保费
VALUES caller_record;
END LOOP;
COMMIT;
/*EXCEPTION
WHEN OTHERS THEN
NULL;*/
END;
/**********************************************************************/
PROCEDURE gen_车非临时数据
(
a_start_date IN DATE,
a_end_date IN DATE
) IS
BEGIN
desktop_archievement_admin.clean_temp_data;
INSERT INTO desktop_archievement_admin.坐席车非每日保费_t
WITH aa AS
(SELECT to_char(t.signature_date,
'yyyy-mm-dd') 签单日期,
(to_char(T.signature_date,
'yyyy')) the_year,
(to_char(T.signature_date,
'mm')) the_month,
t.policy_no bdh,
t.endorsement_no pdh,
qt.t_cre tid,
QT.B_CRE BTID, -----添加字段
e.inception_date qbsj,
e.planned_end_date zzsj,
pt.premium_amount - nvl(pt.tax_amount,
0) bf
--,qt.qdbf - nvl(qt.qdbf_tax_amount,0) bf
,
nt.ecompensation_rate * (pt.premium_amount - nvl(pt.tax_amount,
0)) fxbf,
z.department_name bm,
z.department_code bmdm,
CASE
WHEN (et.telpartnercode LIKE '%HC%' OR
zx.workerno IN (SELECT code
FROM datacenter.dc_lsj_zx_hc)) THEN
'海沧丰骏'
ELSE
''
END 是否丰骏,
nvl(zx.workerno,
et.telpartnercode) 坐席工号,
(CASE
WHEN nvl(zx.workerno,
et.telpartnercode) = 'DX001' AND
xx.staff_name LIKE '%建发凯迪%' THEN
'林伟华'
WHEN nvl(zx.workerno,
et.telpartnercode) = 'DX001' AND
xx.staff_name NOT LIKE '%建发凯迪%' THEN
'其他'
ELSE
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
'林伟华'
WHEN nvl(zx.workerno,
et.telpartnercode) = 'DX001' AND
xx.staff_name NOT LIKE '%建发凯迪%' THEN
'其他'
ELSE
to_char(ys.坐席姓名)
END),
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
LEFT JOIN idst0.motorised_vehicle_t v
ON v.policy_no = e.policy_no
LEFT JOIN idst0.auto_premium_t pt
ON pt.policy_no = t.policy_no
AND pt.endorsement_no = t.endorsement_no
LEFT JOIN ywglxt.w_dxbd_i i
ON e.policy_no = i.bdh
LEFT JOIN idst0.rydm_t xx
ON xx.staff_code = nvl(i.zhjywy,
e.operator_code)
LEFT JOIN idst0.ks_t y
ON y.section_office_code = nvl(xx.section_office_code,
e.section_office_code)
LEFT JOIN idst0.bm_t z
ON z.department_code = nvl(xx.department_code,
e.department_code)
--left join datacenter.dc_cx_csteam ct on ct.jbrcode = xx.staff_code
LEFT JOIN idst0.auto_new_product_info_t nt
ON nt.policy_no = t.policy_no
AND nt.endorsement_no = t.endorsement_no
--left join ywglxt.q_auto_agreement_extend_t qe on qe.policy_no = e.policy_no
LEFT JOIN ywglxt.q_auto_agreement_t qt
ON qt.policy_no = e.policy_no
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
LEFT JOIN datacenter.dc_yangg_basecode_teams fg
ON fg.bm = z.department_name
AND fg.ks = y.section_office_name
--left join idst0.t_sell_policy_autobase_t zx on zx.policy_no=e.policy_no
--left join idst0.auto_agreement_extend_t et on et.policy_no = e.policy_no
LEFT JOIN idst0.auto_agreement_extend_t et
ON et.policy_no = e.policy_no
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,
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 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 e.policy_no in ('AXIMC90Y1419B038594J','AXIMC90CTP19B039593R','AXIMC04CTP19B013473X')
AND e.planned_end_date - e.inception_date >= 360
--条件:保单周期
)
-----添加字段
,
dd2 AS
(SELECT 签单日期,
the_year,
the_month,
bm,
bmdm,
坐席工号,
坐席名称,
坐席团队,
科室N,
经办人N,
CASE
WHEN pdh = '无' THEN
tid
END tid,
to_number('1') 客户数,
COUNT(DISTINCT CASE
WHEN pdh = '无' THEN
bdh
END) 保单数,
SUM(bf) 保费
FROM (SELECT DISTINCT *
FROM aa) aa
GROUP BY bm,
bmdm,
CASE
WHEN pdh = '无' THEN
tid
END,
the_year,
the_month,
BTID,
坐席工号,
坐席名称,
坐席团队,
签单日期,
科室N,
经办人N
UNION
SELECT 签单日期,
the_year,
the_month,
bm,
bmdm,
坐席工号,
坐席名称,
坐席团队,
科室N,
经办人N,
CASE
WHEN btid = tid THEN
''
ELSE
btid
END btid,
to_number('0') 客户数,
to_number('0') 保单数,
to_number('0') 保费
FROM (SELECT DISTINCT *
FROM aa) aa),
DD AS
(SELECT *
FROM DD2
WHERE TID IS NOT NULL)
--select * from dd
,
bb AS
(SELECT DISTINCT q.policy_no bdh,
q.endorsement_no pdh,
qna.t_cre tid,
to_number(to_char(q.signature_date,
'yyyy')) || '年' nf,
(to_char(q.signature_date,
'mm')) mm_f,
to_char(q.signature_date,
'dd') || '日' dd,
q.signature_date sj,
round((pt.premium_amount - nvl(pt.taxamount,
0)) * c.rate / 100,
2) bf,
z.department_name bm
FROM idst0.nonauto_agreement_request_t q
LEFT JOIN idst0.nonauto_agreement_t e
ON e.policy_no = q.policy_no
LEFT JOIN idst0.nonauto_premium_t pt
ON pt.endorsement_no = q.endorsement_no
AND pt.policy_no = q.policy_no
LEFT JOIN idst0.reinsurance_t r
ON r.reinsurance_policy_no = e.policy_no
LEFT JOIN idst0.exrate_month_t c
ON pt.currency_code = c.bzh
AND to_char(q.signature_date,
'YYYY') = c.theyear
AND to_char(q.signature_date,
'fmmm') = c.themonth
LEFT JOIN idst0.rydm_t x
ON x.staff_code = e.operator_code
LEFT JOIN idst0.ks_t y
ON y.section_office_code = x.section_office_code
LEFT JOIN idst0.bm_t z
ON z.department_code = x.department_code
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 --政保险种
LEFT JOIN dd
ON dd.tid = qna.t_cre
WHERE qna.tflag = '0'
AND (CASE
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 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 not in ('22KC9800')
AND q.signature_date >= to_date('2023-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
AND q.signature_date < to_date(to_char(SYSDATE - 1,
'yyyy-mm-dd') || ' 23:59:59',
'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) 融合保费
FROM bb
GROUP BY tid,
mm_f),
ff AS
(SELECT dd.*,
cc.*
FROM dd
LEFT JOIN cc
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) 车非融合保费
FROM ff
WHERE to_date(ff.签单日期,
'yyyy-mm-dd') >= a_start_date
AND to_date(ff.签单日期,
'yyyy-mm-dd') < a_end_date
AND bm IN ('续保业务部',
'湖里支公司')
GROUP BY 签单日期,
the_year,
the_month,
bm,
bmdm,
坐席工号,
坐席名称,
坐席团队,
科室N,
经办人N
ORDER BY 部门,
坐席名称;
COMMIT;
END;
/**********************************************************************/
PROCEDURE 续保基本数据 IS
BEGIN
--清理旧数据
desktop_archievement_admin.clean_mensual_renewal;
--生成新数据
INSERT INTO desktop_archievement_admin.坐席续保统计
WITH cc AS
(SELECT pt.policy_no policy_no,
SUM(pt.premium_amount) premium_amount,
SUM(pt.tax_amount) tax_amount
FROM idst0.auto_premium_t pt
GROUP BY pt.policy_no)
,
bb AS
(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 险种大类
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 到期时间,
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.科室名称,
z.section_office_name)
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 ('特斯拉',
'蔚来',
'理想',
'小鹏',
'极氪',
'极狐',
'AITO',
'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.部门,
y.department_name)
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.部门,
y.department_name)
END)
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.部门,
y.department_name)
END)
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.管控类型
FROM (SELECT DISTINCT *
FROM dc_lsj_xb_hmd) hmd
WHERE hmd.vin = v.vin) 管控类型
FROM idst0.auto_agreement_t a
LEFT JOIN bb
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
ON a.policy_no = v.policy_no
LEFT JOIN ywglxt.q_auto_agreement_t qa
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 = '无'
LEFT JOIN idst0.rydm_t x
ON x.staff_code = nvl(upper(i.zhjywy),
a.operator_code)
LEFT JOIN idst0.bm_t y
ON x.department_code = y.department_code
LEFT JOIN idst0.ks_t z
ON x.section_office_code = z.section_office_code
LEFT JOIN cc pt
ON pt.policy_no = a.policy_no
LEFT JOIN (SELECT DISTINCT aa.policy_no,
vv.vin,
aa.inception_date,
t.signature_date,
(pt.premium_amount - nvl(pt.tax_amount,
0)) qdbf,
(CASE
WHEN aa.inception_date - aa.issue_date >= '30' THEN
vv.vin
END) if30,
bb.险种大类
FROM idst0.auto_agreement_t aa
LEFT JOIN bb
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 = '无'
LEFT JOIN idst0.auto_premium_t pt
ON pt.policy_no = aa.policy_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'
AND (pt.premium_amount - nvl(pt.tax_amount,
0)) > 100
AND aa.inception_date >= to_date('2022-12-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
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天
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
LEFT JOIN idst0.auto_agreement_t aa
ON aa.policy_no = cc.policy_no
LEFT JOIN cc pt1
ON pt1.policy_no = aa.policy_no
WHERE a.policy_status = '1'
AND a.planned_end_date - a.inception_date > 270
AND a.planned_end_date >= to_date('2023-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
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 到期时间,
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.科室名称,
z.section_office_name)
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 ('特斯拉',
'蔚来',
'理想',
'小鹏',
'极氪',
'极狐',
'AITO',
'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.部门,
y.department_name)
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.部门,
y.department_name)
END)
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.部门,
y.department_name)
END)
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.管控类型
FROM (SELECT DISTINCT *
FROM dc_lsj_xb_hmd) hmd
WHERE hmd.vin = v.vin) 管控类型
FROM idst0.auto_agreement_t a
LEFT JOIN bb
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
ON a.policy_no = v.policy_no
LEFT JOIN ywglxt.q_auto_agreement_t qa
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 = '无'
LEFT JOIN idst0.rydm_t x
ON x.staff_code = nvl(upper(i.zhjywy),
a.operator_code)
LEFT JOIN idst0.bm_t y
ON x.department_code = y.department_code
LEFT JOIN idst0.ks_t z
ON x.section_office_code = z.section_office_code
LEFT JOIN cc pt
ON pt.policy_no = a.policy_no
LEFT JOIN (SELECT DISTINCT aa.policy_no,
vv.vin,
aa.inception_date,
t.signature_date,
(pt.premium_amount - nvl(pt.tax_amount,
0)) qdbf,
(CASE
WHEN aa.inception_date - aa.issue_date >= '30' THEN
vv.vin
END) if30,
bb.险种大类
FROM idst0.auto_agreement_t aa
LEFT JOIN bb
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 = '无'
LEFT JOIN idst0.auto_premium_t pt
ON pt.policy_no = aa.policy_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'
AND (pt.premium_amount - nvl(pt.tax_amount,
0)) > 100
AND aa.inception_date >= to_date('2022-12-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
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天
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
LEFT JOIN idst0.auto_agreement_t aa
ON aa.policy_no = cc.policy_no
LEFT JOIN cc pt1
ON pt1.policy_no = aa.policy_no
WHERE a.policy_status = '1'
AND a.planned_end_date - a.inception_date > 270
AND a.planned_end_date >= to_date('2023-10-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
AND a.planned_end_date < to_date('2024-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss'))
,
aa3 AS
(SELECT DISTINCT *
FROM aa1
UNION ALL (SELECT DISTINCT *
FROM aa2))
,
AA AS
(SELECT AA3.*,
nvlzx.workerno,
et.telpartnercode) 坐席工号,
(CASE WHEN nvlzx.workerno,
et.telpartnercode) =
'DX001' AND aa3.经办 LIKE
'%建发凯迪%' THEN
'林伟华' WHEN nvlzx.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,
et.telpartnercode))
,
yxb AS
(
---已续保
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) 已续保累计
FROM aa
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,
'yyyy-mm-dd') || ' 23:59:59',
'yyyy-mm-dd hh24:mi:ss')
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.坐席工号)
--个车续保率=已续数-累计/到期数-累计
,
dqs AS
(
---到期数
SELECT aa.责任部门 部门,
aa.科室,
aa.经办,
aa.坐席团队,
aa.坐席名称,
aa.坐席工号,
(CASE
WHEN COUNT(1) IS NULL THEN
0
ELSE
COUNT(1)
END) 到期数
FROM aa
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,
'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.到期数
FROM yxb,
dqs --,sdqs,syxs,cyxs,cdqs
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);
END;
PROCEDURE xubao_daily_job IS
BEGIN
续保基本数据;
END;
BEGIN
NULL;
END telsale_pkg;
/