|
@@ -521,8 +521,8 @@ BEGIN
|
|
|
|
|
|
|
|
|
UPDATE shanglifeecif.Individual si1 SET si1.label65 = '一单寿险客户' WHERE si1.scustid IN (SELECT temp.customerno FROM (
|
|
|
- SELECT pi.customerno,count(*) AS tnum,max(t.pnum) AS pnum FROM (
|
|
|
- SELECT count(*) AS pnum,p.customerno FROM dsj.POLICY_INFORMATION p
|
|
|
+ SELECT pi.customerno,count(DISTINCT pi.contno) AS tnum,max(t.pnum) AS pnum FROM (
|
|
|
+ SELECT count(DISTINCT p.contno) AS pnum,p.customerno FROM dsj.POLICY_INFORMATION p
|
|
|
LEFT JOIN dsj.riskkind b on p.riskcode = b.riskcode
|
|
|
WHERE (b.kindtype = '新型寿险' or b.kindtype = '人寿保险') GROUP BY p.customerno
|
|
|
) t LEFT JOIN dsj.POLICY_INFORMATION pi ON pi.customerno = t.customerno
|
|
@@ -650,13 +650,46 @@ BEGIN
|
|
|
GROUP BY pi.customerno
|
|
|
) temp WHERE temp.tnum = temp.pnum);
|
|
|
|
|
|
+
|
|
|
+ UPDATE shanglifeecif.Individual si1 SET si1.label92 = (
|
|
|
+ SELECT t.terminatestate FROM (
|
|
|
+ SELECT row_number()over(partition by p.customerno order by p.polapplydate desc) rn,p.customerno,p.terminatestate FROM dsj.policy_information p
|
|
|
+ WHERE p.appflag = '失效'
|
|
|
+ ) t WHERE t.rn = 1 AND si1.scustid = t.customerno
|
|
|
+);
|
|
|
|
|
|
- UPDATE shanglifeecif.Individual si1 SET si1.Label93 = '终止客户' WHERE si1.scustid IN (SELECT temp.customerno FROM (
|
|
|
- SELECT count(*) AS tnum,max(t.customerno) AS customerno,max(t.pnum) AS pnum FROM (
|
|
|
- SELECT p.customerno,count(*) AS pnum FROM dsj.policy_information p WHERE p.appflag = '终止' AND p.enddate < to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss.S') GROUP BY p.customerno
|
|
|
- ) t LEFT JOIN dsj.policy_information pi ON pi.customerno = t.customerno
|
|
|
- GROUP BY pi.customerno
|
|
|
- ) temp WHERE temp.tnum = temp.pnum);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ UPDATE shanglifeecif.Individual si1 SET si1.Label94 = (
|
|
|
+ SELECT t.terminatestate FROM (
|
|
|
+ SELECT row_number()over(partition by p.customerno order by p.polapplydate desc) rn,p.customerno,p.terminatestate FROM dsj.policy_information p
|
|
|
+ WHERE p.appflag = '终止'
|
|
|
+ ) t WHERE t.rn = 1 AND si1.scustid = t.customerno
|
|
|
+);
|
|
|
+
|
|
|
+ UPDATE shanglifeecif.Individual si1 SET si1.Label95 = (
|
|
|
+ SELECT
|
|
|
+ CASE
|
|
|
+
|
|
|
+ WHEN temp.dnum<0 THEN '提前'||abs(temp.dnum)||'天交费'
|
|
|
+ WHEN temp.dnum>0 THEN '滞后'||temp.dnum||'天交费'
|
|
|
+ WHEN temp.toconfdate > temp.kxdate THEN '宽限期外交费'
|
|
|
+ END
|
|
|
+ FROM (
|
|
|
+ SELECT row_number()over(PARTITION BY t.appntno ORDER BY t.confdate DESC) rn,t.appntno,t.paydate as topaydate,t.confdate as toconfdate,DATE_ADD(t.paydate,60) as kxdate,tt.paydate as lastpaydate,tt.confdate AS lastconfdate,DATEDIFF(to_char(t.confdate,'0000-MM-dd'),to_char(tt.confdate,'0000-MM-dd')) AS dnum FROM (
|
|
|
+ SELECT row_number()OVER(PARTITION BY ln.contno ORDER BY ln.paydate DESC) rd,ln.* FROM dsj.ljapayperson ln
|
|
|
+ WHERE ln.confdate IS NOT NULL AND ln.paydate IS NOT null
|
|
|
+ ) t LEFT JOIN (
|
|
|
+ SELECT row_number()OVER(PARTITION BY ln2.contno ORDER BY ln2.paydate DESC) rd,ln2.* FROM dsj.ljapayperson ln2
|
|
|
+ WHERE ln2.confdate IS NOT NULL AND ln2.paydate IS NOT null AND ln2.paycount > 1
|
|
|
+ ) tt ON t.contno = tt.contno AND t.rd = tt.rd - 1 WHERE t.rd = 1 AND tt.rd = 2
|
|
|
+ ) temp WHERE temp.dnum <> 0 AND temp.rn = 1 AND si1.scustid = temp.appntno
|
|
|
+) WHERE 1 = 1;
|
|
|
|
|
|
|
|
|
UPDATE shanglifeecif.Individual si1 SET si1.Label96 = '大龄' where si1.scustid IN (
|
|
@@ -830,14 +863,15 @@ BEGIN
|
|
|
|
|
|
UPDATE shanglifeecif.Individual si1 SET si1.label115 = '红利垫缴还款' WHERE si1.scustid IN (
|
|
|
SELECT p.customerno FROM dsj.policy_information p WHERE p.appflag = '有效' and p.contno IN (
|
|
|
- SELECT contno FROM dsj.loloandetail WHERE moneytype='HLDKDK'
|
|
|
+ SELECT a.contno FROM dsj.LOLOANDETAIL a,dsj.LDCode1 b WHERE
|
|
|
+ b.codetype='lnmoneytype' AND b.code=a.finfeetype and b.code1=a.moneytype
|
|
|
)
|
|
|
);
|
|
|
|
|
|
UPDATE shanglifeecif.Individual si1 SET si1.label117 = '宽限期' WHERE si1.scustid IN (
|
|
|
|
|
|
SELECT p.customerno FROM dsj.policy_information p WHERE p.payintv= '期缴' AND p.appflag='有效' AND p.payendyear!=p.paycount and
|
|
|
- DATEDIFF(DATE_ADD(p.paytodate, 60),to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss.S')) < 3
|
|
|
+ DATEDIFF(DATE_ADD(p.paytodate, 60),to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss.S')) > 0 AND DATEDIFF(DATE_ADD(p.paytodate, 60),to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss.S')) < 3
|
|
|
);
|
|
|
|
|
|
|