java-zk-app/文档/迁移语句/奖金迁移语句.sql

1108 lines
62 KiB
MySQL
Raw Permalink Normal View History

2025-03-23 09:44:16 +08:00
-- 结算期间 需要修改 cu_member_settle_period_seq
insert into cu_member_settle_period(pk_id, settle_date, is_settle, PUBLISH_DATE, IS_PUBLISH, GRANT_DATE, IS_GRANT,
PK_CREATOR)
select PERIOD pk_id,
START_DATE settle_date,
(case STATUS when 1 then 0 else 1 end) is_settle,
PUBLISH_DATE,
(case IS_PUBLISH when 1 then 0 else 1 end) IS_PUBLISH,
PAY_DATE GRANT_DATE,
(case IS_PAY when 1 then 0 else 1 end) IS_GRANT,
100000000 PK_CREATOR
from g_bonus_period_day@link_test;
-- 明细初始化 /member/manage/settle/init-period
--select max(pk_id) from cu_member_settle_period_seq;
-- cu_member_settle881
insert into cu_member_settle881 (PERIOD, pk_member, PK_PARENT, PK_PLACE_PARENT, PLACE_DEPT, MEMBER_CODE, MEMBER_NAME,
CUSTOMER_TYPE,
PHONE, PK_GRADE, PK_AWARDS, ACCOUNT_STATUS, PAY_STATUS, REGISTER_AUTHORITY, CATEGORY,
PURCHASE_TYPE, PURCHASE_STATUS, SHARE_STATUS,
INCOME_STATUS, PK_TEAM_CODE, PK_CENTER_CODE, PK_VERTEX, PK_SETTLE_COUNTRY, PK_COUNTRY,
PK_RATE, A_BALANCE, b_BALANCE,
A_SUM_AMOUNT, b_SUM_AMOUNT, A_SUM_PV, B_SUM_PV, A_NEW_AMOUNT, B_NEW_AMOUNT, A_NEW_PV,
b_NEW_PV, A_SUM_REAL_AMOUNT, B_SUM_REAL_AMOUNT,
A_SUM_REAL_PV, b_SUM_REAL_PV, REP_A_BALANCE, REP_B_BALANCE, REP_A_NEW_AMOUNT,
REP_B_NEW_AMOUNT,
REP_A_NEW_PV, REP_B_NEW_PV,
REP_A_SUM_AMOUNT, REP_B_SUM_AMOUNT,
REP_A_SUM_PV, REP_B_SUM_PV,
REGISTER_AMOUNT, REGISTER_PV,
REGISTER_NEW_AMOUNT, REGISTER_NEW_PV,
UPGRADE_AMOUNT, UPGRADE_PV,
UPGRADE_NEW_AMOUNT, UPGRADE_NEW_PV,
REPURCHASE_AMOUNT, REPURCHASE_PV,
REPURCHASE_NEW_AMOUNT, REPURCHASE_NEW_PV,
HI_FUN_AMOUNT, HI_FUN_PV,
HI_FUN_NEW_AMOUNT, HI_FUN_NEW_PV,
MALL_AMOUNT, MALL_PV,
MALL_NEW_AMOUNT, MALL_NEW_PV,
MIN_ACHIEVE, ROUND, SECOND,
R_A_BALANCE, R_b_BALANCE,
R_A_SUM_AMOUNT, R_b_SUM_AMOUNT,
R_A_SUM_PV, R_B_SUM_PV,
R_A_SUM_REAL_AMOUNT, R_B_SUM_REAL_AMOUNT,
R_A_SUM_REAL_PV, R_b_SUM_REAL_PV,
R_REP_A_BALANCE, R_REP_B_BALANCE,
R_REP_A_SUM_AMOUNT, R_REP_B_SUM_AMOUNT,
R_REP_A_SUM_PV, R_REP_B_SUM_PV)
select gd.PERIOD,
gd.USER_ID pk_member,
nvl(tj.user_id, 0) PK_PARENT,
az.user_id PK_PLACE_PARENT,
gd.PARENT_AREA PLACE_DEPT,
gd.USER_NAME MEMBER_CODE,
gd.REAL_NAME MEMBER_NAME,
gi.CUSTOMER_TYPE CUSTOMER_TYPE,
nvl(su.phonenumber, '~') PHONE,
(case gd.CLAC_JOIN_LEVEL
when -1 then
20
when 0 then
30
when 1 then
40
when 2 then
50
when 3 then
60
else
70
end) pk_settle_grade,
nvl(gd.REAL_HONOUR_LEVEL, 0) * 5 pk_awards,
su.status ACCOUNT_STATUS,
nvl(su.ZFZT,0) PAY_STATUS,
(case sr.role_id
when 104 then
1
when 105 then
2
else
0
end) REGISTER_AUTHORITY,
(case
when gi.CUSTOMER_TYPE = 2 then
1
else
0
end) CATEGORY,
0 PURCHASE_TYPE,
(case
when gd.REPURCHASE_CHECK_STATE = 1 then
0
else
1
end) PURCHASE_STATUS,
(case
when gd.MALL_CHECK_STATE = 1 then
0
else
1
end) SHARE_STATUS,
0 INCOME_STATUS,
tm.user_id PK_TEAM_CODE,
bao.user_id PK_CENTER_CODE,
0 PK_VERTEX,
gd.CLAC_COUNTRY PK_SETTLE_COUNTRY,
gd.clac_country PK_COUNTRY,
gd.EXCHANGE_RATE PK_RATE,
A_ORG_MAIN_KEEP/ 6.4 A_BALANCE,
B_ORG_MAIN_KEEP/ 6.4 b_BALANCE,
A_TOTAL_MAIN_AMOUNT / 6.4 A_SUM_AMOUNT,
B_TOTAL_MAIN_AMOUNT / 6.4 b_SUM_AMOUNT,
A_TOTAL_MAIN_PV / 6.4 A_SUM_PV,
B_TOTAL_MAIN_PV / 6.4 B_SUM_PV,
A_DAY_NEW_MAIN_AMOUNT / 6.4 A_NEW_AMOUNT,
B_DAY_NEW_MAIN_AMOUNT / 6.4 B_NEW_AMOUNT,
A_DAY_NEW_MAIN_PV / 6.4 A_NEW_PV,
b_DAY_NEW_MAIN_PV / 6.4 b_NEW_PV,
(A_TOTAL_MAIN_AMOUNT + A_TOTAL_REPURCHASE_AMOUNT)/ 6.4 A_SUM_REAL_AMOUNT,
(b_TOTAL_MAIN_AMOUNT + b_TOTAL_REPURCHASE_AMOUNT)/ 6.4 B_SUM_REAL_AMOUNT,
A_TOTAL_REAL_REPUR_PV / 6.4 A_SUM_REAL_PV,
B_TOTAL_REAL_REPUR_PV / 6.4 b_SUM_REAL_PV,
A_ORG_REPURCHASE_KEEP / 6.4 REP_A_BALANCE,
b_ORG_REPURCHASE_KEEP / 6.4 REP_B_BALANCE,
A_DAY_NEW_REPURCHASE_AMOUNT / 6.4 REP_A_NEW_AMOUNT,
b_DAY_NEW_REPURCHASE_AMOUNT / 6.4 REP_B_NEW_AMOUNT,
A_DAY_NEW_REPUR_MALL_PV / 6.4 REP_A_NEW_PV,
b_DAY_NEW_REPUR_MALL_PV / 6.4 REP_B_NEW_PV,
A_TOTAL_REPURCHASE_AMOUNT / 6.4 REP_A_SUM_AMOUNT,
b_TOTAL_REPURCHASE_AMOUNT / 6.4 REP_B_SUM_AMOUNT,
A_TOTAL_REPUR_MALL_PV / 6.4 REP_A_SUM_PV,
b_TOTAL_REPUR_MALL_PV / 6.4 REP_B_SUM_PV,
nvl(gs.REGISTER_AMOUNT, 0)/ 6.4,
nvl(gs.REGISTER_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_REG_AMOUNT, 0)/ 6.4 REGISTER_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_REG_PV, 0) / 6.4 REGISTER_NEW_PV,
nvl(gs.UPGRADE_AMOUNT, 0)/ 6.4,
nvl(gs.UPGRADE_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_UP_AMOUNT, 0) / 6.4 UPGRADE_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_UP_PV, 0) / 6.4 UPGRADE_NEW_PV,
nvl(gs.REPURCHASE_AMOUNT, 0)/ 6.4,
nvl(gs.REPURCHASE_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_REPUR_AMOUNT, 0) / 6.4 REPURCHASE_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_REPURCHASE_PV, 0) / 6.4 REPURCHASE_NEW_PV,
nvl(gs.HI_FUN_AMOUNT, 0)/ 6.4,
nvl(gs.HI_FUN_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_SEA2_REG_AMOUNT, 0) / 6.4 HI_FUN_NEW_AMOUNT,
nvl(ga.CURR_DAY_SEA2_REG_PV, 0) / 6.4 HI_FUN_NEW_PV,
nvl(gs.MALL_AMOUNT, 0)/ 6.4,
nvl(gs.MALL_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MALL_AMOUNT, 0) / 6.4 MALL_NEW_AMOUNT,
nvl(ga.CURR_DAY_MALL_PV, 0) / 6.4 MALL_NEW_PV,
nvl(lun.SOURCE_PV, 0) / 6.4 MIN_ACHIEVE,
nvl(lun.times, 0) ROUND,
nvl(lun.orders, 0)+1 SECOND,
A_ORG_MAIN_KEEP / 6.4 R_A_BALANCE,
B_ORG_MAIN_KEEP / 6.4 R_b_BALANCE,
A_TOTAL_MAIN_AMOUNT / 6.4 R_A_SUM_AMOUNT,
B_TOTAL_MAIN_AMOUNT / 6.4 R_b_SUM_AMOUNT,
A_TOTAL_MAIN_PV / 6.4 R_A_SUM_PV,
B_TOTAL_MAIN_PV / 6.4 R_B_SUM_PV,
(A_TOTAL_MAIN_AMOUNT + A_TOTAL_REPURCHASE_AMOUNT)/ 6.4 R_A_SUM_REAL_AMOUNT,
(b_TOTAL_MAIN_AMOUNT + b_TOTAL_REPURCHASE_AMOUNT)/ 6.4 R_B_SUM_REAL_AMOUNT,
A_TOTAL_REAL_REPUR_PV / 6.4 R_A_SUM_REAL_PV,
B_TOTAL_REAL_REPUR_PV / 6.4 R_b_SUM_REAL_PV,
A_ORG_REPURCHASE_KEEP / 6.4 R_REP_A_BALANCE,
b_ORG_REPURCHASE_KEEP / 6.4 R_REP_B_BALANCE,
A_TOTAL_REPURCHASE_AMOUNT / 6.4 R_REP_A_SUM_AMOUNT,
b_TOTAL_REPURCHASE_AMOUNT / 6.4 R_REP_B_SUM_AMOUNT,
A_TOTAL_REPUR_MALL_PV / 6.4 R_REP_A_SUM_PV,
b_TOTAL_REPUR_MALL_PV / 6.4 R_REP_B_SUM_PV
from g_bonus_day@link_test gd
left join g_bonus_day_info@link_test gi
on gd.user_name = gi.user_name
and gd.period = gi.period
left join G_MEMBER_ACHIV@link_test ga
on gd.user_name = ga.user_name
and gd.period = ga.period
left join (select user_name,
sum(CURR_DAY_MAIN_REG_AMOUNT) REGISTER_AMOUNT,
sum(CURR_DAY_MAIN_REG_PV) REGISTER_PV,
sum(CURR_DAY_MAIN_UP_AMOUNT) UPGRADE_AMOUNT,
sum(CURR_DAY_MAIN_UP_PV) UPGRADE_PV,
sum(CURR_DAY_MAIN_REPUR_AMOUNT) REPURCHASE_AMOUNT,
sum(CURR_DAY_MAIN_REPURCHASE_PV) REPURCHASE_PV,
sum(CURR_DAY_SEA2_REG_AMOUNT) HI_FUN_AMOUNT,
sum(CURR_DAY_SEA2_REG_PV) HI_FUN_PV,
sum(CURR_DAY_MALL_AMOUNT) MALL_AMOUNT,
sum(CURR_DAY_MALL_PV) MALL_PV
from G_MEMBER_ACHIV@link_test
where period <= 881
group by user_name) gs
on gd.user_name = gs.user_name
left join sys_user@link_test su
on gd.user_name = su.user_name
left join sys_user@link_test tj
on gd.INTRODUCER_CODE = tj.user_name
left join sys_user@link_test az
on gd.PARENT_CODE = az.user_name
left join sys_user@link_test tm
on gd.TEAM_NAME = tm.user_name
left join sys_user@link_test bao
on su.bdzx = bao.user_name
left join (select user_id, max(role_id) role_id
from sys_user_role@link_test
where role_id in (102, 104, 105)
group by user_id) sr
on su.user_id = sr.user_id
left join (select user_name,
times,
max(ORDERS) orders,
min(SOURCE_PV) SOURCE_PV
from g_detail_intro@link_test
where (user_name, times) in
(select user_name, max(times)
from g_detail_intro@link_test
where period <= 881
group by user_name)
group by user_name, times) lun
on lun.user_name = gd.user_name
where gd.period = 881
and gi.period = 881 and gd.ACTIVE_STATE in(0,1);
update cu_member_settle881 ct set pk_rate =(select bc.pk_id from bd_currency bc
where ct.pk_country =bc.pk_country) where pk_rate >0 and pk_country >0;
merge into cu_member_settle881 a
using (select ct.pk_member, js.pk_id pk_grade, jx.pk_id pk_awards
from cu_member_settle881 ct
left join bd_grade js
on ct.pk_grade = js.grade_value
and ct.pk_settle_country = js.pk_country
left join bd_awards jx
on ct.pk_awards = jx.awards_value
and ct.pk_settle_country = jx.pk_country) b
on (a.pk_member = b.pk_member)
WHEN MATCHED THEN
update set a.pk_grade = b.pk_grade,a.pk_awards = b.pk_awards;
--1324
select * from bd_system_config where key='RECOMMEND_1' and value=1;
select * from cu_member_settle925 where second>3 and pk_country=1;
update cu_member_settle941 set round=round+1,second=1 where second>3 and pk_country in
(select pk_country from bd_system_config where key='RECOMMEND_1' and value=1);
update cu_member_settle941 set round=round+1,second=1 where second>4 and pk_country in
(select pk_country from bd_system_config where key='RECOMMEND_1' and value=2);
-- - CU_MEMBER_TREE_SEQ 1
insert into CU_MEMBER_TREE202201(pk_id,PERIOD,pk_member,PK_PARENT,PK_PLACE_PARENT,PLACE_DEPT,MEMBER_CODE,
MEMBER_NAME,CUSTOMER_TYPE,PHONE,pk_grade,pk_awards,ACCOUNT_STATUS,PAY_STATUS,REGISTER_AUTHORITY,CATEGORY,PURCHASE_TYPE,
PURCHASE_STATUS,SHARE_STATUS,INCOME_STATUS,PK_TEAM_CODE,PK_CENTER_CODE,PK_VERTEX,PK_SETTLE_COUNTRY,PK_COUNTRY)
select Cu_Member_Tree_Seq.Nextval pk_id, a.*
from (select gd.PERIOD,
gd.USER_ID pk_member,
nvl(tj.user_id, 0) PK_PARENT,
az.user_id PK_PLACE_PARENT,
gd.PARENT_AREA PLACE_DEPT,
gd.USER_NAME MEMBER_CODE,
nvl(gd.REAL_NAME, '~') MEMBER_NAME,
gi.CUSTOMER_TYPE CUSTOMER_TYPE,
nvl(su.phonenumber, '~') PHONE,
(case gd.CLAC_JOIN_LEVEL
when -1 then
20
when 0 then
30
when 1 then
40
when 2 then
50
when 3 then
60
else
70
end) pk_grade,
nvl(gd.REAL_HONOUR_LEVEL, 0) * 5 pk_awards,
nvl(su.status,0) ACCOUNT_STATUS,
nvl(su.ZFZT, 0) PAY_STATUS,
(case sr.role_id
when 104 then
1
when 105 then
2
else
0
end) REGISTER_AUTHORITY,
(case
when gi.CUSTOMER_TYPE = 2 then
1
else
0
end) CATEGORY,
0 PURCHASE_TYPE,
(case
when gd.REPURCHASE_CHECK_STATE = 1 then
0
else
1
end) PURCHASE_STATUS,
(case
when gd.MALL_CHECK_STATE = 1 then
0
else
1
end) SHARE_STATUS,
0 INCOME_STATUS,
tm.user_id PK_TEAM_CODE,
bao.user_id PK_CENTER_CODE,
0 PK_VERTEX,
gd.CLAC_COUNTRY PK_SETTLE_COUNTRY,
gd.clac_country PK_COUNTRY
from g_bonus_day@link_test gd
left join g_bonus_day_info@link_test gi
on gd.user_name = gi.user_name
and gd.period = gi.period
left join sys_user@link_test su
on gd.user_name = su.user_name
left join sys_user@link_test tj
on gd.INTRODUCER_CODE = tj.user_name
left join sys_user@link_test az
on gd.PARENT_CODE = az.user_name
left join sys_user@link_test tm
on gd.TEAM_NAME = tm.user_name
left join sys_user@link_test bao
on su.bdzx = bao.user_name
left join (select user_id, max(role_id) role_id
from sys_user_role@link_test
where role_id in (102, 104, 105)
group by user_id) sr
on su.user_id = sr.user_id
where gd.period between 365 and 395
and gi.period between 365 and 395 and gd.ACTIVE_STATE in(0,1)) a;
merge into CU_MEMBER_TREE202201 a
using (select ct.pk_member, period, js.pk_id pk_grade, jx.pk_id pk_awards
from CU_MEMBER_TREE202201 ct
left join bd_grade js
on ct.pk_grade = js.grade_value
and ct.pk_settle_country = js.pk_country
left join bd_awards jx
on ct.pk_awards = jx.awards_value
and ct.pk_settle_country = jx.pk_country) b
on (a.pk_member = b.pk_member and a.period = b.period)
WHEN MATCHED THEN
update set a.pk_grade = b.pk_grade,a.pk_awards = b.pk_awards;
--CU_MEMBER_TREE202201 365 395
--CU_MEMBER_TREE202202 396 423
--CU_MEMBER_TREE202203 424 454
--CU_MEMBER_TREE202204 455 484
--CU_MEMBER_TREE202205 485 515
--CU_MEMBER_TREE202206 516 545
--CU_MEMBER_TREE202207 546 576
--CU_MEMBER_TREE202208 577 607
--CU_MEMBER_TREE202209 608 637
--CU_MEMBER_TREE202210 638 668
--CU_MEMBER_TREE202211 669 698
--CU_MEMBER_TREE202212 699 729
--CU_MEMBER_TREE202301 730 760
--CU_MEMBER_TREE202302 761 788
--CU_MEMBER_TREE202303 789 819
--CU_MEMBER_TREE202304 820 849
--CU_MEMBER_TREE202305 850 880
--CU_MEMBER_TREE202306 881 910
--CU_MEMBER_TREE202307 911 941
-- 历史业绩
insert into CU_MEMBER_ACHIEVE202308 (pk_id,PERIOD, pk_member, PK_RATE,PK_COUNTRY,
A_BALANCE, b_BALANCE,
A_SUM_AMOUNT, b_SUM_AMOUNT, A_SUM_PV, B_SUM_PV, A_NEW_AMOUNT, B_NEW_AMOUNT, A_NEW_PV,
b_NEW_PV, A_SUM_REAL_AMOUNT, B_SUM_REAL_AMOUNT,
A_SUM_REAL_PV, b_SUM_REAL_PV, REP_A_BALANCE, REP_B_BALANCE, REP_A_NEW_AMOUNT,
REP_B_NEW_AMOUNT,
REP_A_NEW_PV, REP_B_NEW_PV,
REP_A_SUM_AMOUNT, REP_B_SUM_AMOUNT,
REP_A_SUM_PV, REP_B_SUM_PV,
REGISTER_AMOUNT, REGISTER_PV,
REGISTER_NEW_AMOUNT, REGISTER_NEW_PV,
UPGRADE_AMOUNT, UPGRADE_PV,
UPGRADE_NEW_AMOUNT, UPGRADE_NEW_PV,
REPURCHASE_AMOUNT, REPURCHASE_PV,
REPURCHASE_NEW_AMOUNT, REPURCHASE_NEW_PV,
HI_FUN_AMOUNT, HI_FUN_PV,
HI_FUN_NEW_AMOUNT, HI_FUN_NEW_PV,
MALL_AMOUNT, MALL_PV,
MALL_NEW_AMOUNT, MALL_NEW_PV,
REGISTER_Blo_NEW_PV,REPURCHASE_Blo_NEW_PV,
R_A_BALANCE, R_b_BALANCE,
R_A_SUM_AMOUNT, R_b_SUM_AMOUNT,
R_A_SUM_PV, R_B_SUM_PV,
R_A_SUM_REAL_AMOUNT, R_B_SUM_REAL_AMOUNT,
R_A_SUM_REAL_PV, R_b_SUM_REAL_PV,
R_REP_A_BALANCE, R_REP_B_BALANCE,
R_REP_A_SUM_AMOUNT, R_REP_B_SUM_AMOUNT,
R_REP_A_SUM_PV, R_REP_B_SUM_PV)
select cu_member_achieve_seq.nextval pk_id,
gd.PERIOD,
gd.USER_ID pk_member,
gd.EXCHANGE_RATE PK_RATE,
gd.clac_country PK_COUNTRY,
A_ORG_MAIN_KEEP/ 6.4 A_BALANCE,
B_ORG_MAIN_KEEP/ 6.4 b_BALANCE,
A_TOTAL_MAIN_AMOUNT/ 6.4 A_SUM_AMOUNT,
B_TOTAL_MAIN_AMOUNT/ 6.4 b_SUM_AMOUNT,
A_TOTAL_MAIN_PV/ 6.4 A_SUM_PV,
B_TOTAL_MAIN_PV/ 6.4 B_SUM_PV,
A_DAY_NEW_MAIN_AMOUNT/ 6.4 A_NEW_AMOUNT,
B_DAY_NEW_MAIN_AMOUNT/ 6.4 B_NEW_AMOUNT,
A_DAY_NEW_MAIN_PV/ 6.4 A_NEW_PV,
b_DAY_NEW_MAIN_PV/ 6.4 b_NEW_PV,
(A_TOTAL_MAIN_AMOUNT + A_TOTAL_REPURCHASE_AMOUNT)/ 6.4 A_SUM_REAL_AMOUNT,
(b_TOTAL_MAIN_AMOUNT + b_TOTAL_REPURCHASE_AMOUNT)/ 6.4 B_SUM_REAL_AMOUNT,
A_TOTAL_REAL_REPUR_PV/ 6.4 A_SUM_REAL_PV,
B_TOTAL_REAL_REPUR_PV/ 6.4 b_SUM_REAL_PV,
A_ORG_REPURCHASE_KEEP/ 6.4 REP_A_BALANCE,
b_ORG_REPURCHASE_KEEP/ 6.4 REP_B_BALANCE,
A_DAY_NEW_REPURCHASE_AMOUNT/ 6.4 REP_A_NEW_AMOUNT,
b_DAY_NEW_REPURCHASE_AMOUNT/ 6.4 REP_B_NEW_AMOUNT,
A_DAY_NEW_REPUR_MALL_PV/ 6.4 REP_A_NEW_PV,
b_DAY_NEW_REPUR_MALL_PV/ 6.4 REP_B_NEW_PV,
A_TOTAL_REPURCHASE_AMOUNT/ 6.4 REP_A_SUM_AMOUNT,
b_TOTAL_REPURCHASE_AMOUNT/ 6.4 REP_B_SUM_AMOUNT,
A_TOTAL_REPUR_MALL_PV/ 6.4 REP_A_SUM_PV,
b_TOTAL_REPUR_MALL_PV/ 6.4 REP_B_SUM_PV,
nvl(gs.REGISTER_AMOUNT, 0)/ 6.4,
nvl(gs.REGISTER_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_REG_AMOUNT, 0)/ 6.4 REGISTER_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_REG_PV, 0)/ 6.4 REGISTER_NEW_PV,
nvl(gs.UPGRADE_AMOUNT, 0)/ 6.4,
nvl(gs.UPGRADE_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_UP_AMOUNT, 0)/ 6.4 UPGRADE_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_UP_PV, 0)/ 6.4 UPGRADE_NEW_PV,
nvl(gs.REPURCHASE_AMOUNT, 0)/ 6.4,
nvl(gs.REPURCHASE_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MAIN_REPUR_AMOUNT, 0)/ 6.4 REPURCHASE_NEW_AMOUNT,
nvl(ga.CURR_DAY_MAIN_REPURCHASE_PV, 0)/ 6.4 REPURCHASE_NEW_PV,
nvl(gs.HI_FUN_AMOUNT, 0)/ 6.4,
nvl(gs.HI_FUN_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_SEA2_REG_AMOUNT, 0)/ 6.4 HI_FUN_NEW_AMOUNT,
nvl(ga.CURR_DAY_SEA2_REG_PV, 0)/ 6.4 HI_FUN_NEW_PV,
nvl(gs.MALL_AMOUNT, 0)/ 6.4,
nvl(gs.MALL_PV, 0)/ 6.4,
nvl(ga.CURR_DAY_MALL_AMOUNT, 0)/ 6.4 MALL_NEW_AMOUNT,
nvl(ga.CURR_DAY_MALL_PV, 0) / 6.4 MALL_NEW_PV,
nvl(gc.DAY_SYSTEM_INTRO12456_PV,0) REGISTER_Blo_NEW_PV,
nvl(gc.DAY_SYSTEM_INTRO37_PV,0) REPURCHASE_Blo_NEW_PV,
A_ORG_MAIN_KEEP / 6.4 R_A_BALANCE,
B_ORG_MAIN_KEEP / 6.4 R_b_BALANCE,
A_TOTAL_MAIN_AMOUNT / 6.4 R_A_SUM_AMOUNT,
B_TOTAL_MAIN_AMOUNT / 6.4 R_b_SUM_AMOUNT,
A_TOTAL_MAIN_PV / 6.4 R_A_SUM_PV,
B_TOTAL_MAIN_PV / 6.4 R_B_SUM_PV,
(A_TOTAL_MAIN_AMOUNT + A_TOTAL_REPURCHASE_AMOUNT)/ 6.4 R_A_SUM_REAL_AMOUNT,
(b_TOTAL_MAIN_AMOUNT + b_TOTAL_REPURCHASE_AMOUNT)/ 6.4 R_B_SUM_REAL_AMOUNT,
A_TOTAL_REAL_REPUR_PV / 6.4 R_A_SUM_REAL_PV,
B_TOTAL_REAL_REPUR_PV/ 6.4 R_b_SUM_REAL_PV,
A_ORG_REPURCHASE_KEEP / 6.4 R_REP_A_BALANCE,
b_ORG_REPURCHASE_KEEP / 6.4 R_REP_B_BALANCE,
A_TOTAL_REPURCHASE_AMOUNT / 6.4 R_REP_A_SUM_AMOUNT,
b_TOTAL_REPURCHASE_AMOUNT / 6.4 R_REP_B_SUM_AMOUNT,
A_TOTAL_REPUR_MALL_PV / 6.4 R_REP_A_SUM_PV,
b_TOTAL_REPUR_MALL_PV / 6.4 R_REP_B_SUM_PV
from hzs_cn.g_bonus_day gd
left join hzs_cn.G_MEMBER_ACHIV ga
on gd.user_name = ga.user_name
and gd.period = ga.period
left join hzs_cn.g_statis_day_achiv gc
on gd.user_name = gc.user_name and gd.period = gc.period
left join (select user_name,
sum(CURR_DAY_MAIN_REG_AMOUNT) REGISTER_AMOUNT,
sum(CURR_DAY_MAIN_REG_PV) REGISTER_PV,
sum(CURR_DAY_MAIN_UP_AMOUNT) UPGRADE_AMOUNT,
sum(CURR_DAY_MAIN_UP_PV) UPGRADE_PV,
sum(CURR_DAY_MAIN_REPUR_AMOUNT) REPURCHASE_AMOUNT,
sum(CURR_DAY_MAIN_REPURCHASE_PV) REPURCHASE_PV,
sum(CURR_DAY_SEA2_REG_AMOUNT) HI_FUN_AMOUNT,
sum(CURR_DAY_SEA2_REG_PV) HI_FUN_PV,
sum(CURR_DAY_MALL_AMOUNT) MALL_AMOUNT,
sum(CURR_DAY_MALL_PV) MALL_PV
from hzs_cn.G_MEMBER_ACHIV
where period between -729 and 941
group by user_name) gs
on gd.user_name = gs.user_name
where gd.period between 911 and 941 and gd.ACTIVE_STATE in(0,1);
update CU_MEMBER_ACHIEVE202201 ct set pk_rate =(select bc.pk_id from bd_currency bc
where ct.pk_country =bc.pk_country) where pk_rate >0 and pk_country >0;
-- 更新业绩 /member/manage/settle/update-achieve
--CU_MEMBER_ACHIEVE202201 365 395
--CU_MEMBER_ACHIEVE202202 396 423
--CU_MEMBER_ACHIEVE202203 424 454
--CU_MEMBER_ACHIEVE202204 455 484
--CU_MEMBER_ACHIEVE202205 485 515
--CU_MEMBER_ACHIEVE202206 516 545
--CU_MEMBER_ACHIEVE202207 546 576
--CU_MEMBER_ACHIEVE202208 577 607
--CU_MEMBER_ACHIEVE202209 608 637
--CU_MEMBER_ACHIEVE202210 638 668
--CU_MEMBER_ACHIEVE202211 669 698
--CU_MEMBER_ACHIEVE202212 699 729
--CU_MEMBER_ACHIEVE202301 730 760
--CU_MEMBER_ACHIEVE202302 761 788
--CU_MEMBER_ACHIEVE202303 789 819
--CU_MEMBER_ACHIEVE202304 820 849
--CU_MEMBER_ACHIEVE202305 850 880
--CU_MEMBER_ACHIEVE202306 881 910
--CU_MEMBER_ACHIEVE202307 911 941
--cu_member_bonus
--select max(pk_id) from cu_member_bonus
insert into cu_member_bonus(pk_id,pk_member,period,PK_RATE,DIRECT_INCOME,EXPAND_INCOME,COACH_INCOME,SHARE_INCOME,
SERVICE_INCOME,BACK_POINTS,SERVICE_SPEND,PUR_REAL_SUBTOTAL,REPUR_RANGE_INCOME,REPUR_EXPAND_INCOME,REPUR_REAL_SUBTOTAL,
CLOUD_DIRECT_INCOME,CLOUD_PUR_INCOME,CLOUD_REPUR_INCOME,CLOUD_REAL_SUBTOTAL,GLOBAL_POINTS,CAR_AWARD_POINTS,HI_FUN_INCOME,
MAKER_DIRECT_INCOME,MAKER_SHARE_INCOME,MAKER_REAL_SUBTOTAL,STORE_INCOME,REAL_INCOME_TOTAL,PK_COUNTRY,del_flag,PK_CREATOR,
GRANT_STATUS,INCOME_STATUS)
select id pk_id,
user_id pk_member,
period,
exchange_rate PK_RATE,
INTRODUCE_BONUS / 6.4 DIRECT_INCOME,
ORG_BONUS / 6.4 EXPAND_INCOME,
LEADER_BONUS / 6.4 COACH_INCOME,
SHARE_BONUS / 6.4 SHARE_INCOME,
SERVICE_BONUS / 6.4 SERVICE_INCOME,
REPEATED_CONSUMPTION / 6.4 BACK_POINTS,
MANAGEMENT_EXPENSE / 6.4 SERVICE_SPEND,
(INTRODUCE_BONUS + ORG_BONUS + LEADER_BONUS + SHARE_BONUS + SERVICE_BONUS) / 6.4 PUR_REAL_SUBTOTAL,
REPUR_RANGE_BONUS / 6.4 REPUR_RANGE_INCOME,
REPUR_ORG_BONUS / 6.4 REPUR_EXPAND_INCOME,
(REPUR_RANGE_BONUS + REPUR_ORG_BONUS) / 6.4 REPUR_REAL_SUBTOTAL,
AGENT_INTRODUCE_BONUS / 6.4 CLOUD_DIRECT_INCOME,
AGENT_AREA_BONUS / 6.4 CLOUD_PUR_INCOME,
AGENT_REPUR_BONUS / 6.4 CLOUD_REPUR_INCOME,
(AGENT_INTRODUCE_BONUS + AGENT_AREA_BONUS + AGENT_REPUR_BONUS) / 6.4 CLOUD_REAL_SUBTOTAL,
BONUS_T2 / 6.4 GLOBAL_POINTS,
BONUS_T3 / 6.4 CAR_AWARD_POINTS,
bonus_t6 / 6.4 HI_FUN_INCOME,
(MS_INTRODUCE_BONUS + MSPACK_INTRODUCE_BONUS) / 6.4 MAKER_DIRECT_INCOME,
MS_INITIATORPACK_BONUS / 6.4 MAKER_SHARE_INCOME,
(MS_INTRODUCE_BONUS + MSPACK_INTRODUCE_BONUS + MS_INITIATORPACK_BONUS) / 6.4 MAKER_REAL_SUBTOTAL,
bonus_t7 / 6.4 STORE_INCOME,
BONUS_TOTAL / 6.4 REAL_INCOME_TOTAL,
CLAC_COUNTRY PK_COUNTRY,
STORE_DEL_FLAG del_flag,
100000000 PK_CREATOR,
4 GRANT_STATUS,
0 INCOME_STATUS
from g_bonus_day@link_test
where BONUS_TOTAL > 0 ;
update cu_member_bonus ct set pk_rate =(select bc.pk_id from bd_currency bc
where ct.pk_country =bc.pk_country) where pk_rate >0 and pk_country >0
--
--select max(pk_id) from cu_member_bonus_push;
insert into cu_member_bonus_push(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, round, second, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_push_seq.nextval pk_id,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
round, second, round((case ddje when 0 then 0 else (PRETAX_INCOME-PRETAX_INCOME*0.2)/ddje end), 6) INCOME_RATIO, DEL_FLAG, nvl(PK_COUNTRY, 1) PK_COUNTRY, CREATION_TIME, 100000000 pk_creator
from (
select nvl(nvl(gd.id, gy.id), 0) PK_BONUS, nvl(bo.pkid, 0) PK_ORDER, 3 PK_BONUS_ITEMS, 0 INCOME_STATUS,
(case when CLAC_VAL >0 then 2 else 1 end) CAL_TYPE, SOURCE_PV/6.4 CAL_ACHIEVE,
(case when CLAC_VAL >0 then CLAC_VAL/6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL >0 then CLAC_VAL else SOURCE_PV*CLAC_RATE end)/6.4 PRETAX_INCOME,
(case when TIMES-1 < 0 then 0 else TIMES-1 end) round, ORDERS SECOND, nvl(bo.ddje, 0)/6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG, nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME from g_detail_intro@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name=gd.user_name and gi.period=gd.period
left join g_bonus_day@link_test gy
on gy.user_name=gi.user_name and gy.period=352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_push a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_push cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
-- 奖金明细表-拓展收益明细
--select max(pk_id)from cu_member_bonus_expand;
insert
into cu_member_bonus_expand(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, CURRENT_TOUCH,
EXPAND_TOUCH, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_expand_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
CURRENT_TOUCH,
0 EXPAND_TOUCH,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
4 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_PV / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_PV * CLAC_RATE end) / 6.4 PRETAX_INCOME,
(case when TIMES < 0 then 0 else TIMES end) CURRENT_TOUCH,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_org@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_expand a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_expand cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
-- 奖金明细表-消费拓展收益明细表
--select max(pk_id) from cu_member_bonus_expand;
insert into cu_member_bonus_expand(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, CURRENT_TOUCH,
EXPAND_TOUCH, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_expand_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
CURRENT_TOUCH,
0 EXPAND_TOUCH,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
9 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_PV / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_PV * CLAC_RATE end) / 6.4 PRETAX_INCOME,
(case when TIMES < 0 then 0 else TIMES end) CURRENT_TOUCH,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_org@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_expand a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_expand cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 9) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
-- 奖金明细表-辅导收益明细
--select max(pk_id) from cu_member_bonus_coach;
insert into cu_member_bonus_coach(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, CURRENT_GENERATION,
COACH_GENERATION, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_coach_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
CURRENT_GENERATION,
COACH_GENERATION,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
5 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_ORG / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_ORG * CLAC_RATE end) / 6.4 PRETAX_INCOME,
CAN_LEVEL CURRENT_GENERATION,
LEVELS COACH_GENERATION,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_leader@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_coach a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_coach cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
-- 奖金明细表-报单服务费收益明细表
insert into cu_member_bonus_detail(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_detail_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
7 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_PV / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_PV * CLAC_RATE end) / 6.4 PRETAX_INCOME,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_service@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_detail a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_detail cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 7) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
-- 云代直推
insert into cu_member_bonus_detail(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_detail_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
0 INCOME_TAX,
PRETAX_INCOME REAL_INCOME,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
14 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_AMONT / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_AMONT * CLAC_RATE end) / 6.4 PRETAX_INCOME,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from G_DETAIL_AGENT_INTRO@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_detail a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_detail cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 14) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
--
insert into cu_member_bonus_detail(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_detail_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
0 INCOME_TAX,
PRETAX_INCOME REAL_INCOME,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
16 PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_ACHIEVEMENT / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_ACHIEVEMENT * CLAC_RATE end) / 6.4 PRETAX_INCOME,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_agent_area@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_detail a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_detail cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 16) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
--
insert into cu_member_bonus_detail(pk_id, pk_bonus, pk_order, PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PRETAX_INCOME, INCOME_TAX, REAL_INCOME, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_detail_seq.nextval,
pk_bonus,
pk_order,
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
PRETAX_INCOME,
0 INCOME_TAX,
PRETAX_INCOME REAL_INCOME,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
(case
when BONUS_TYPE = '创客空间礼包推荐奖金' then 20
when BONUS_TYPE = '创客空间礼包发起人奖金' then 21
else 21 end) PK_BONUS_ITEMS,
0 INCOME_STATUS,
(case when CLAC_VAL > 0 then 2 else 1 end) CAL_TYPE,
SOURCE_AMONT / 6.4 CAL_ACHIEVE,
(case when CLAC_VAL > 0 then CLAC_VAL / 6.4 else CLAC_RATE end) CAL_VALUE,
(case when CLAC_VAL > 0 then CLAC_VAL else SOURCE_AMONT * CLAC_RATE end) / 6.4 PRETAX_INCOME,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from G_DETAIL_pack_INTRO@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code);
merge into cu_member_bonus_detail a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_detail cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 20) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
merge into cu_member_bonus_detail a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_detail cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 21) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
---
insert into cu_member_bonus_range(pk_id, pk_bonus, pk_order, pk_order_items,PK_BONUS_ITEMS, INCOME_STATUS, CAL_TYPE,
CAL_ACHIEVE, CAL_VALUE, PK_RANGE,PK_BEFORE_RANGE,PRETAX_INCOME, INCOME_TAX,
REAL_INCOME, INCOME_RATIO,
DEL_FLAG, PK_COUNTRY, CREATION_TIME, pk_creator)
select cu_member_bonus_range_seq.nextval,
pk_bonus,
pk_order,
nvl(pk_order_items,0),
PK_BONUS_ITEMS,
INCOME_STATUS,
CAL_TYPE,
CAL_ACHIEVE,
CAL_VALUE,
0 PK_RANGE,
0 PK_BEFORE_RANGE,
PRETAX_INCOME,
(PRETAX_INCOME * 0.2) INCOME_TAX,
(PRETAX_INCOME - PRETAX_INCOME * 0.2) REAL_INCOME,
round((case ddje when 0 then 0 else (PRETAX_INCOME - PRETAX_INCOME * 0.2) / ddje end), 6) INCOME_RATIO,
DEL_FLAG,
nvl(PK_COUNTRY, 1) PK_COUNTRY,
CREATION_TIME,
100000000 pk_creator
from (select gi.id pk_id,
nvl(nvl(gd.id, gy.id), 0) PK_BONUS,
nvl(bo.pkid, 0) PK_ORDER,
bi.PKID pk_order_items,
8 PK_BONUS_ITEMS,
0 INCOME_STATUS,
2 CAL_TYPE,
(SOURCE_PRICE*SOURCE_NUM) / 6.4 CAL_ACHIEVE,
CLAC_VAL CAL_VALUE,
CLAC_VAL / 6.4 PRETAX_INCOME,
nvl(bo.ddje, 0) / 6.4 ddje,
(case STATE when 0 then 1 else 0 end) DEL_FLAG,
nvl(CLAC_COUNTRY, bo.pk_country) PK_COUNTRY,
CLAC_TIME CREATION_TIME
from g_detail_repur_range@link_test gi
left join g_bonus_day@link_test gd
on gi.user_name = gd.user_name and gi.period = gd.period
left join g_bonus_day@link_test gy
on gy.user_name = gi.user_name and gy.period = 352
left join bs_order@link_test bo
on bo.ddbh = gi.source_order_code
left join bs_order_items@link_test bi
on bo.ddbh = bi.ddbh and gi.SOURCE_PRODUCT=bi.CPID
);
merge into cu_member_bonus_range a
using (select cp.pk_id, bi.pk_id pk_bonus_items
from cu_member_bonus_range cp
left join bd_bonus_items bi
on cp.pk_bonus_items = bi.bonus_value and cp.pk_country = bi.pk_country
where bi.bonus_value = 8) b
on (a.pk_id = b.pk_id)
when matched then
update set a.pk_bonus_items = b.pk_bonus_items;
insert into cu_member_month2023
select a.*,
b.A_SUM_PV,
b.b_SUM_PV,
b.REP_A_SUM_PV,
b.REP_b_SUM_PV,
b.REGISTER_PV,
b.UPGRADE_PV,
b.REPURCHASE_PV,
b.HI_FUN_PV,
b.MALL_PV
from (select 941 period,
ct.pk_member,
ct.pk_parent,
ct.pk_place_parent,
ct.place_dept,
ct.member_code,
ct.member_name,
ct.customer_type,
ct.phone,
ct.pk_grade,
ct.pk_awards,
ct.pk_team_code,
ct.pk_center_code,
ct.pk_vertex,
ct.pk_settle_country
from cu_member_tree202307 ct
where period = 941) a
inner join (select pk_member,
sum(A_NEW_PV) A_SUM_PV,
sum(b_NEW_PV) b_SUM_PV,
sum(REP_A_NEW_PV) REP_A_SUM_PV,
sum(REP_b_NEW_PV) REP_b_SUM_PV,
sum(register_new_pv) REGISTER_PV,
sum(upgrade_new_pv) UPGRADE_PV,
sum(repurchase_new_pv) REPURCHASE_PV,
sum(hi_fun_new_pv) HI_FUN_PV,
sum(mall_new_pv) MALL_PV
from cu_member_achieve202307
group by pk_member) b
on a.pk_member = b.pk_member
941 cu_member_achieve202307
910 cu_member_achieve202306
880 cu_member_achieve202305
849 cu_member_achieve202304
819 cu_member_achieve202303
788 cu_member_achieve202302
760 cu_member_achieve202301