period
NUMBER(6) default 0 not null,
pk_member NUMBER(20) not null,
pk_parent NUMBER(20) not null,
pk_place_parent NUMBER(20),
place_dept NUMBER(3),
member_code VARCHAR2(30) not null,
member_name VARCHAR2(100) not null,
customer_type NUMBER(2) not null,
phone VARCHAR2(40) not null,
pk_grade NUMBER(4) not null,
pk_awards NUMBER(4) not null,
account_status number(1) default 0 not null,
pay_status NUMBER(2) default 0 not null,
register_authority number(2) default 0 not null,
category number(2) default 0 not null,
purchase_type number(2) default 0 not null,
purchase_status number(2) default 0 not null,
share_status number(2) default 0 not null,
income_status number(2) default 0 not null,
pk_team_code number(20),
pk_center_code number(20),
pk_vertex number(20),
pk_settle_country number(4) not null,
is_real_name NUMBER(1) default 1 not null,
is_bus_license NUMBER(1) default 1 not null,
is_maker_space NUMBER(1) default 1 not null,
pk_country number(4) default 1 not null,
store_level NUMBER(2) default 0,
is_maker_gift NUMBER(1) default 1,
expire_status number(1) default 1
,
,
pk_rate
NUMBER(6) ,
a_balance NUMBER(17,6) default 0 not null,
b_balance NUMBER(17,6) default 0 not null,
a_sum_amount NUMBER(17,6) default 0 not null,
b_sum_amount NUMBER(17,6) default 0 not null,
a_sum_pv NUMBER(17,6) default 0 not null,
b_sum_pv NUMBER(17,6) default 0 not null,
a_new_amount NUMBER(17,6) default 0 not null,
b_new_amount NUMBER(17,6) default 0 not null,
a_new_pv NUMBER(17,6) default 0 not null,
b_new_pv NUMBER(17,6) default 0 not null,
a_sum_real_amount NUMBER(17,6) default 0 not null,
b_sum_real_amount NUMBER(17,6) default 0 not null,
a_sum_real_pv NUMBER(17,6) default 0 not null,
b_sum_real_pv NUMBER(17,6) default 0 not null,
rep_a_balance NUMBER(17,6) default 0 not null,
rep_b_balance NUMBER(17,6) default 0 not null,
rep_a_new_amount NUMBER(17,6) default 0 not null,
rep_b_new_amount NUMBER(17,6) default 0 not null,
rep_a_new_pv NUMBER(17,6) default 0 not null,
rep_b_new_pv NUMBER(17,6) default 0 not null,
rep_a_sum_amount NUMBER(17,6) default 0 not null,
rep_b_sum_amount NUMBER(17,6) default 0 not null,
rep_a_sum_pv NUMBER(17,6) default 0 not null,
rep_b_sum_pv NUMBER(17,6) default 0 not null,
register_amount NUMBER(17,6) default 0 not null,
register_pv NUMBER(17,6) default 0 not null,
register_new_amount NUMBER(17,6) default 0 not null,
register_new_pv NUMBER(17,6) default 0 not null,
upgrade_amount NUMBER(17,6) default 0 not null,
upgrade_pv NUMBER(17,6) default 0 not null,
upgrade_new_amount NUMBER(17,6) default 0 not null,
upgrade_new_pv NUMBER(17,6) default 0 not null,
repurchase_amount NUMBER(17,6) default 0 not null,
repurchase_pv NUMBER(17,6) default 0 not null,
repurchase_new_amount NUMBER(17,6) default 0 not null,
repurchase_new_pv NUMBER(17,6) default 0 not null,
hi_fun_amount NUMBER(17,6) default 0 not null,
hi_fun_pv NUMBER(17,6) default 0 not null,
hi_fun_new_amount NUMBER(17,6) default 0 not null,
hi_fun_new_pv NUMBER(17,6) default 0 not null,
mall_amount NUMBER(17,6) default 0 not null,
mall_pv NUMBER(17,6) default 0 not null,
mall_new_amount NUMBER(17,6) default 0 not null,
mall_new_pv NUMBER(17,6) default 0 not null,
REGISTER_Blo_NEW_PV NUMBER(17,6) default 0 not null,
UPGRADE_Blo_NEW_PV NUMBER(17,6) default 0 not null,
REPURCHASE_Blo_NEW_PV NUMBER(17,6) default 0 not null,
HI_FUN_Blo_NEW_PV NUMBER(17,6) default 0 not null,
MALL_Blo_NEW_PV NUMBER(17,6) default 0 not null,
min_achieve number(17,6) default 0 not null,
round NUMBER(6) default 0 not null,
second NUMBER(4) default 1 not null
select pk_member,pk_parent,member_code,member_name,a.pk_awards,account_status,a.register_authority,customer_type,
income_status,pk_settle_country,purchase_status,share_status,is_maker_space,
a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance,
register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code,
repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade,
min_achieve,round,second,bg.grade_value,store_level,expire_status from (
) a
inner join bd_grade bg
on a.pk_grade = bg.pk_id
net_first_achieve
NUMBER(17,6) default 0 not null,
net_repurchase_achieve NUMBER(17,6) default 0 not null,
r_a_balance NUMBER(17,6) default 0 not null,
r_b_balance NUMBER(17,6) default 0 not null,
r_a_sum_amount NUMBER(17,6) default 0 not null,
r_b_sum_amount NUMBER(17,6) default 0 not null,
r_a_sum_pv NUMBER(17,6) default 0 not null,
r_b_sum_pv NUMBER(17,6) default 0 not null,
r_a_sum_real_amount NUMBER(17,6) default 0 not null,
r_b_sum_real_amount NUMBER(17,6) default 0 not null,
r_a_sum_real_pv NUMBER(17,6) default 0 not null,
r_b_sum_real_pv NUMBER(17,6) default 0 not null,
r_rep_a_balance NUMBER(17,6) default 0 not null,
r_rep_b_balance NUMBER(17,6) default 0 not null,
r_rep_a_sum_amount NUMBER(17,6) default 0 not null,
r_rep_b_sum_amount NUMBER(17,6) default 0 not null,
r_rep_a_sum_pv NUMBER(17,6) default 0 not null,
r_rep_b_sum_pv NUMBER(17,6) default 0 not null
CREATE OR REPLACE TRIGGER
${tableName}_TRIG
BEFORE INSERT OR UPDATE ON ${tableName} FOR EACH ROW
DECLARE
v_newVal NUMBER(12) := 0;
v_incval NUMBER(12) := 0;
BEGIN
IF INSERTING AND :new.pk_id IS NULL THEN
SELECT ${tableNameSeq}.NEXTVAL INTO v_newVal FROM DUAL;
IF v_newVal = 1 THEN SELECT NVL(max(pk_id), 0) INTO v_newVal FROM ${tableName};
v_newVal := v_newVal + 1;
LOOP
EXIT
WHEN v_incval >= v_newVal;
SELECT ${tableNameSeq}.nextval INTO v_incval FROM dual;
END LOOP;
END IF;
:new.pk_id := v_newVal;
END IF;
END;
select pk_member,pk_parent,member_code,member_name,pk_awards,account_status,
register_authority,customer_type,income_status,pk_settle_country,purchase_status,share_status,is_maker_space,
a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance,
register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code,
repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade,
min_achieve,round,second,store_level,expire_status
from ${settleTableName}
where pay_status = 1
start with pk_member = #{item}
connect by pk_member = prior pk_parent
create table ${tableName}
(
pk_id NUMBER(20) primary key,
)
create table ${tableName}
(
)
create index ${tableName}_parent
on
${tableName}
(
pk_parent
)
create index ${tableName}_place
on
${tableName}
(
pk_place_parent,
place_dept
)
create unique index ${tableName}_PK_M
on ${tableName}
(
PK_MEMBER,
period
)
create unique index ${tableName}_PK_M
on ${tableName}
(
PK_MEMBER
)
insert into ${settleTableName} (pk_member, pk_parent, member_code, member_name,
customer_type, phone, pk_grade, pk_awards, account_status, pay_status, category,
purchase_status, income_status, pk_team_code,
pk_center_code, pk_vertex, pk_settle_country, is_real_name,
pk_country, pk_rate, pay_time, region_address, system_type, enable_status)
select cm.pk_id,
pk_parent,
member_code,
member_name,
customer_type,
phone,
pk_settle_grade,
cm.pk_awards,
account_status,
pay_status,
category,
purchase_status,
income_status,
pk_team_code,
pk_center_code,
pk_vertex,
pk_settle_country,
is_real_name,
cm.pk_country,
nvl(bc.pk_id, -1) pk_rate,
cm.pay_time,
nvl(cr.county, 0) country,
cm.system_type,
cm.is_activate
from cu_member cm
left join (
select pk_country, max(pk_id) pk_id
from bd_currency
where del_flag = 0
and pk_country = 1
and enable_state = 0
and effective_date <= sysdate
group by pk_country) bc
on cm.pk_settle_country = bc.pk_country
left join cu_member_retail_region cr
on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0
where cm.del_flag = 0
merge into ${rangeTableName} a
using (
select ca.pk_member, max(old_level) pk_awards
from cu_member_awards ca
inner join ${rangeTableName} cm
on ca.pk_member = cm.pk_member
where ca.period = #{period}
and ca.up_type = 1
and ca.award_type = #{awardType}
and ca.del_flag = 0
and cm.pk_awards <= ca.new_level
and cm.pk_share_awards <= ca.new_level
group by ca.pk_member
) b
on (a.pk_member = b.pk_member)
when matched then
update set
a.pk_awards = b.pk_awards
a.pk_share_awards=b.pk_awards
merge into ${rangeTableName} a
using (
select y.pk_member,y.pk_awards from ${rangeTableName} x
inner join (
select a.pk_member,a.new_level pk_awards
from cu_member_awards a
inner join (
select pk_member, max(pk_id) pk_id
from cu_member_awards
where del_flag = 0 and up_type = 2
and end_validity_date <= #{settleDate, jdbcType=DATE}
and award_type = #{awardType}
group by pk_member) b
on a.pk_id = b.pk_id
where a.del_flag = 0
) y
on x.pk_member = y.pk_member
where
x.pk_awards < y.pk_awards
x.pk_share_awards < y.pk_awards
) b
on (a.pk_member = b.pk_member)
when matched then
update set
a.pk_awards = b.pk_awards
a.pk_share_awards = b.pk_awards
update ${rangeTableName}
set pk_awards = (select pk_id from bd_awards where awards_value = 0),
pk_share_awards = (select pk_id from bd_awards where awards_value = 0)
update ${rangeTableName}
set pk_awards = (select pk_id from bd_awards where awards_value = 5),
pk_share_awards = (select pk_id from bd_awards where awards_value = 5)
where pk_grade = (
select pk_id
from bd_grade
where grade_value = 70 and del_flag = 0
)
create table ${tableName}
(
pk_member NUMBER(20) not null,
pk_parent NUMBER(20) not null,
pk_grade NUMBER(4) not null,
pk_awards number(4) default 10 not null,
pk_share_awards number(4) default 10 not null,
enable_status number(2) default 1 not null,
system_type NUMBER(2) default 2 not null,
new_box_num number(10,2) default 0 not null,
new_consume_pv number(17,6) default 0 not null,
team_new_box_num number(10,2) default 0 not null,
team_new_pv number(17,6) default 0 not null,
team_new_amount number(17,6) default 0 not null,
all_new_box_num number(10,2) default 0 not null,
all_new_consume_pv number(17,6) default 0 not null,
all_team_new_box_num number(10,2) default 0 not null,
all_team_new_pv number(17,6) default 0 not null,
)
create table ${tableName}
(
pk_member NUMBER(20) not null,
pk_parent NUMBER(20) not null,
member_code VARCHAR2(30) not null,
member_name VARCHAR2(100) not null,
customer_type NUMBER(2) not null,
phone VARCHAR2(40) not null,
pk_grade NUMBER(4) not null,
pk_awards number(4) default 10 not null,
pk_share_awards number(4) default 10 not null,
enable_status number(2) default 1 not null,
account_status number(1) default 0 not null,
pay_status NUMBER(2) default 0 not null,
pay_time DATE,
category number(2) default 0 not null,
purchase_status number(2) default 0 not null,
income_status number(2) default 0 not null,
pk_team_code number(20),
pk_center_code number(20),
pk_vertex number(20),
pk_settle_country number(4) not null,
is_real_name NUMBER(1) default 1 not null,
pk_country number(4) default 1 not null,
system_type NUMBER(2) default 2 not null,
pk_rate NUMBER(6),
new_box_num number(10,2) default 0 not null,
consume_box_num number(10,2) default 0 not null,
month_box_num number(10,2) default 0 not null,
new_consume_pv number(17,6) default 0 not null,
consume_pv number(17,6) default 0 not null,
month_consume_pv number(17,6) default 0 not null,
team_new_box_num number(10,2) default 0 not null,
team_box_num number(10,2) default 0 not null,
team_month_box_num number(10,2) default 0 not null,
team_new_pv number(17,6) default 0 not null,
team_consume_pv number(17,6) default 0 not null,
team_month_pv number(17,6) default 0 not null,
team_new_amount number(17,6) default 0 not null,
team_consume_amount number(17,6) default 0 not null,
team_month_amount number(17,6) default 0 not null,
recommend_num number(8) default 0 not null,
team_num number(8) default 0 not null,
region_address number(8) default 0 not null,
big_box_num number(10,2) default 0 not null,
small_box_num number(10,2) default 0 not null,
big_team_pv number(17,6) default 0 not null,
small_team_pv number(17,6) default 0 not null,
all_consume_box_num number(10,2) default 0 not null,
all_consume_pv number(17,6) default 0 not null,
all_team_box_num number(10,2) default 0 not null,
all_team_consume_pv number(17,6) default 0 not null
)
truncate table ${tableName}