2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								<?xml version="1.0" encoding="UTF-8"?>  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								<mapper  namespace= "com.hzs.bonus.achieve.mapper.CuMemberAchieveMapper" >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <!--  通用查询映射结果  --> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <resultMap  id= "CuMemberAchieve"  type= "com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <id  column= "PK_ID"  property= "pkId" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "PK_COUNTRY"  property= "pkCountry" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "PK_MEMBER"  property= "pkMember" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "PK_RATE"  property= "pkRate" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_BALANCE"  property= "aBalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_BALANCE"  property= "bBalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_SUM_AMOUNT"  property= "aSumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_SUM_AMOUNT"  property= "bSumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_SUM_PV"  property= "aSumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_SUM_PV"  property= "bSumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_NEW_AMOUNT"  property= "aNewAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_NEW_AMOUNT"  property= "bNewAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_NEW_PV"  property= "aNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_NEW_PV"  property= "bNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_SUM_REAL_AMOUNT"  property= "aSumRealAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_SUM_REAL_AMOUNT"  property= "bSumRealAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "A_SUM_REAL_PV"  property= "aSumRealPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "B_SUM_REAL_PV"  property= "bSumRealPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_A_BALANCE"  property= "repABalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_B_BALANCE"  property= "repBBalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_A_NEW_AMOUNT"  property= "repANewAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_B_NEW_AMOUNT"  property= "repBNewAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_A_NEW_PV"  property= "repANewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_B_NEW_PV"  property= "repBNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_A_SUM_AMOUNT"  property= "repASumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_B_SUM_AMOUNT"  property= "repBSumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_A_SUM_PV"  property= "repASumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REP_B_SUM_PV"  property= "repBSumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REGISTER_AMOUNT"  property= "registerAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REGISTER_PV"  property= "registerPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REGISTER_NEW_PV"  property= "registerNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "UPGRADE_AMOUNT"  property= "upgradeAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "UPGRADE_PV"  property= "upgradePv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "UPGRADE_NEW_PV"  property= "upgradeNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REPURCHASE_AMOUNT"  property= "repurchaseAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REPURCHASE_PV"  property= "repurchasePv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REPURCHASE_NEW_PV"  property= "repurchaseNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "HI_FUN_AMOUNT"  property= "hiFunAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "HI_FUN_PV"  property= "hiFunPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "HI_FUN_NEW_PV"  property= "hiFunNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "MALL_AMOUNT"  property= "mallAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "MALL_PV"  property= "mallPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "MALL_NEW_PV"  property= "mallNewPv" /> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        <result  column= "REGISTER_Blo_NEW_PV"  property= "registerBloNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "UPGRADE_Blo_NEW_PV"  property= "upgradeBloNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "REPURCHASE_Blo_NEW_PV"  property= "repurchaseBloNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "HI_FUN_Blo_NEW_PV"  property= "hiFunBloNewPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "MALL_Blo_NEW_PV"  property= "mallBloNewPv" /> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_A_BALANCE"  property= "rABalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_B_BALANCE"  property= "rBBalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_A_SUM_AMOUNT"  property= "rASumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_B_SUM_AMOUNT"  property= "rBSumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_A_SUM_PV"  property= "rASumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_B_SUM_PV"  property= "rBSumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_A_SUM_REAL_AMOUNT"  property= "rASumRealAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_B_SUM_REAL_AMOUNT"  property= "rBSumRealAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_A_SUM_REAL_PV"  property= "rASumRealPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_B_SUM_REAL_PV"  property= "rBSumRealPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_REP_A_BALANCE"  property= "rRepABalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_REP_B_BALANCE"  property= "rRepBBalance" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_REP_A_SUM_AMOUNT"  property= "rRepASumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_REP_B_SUM_AMOUNT"  property= "rRepBSumAmount" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "R_REP_A_SUM_PV"  property= "rRepASumPv" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "ALGEBRA"  property= "algebra" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "VERTEX_NAME"  property= "vertexName" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "TEAM_NAME"  property= "teamName" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <result  column= "ASSESS_STATUS"  property= "assessStatus" /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </resultMap> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <sql  id= "CuMemberAchieveColumn" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        NUMBER(20) primary key,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            period            number(6) not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_member         NUMBER(20) not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_rate           NUMBER(6) not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_country        NUMBER(6) not null
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </sql> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <insert  id= "insertCuMemberAchieveBySettleDate" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        insert into ${targetTableName}(period, pk_member, 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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       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, pk_country)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select #{period}       period,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               nvl(pk_rate, 0) 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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               pk_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from ${sourceTableName}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </insert> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "createCuMemberAchieveTable" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create table ${tableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <include  refid= "CuMemberAchieveColumn" > </include> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <!-- 每日更新累计金额 --> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberBackOldAchieveEveryDay" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${tableName} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,max(a.pk_rate) pk_rate,sum(a_new_amount/bc.out_exchange_rate) a_new_amount,sum(a_new_pv)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(b_new_amount/bc.out_exchange_rate) b_new_amount,sum(b_new_pv) b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(rep_a_new_amount/bc.out_exchange_rate) rep_a_new_amount,sum(rep_b_new_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(rep_a_new_pv) rep_a_new_pv,sum(rep_b_new_pv) rep_b_new_pv,sum(a_new_real_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(a_new_real_pv) a_new_real_pv,sum(b_new_real_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b_new_real_amount,sum(b_new_real_pv) b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "memberAchieveParamList"  item= "achieve"  open= " "  separator= " union all "  close= " " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select pk_place_parent pk_member,#{achieve.pkRate} pk_rate,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newAmount} else 0 end) a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newPv} else 0 end) a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.repNewAmount} else 0 end) rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.repNewPv} else 0 end) rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newRealAmount} else 0 end) a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newRealPv} else 0 end) a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newAmount} else 0 end) b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newPv} else 0 end) b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.repNewAmount} else 0 end) rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.repNewPv} else 0 end) rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newRealAmount} else 0 end) b_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newRealPv} else 0 end) b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select pk_place_parent,place_dept from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select * from ${tableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            start with pk_member = #{achieve.pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            connect by pk_member = prior pk_place_parent
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            where nvl(pk_place_parent,0) !=0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        inner join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on a.pk_rate = bc.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        group by pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        update
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set a.period = a.period + 1,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_sum_pv = a.a_sum_pv - b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_sum_pv = a.b_sum_pv - b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_a_sum_pv = a.rep_a_sum_pv - b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_b_sum_pv = a.rep_b_sum_pv - b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_sum_real_pv = a.a_sum_real_pv - b.a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_sum_real_pv = a.b_sum_real_pv - b.b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <!-- 每日更新累计金额 --> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberBackAchieveEveryDay" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${tableName} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,max(a.pk_rate) pk_rate,sum(a_new_amount/bc.out_exchange_rate) a_new_amount,sum(a_new_pv)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(b_new_amount/bc.out_exchange_rate) b_new_amount,sum(b_new_pv) b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(rep_a_new_amount/bc.out_exchange_rate) rep_a_new_amount,sum(rep_b_new_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(rep_a_new_pv) rep_a_new_pv,sum(rep_b_new_pv) rep_b_new_pv,sum(a_new_real_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sum(a_new_real_pv) a_new_real_pv,sum(b_new_real_amount/bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b_new_real_amount,sum(b_new_real_pv) b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "memberAchieveParamList"  item= "achieve"  open= " "  separator= " union all "  close= " " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select pk_place_parent pk_member,#{achieve.pkRate} pk_rate,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newAmount} else 0 end) a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newPv} else 0 end) a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.repNewAmount} else 0 end) rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.repNewPv} else 0 end) rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newRealAmount} else 0 end) a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =1 then #{achieve.newRealPv} else 0 end) a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newAmount} else 0 end) b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newPv} else 0 end) b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.repNewAmount} else 0 end) rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.repNewPv} else 0 end) rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newRealAmount} else 0 end) b_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (case when place_dept =2 then #{achieve.newRealPv} else 0 end) b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select pk_place_parent,place_dept from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select * from ${tableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            start with pk_member = #{achieve.pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            connect by pk_member = prior pk_place_parent
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            where nvl(pk_place_parent,0) !=0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        inner join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on a.pk_rate = bc.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        group by pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        update set
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.period = a.period + 1,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.pk_rate = b.pk_rate,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_sum_pv = a.a_sum_pv + b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_sum_pv = a.b_sum_pv + b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_a_sum_pv = a.rep_a_sum_pv + b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_b_sum_pv = a.rep_b_sum_pv + b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_sum_real_pv = a.a_sum_real_pv + b.a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_sum_real_pv = a.b_sum_real_pv + b.b_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_a_sum_amount = a.r_a_sum_amount + b.a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_b_sum_amount = a.r_b_sum_amount + b.b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_a_sum_pv = a.r_a_sum_pv +b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_b_sum_pv = a.r_b_sum_pv + b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_rep_a_sum_amount =a.r_rep_a_sum_amount +b.rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_rep_b_sum_amount =a.r_rep_b_sum_amount + b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_rep_a_sum_pv = a.r_rep_a_sum_pv + b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_rep_b_sum_pv = a.r_rep_b_sum_pv + b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_a_sum_real_amount = a.r_a_sum_real_amount + b.a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_b_sum_real_amount = a.r_b_sum_real_amount + b.b_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_a_sum_real_pv = a.r_a_sum_real_pv + b.a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.r_b_sum_real_pv = a.r_b_sum_real_pv + b.b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <!-- 将昨天的各种金额作为今天的期初 --> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberSettleAchieveByBeforeDay" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (select pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          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_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          rep_b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          register_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          register_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          upgrade_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          upgrade_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          repurchase_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          repurchase_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          hi_fun_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          hi_fun_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          mall_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          mall_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          pk_country,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          min_achieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          round, second, net_first_achieve, net_repurchase_achieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_a_balance, r_b_balance, r_a_sum_amount, r_b_sum_amount, r_a_sum_pv, r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_a_sum_amount, r_rep_b_sum_amount, r_rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_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
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   from ${sourceTable}) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_balance = b.a_balance,a.b_balance = b.b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_amount = b.a_sum_amount,a.b_sum_amount = b.b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_pv = b.a_sum_pv,a.b_sum_pv = b.b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_amount = b.a_sum_real_amount,a.b_sum_real_amount = b.b_sum_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_pv = b.a_sum_real_pv,a.b_sum_real_pv = b.b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_balance = b.rep_a_balance,a.rep_b_balance = b.rep_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_sum_pv = b.rep_a_sum_pv,a.rep_b_sum_pv = b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.register_amount = b.register_amount,a.register_pv = b.register_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.upgrade_amount = b.upgrade_amount,a.upgrade_pv = b.upgrade_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.repurchase_amount = b.repurchase_amount,a.repurchase_pv = b.repurchase_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.hi_fun_amount = b.hi_fun_amount,a.hi_fun_pv = b.hi_fun_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.mall_amount = b.mall_amount,a.mall_pv = b.mall_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.min_achieve = b.min_achieve,a.round = b.round,a.second = b.second,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.net_first_achieve = b.net_first_achieve,a.net_repurchase_achieve = b.net_repurchase_achieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_balance = b.r_a_balance,a.r_b_balance = b.r_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_amount = b.r_a_sum_amount,a.r_b_sum_amount = b.r_b_sum_amount,a.r_a_sum_pv = b.r_a_sum_pv,a.r_b_sum_pv = b.r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_amount = b.r_rep_a_sum_amount,a.r_rep_b_sum_amount = b.r_rep_b_sum_amount,a.r_rep_a_sum_pv = b.r_rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_b_sum_pv = b.r_rep_b_sum_pv,a.r_a_sum_real_amount = b.r_a_sum_real_amount,a.r_b_sum_real_amount = b.r_b_sum_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_pv = b.r_a_sum_real_pv,a.r_b_sum_real_pv = b.r_b_sum_real_pv,a.r_rep_a_balance = b.r_rep_a_balance,a.r_rep_b_balance = b.r_rep_b_balance
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberSettleAchieveBySpecialBus" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (select cl.pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 1 then ca.a_sum_real_pv + a_sum_real_modify_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 2 then ca.a_sum_real_pv - a_sum_real_modify_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               else a_sum_real_modify_pv end)                                                                                                                              a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 1 then ca.b_sum_real_pv + b_sum_real_modify_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 2 then ca.b_sum_real_pv - b_sum_real_modify_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               else b_sum_real_modify_pv end)                                                                                                                              b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type when 1 then ca.a_sum_pv + a_first_modify_pv when 2 then ca.a_sum_pv - a_first_modify_pv else a_first_modify_pv end)                    a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type when 1 then ca.b_sum_pv + b_first_modify_pv when 2 then ca.b_sum_pv - b_first_modify_pv else b_first_modify_pv end)                    b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 1 then ca.a_balance + rep_a_first_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 2 then ca.a_balance - rep_a_first_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               else rep_a_first_modify_balance end)                                                                                                                        a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 1 then ca.b_balance + rep_b_first_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 2 then ca.b_balance - rep_b_first_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               else rep_b_first_modify_balance end)                                                                                                                        b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type when 1 then ca.rep_a_sum_pv + rep_a_modify_sum_pv when 2 then ca.rep_a_sum_pv - rep_a_modify_sum_pv else rep_a_modify_sum_pv end)      rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type when 1 then ca.rep_b_sum_pv + rep_b_modify_sum_pv when 2 then ca.rep_b_sum_pv - rep_b_modify_sum_pv else rep_b_modify_sum_pv end)      rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 1 then ca.rep_a_balance + rep_a_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               when 2 then ca.rep_a_balance - rep_a_modify_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                               else rep_a_modify_balance end)                                                                                                                              rep_a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case infusing_water_type when 1 then ca.rep_b_balance + rep_b_modify_balance when 2 then ca.rep_b_balance - rep_b_modify_balance else rep_b_modify_balance end) rep_b_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   from cu_member_achieve_log cl
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            left join ${targetTable} ca
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                      on cl.pk_member = ca.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   where cl.period = #{period}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     and approve_status = 5
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     and cl.pk_id = #{pkId}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   order by cl.pk_member, cl.creation_time) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set a.a_sum_real_pv = b.a_sum_real_pv, a.b_sum_real_pv = b.b_sum_real_pv,a.a_sum_pv = b.a_sum_pv,a.b_sum_pv = b.b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_balance = b.a_balance,a.b_balance = b.b_balance,a.rep_a_sum_pv = b.rep_a_sum_pv,a.rep_b_sum_pv = b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_balance = b.rep_a_balance,a.rep_b_balance = b.rep_b_balance
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberSettleAchieveByDueDate" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${currentTableName} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                select ct.pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       r_rep_b_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                from ${yesTableName} ct
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         inner join cu_member_achieve_log cl
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                    on ct.pk_member = cl.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                where cl.due_date = #{currentDate, jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set a.r_a_balance = b.r_a_balance,a.r_b_balance = b.r_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_pv = b.r_a_sum_pv,a.r_b_sum_pv = b.r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_pv = b.r_a_sum_real_pv,a.r_b_sum_real_pv = b.r_b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_pv = b.r_rep_a_sum_pv,a.r_rep_b_sum_pv = b.r_rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_balance = b.r_rep_a_balance,a.r_rep_b_balance = b.r_rep_b_balance
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    <update  id= "mergeCuMemberAchieveBySettleDate" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTableName} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                select #{period}       period,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       nvl(pk_rate, 0) 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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       register_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       upgrade_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       repurchase_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       hi_fun_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       mall_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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       pk_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                from ${sourceTableName}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            ) b
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member and a.period = b.period)
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            WHEN MATCHED THEN
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set a.pk_rate = b.pk_rate,a.a_balance = b.a_balance,a.b_balance = b.b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_amount = b.a_sum_amount,a.b_sum_amount = b.b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_pv = b.a_sum_pv,a.b_sum_pv = b.b_sum_pv,a.a_new_amount = b.a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.b_new_amount = b.b_new_amount,a.a_new_pv = b.a_new_pv,a.b_new_pv = b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_amount = b.a_sum_real_amount,a.b_sum_real_amount = b.b_sum_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_pv = b.a_sum_real_pv,a.b_sum_real_pv = b.b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_balance = b.rep_a_balance,a.rep_b_balance = b.rep_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_new_amount = b.rep_a_new_amount,a.rep_b_new_amount = b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_new_pv = b.rep_a_new_pv,a.rep_b_new_pv = b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_sum_amount = b.rep_a_sum_amount,a.rep_b_sum_amount = b.rep_b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_sum_pv = b.rep_a_sum_pv,a.rep_b_sum_pv = b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.register_amount = b.register_amount,a.register_pv = b.register_pv,a.register_new_amount = b.register_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.register_new_pv = b.register_new_pv,a.upgrade_amount = b.upgrade_amount,a.upgrade_pv = b.upgrade_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.upgrade_new_amount = b.upgrade_new_amount,a.upgrade_new_pv = b.upgrade_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.repurchase_amount = b.repurchase_amount,a.repurchase_pv = b.repurchase_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.repurchase_new_amount = b.repurchase_new_amount,a.repurchase_new_pv = b.repurchase_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.hi_fun_amount = b.hi_fun_amount,a.hi_fun_pv = b.hi_fun_pv,a.hi_fun_new_amount = b.hi_fun_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.hi_fun_new_pv = b.hi_fun_new_pv,a.mall_amount = b.mall_amount,a.mall_pv = b.mall_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.mall_new_amount = b.mall_new_amount,a.mall_new_pv = b.mall_new_pv,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    a.register_blo_new_pv = b.register_blo_new_pv,a.upgrade_blo_new_pv = b.upgrade_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.repurchase_blo_new_pv = b.repurchase_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.hi_fun_blo_new_pv = b.hi_fun_blo_new_pv,a.mall_blo_new_pv = b.mall_blo_new_pv,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								                    a.r_a_balance = b.r_a_balance,a.r_b_balance = b.r_b_balance,a.r_a_sum_amount = b.r_a_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_b_sum_amount = b.r_b_sum_amount,a.r_a_sum_pv = b.r_a_sum_pv,a.r_b_sum_pv = b.r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_amount = b.r_a_sum_real_amount,a.r_b_sum_real_amount = b.r_b_sum_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_pv = b.r_a_sum_real_pv,a.r_b_sum_real_pv = b.r_b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_balance = b.r_rep_a_balance,a.r_rep_b_balance = b.r_rep_b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_amount = b.r_rep_a_sum_amount,a.r_rep_b_sum_amount = b.r_rep_b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_pv = b.r_rep_a_sum_pv,a.r_rep_b_sum_pv = b.r_rep_b_sum_pv,a.pk_country = b.pk_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            WHEN NOT MATCHED THEN
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                insert (period, pk_member, 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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        register_blo_new_pv, upgrade_blo_new_pv, repurchase_blo_new_pv, hi_fun_blo_new_pv, mall_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, pk_country)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    values (b.period, b.pk_member, b.pk_rate, b.a_balance, b.b_balance, b.a_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.b_sum_amount, b.a_sum_pv, b.b_sum_pv, b.a_new_amount, b.b_new_amount, b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.b_new_pv, b.a_sum_real_amount, b.b_sum_real_amount, b.a_sum_real_pv, b.b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.rep_a_balance, b.rep_b_balance, b.rep_a_new_amount, b.rep_b_new_amount, b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.rep_b_new_pv, b.rep_a_sum_amount, b.rep_b_sum_amount, b.rep_a_sum_pv, b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.register_amount, b.register_pv, b.register_new_amount, b.register_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.upgrade_amount, b.upgrade_pv, b.upgrade_new_amount, b.upgrade_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.repurchase_amount, b.repurchase_pv, b.repurchase_new_amount, b.repurchase_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.hi_fun_amount, b.hi_fun_pv, b.hi_fun_new_amount, b.hi_fun_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.mall_amount, b.mall_pv, b.mall_new_amount, b.mall_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.register_blo_new_pv, b.upgrade_blo_new_pv, b.repurchase_blo_new_pv, b.hi_fun_blo_new_pv, b.mall_blo_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.r_a_balance, b.r_b_balance, b.r_a_sum_amount, b.r_b_sum_amount, b.r_a_sum_pv, b.r_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.r_a_sum_real_amount, b.r_b_sum_real_amount, b.r_a_sum_real_pv, b.r_b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.r_rep_a_balance, b.r_rep_b_balance, b.r_rep_a_sum_amount, b.r_rep_b_sum_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.r_rep_a_sum_pv, b.r_rep_b_sum_pv, b.pk_country)
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberSettleInitAchieve" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        update ${targetTableName} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set a.a_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_sum_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_sum_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_sum_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_sum_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_sum_real_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_sum_real_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.a_sum_real_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.b_sum_real_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_a_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_b_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_a_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_b_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_a_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_b_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_a_sum_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_b_sum_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_a_sum_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.rep_b_sum_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.register_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.register_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.register_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.register_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.upgrade_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.upgrade_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.upgrade_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.upgrade_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.repurchase_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.repurchase_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.repurchase_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.repurchase_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.hi_fun_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.hi_fun_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.hi_fun_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.hi_fun_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.mall_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.mall_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.mall_new_amount=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.mall_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.register_blo_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.upgrade_blo_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.repurchase_blo_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.hi_fun_blo_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.mall_blo_new_pv=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.net_first_achieve=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.net_repurchase_achieve=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.min_achieve=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.round=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.second=1,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_a_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_b_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_a_sum_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_b_sum_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_a_sum_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_b_sum_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_a_sum_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_b_sum_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_a_sum_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_b_sum_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_a_sum_real_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_b_sum_real_amount = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_a_sum_real_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_b_sum_real_pv = 0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_a_balance=0,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a.r_rep_b_balance=0
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberAchieve" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${tableName} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (select #{period} period, a.*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   from (select user_id                                pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_REG_AMOUNT) / 6.4    REGISTER_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_REG_PV) / 6.4        REGISTER_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_UP_AMOUNT) / 6.4     UPGRADE_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_UP_PV) / 6.4         UPGRADE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_REPUR_AMOUNT) / 6.4  REPURCHASE_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MAIN_REPURCHASE_PV) / 6.4 REPURCHASE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_SEA2_REG_AMOUNT) / 6.4    HI_FUN_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_SEA2_REG_PV) / 6.4        HI_FUN_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MALL_AMOUNT) / 6.4        MALL_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                sum(CURR_DAY_MALL_PV) / 6.4            MALL_PV
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         from G_MEMBER_ACHIV@link_test
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         where period between - 729 and #{period}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         group by user_id) a) b on
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								                (a.pk_member = b.pk_member and a.period = b.period)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then update set a.REGISTER_AMOUNT = b.REGISTER_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                a.REGISTER_PV = b.REGISTER_PV, a.UPGRADE_AMOUNT = b.UPGRADE_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                a.UPGRADE_PV = b.UPGRADE_PV, a.REPURCHASE_AMOUNT = b.REPURCHASE_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                a.REPURCHASE_PV = b.REPURCHASE_PV, a.HI_FUN_AMOUNT = b.HI_FUN_AMOUNT,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                a.HI_FUN_PV = b.HI_FUN_PV, a.MALL_AMOUNT = b.MALL_AMOUNT, a.MALL_PV = b.MALL_PV
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "createCuMemberMonthTable" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create table ${tableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            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,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_team_code      NUMBER(20),
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_center_code    NUMBER(20),
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_vertex         NUMBER(20) default 1,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            pk_settle_country NUMBER(4) not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a_sum_pv          NUMBER(17,6) default 0 not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            b_sum_pv          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_pv       NUMBER(17,6) default 0 not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            upgrade_pv        NUMBER(17,6) default 0 not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            repurchase_pv     NUMBER(17,6) default 0 not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            hi_fun_pv         NUMBER(17,6) default 0 not null,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            mall_pv           NUMBER(17,6) default 0 not null
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "mergeCuMemberMonth" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into cu_member_month${date} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                select a.*,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.b_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.REGISTER_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.UPGRADE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.REPURCHASE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.HI_FUN_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       b.MALL_PV
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         select 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_tree${date} ct
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         where period = #{period}) a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    select pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                           sum(A_NEW_PV + REP_A_NEW_PV) A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                           sum(b_NEW_PV + REP_B_NEW_PV) 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_achieve${date}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								                    group by pk_member) b
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                                   on a.pk_member = b.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    a.pk_parent = b.pk_parent,a.pk_place_parent = b.pk_place_parent,a.place_dept = b.place_dept,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.member_code = b.member_code,a.member_name = b.member_name,a.customer_type = b.customer_type,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.phone = b.phone,a.pk_grade = b.pk_grade,a.pk_awards = b.pk_awards,a.pk_team_code = b.pk_team_code,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.pk_center_code = b.pk_center_code,a.pk_vertex = b.pk_vertex,a.pk_settle_country = b.pk_settle_country,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.A_SUM_PV = b.A_SUM_PV,a.b_SUM_PV = b.b_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.REGISTER_PV = b.REGISTER_PV,a.UPGRADE_PV = b.UPGRADE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.REPURCHASE_PV = b.REPURCHASE_PV,a.HI_FUN_PV = b.HI_FUN_PV,a.MALL_PV = b.MALL_PV
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            WHEN NOT MATCHED THEN
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                insert (pk_member, pk_parent, pk_place_parent, place_dept, member_code,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        member_name, customer_type, phone, pk_grade, pk_awards, pk_team_code,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        pk_center_code, pk_vertex, pk_settle_country, a_sum_pv, b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        register_pv, upgrade_pv, repurchase_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        hi_fun_pv, mall_pv)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    values (b.pk_member, b.pk_parent, b.pk_place_parent, b.place_dept, b.member_code,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.member_name, b.customer_type, b.phone, b.pk_grade, b.pk_awards, b.pk_team_code,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.pk_center_code, b.pk_vertex, b.pk_settle_country, b.a_sum_pv, b.b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.register_pv, b.upgrade_pv, b.repurchase_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            b.hi_fun_pv, b.mall_pv)
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "chargeBackSaOrder" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                select pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       max(a.pk_rate)                               pk_rate,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(a_new_amount / bc.out_exchange_rate)     a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(a_new_pv)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                                    a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(b_new_amount / bc.out_exchange_rate)     b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(b_new_pv)                                b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(rep_a_new_amount / bc.out_exchange_rate) rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(rep_b_new_amount / bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                                    rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(rep_a_new_pv)                            rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(rep_b_new_pv)                            rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(a_new_real_amount / bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                                    a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(a_new_real_pv)                           a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(b_new_real_amount / bc.out_exchange_rate)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                                    b_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       sum(b_new_real_pv)                           b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         select pk_place_parent                                                     pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                #{achieve.pkRate}                                                   pk_rate,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.newAmount} else 0 end)     a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.newPv} else 0 end)         a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.repNewAmount} else 0 end)  rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.repNewPv} else 0 end)      rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.newRealAmount} else 0 end) a_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 1 then #{achieve.newRealPv} else 0 end)     a_new_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.newAmount} else 0 end)     b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.newPv} else 0 end)         b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.repNewAmount} else 0 end)  rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.repNewPv} else 0 end)      rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.newRealAmount} else 0 end) b_new_real_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                (case when place_dept = 2 then #{achieve.newRealPv} else 0 end)     b_new_real_pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  select pk_place_parent, place_dept
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                           select *
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                           from (select *
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                 from ${sourceTable}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                 where period = #{period}) start with pk_member = #{achieve.pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                           connect by pk_member = prior pk_place_parent
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  where nvl(pk_place_parent, 0) !=0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     ) a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                         inner join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                    on a.pk_rate = bc.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                group by pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_amount = a.a_sum_amount - b.a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.b_sum_amount = a.b_sum_amount - b.b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_pv = a.a_sum_pv - b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.b_sum_pv = a.b_sum_pv - b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_sum_amount = a.rep_a_sum_amount - b.rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_b_sum_amount = a.rep_b_sum_amount - b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_sum_pv = a.rep_a_sum_pv - b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_b_sum_pv = a.rep_b_sum_pv - b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_amount = a.a_sum_real_amount - b.a_new_amount - b.rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.b_sum_real_amount = a.b_sum_real_amount - b.b_new_amount - b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_sum_real_pv = a.a_sum_real_pv - b.a_new_pv - b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.b_sum_real_pv = a.b_sum_real_pv - b.b_new_pv - b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_amount = a.r_a_sum_amount - b.a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_b_sum_amount = a.r_b_sum_amount - b.b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_pv = a.r_a_sum_pv - b.a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_b_sum_pv = a.r_b_sum_pv - b.b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_amount = a.r_rep_a_sum_amount - b.rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_b_sum_amount = a.r_rep_b_sum_amount - b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_a_sum_pv = a.r_rep_a_sum_pv - b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_rep_b_sum_pv = a.r_rep_b_sum_pv - b.rep_b_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_amount = a.r_a_sum_real_amount - b.a_new_amount - b.rep_a_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_b_sum_real_amount = a.r_b_sum_real_amount - b.b_new_amount - b.rep_b_new_amount,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_a_sum_real_pv = a.r_a_sum_real_pv - b.a_new_pv - b.rep_a_new_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.r_b_sum_real_pv = a.r_b_sum_real_pv - b.b_new_pv - b.rep_b_new_pv
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberNetAchieve" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${tableName} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "updMemberAchieveExtList"  item= "achieve"  open= " "  separator= " union "  close= " " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select #{achieve.pkMember} pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            #{achieve.aSumRealPv} a_sum_real_pv,#{achieve.bSumRealPv} b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            #{achieve.repANewPv} rep_a_sum_pv,#{achieve.repBNewPv} rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            #{achieve.netFirstAchieve} net_first_achieve,#{achieve.netRepurchaseAchieve} net_repurchase_achieve
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            from dual
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        update set
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_sum_real_pv=a.a_sum_real_pv+b.a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_sum_real_pv=a.b_sum_real_pv+b.b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_a_new_pv=b.rep_a_sum_pv,a.rep_b_new_pv=b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.net_first_achieve=a.net_first_achieve+b.net_first_achieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.net_repurchase_achieve=a.net_repurchase_achieve+b.net_repurchase_achieve
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    <update  id= "mergeCuMemberSettleByAchieveLogByDate" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (select a.pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.a_sum_real_pv - b.a_sum_real_pv)                                                                    a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.b_sum_real_pv - b.b_sum_real_pv)                                                                    b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.a_sum_pv - b.a_sum_pv)                                                                              a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.b_sum_pv - b.b_sum_pv)                                                                              b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case when a.a_balance - b.a_balance <  0 then 0 else a.a_balance - b.a_balance end)                 a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case when a.b_balance - b.b_balance <  0 then 0 else a.b_balance - b.b_balance end)                 b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.rep_a_sum_pv - b.rep_a_sum_pv)                                                                      rep_a_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (a.rep_b_sum_pv - b.rep_b_sum_pv)                                                                      rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case when a.rep_a_balance - b.rep_a_balance <  0 then 0 else a.rep_a_balance - b.rep_a_balance end) rep_a_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                          (case when a.rep_b_balance - b.rep_b_balance <  0 then 0 else a.rep_b_balance - b.rep_b_balance end) rep_b_balance
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   from ${targetTable} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       select pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(a_sum_real_pv) a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(B_SUM_REAL_PV) B_SUM_REAL_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(A_SUM_PV)      A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(B_SUM_PV)      B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(A_BALANCE)     A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(B_BALANCE)     B_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(REP_A_SUM_PV)  REP_A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(REP_B_SUM_PV)  REP_B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(REP_A_BALANCE) REP_A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                              sum(REP_B_BALANCE) REP_B_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       from (
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                select pk_id,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       pk_country,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then a_sum_real_modify_pv when 2 then -a_sum_real_modify_pv else a_sum_real_modify_pv - a_sum_real_pv end) a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then B_SUM_REAL_MODIFY_PV when 2 then -B_SUM_REAL_MODIFY_PV else B_SUM_REAL_MODIFY_PV - B_SUM_REAL_PV end) B_SUM_REAL_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then A_FIRST_MODIFY_PV when 2 then -A_FIRST_MODIFY_PV else A_FIRST_MODIFY_PV - A_SUM_PV end)               A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then B_FIRST_MODIFY_PV when 2 then -B_FIRST_MODIFY_PV else B_FIRST_MODIFY_PV - B_SUM_PV end)               B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            when 1 then REP_A_FIRST_MODIFY_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            when 2 then -REP_A_FIRST_MODIFY_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            else REP_A_FIRST_MODIFY_BALANCE - A_BALANCE end)                                                                                       A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            when 1 then REP_B_FIRST_MODIFY_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            when 2 then -REP_B_FIRST_MODIFY_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                            else REP_B_FIRST_MODIFY_BALANCE - B_BALANCE end)                                                                                       B_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then REP_A_MODIFY_SUM_PV when 2 then -REP_A_MODIFY_SUM_PV else REP_A_MODIFY_SUM_PV - REP_A_SUM_PV end)     REP_A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then REP_B_MODIFY_SUM_PV when 2 then -REP_B_MODIFY_SUM_PV else REP_B_MODIFY_SUM_PV - REP_B_SUM_PV end)     REP_B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then REP_A_MODIFY_BALANCE when 2 then -REP_A_MODIFY_BALANCE else REP_A_MODIFY_BALANCE - REP_A_BALANCE end) REP_A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (case infusing_water_type when 1 then REP_B_MODIFY_BALANCE when 2 then -REP_B_MODIFY_BALANCE else REP_B_MODIFY_BALANCE - REP_B_BALANCE end) REP_B_BALANCE
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                from cu_member_achieve_log
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                where creation_time >= to_date('2024-02-23', 'yyyy-mm-dd')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  and APPROVE_STATUS = 5
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  and del_flag = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  and due_date = #{settleDate,jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                            )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       group by pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   ) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                      on b.pk_member = a.pk_member) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set a.a_sum_real_pv = b.a_sum_real_pv, a.b_sum_real_pv = b.b_sum_real_pv,a.a_sum_pv = b.a_sum_pv,a.b_sum_pv = b.b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.a_balance = b.a_balance,a.b_balance = b.b_balance,a.rep_a_sum_pv = b.rep_a_sum_pv,a.rep_b_sum_pv = b.rep_b_sum_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.rep_a_balance = b.rep_a_balance,a.rep_b_balance = b.rep_b_balance
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    <update  id= "updateCuMemberExpandSettleAchieveByBeforeDay" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        merge into ${targetTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            using (select pk_member, a_balance, b_balance, min_achieve, round, second
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   from ${sourceTable}) b
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            on (a.pk_member = b.pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            when matched then
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                update set
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    a.a_balance = b.a_balance,a.b_balance = b.b_balance,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    a.min_achieve = b.min_achieve,a.round = b.round,a.second = b.second
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </update> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryCuMemberAchieveByPkMember"  resultMap= "CuMemberAchieve" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SELECT PK_MEMBER,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               PK_RATE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               B_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               A_SUM_REAL_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               B_SUM_REAL_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_A_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_B_BALANCE,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_A_NEW_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_B_NEW_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_A_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               REP_B_SUM_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               PK_COUNTRY
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        FROM ${tableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        WHERE (pk_member = #{pkMember} AND pk_country = #{pkCountry})
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryCuMemberUnderBloodAchieveByPkMember"  resultType= "java.math.BigDecimal" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        select sum(REGISTER_PV + UPGRADE_PV + REPURCHASE_PV + HI_FUN_PV + MALL_PV) pv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from ${achieveTable}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where pk_member in (
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            select pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            from ${treeTable}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            where pk_member != #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        start with pk_member = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        connect by pk_parent = prior pk_member) and period >= #{period}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectNewAddAchieve"  resultType= "com.hzs.bonus.achieve.vo.CuMemberNewAddAchieveVO" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select t.*, s.settle_date
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from (select a.period,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.a_new_pv aNewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.b_new_pv bNewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_a_new_pv repANewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a.rep_b_new_pv repBNewPv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from ${achieveTableName} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where a.pk_member = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        and a.pk_country = #{pkCountry}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "upAchieveTableName != null and upAchieveTableName != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            union all
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select up.period,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            up.a_new_pv aNewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            up.b_new_pv bNewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            up.rep_a_new_pv repANewPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            up.rep_b_new_pv repBNewPv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            from ${upAchieveTableName} up
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            where up.pk_member = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and up.pk_country = #{pkCountry}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) t,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cu_member_settle_period s
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where t.period = s.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        and s.del_flag = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        and s.settle_date >= to_date(#{startDate}, 'yyyy-mm-dd')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        and s.settle_date < = to_date(#{endDate}, 'yyyy-mm-dd')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        order by s.settle_date
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectAwardsByPkMember"  resultType= "com.hzs.bonus.achieve.vo.CuMemberAwardsUnderVO" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select s.pk_member,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               s.a_sum_real_pv aSumRealPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               s.b_sum_real_pv bSumRealPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               s.member_name   memberName,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               s.pk_awards     pkAwards
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        from ${settleTable} s
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where s.pay_status = 1
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          and s.category = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          and s.pk_country = #{pkCountry}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          and s.pk_member = #{pkMember}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectUnderMemberAwards"  resultType= "com.hzs.bonus.achieve.vo.CuMemberAwardsUnderVO" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								               a_sum_real_pv aSumRealPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               b_sum_real_pv bSumRealPv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               head_path     memberPath,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               member_name   memberName,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               pk_awards     pkAwards
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        from (select a.pk_member,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                     b.pk_awards,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     a.a_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     a.b_sum_real_pv,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     b.head_path,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                     a.member_name
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              from ${settleTable} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       inner join (select mt.pk_id,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                          mt.pk_place_parent,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                          mt.pk_awards,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                          mt.head_path
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                   from (select m.pk_id,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                m.pk_place_parent,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                m.place_dept,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                m.pk_awards,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                                m.head_path
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                         from cu_member m
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                         where m.del_flag = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                           and m.pk_settle_country = #{pkCountry}) mt
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       start
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                   with mt.pk_id =
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       (select t.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       from cu_member t
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       where t.category = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       and t.del_flag = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       and t.pk_settle_country = #{pkCountry}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       and t.pk_place_parent = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                       and t.place_dept = #{placeDept})
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                   connect by prior mt.pk_id = mt.pk_place_parent) b
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                                  on a.pk_member = b.pk_id
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              where a.pk_country = #{pkCountry}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and a.pay_status = 1
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                and a.category = 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              order by b.pk_awards desc, a.a_sum_real_pv desc) tt
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        where rownum < = 5
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectNewAddAchieveContrast"  resultType= "com.hzs.bonus.achieve.vo.CuMemberMonthAchieveContrastVO" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        select sum(a.a_new_pv + a.rep_a_new_pv) / 10000 aNewPv, sum(a.b_new_pv + a.rep_b_new_pv) / 10000 bNewPv
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from ${achieveTable} a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where a.pk_member = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          and a.pk_country = #{pkCountry}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectExistTable"  resultType= "Integer" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        select count(1)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from user_tables t
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where t.table_name = upper('${achieveTable}')
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "selectByParent"  resultType= "decimal" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select sum(a.REGISTER_PV) registerPv
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        from ${achieveTable} a
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        where
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a.pk_country = #{pkCountry}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        <if  test= "memberIds != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and a.PK_MEMBER in
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            <foreach  item= "pkMember"  collection= "memberIds"  open= "("  separator= ","  close= ")" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        group by a.PK_MEMBER
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        order by registerPv desc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryMemberMonthAchieve"  resultType= "com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select * from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "monthList"  item= "item"  separator= " union " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select ${item} month,bc.out_exchange_rate,cm.pk_settle_country,member_name,bg.pk_transaction pk_grade,ba.pk_transaction pk_awards,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            cm.A_SUM_PV,cm.B_SUM_PV,cm.REP_A_SUM_PV,cm.REP_B_SUM_PV,nvl((a.REGISTER_PV+a.UPGRADE_PV), 0) firstAchieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            nvl((a.REPURCHASE_PV+a.HI_FUN_PV+a.MALL_PV), 0) repurchaseAchieve from cu_member_month${item} cm
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select #{pkMember} pk_member,sum(REGISTER_PV) REGISTER_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(UPGRADE_PV) UPGRADE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(REPURCHASE_PV) REPURCHASE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(HI_FUN_PV) HI_FUN_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(MALL_PV) MALL_PV from cu_member_month${item}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            start with pk_parent = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            connect by pk_parent = prior pk_member)a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on cm.pk_member = a.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_grade bg
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on bg.pk_id=cm.pk_grade
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_awards ba
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on ba.pk_id=cm.pk_awards
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on bc.pk_country = cm.pk_settle_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> )
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        order by month desc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryMemberMonthAchieveDetail"  resultType= "com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select * from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "memberList"  item= "item"  separator= " union " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select bc.out_exchange_rate,cm.pk_settle_country,cm.member_code,member_name,bg.pk_transaction pk_grade,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            cm.pk_grade grade,ba.pk_transaction pk_awards,cm.pk_awards awards,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            cm.A_SUM_PV,cm.B_SUM_PV,cm.REP_A_SUM_PV,cm.REP_B_SUM_PV,(a.REGISTER_PV+a.UPGRADE_PV) firstAchieve,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            (a.REPURCHASE_PV+a.HI_FUN_PV+a.MALL_PV) repurchaseAchieve from cu_member_month${monthAchieveParam.month} cm
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select #{item} pk_member,sum(REGISTER_PV) REGISTER_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(UPGRADE_PV) UPGRADE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(REPURCHASE_PV) REPURCHASE_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(HI_FUN_PV) HI_FUN_PV,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            sum(MALL_PV) MALL_PV from cu_member_month${monthAchieveParam.month}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            start with pk_member = #{item}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            connect by pk_parent = prior pk_member)a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on cm.pk_member = a.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_grade bg
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on bg.pk_id=cm.pk_grade
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_awards ba
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on ba.pk_id=cm.pk_awards
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            left join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            on bc.pk_country = cm.pk_settle_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ) a
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where 1=1
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "monthAchieveParam.memberCode != null and monthAchieveParam.memberCode != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and a.member_code = #{monthAchieveParam.memberCode}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "monthAchieveParam.memberName != null and monthAchieveParam.memberName != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and a.member_name = #{monthAchieveParam.memberName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "monthAchieveParam.pkGrade != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and a.grade = #{monthAchieveParam.pkGrade}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "monthAchieveParam.pkAwards != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and a.awards = #{monthAchieveParam.pkAwards}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryPkMemberMonthAchieve"  resultType= "java.lang.Long" > 
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        select pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        from cu_member_month${month}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        where pk_parent = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryPlaceParentMemberMonthAchieve"  resultType= "com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select so.pk_member,so.order_type,cm.member_code,cm.member_name,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        so.order_achieve,bc.out_exchange_rate,bg.pk_transaction pk_grade,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cm.pk_grade grade,ba.pk_transaction pk_awards,cm.pk_awards awards,cm.pk_settle_country from sa_order so
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,member_code,member_name,PK_GRADE,PK_AWARDS,pk_settle_country from cu_member_month${month}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        start with pk_place_parent = #{pkMember} and place_dept=#{placeDept}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        connect by pk_place_parent = prior pk_member) cm
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on so.pk_member=cm.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_grade bg
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on bg.pk_id=cm.pk_grade
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_awards ba
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on ba.pk_id=cm.pk_awards
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on bc.pk_country = cm.pk_settle_country
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where so.del_flag=0 and so.order_status=1 and so.pay_time >= #{startDate, jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        and so.pay_time <  #{endDate, jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "memberCode != null and memberCode != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.member_code = #{memberCode}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "memberName != null and memberName != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.member_name = #{memberName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "pk_grade != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.PK_GRADE = #{pk_grade}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "pk_awards != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.PK_AWARDS = #{pk_awards}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        order by so.creation_time desc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryParentMemberMonthAchieve"  resultType= "com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select so.pk_member,so.order_type,cm.member_code,cm.member_name,
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        so.order_achieve,bc.out_exchange_rate,bg.pk_transaction pk_grade,
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cm.pk_grade grade,ba.pk_transaction pk_awards,cm.pk_awards awards,cm.pk_settle_country from sa_order so
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        inner join(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,member_code,member_name,PK_GRADE,PK_AWARDS,pk_settle_country from cu_member_month${month}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        start with pk_parent = #{pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        connect by pk_parent = prior pk_member) cm
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on so.pk_member=cm.pk_member
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_grade bg
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on bg.pk_id=cm.pk_grade
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_awards ba
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on ba.pk_id=cm.pk_awards
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        left join bd_currency bc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        on bc.pk_country = cm.pk_settle_country
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        where so.del_flag=0 and so.order_status=1 and so.pay_time >= #{startDate, jdbcType=DATE}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-25 10:57:48 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        and so.pay_time <  #{endDate, jdbcType=DATE}
							 
						 
					
						
							
								
									
										
										
										
											2025-03-23 08:39:16 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        <if  test= "memberCode != null and memberCode != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.member_code = #{memberCode}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "memberName != null and memberName != ''" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.member_name = #{memberName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "pk_grade != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.PK_GRADE = #{pk_grade}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <if  test= "pk_awards != null" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and cm.PK_AWARDS = #{pk_awards}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </if> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        order by so.creation_time desc
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryCuMemberMonthAchieveByMemberIdList"  resultMap= "CuMemberAchieve" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        select pk_member,pk_country,register_blo_new_pv,upgrade_blo_new_pv,repurchase_blo_new_pv from ${settleTableName}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        where pk_member in
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "memberSwingNetExtList"  item= "item"  open= "("  close= ")"  separator= "," > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            #{item.pkSourceMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryEnergyEnoughCondition"  resultMap= "CuMemberAchieve" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "cuMemberSettleExtList"  item= "item"  separator= " union " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select #{item.pkMember} pk_member,register_pv from(
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select (nvl(sum(register_pv),0) +nvl(sum(UPGRADE_PV),0)) register_pv from ${settleTable}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            start with pk_parent=#{item.pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            connect by pk_parent=prior pk_member)
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    <select  id= "queryEnergyEnoughSaOrderCondition" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            resultType="com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt">
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        <foreach  collection= "cuMemberSettleExtList"  item= "item"  separator= " union " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            select pk_creator pk_member,sum(order_achieve) register_pv from sa_order where order_status=1 and del_flag=0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and pay_time >=#{startDate, jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and pay_time <  #{endDate, jdbcType=DATE}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            and order_type =1 and pk_creator=#{item.pkMember}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            group by pk_creator
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        </foreach> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    </select> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</mapper>