1419 lines
		
	
	
		
			59 KiB
		
	
	
	
		
			XML
		
	
	
	
		
		
			
		
	
	
			1419 lines
		
	
	
		
			59 KiB
		
	
	
	
		
			XML
		
	
	
	
|  | <?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.member.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"/> | ||
|  |         <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"/> | ||
|  |         <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> | ||
|  | 
 | ||
|  |     <select id="queryCuMemberAchieveByPkMember" resultMap="CuMemberAchieve"> | ||
|  |         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 | ||
|  |         FROM ${tableName} | ||
|  |         WHERE (pk_member = #{pkMember} AND pk_country = #{pkCountry}) | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <select id="selectNewAddAchieve" resultType="com.hzs.member.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.member.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 | ||
|  |         from ${settleTable} s | ||
|  |         where s.pay_status = 1 | ||
|  |           and s.category = 0 | ||
|  |           and s.pk_country = #{pkCountry} | ||
|  |           and s.pk_member = #{pkMember} | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectBalanceByPkMember" resultType="com.hzs.member.achieve.vo.CuMemberAwardsUnderVO"> | ||
|  |         SELECT ms.pk_member                  pkMember, | ||
|  |                ms.a_balance                  aBalance, | ||
|  |                ms.b_balance                  bBalance, | ||
|  |                ms.a_sum_pv                   aSumPv, | ||
|  |                ms.b_sum_pv                   bSumPv, | ||
|  |                ms.a_new_pv + ms.rep_a_new_pv aNewPv, | ||
|  |                ms.b_new_pv + ms.rep_b_new_pv bNewPv, | ||
|  |                CASE | ||
|  |                    WHEN ms.a_balance > ms.b_balance THEN | ||
|  |                        2 | ||
|  |                    WHEN ms.a_balance < ms.b_balance THEN | ||
|  |                        1 | ||
|  |                    ELSE | ||
|  |                        3 | ||
|  |                    END                       placeDept | ||
|  |         FROM ${settleTable} ms | ||
|  |         WHERE ms.pay_status = 1 | ||
|  |           AND ms.category = 0 | ||
|  |           AND ms.pk_country = #{pkCountry} | ||
|  |           AND ms.pk_member = #{pkMember} | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectMemberSmallAchieve" resultType="com.hzs.member.achieve.vo.CuMemberAwardsUnderVO"> | ||
|  |         SELECT SUM(t1.asumpv)                        asumpv, | ||
|  |                SUM(t1.bsumpv)                        bsumpv, | ||
|  |                LEAST(SUM(t1.asumpv), SUM(t1.bsumpv)) smallPv | ||
|  |         FROM (SELECT mm.a_sum_pv + mm.rep_a_sum_pv aSumPv, | ||
|  |                      mm.b_sum_pv + mm.rep_b_sum_pv bSumPv | ||
|  |               FROM ${cuMemberMonthTable} mm | ||
|  |               WHERE mm.pk_member = #{pkMember} | ||
|  |               UNION ALL | ||
|  |               SELECT NVL(SUM(so.order_achieve), 0) aSumPv, 0 | ||
|  |               FROM sa_order so | ||
|  |               WHERE so.del_flag = 0 | ||
|  |                 AND so.order_status = 1 | ||
|  |                 AND so.pay_time >= TRUNC(SYSDATE) | ||
|  |                 AND so.pk_member IN | ||
|  |                     (SELECT t0.pk_id | ||
|  |                      FROM (SELECT m.pk_id, | ||
|  |                                   m.del_flag, | ||
|  |                                   m.category, | ||
|  |                                   m.pk_country, | ||
|  |                                   m.pay_status | ||
|  |                            FROM cu_member m | ||
|  |                                START | ||
|  |                            WITH m.pk_place_parent = #{pkMember} | ||
|  |                                AND m.place_dept = 1 | ||
|  |                            CONNECT BY PRIOR m.pk_id = m.pk_place_parent) t0 | ||
|  |                      WHERE t0.del_flag = 0 | ||
|  |                        AND t0.category = 0 | ||
|  |                        AND t0.pay_status = 1 | ||
|  |                        AND t0.pk_country = 1) | ||
|  |               UNION ALL | ||
|  |               SELECT 0, NVL(SUM(so.order_achieve), 0) bSumPv | ||
|  |               FROM sa_order so | ||
|  |               WHERE so.del_flag = 0 | ||
|  |                 AND so.order_status = 1 | ||
|  |                 AND so.pay_time >= TRUNC(SYSDATE) | ||
|  |                 AND so.pk_member IN | ||
|  |                     (SELECT t0.pk_id | ||
|  |                      FROM (SELECT m.pk_id, | ||
|  |                                   m.del_flag, | ||
|  |                                   m.category, | ||
|  |                                   m.pk_country, | ||
|  |                                   m.pay_status | ||
|  |                            FROM cu_member m | ||
|  |                                START | ||
|  |                            WITH m.pk_place_parent = #{pkMember} | ||
|  |                                AND m.place_dept = 2 | ||
|  |                            CONNECT BY PRIOR m.pk_id = m.pk_place_parent) t0 | ||
|  |                      WHERE t0.del_flag = 0 | ||
|  |                        AND t0.category = 0 | ||
|  |                        AND t0.pay_status = 1 | ||
|  |                        AND t0.pk_country = 1)) t1 | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectUnderMemberAwards" resultType="com.hzs.member.achieve.vo.CuMemberAwardsUnderVO"> | ||
|  |         SELECT pk_member, | ||
|  |                a_sum_real_pv aSumRealPv, | ||
|  |                b_sum_real_pv bSumRealPv, | ||
|  |                head_path     memberPath, | ||
|  |                member_name   memberName, | ||
|  |                pk_awards     pkAwards, | ||
|  |                service_code  serviceCode, | ||
|  |                pk_vertex     pkVertex, | ||
|  |                nick_name     nickName | ||
|  |         FROM (SELECT a.pk_member, | ||
|  |                      b.pk_awards, | ||
|  |                      a.a_sum_real_pv, | ||
|  |                      a.b_sum_real_pv, | ||
|  |                      b.head_path, | ||
|  |                      a.member_name, | ||
|  |                      b.pk_vertex, | ||
|  |                      b.service_code, | ||
|  |                      b.nick_name | ||
|  |               FROM ${settleTable} a | ||
|  |                        INNER JOIN (SELECT mt.pk_id, | ||
|  |                                           mt.pk_place_parent, | ||
|  |                                           mt.pk_awards, | ||
|  |                                           mt.head_path, | ||
|  |                                           mt.service_code, | ||
|  |                                           mt.pk_vertex, | ||
|  |                                           mt.nick_name | ||
|  |                                    FROM (SELECT m.pk_id, | ||
|  |                                                 m.pk_place_parent, | ||
|  |                                                 m.place_dept, | ||
|  |                                                 m.pk_awards, | ||
|  |                                                 m.head_path, | ||
|  |                                                 m.nick_name, | ||
|  |                                                 m.service_code, | ||
|  |                                                 m.pk_vertex | ||
|  |                                          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.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 | ||
|  |         WHERE rownum <= 5 | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectNewAddAchieveContrast" resultType="com.hzs.member.achieve.vo.CuMemberMonthAchieveContrastVO"> | ||
|  |         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} | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <select id="selectExistTable" resultType="Integer"> | ||
|  |         select count(1) | ||
|  |         from user_tables t | ||
|  |         where t.table_name = upper('${achieveTable}') | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--查询左右区新增业绩--> | ||
|  |     <select id="selectNewABAchieve" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select sum(leftAchieve) as leftAchieve, | ||
|  |         sum(rightAchieve) as rightAchieve | ||
|  |         from (select a.period, | ||
|  |         a.a_new_pv as leftAchieve, | ||
|  |         a.b_new_pv as rightAchieve | ||
|  |         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 as leftAchieve, | ||
|  |             up.b_new_pv as rightAchieve | ||
|  |             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') | ||
|  | 
 | ||
|  |     </select> | ||
|  |     <!--    查询左右区血缘业绩--> | ||
|  |     <select id="selectABDirectAchieve" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select 1 placeDept, sum(pv) directAchieve | ||
|  |         from ( | ||
|  |                  select pk_member, | ||
|  |                         pk_parent, | ||
|  |                         (REGISTER_PV + UPGRADE_PV + REPURCHASE_PV) AS pv | ||
|  |                  from ${achieveTableName} start with pk_place_parent=#{pkMember} and place_dept=1 | ||
|  |                  connect by pk_place_parent= prior pk_member | ||
|  |              ) start with pk_parent=#{pkMember} | ||
|  |         connect by pk_parent= prior pk_member | ||
|  |         union all | ||
|  |         select 2 placeDept, sum(pv) directAchieve | ||
|  |         from (select pk_member, | ||
|  |                      pk_parent, | ||
|  |                      (REGISTER_PV + UPGRADE_PV + REPURCHASE_PV) AS pv | ||
|  |               from ${achieveTableName} start with pk_place_parent=#{pkMember} and place_dept=2 | ||
|  |               connect by pk_place_parent= prior pk_member) start with pk_parent=#{pkMember} | ||
|  |         connect by pk_parent= prior pk_member | ||
|  |     </select> | ||
|  |     <!--    月度业绩-左右区人数详情(最新) --> | ||
|  |     <select id="placeNewAddAchieveDetails" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select cm.MEMBER_CODE memberCode, | ||
|  |         cm.MEMBER_NAME memberName, | ||
|  |         cm.SERVICE_CODE serviceCode, | ||
|  |         cm.nick_name nickName, | ||
|  |         cm.pk_vertex pkVertex, | ||
|  |         so.ORDER_AMOUNT orderAmount, | ||
|  |         so.ORDER_ACHIEVE orderAchieve, | ||
|  |         so.ORDER_TYPE orderType, | ||
|  |         bg.PK_TRANSACTION pkRegisterGrade, | ||
|  |         cm.CREATION_TIME creationTime | ||
|  |         from ( | ||
|  |         SELECT | ||
|  |         PK_ID, | ||
|  |         MEMBER_CODE, | ||
|  |         MEMBER_NAME, | ||
|  |         PK_REGISTER_GRADE, | ||
|  |         CREATION_TIME, | ||
|  |         DEL_FLAG, | ||
|  |         CUSTOMER_TYPE, | ||
|  |         SERVICE_CODE, | ||
|  |         pk_vertex, | ||
|  |         nick_name | ||
|  |         FROM | ||
|  |         ( | ||
|  |         SELECT pk_id,MEMBER_CODE,MEMBER_NAME,PK_REGISTER_GRADE,CREATION_TIME,DEL_FLAG,CUSTOMER_TYPE,SERVICE_CODE,nick_name,pk_vertex | ||
|  |         FROM cu_member WHERE del_flag = 0 | ||
|  |         START WITH pk_id = (select cm.pk_id from cu_member cm | ||
|  |         where cm.pk_place_parent = #{pkMember} | ||
|  |         and cm.place_dept = #{placeDept} | ||
|  |         and cm.del_flag = 0) | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_id | ||
|  |         ) | ||
|  |         ) cm | ||
|  |         LEFT JOIN SA_ORDER so on so.PK_MEMBER=cm.PK_ID | ||
|  |         LEFT JOIN BD_GRADE bg on cm.PK_REGISTER_GRADE=bg.pk_id | ||
|  |         where | ||
|  |         so.DEL_FLAG=0 | ||
|  |         and so.ORDER_STATUS=1 | ||
|  |         and cm.DEL_FLAG=0 | ||
|  |         and bg.DEL_FLAG=0 | ||
|  |         <if test="pkCountry != null"> | ||
|  |             and so.PK_COUNTRY = #{pkCountry} | ||
|  |         </if> | ||
|  |         <if test="pkRegisterGrade != null"> | ||
|  |             and cm.PK_REGISTER_GRADE = #{pkRegisterGrade} | ||
|  |         </if> | ||
|  |         <if test="memberCode != null and memberCode != ''"> | ||
|  |             and ( | ||
|  |             cm.member_code like #{memberCode} || '%' | ||
|  |             or cm.SERVICE_CODE like #{memberCode} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and ( | ||
|  |             cm.member_name like #{memberName} || '%' | ||
|  |             or cm.nick_name like #{memberName} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="startDate != null and startDate !='' "> | ||
|  |             and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') | ||
|  |         </if> | ||
|  |         <if test="endDate != null and endDate !='' "> | ||
|  |             and so.PAY_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') | ||
|  |         </if> | ||
|  |         <if test="orderTypeList != null and orderTypeList.size > 0 "> | ||
|  |             and so.ORDER_TYPE in | ||
|  |             <foreach collection="orderTypeList" item="item" open="(" close=")" separator=","> | ||
|  |                 #{item} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         ORDER BY cm.CREATION_TIME DESC | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    月度业绩-左右区人数详情(历史) --> | ||
|  |     <select id="placeNewAddAchieveHistoryDetails" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select cm.MEMBER_CODE memberCode, | ||
|  |         cm.MEMBER_NAME memberName, | ||
|  |         so.ORDER_AMOUNT orderAmount, | ||
|  |         so.ORDER_ACHIEVE orderAchieve, | ||
|  |         so.ORDER_TYPE orderType, | ||
|  |         bg.PK_TRANSACTION pkRegisterGrade, | ||
|  |         cm.CREATION_TIME creationTime, | ||
|  |         cm.SERVICE_CODE serviceCode, | ||
|  |         cm.pk_vertex pkVertex, | ||
|  |         cm.nick_name nickName | ||
|  |         from ( | ||
|  |         SELECT | ||
|  |         cm.PK_ID, | ||
|  |         cm.MEMBER_CODE, | ||
|  |         cm.MEMBER_NAME, | ||
|  |         cm.PK_REGISTER_GRADE, | ||
|  |         cm.CREATION_TIME, | ||
|  |         cm.SERVICE_CODE, | ||
|  |         cm.pk_vertex, | ||
|  |         cm.nick_name | ||
|  |         FROM | ||
|  |         ( | ||
|  |         SELECT pk_member FROM ${achieveTableName} | ||
|  |         START WITH pk_member = (select pk_member from ${achieveTableName} cm | ||
|  |         where cm.pk_place_parent = #{pkMember} and cm.place_dept = #{placeDept} | ||
|  |         )CONNECT BY pk_place_parent = PRIOR pk_member | ||
|  |         )cms | ||
|  |         INNER JOIN cu_member cm on cms.pk_member=cm.pk_id | ||
|  |         ) cm | ||
|  |         LEFT JOIN SA_ORDER so on so.PK_MEMBER=cm.PK_ID | ||
|  |         LEFT JOIN BD_GRADE bg on cm.PK_REGISTER_GRADE=bg.pk_id | ||
|  |         where | ||
|  |         so.DEL_FLAG=0 | ||
|  |         and so.ORDER_STATUS=1 | ||
|  |         and bg.DEL_FLAG=0 | ||
|  |         <if test="pkCountry != null"> | ||
|  |             and so.PK_COUNTRY = #{pkCountry} | ||
|  |         </if> | ||
|  |         <if test="pkRegisterGrade != null"> | ||
|  |             and cm.PK_REGISTER_GRADE = #{pkRegisterGrade} | ||
|  |         </if> | ||
|  |         <if test="memberCode != null and memberCode != ''"> | ||
|  |             and ( | ||
|  |             cm.member_code like #{memberCode} || '%' | ||
|  |             or cm.SERVICE_CODE like #{memberCode} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and ( | ||
|  |             cm.member_name like #{memberName} || '%' | ||
|  |             or cm.nick_name like #{memberName} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="startDate != null and startDate !='' "> | ||
|  |             and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') | ||
|  |         </if> | ||
|  |         <if test="endDate != null and endDate !='' "> | ||
|  |             and so.PAY_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') | ||
|  |         </if> | ||
|  |         <if test="orderTypeList != null and orderTypeList.size > 0 "> | ||
|  |             and so.ORDER_TYPE in | ||
|  |             <foreach collection="orderTypeList" item="item" open="(" close=")" separator=","> | ||
|  |                 #{item} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         ORDER BY cm.CREATION_TIME DESC | ||
|  | 
 | ||
|  |     </select> | ||
|  |     <!--    查询左右区业绩详情--> | ||
|  |     <select id="leftRightAchieveDetails" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select cm.MEMBER_CODE memberCode, | ||
|  |         cm.MEMBER_NAME memberName, | ||
|  |         cm.SERVICE_CODE serviceCode, | ||
|  |         cm.NICK_NAME nickName, | ||
|  |         cm.pk_vertex pkVertex, | ||
|  |         so.ORDER_AMOUNT orderAmount, | ||
|  |         so.ORDER_ACHIEVE orderAchieve, | ||
|  |         so.ORDER_TYPE orderType, | ||
|  |         bg.PK_TRANSACTION pkRegisterGrade, | ||
|  |         so.PAY_TIME creationTime | ||
|  |         from ( | ||
|  |         select cm.PK_ID, | ||
|  |         cm.MEMBER_CODE, | ||
|  |         cm.MEMBER_NAME, | ||
|  |         cm.PK_REGISTER_GRADE, | ||
|  |         cm.SERVICE_CODE, | ||
|  |         cm.pk_vertex, | ||
|  |         cm.NICK_NAME | ||
|  |         from( | ||
|  |         select PK_MEMBER,place_dept,PK_PLACE_PARENT | ||
|  |         from ( | ||
|  |         select PK_MEMBER,place_dept,PK_PLACE_PARENT from ${achieveTableName} | ||
|  |         where PERIOd= #{period} | ||
|  |         ) cmt START WITH cmt.pk_place_parent =#{pkMember} and cmt.place_dept =#{placeDept} | ||
|  |         CONNECT BY cmt.pk_place_parent = PRIOR cmt.pk_member | ||
|  |         ) cmt INNER JOIN CU_MEMBER cm on cm.PK_ID=cmt.PK_MEMBER and cm.DEL_FLAG=0 and cm.CUSTOMER_TYPE=0 | ||
|  |         ) cm | ||
|  |         LEFT JOIN SA_ORDER so on so.PK_MEMBER=cm.PK_ID | ||
|  |         LEFT JOIN BD_GRADE bg on cm.PK_REGISTER_GRADE=bg.pk_id | ||
|  |         where | ||
|  |         so.DEL_FLAG=0 | ||
|  |         and so.ORDER_STATUS=1 | ||
|  |         and bg.DEL_FLAG=0 | ||
|  |         <if test="pkCountry != null"> | ||
|  |             and so.PK_COUNTRY = #{pkCountry} | ||
|  |         </if> | ||
|  |         <if test="pkRegisterGrade != null"> | ||
|  |             and cm.PK_REGISTER_GRADE = #{pkRegisterGrade} | ||
|  |         </if> | ||
|  |         <if test="memberCode != null and memberCode != ''"> | ||
|  |             and ( | ||
|  |             cm.member_code like #{memberCode} || '%' | ||
|  |             or cm.SERVICE_CODE like #{memberCode} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and ( | ||
|  |             cm.member_name like #{memberName} || '%' | ||
|  |             or cm.nick_name like #{memberName} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="startDate != null and startDate !='' "> | ||
|  |             and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') | ||
|  |         </if> | ||
|  |         <if test="endDate != null and endDate !='' "> | ||
|  |             and so.PAY_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') | ||
|  |         </if> | ||
|  |         <if test="orderTypeList != null and orderTypeList.size > 0 "> | ||
|  |             and so.ORDER_TYPE in | ||
|  |             <foreach collection="orderTypeList" item="item" open="(" close=")" separator=","> | ||
|  |                 #{item} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         ORDER BY so.ORDER_TYPE DESC | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    查询左右区血缘业绩详情--> | ||
|  |     <select id="leftRightDirectAchieveDetails" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select cm.MEMBER_CODE memberCode, | ||
|  |         cm.MEMBER_NAME memberName, | ||
|  |         cm.SERVICE_CODE serviceCode, | ||
|  |         cm.NICK_NAME nickName, | ||
|  |         cm.pk_vertex pkVertex, | ||
|  |         so.ORDER_AMOUNT orderAmount, | ||
|  |         so.ORDER_ACHIEVE orderAchieve, | ||
|  |         so.ORDER_TYPE orderType, | ||
|  |         bg.PK_TRANSACTION pkRegisterGrade, | ||
|  |         so.PAY_TIME creationTime | ||
|  |         from ( | ||
|  |         SELECT | ||
|  |         pk_member | ||
|  |         FROM | ||
|  |         ( | ||
|  |         SELECT | ||
|  |         pk_member, | ||
|  |         pk_parent | ||
|  |         FROM | ||
|  |         ${achieveTableName} START WITH pk_place_parent =#{pkMember} | ||
|  |         AND place_dept = #{placeDept} CONNECT BY pk_place_parent = PRIOR pk_member | ||
|  |         ) START WITH pk_parent =#{pkMember} CONNECT BY pk_parent = PRIOR pk_member | ||
|  |         ) cmm | ||
|  |         INNER JOIN CU_MEMBER cm on cm.PK_ID=cmm.PK_MEMBER | ||
|  |         LEFT JOIN SA_ORDER so on so.PK_MEMBER=cm.PK_ID | ||
|  |         LEFT JOIN BD_GRADE bg on cm.PK_REGISTER_GRADE=bg.pk_id | ||
|  |         where | ||
|  |         so.DEL_FLAG=0 | ||
|  |         and so.ORDER_STATUS=1 | ||
|  |         and cm.DEL_FLAG=0 | ||
|  |         and cm.CUSTOMER_TYPE=0 | ||
|  |         and bg.DEL_FLAG=0 | ||
|  |         <if test="pkCountry != null"> | ||
|  |             and so.PK_COUNTRY = #{pkCountry} | ||
|  |         </if> | ||
|  |         <if test="pkRegisterGrade != null"> | ||
|  |             and cm.PK_REGISTER_GRADE = #{pkRegisterGrade} | ||
|  |         </if> | ||
|  |         <if test="memberCode != null and memberCode != ''"> | ||
|  |             and ( | ||
|  |             cm.member_code like #{memberCode} || '%' | ||
|  |             or cm.SERVICE_CODE like #{memberCode} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and ( | ||
|  |             cm.member_name like #{memberName} || '%' | ||
|  |             or cm.nick_name like #{memberName} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="startDate != null and startDate !='' "> | ||
|  |             and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') | ||
|  |         </if> | ||
|  |         <if test="endDate != null and endDate !='' "> | ||
|  |             and so.PAY_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') | ||
|  |         </if> | ||
|  |         <if test="orderTypeList != null and orderTypeList.size > 0 "> | ||
|  |             and so.ORDER_TYPE in | ||
|  |             <foreach collection="orderTypeList" item="item" open="(" close=")" separator=","> | ||
|  |                 #{item} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         ORDER BY so.ORDER_TYPE DESC | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--月度业绩-查询血缘业绩详情--> | ||
|  |     <select id="directAchieveDetails" | ||
|  |             parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select cm.MEMBER_CODE memberCode, | ||
|  |         cm.MEMBER_NAME memberName, | ||
|  |         cm.SERVICE_CODE serviceCode, | ||
|  |         cm.NICK_NAME nickName, | ||
|  |         cm.pk_vertex pkVertex, | ||
|  |         so.ORDER_AMOUNT orderAmount, | ||
|  |         so.ORDER_ACHIEVE orderAchieve, | ||
|  |         so.ORDER_TYPE orderType, | ||
|  |         bg.PK_TRANSACTION pkRegisterGrade, | ||
|  |         so.PAY_TIME creationTime | ||
|  |         from ( | ||
|  |         SELECT | ||
|  |         pk_member | ||
|  |         FROM | ||
|  |         ( | ||
|  |         SELECT | ||
|  |         pk_member, | ||
|  |         pk_parent | ||
|  |         FROM | ||
|  |         ${achieveTableName} START WITH pk_place_parent =#{pkMember} | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_member | ||
|  |         ) START WITH pk_parent =#{pkMember} CONNECT BY pk_parent = PRIOR pk_member | ||
|  |         ) cmm | ||
|  |         INNER JOIN CU_MEMBER cm on cm.PK_ID=cmm.PK_MEMBER | ||
|  |         LEFT JOIN SA_ORDER so on so.PK_MEMBER=cm.PK_ID | ||
|  |         LEFT JOIN BD_GRADE bg on cm.PK_REGISTER_GRADE=bg.pk_id | ||
|  |         where | ||
|  |         so.DEL_FLAG=0 | ||
|  |         and so.ORDER_STATUS=1 | ||
|  |         and cm.DEL_FLAG=0 | ||
|  |         and cm.CUSTOMER_TYPE=0 | ||
|  |         and bg.DEL_FLAG=0 | ||
|  |         <if test="pkCountry != null"> | ||
|  |             and so.PK_COUNTRY = #{pkCountry} | ||
|  |         </if> | ||
|  |         <if test="pkRegisterGrade != null"> | ||
|  |             and cm.PK_REGISTER_GRADE = #{pkRegisterGrade} | ||
|  |         </if> | ||
|  |         <if test="memberCode != null and memberCode != ''"> | ||
|  |             and ( | ||
|  |             cm.member_code like #{memberCode} || '%' | ||
|  |             or cm.SERVICE_CODE like #{memberCode} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and ( | ||
|  |             cm.member_name like #{memberName} || '%' | ||
|  |             or cm.nick_name like #{memberName} || '%' | ||
|  |             ) | ||
|  |         </if> | ||
|  |         <if test="startDate != null and startDate !='' "> | ||
|  |             and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') | ||
|  |         </if> | ||
|  |         <if test="endDate != null and endDate !='' "> | ||
|  |             and so.PAY_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') | ||
|  |         </if> | ||
|  |         <if test="orderTypeList != null and orderTypeList.size > 0 "> | ||
|  |             and so.ORDER_TYPE in | ||
|  |             <foreach collection="orderTypeList" item="item" open="(" close=")" separator=","> | ||
|  |                 #{item} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         ORDER BY so.PAY_TIME DESC | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <!--    查询历史左右区人数--> | ||
|  |     <select id="selectABCoun" parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         SELECT 1 placeDept, COUNT(1) memberCount | ||
|  |         FROM ${achieveTableName} START WITH pk_member = (select pk_member from ${achieveTableName} cm | ||
|  |             where cm.pk_place_parent = #{pkMember} and cm.place_dept = 1 | ||
|  |             ) | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_member | ||
|  |         UNION | ||
|  |         SELECT 2 placeDept, COUNT(1) memberCount | ||
|  |         FROM ${achieveTableName} START WITH pk_member = (select pk_member from ${achieveTableName} cm | ||
|  |             where cm.pk_place_parent = #{pkMember} and cm.place_dept = 2 | ||
|  |             ) | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_member | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    查询最新月份左右区人数--> | ||
|  |     <select id="selectABNewMonthCoun" parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         SELECT 1 placeDept, COUNT(1) memberCount | ||
|  |         FROM cu_member | ||
|  |         WHERE del_flag = 0 | ||
|  |             START | ||
|  |         WITH pk_id = (select cm.pk_id from cu_member cm | ||
|  |             where cm.pk_place_parent = #{pkMember} | ||
|  |             and cm.place_dept = 1 | ||
|  |             and cm.del_flag = 0) | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_id | ||
|  |         UNION | ||
|  |         SELECT 2 placeDept, COUNT(1) memberCount | ||
|  |         FROM cu_member | ||
|  |         WHERE del_flag = 0 | ||
|  |             START | ||
|  |         WITH pk_id = (select cm.pk_id from cu_member cm | ||
|  |             where cm.pk_place_parent = #{pkMember} | ||
|  |             and cm.place_dept = 2 | ||
|  |             and cm.del_flag = 0) | ||
|  |         CONNECT BY pk_place_parent = PRIOR pk_id | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--查询直推业绩--> | ||
|  |     <select id="selectParentAchieve" parameterType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO"> | ||
|  |         select (sum(REGISTER_PV) + sum(UPGRADE_PV) + sum(REPURCHASE_PV)) AS directAchieve | ||
|  |         from ${achieveTableName} start with pk_parent=#{pkMember} | ||
|  |         connect by pk_parent = prior pk_member | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    查询各个等级直推人数和业绩(推荐伞下)--> | ||
|  |     <select id="selectParentCounAchieve" parameterType="com.hzs.member.achieve.controller.vo.ParentAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.ParentAchieveVO"> | ||
|  |         WITH temp AS | ||
|  |                  (SELECT a.period, | ||
|  |                          a.REGISTER_PV + a.UPGRADE_PV + a.REPURCHASE_PV + a.HI_FUN_PV + | ||
|  |                          a.MALL_PV AS achieve, | ||
|  |                          a.pk_member | ||
|  |                   FROM ${achieveTableName} a | ||
|  |                   WHERE a.period = #{period}), | ||
|  |              tree AS | ||
|  |                  (SELECT t.pk_member, t.pk_grade, t.pk_parent | ||
|  |                   FROM ${treeTableNameEnd} t | ||
|  |                            INNER JOIN cu_member_settle_period s | ||
|  |                                       ON t.period = s.pk_id | ||
|  |                   WHERE s.del_flag = 0 | ||
|  |                     AND t.period = #{period}), | ||
|  |              result AS | ||
|  |                  (SELECT tt.PK_GRADE     AS pkGrade, | ||
|  |                          SUM(tt.achieve) AS achieve, | ||
|  |                          COUNT(0)        AS peopleNumber | ||
|  |                   FROM (SELECT aup.achieve, t.PK_GRADE | ||
|  |                         FROM temp aup | ||
|  |                                  INNER JOIN tree t | ||
|  |                                             ON aup.pk_member = t.pk_member | ||
|  |                             START | ||
|  |                         WITH t.pk_member = #{pkMember} | ||
|  |                         CONNECT BY t.pk_parent = PRIOR t.pk_member) tt | ||
|  |                   GROUP BY tt.PK_GRADE) | ||
|  |         SELECT tt.achieve, | ||
|  |                tt.pkGrade, | ||
|  |                tt.peopleNumber, | ||
|  |                bg.PK_TRANSACTION AS pkGradeKey, | ||
|  |                bg.color, | ||
|  |                bg.GRADE_VALUE    AS gradeValue | ||
|  |         FROM result tt | ||
|  |                  LEFT JOIN BD_GRADE bg | ||
|  |                            ON tt.pkGrade = bg.pk_id | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    查询本人直推业绩--> | ||
|  |     <select id="selfParentCounAchieve" parameterType="com.hzs.member.achieve.controller.vo.ParentAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.ParentAchieveVO"> | ||
|  |         select tt.achieve, tt.pk_grade pkGrade, bg.PK_TRANSACTION as pkGradeKey, bg.color, bg.GRADE_VALUE as gradeValue | ||
|  |         from ( | ||
|  |                  select tt.* | ||
|  |                  from ( | ||
|  |                           select pk_grade, (sum(REGISTER_PV) + sum(UPGRADE_PV) + sum(REPURCHASE_PV)) achieve | ||
|  |                           from ${achieveTableMonth} start with pk_member=#{pkMember} | ||
|  |                           connect by pk_parent = prior pk_member | ||
|  |                           group by pk_grade) tt | ||
|  |              ) tt | ||
|  |                  left join BD_GRADE bg on tt.pk_grade = bg.pk_id | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--    查询前10直推业绩--> | ||
|  |     <select id="parentCounAchieveTop" parameterType="com.hzs.member.achieve.controller.vo.ParentAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.ParentAchieveVO"> | ||
|  |         select * | ||
|  |         from ( | ||
|  |                  select cm.MEMBER_NAME memberName, | ||
|  |                         cm.NICK_NAME   nickName, | ||
|  |                         cm.PK_VERTEX   pkVertex, | ||
|  |                         cma.PK_MEMBER  pkMember, | ||
|  |                         cma.achieve    achieve | ||
|  |                  from CU_MEMBER cm | ||
|  |                           INNER JOIN( | ||
|  |                      SELECT a.pk_member, | ||
|  |                             b.achieve | ||
|  |                      FROM (SELECT pk_member, PK_GRADE FROM ${treeTableNameEnd} WHERE pk_parent = #{pkMember} AND period = #{period}) a | ||
|  |                               INNER JOIN (SELECT pk_member, sum(REGISTER_BLO_NEW_PV) + sum(UPGRADE_BLO_NEW_PV) + sum(REPURCHASE_BLO_NEW_PV) achieve | ||
|  |                                           FROM ${achieveTableName} | ||
|  |                                           GROUP BY pk_member) b ON a.pk_member = b.pk_member | ||
|  |                      ORDER BY b.achieve DESC | ||
|  |                  ) cma on cma.PK_MEMBER = cm.PK_ID | ||
|  |              ) | ||
|  |         WHERE ROWNUM <= 10 | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <!--直推业绩前十人伞下等级业绩--> | ||
|  |     <select id="umbrellaAchieveTop" parameterType="com.hzs.member.achieve.controller.vo.ParentAchieveVO" | ||
|  |             resultType="com.hzs.member.achieve.controller.vo.ParentAchieveVO"> | ||
|  |         SELECT tt.achieve, tt.PK_GRADE, bg.PK_TRANSACTION AS pkGradeKey, bg.color,pkMember,bg.GRADE_VALUE as gradeValue FROM ( | ||
|  |         <if test="pkMember != null"> | ||
|  |             select #{pkMember} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember2 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember2} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember2} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember3 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember3} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember3} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember4 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember4} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember4} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember5 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember5} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember5} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember6 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember6} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember6} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember7 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember7} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember7} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember8 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember8} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember8} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember9 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember9} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember9} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         <if test="pkMember10 != null"> | ||
|  |             UNION | ||
|  |             select #{pkMember10} pkMember,a.* from( | ||
|  |             select pk_grade,(sum(REGISTER_PV)+sum(UPGRADE_PV)+sum(REPURCHASE_PV)) achieve from ${achieveTableMonth} | ||
|  |             start with pk_member=#{pkMember10} | ||
|  |             connect by pk_parent = prior pk_member | ||
|  |             group by pk_grade) a | ||
|  |         </if> | ||
|  |         ) tt | ||
|  |         inner JOIN BD_GRADE bg | ||
|  |         ON bg.pk_id = tt.PK_GRADE | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectPlacementDataList" resultType="com.hzs.member.settlecenter.vo.PlacementDataBaseVO"> | ||
|  |         select * | ||
|  |         from (select * | ||
|  |         from (select t.member_code memberCode, | ||
|  |         t.member_name memberName, | ||
|  |         a.pk_transaction pkAwards, | ||
|  |         t.pk_settle_country settleCountry, | ||
|  |         v.vertex_name vertexName, | ||
|  |         t.pk_vertex, | ||
|  |         mt.team_name teamName, | ||
|  |         t.pk_team_code, | ||
|  |         t.period, | ||
|  |         a.pk_id, | ||
|  |         a.awards_value, | ||
|  |         p.settle_date, | ||
|  |         t.pk_member, | ||
|  |         t.pk_place_parent | ||
|  |         from ${memberTableName} t | ||
|  |         left join bd_awards a | ||
|  |         on t.pk_awards = a.pk_id | ||
|  |         and a.del_flag = 0 | ||
|  |         left join bd_vertex v | ||
|  |         on t.pk_vertex = v.pk_id | ||
|  |         and v.del_flag = 0 | ||
|  |         left join cu_member_team mt | ||
|  |         on mt.pk_id = t.pk_team_code | ||
|  |         and mt.del_flag = 0 | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = t.period | ||
|  |         and p.del_flag = 0 | ||
|  |         where t.pay_status = 1 | ||
|  |         and t.category = 0 | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and t.member_name like '%' || #{memberName} || '%' | ||
|  |         </if> | ||
|  |         <if test="pkSettleCountry != null"> | ||
|  |             and t.pk_settle_country = #{pkSettleCountry} | ||
|  |         </if> | ||
|  |         <if test="pkVertexList != null"> | ||
|  |             and t.pk_vertex in | ||
|  |             <foreach item="pkVertex" collection="pkVertexList" open="(" separator="," close=")"> | ||
|  |                 #{pkVertex} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         <if test="pkTeamCodeList != null"> | ||
|  |             and t.pk_team_code in | ||
|  |             <foreach item="pkTeamCode" collection="pkTeamCodeList" open="(" separator="," close=")"> | ||
|  |                 #{pkTeamCode} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) tt | ||
|  |         where 1=1 | ||
|  |         <if test="pkAwards != null and pkAwards != ''"> | ||
|  |             and tt.pk_id = #{pkAwards} | ||
|  |         </if> | ||
|  |         start with tt.pk_member = #{pkMember} | ||
|  |         connect by prior tt.pk_member = tt.pk_place_parent) cm, | ||
|  | 
 | ||
|  |         (select ma.a_sum_pv aSumPv, | ||
|  |         ma.b_sum_pv bSumPv, | ||
|  |         ma.a_sum_amount aSumAmount, | ||
|  |         ma.b_sum_amount bSumAmount, | ||
|  |         ma.a_balance aBalance, | ||
|  |         ma.b_balance bBalance, | ||
|  |         ma.rep_a_sum_pv repASumPv, | ||
|  |         ma.rep_b_sum_pv repBSumPv, | ||
|  |         ma.rep_a_sum_amount repASumAmount, | ||
|  |         ma.rep_b_sum_amount repBSumAmount, | ||
|  |         ma.rep_a_balance repABalance, | ||
|  |         ma.rep_b_balance repBBalance, | ||
|  |         ma.a_sum_real_pv aSumRealPv, | ||
|  |         ma.b_sum_real_pv bSumRealPv, | ||
|  |         ma.pk_rate pkRate, | ||
|  |         ma.pk_member pkMember | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) a | ||
|  |         where cm.pk_member = a.pkMember | ||
|  | 
 | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectAchieveByPkMember" resultType="com.hzs.member.settlecenter.vo.PlacementDataBaseVO"> | ||
|  |         select ma.a_sum_pv aSumPv, | ||
|  |         ma.b_sum_pv bSumPv, | ||
|  |         ma.a_sum_amount aSumAmount, | ||
|  |         ma.b_sum_amount bSumAmount, | ||
|  |         ma.a_balance aBalance, | ||
|  |         ma.b_balance bBalance, | ||
|  |         ma.rep_a_sum_pv repASumPv, | ||
|  |         ma.rep_b_sum_pv repBSumPv, | ||
|  |         ma.rep_a_sum_amount repASumAmount, | ||
|  |         ma.rep_b_sum_amount repBSumAmount, | ||
|  |         ma.rep_a_balance repABalance, | ||
|  |         ma.rep_b_balance repBBalance, | ||
|  |         ma.a_sum_real_pv aSumRealPv, | ||
|  |         ma.b_sum_real_pv bSumRealPv, | ||
|  |         ma.pk_rate pkRate, | ||
|  |         ma.pk_member pkMember | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd') | ||
|  |         and ma.pk_member in | ||
|  |         <foreach item="pkMember" collection="pkMembers" open="(" separator="," close=")"> | ||
|  |             #{pkMember} | ||
|  |         </foreach> | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectRecommendDataList" resultType="com.hzs.member.settlecenter.vo.RecommendDataBaseVO"> | ||
|  |         select memberCode, | ||
|  |         memberName, | ||
|  |         pkAwards, | ||
|  |         awardsValue, | ||
|  |         settleCountry, | ||
|  |         vertexName, | ||
|  |         pkVertex, | ||
|  |         teamName, | ||
|  |         cm.pkMember, | ||
|  |         pkParent, | ||
|  |         realAchieve, | ||
|  |         realAmount, | ||
|  |         firstAchieve, | ||
|  |         firstAmount, | ||
|  |         repeatAchieve, | ||
|  |         repeatAmount, | ||
|  |         hiFunAchieve, | ||
|  |         hiFunAmount, | ||
|  |         pkRate | ||
|  |         from (select tt.*, level l | ||
|  |         from (select t.member_code memberCode, | ||
|  |         t.member_name memberName, | ||
|  |         a.pk_transaction pkAwards, | ||
|  |         a.pk_id, | ||
|  |         a.awards_value awardsValue, | ||
|  |         t.pk_settle_country settleCountry, | ||
|  |         v.vertex_name vertexName, | ||
|  |         t.pk_vertex pkVertex, | ||
|  |         mt.team_name teamName, | ||
|  |         t.pk_team_code, | ||
|  |         t.period, | ||
|  |         p.settle_date, | ||
|  |         t.pk_member pkMember, | ||
|  |         t.pk_parent pkParent | ||
|  |         from ${memberTableName} t | ||
|  |         left join bd_awards a | ||
|  |         on t.pk_awards = a.pk_id | ||
|  |         and a.del_flag = 0 | ||
|  |         left join bd_vertex v | ||
|  |         on t.pk_vertex = v.pk_id | ||
|  |         and v.del_flag = 0 | ||
|  |         left join cu_member_team mt | ||
|  |         on mt.pk_id = t.pk_team_code | ||
|  |         and mt.del_flag = 0 | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = t.period | ||
|  |         and p.del_flag = 0 | ||
|  |         where t.pay_status = 1 | ||
|  |         and t.category = 0 | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) tt | ||
|  |         where 1=1 | ||
|  |         <if test="pkAwards != null and pkAwards != ''"> | ||
|  |             and tt.pk_id = #{pkAwards} | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and tt.member_name like '%' || #{memberName} || '%' | ||
|  |         </if> | ||
|  |         <if test="pkSettleCountry != null"> | ||
|  |             and tt.settleCountry = #{pkSettleCountry} | ||
|  |         </if> | ||
|  |         <if test="pkVertexList != null"> | ||
|  |             and tt.pkVertex in | ||
|  |             <foreach item="pkVertex" collection="pkVertexList" open="(" separator="," close=")"> | ||
|  |                 #{pkVertex} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         <if test="pkTeamCodeList != null"> | ||
|  |             and tt.pk_team_code in | ||
|  |             <foreach item="pkTeamCode" collection="pkTeamCodeList" open="(" separator="," close=")"> | ||
|  |                 #{pkTeamCode} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         start with tt.pkMember = #{pkMember} | ||
|  |         connect by prior tt.pkMember = tt.pkParent) cm, | ||
|  |         (select ma.register_pv + ma.upgrade_pv + ma.repurchase_pv as realAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount + repurchase_amount as realAmount, | ||
|  |         ma.register_pv + ma.upgrade_pv as firstAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount as firstAmount, | ||
|  |         ma.repurchase_pv repeatAchieve, | ||
|  |         ma.repurchase_amount repeatAmount, | ||
|  |         ma.hi_fun_pv hiFunAchieve, | ||
|  |         ma.hi_fun_amount hiFunAmount, | ||
|  |         ma.pk_rate pkRate, | ||
|  |         ma.pk_member pkMember | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) a | ||
|  |         where cm.pkMember = a.pkMember | ||
|  |         order by cm.l desc | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <select id="selectRecommendDataListByPkMember" resultType="com.hzs.member.settlecenter.vo.RecommendDataBaseVO"> | ||
|  |         select ma.register_pv + ma.upgrade_pv + ma.repurchase_pv as realAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount + repurchase_amount as realAmount, | ||
|  |         ma.register_pv + ma.upgrade_pv as firstAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount as firstAmount, | ||
|  |         ma.repurchase_pv repeatAchieve, | ||
|  |         ma.repurchase_amount repeatAmount, | ||
|  |         ma.hi_fun_pv hiFunAchieve, | ||
|  |         ma.hi_fun_amount hiFunAmount, | ||
|  |         ma.pk_rate pkRate, | ||
|  |         ma.pk_member pkMember | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd') | ||
|  |         and ma.pk_member in | ||
|  |         <foreach item="pkMember" collection="pkMembers" open="(" separator="," close=")"> | ||
|  |             #{pkMember} | ||
|  |         </foreach> | ||
|  | 
 | ||
|  |     </select> | ||
|  |     <select id="selectRecommendVertexValue" resultType="com.hzs.member.settlecenter.vo.RecommendDataDetailVO"> | ||
|  |         select sum(b.realAchieve) realAchieve, | ||
|  |         sum(b.realAmount) realAmount, | ||
|  |         sum(b.firstAchieve) firstAchieve, | ||
|  |         sum(b.firstAmount) firstAmount, | ||
|  |         sum(b.repeatAchieve) repeatAchieve, | ||
|  |         sum(b.repeatAmount) repeatAmount, | ||
|  |         sum(b.hiFunAchieve) hiFunAchieve, | ||
|  |         sum(b.hiFunAmount) hiFunAmount, | ||
|  |         a.pk_vertex pkVertex | ||
|  |         from (select t.pk_member, t.pk_vertex | ||
|  |         from ${memberTableName} t | ||
|  |         left join bd_vertex v | ||
|  |         on t.pk_vertex = v.pk_id | ||
|  |         and v.del_flag = 0 | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = t.period | ||
|  |         and p.del_flag = 0 | ||
|  |         where t.pk_settle_country = #{pkSettleCountry} | ||
|  |         and t.pay_status = 1 | ||
|  |         and t.category = 0 | ||
|  |         <if test="pkVertexList != null"> | ||
|  |             and t.pk_vertex in | ||
|  |             <foreach item="pkVertex" collection="pkVertexList" open="(" separator="," close=")"> | ||
|  |                 #{pkVertex} | ||
|  |             </foreach> | ||
|  |         </if> | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) a, | ||
|  |         (select ma.register_pv + ma.upgrade_pv + ma.repurchase_pv as realAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount + repurchase_amount as realAmount, | ||
|  |         ma.register_pv + ma.upgrade_pv as firstAchieve, | ||
|  |         ma.register_amount + ma.upgrade_amount as firstAmount, | ||
|  |         ma.repurchase_pv repeatAchieve, | ||
|  |         ma.repurchase_amount repeatAmount, | ||
|  |         ma.hi_fun_pv hiFunAchieve, | ||
|  |         ma.hi_fun_amount hiFunAmount, | ||
|  |         ma.pk_rate pkRate, | ||
|  |         ma.pk_member pkMember | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) b | ||
|  |         where a.pk_member = b.pkMember | ||
|  |         group by a.pk_vertex | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectRecommendMarketValue" resultType="com.hzs.member.settlecenter.vo.RecommendDataDetailVO"> | ||
|  |         select sum(b.realAchieve)   realAchieve, | ||
|  |                sum(b.realAmount)    realAmount, | ||
|  |                sum(b.firstAchieve)  firstAchieve, | ||
|  |                sum(b.firstAmount)   firstAmount, | ||
|  |                sum(b.repeatAchieve) repeatAchieve, | ||
|  |                sum(b.repeatAmount)  repeatAmount, | ||
|  |                sum(b.hiFunAchieve)  hiFunAchieve, | ||
|  |                sum(b.hiFunAmount)   hiFunAmount | ||
|  |         from (select t.pk_member, t.pk_vertex | ||
|  |               from ${memberTableName} t | ||
|  |                        left join cu_member_settle_period p | ||
|  |                                  on p.pk_id = t.period | ||
|  |                                      and p.del_flag = 0 | ||
|  |               where t.pk_settle_country = #{pkSettleCountry} | ||
|  |                 and t.pay_status = 1 | ||
|  |                 and t.category = 0 | ||
|  |                 and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) a, | ||
|  |              (select ma.register_pv + ma.upgrade_pv + ma.repurchase_pv          as realAchieve, | ||
|  |                      ma.register_amount + ma.upgrade_amount + repurchase_amount as realAmount, | ||
|  |                      ma.register_pv + ma.upgrade_pv                             as firstAchieve, | ||
|  |                      ma.register_amount + ma.upgrade_amount                     as firstAmount, | ||
|  |                      ma.repurchase_pv                                              repeatAchieve, | ||
|  |                      ma.repurchase_amount                                          repeatAmount, | ||
|  |                      ma.hi_fun_pv                                                  hiFunAchieve, | ||
|  |                      ma.hi_fun_amount                                              hiFunAmount, | ||
|  |                      ma.pk_rate, | ||
|  |                      ma.pk_member | ||
|  |               from ${achieveTableName} ma | ||
|  |                        left join cu_member_settle_period p | ||
|  |                                  on p.pk_id = ma.period | ||
|  |               where ma.pk_country = #{pkSettleCountry} | ||
|  |                 and p.settle_date = to_date(#{date}, 'yyyy-mm-dd')) b | ||
|  |         where a.pk_member = b.pk_member | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <select id="selectPlaceImage" resultType="com.hzs.member.settlecenter.vo.PlacementImageDataVO"> | ||
|  |         select sum(ma.a_sum_pv) leftSumAchieve, | ||
|  |         sum(ma.b_sum_pv) rightSumAchieve, | ||
|  |         sum(ma.rep_a_sum_pv) leftRegSumAchieve, | ||
|  |         sum(ma.rep_b_sum_pv) rightRegSumAchieve, | ||
|  |         sum(ma.a_sum_real_pv) leftRealSumAchieve, | ||
|  |         sum(ma.b_sum_real_pv) rightRealSumAchieve | ||
|  |         from ${achieveTableName} ma | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = ma.period | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd') | ||
|  |         and ma.pk_member in | ||
|  |         (select tt.pk_member | ||
|  |         from (select t.pk_member, t.pk_place_parent | ||
|  |         from ${memberTableName} t | ||
|  |         left join cu_member_settle_period p | ||
|  |         on p.pk_id = t.period | ||
|  |         and p.del_flag = 0 | ||
|  |         where t.pay_status = 1 | ||
|  |         and t.category = 0 | ||
|  |         and t.pk_settle_country = #{pkSettleCountry} | ||
|  |         and p.settle_date = to_date(#{date}, 'yyyy-mm-dd') | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and t.member_name like #{memberName} || '%' | ||
|  |         </if> | ||
|  |         ) tt | ||
|  |         where 1 = 1 | ||
|  |         start with tt.pk_member = #{pkMember} | ||
|  |         connect by prior tt.pk_member = tt.pk_place_parent) | ||
|  |     </select> | ||
|  | 
 | ||
|  | 
 | ||
|  |     <select id="selectRecommendVertexImage" resultType="com.hzs.member.settlecenter.vo.RecommendImageDataVO"> | ||
|  |         select sum(ma.a_sum_pv + ma.b_sum_pv)                   sumPv, | ||
|  |                sum(ma.a_sum_amount + ma.b_sum_amount)           sumAmount, | ||
|  |                sum(ma.rep_a_sum_pv + ma.rep_b_sum_pv)           repSumPv, | ||
|  |                sum(ma.rep_a_sum_amount + ma.rep_b_sum_amount)   repSumAmount, | ||
|  |                sum(ma.a_sum_real_pv + ma.b_sum_real_pv)         sumRealPv, | ||
|  |                sum(ma.a_sum_real_amount + ma.b_sum_real_amount) sumRealAmount, | ||
|  |                sum(ma.hi_fun_pv)                                hiFunPv, | ||
|  |                sum(ma.hi_fun_amount)                            hiFunAmount | ||
|  |         from ${achieveTableName} ma | ||
|  |         where ma.pk_country = #{pkSettleCountry} | ||
|  |           and ma.period = #{period} | ||
|  |           and ma.pk_member in | ||
|  |               (select tt.pk_member | ||
|  |                from (select t.pk_member, t.pk_parent | ||
|  |                      from ${memberTableName} t | ||
|  |                      where t.pay_status = 1 | ||
|  |                        and t.category = 0 | ||
|  |                        and t.pk_settle_country = #{pkSettleCountry} | ||
|  |                        and t.period = #{period}) tt | ||
|  |                where 1 = 1 | ||
|  |         start with tt.pk_member = #{pkMember} | ||
|  |         connect by prior tt.pk_member = tt.pk_parent) | ||
|  |     </select> | ||
|  | 
 | ||
|  |     <select id="selectRecommendTeamImage" resultType="com.hzs.member.settlecenter.vo.RecommendImageDataVO"> | ||
|  |         select p.pk_team_code                                   pkTeam, | ||
|  |                sum(ma.a_sum_pv + ma.b_sum_pv)                   sumPv, | ||
|  |                sum(ma.a_sum_amount + ma.b_sum_amount)           sumAmount, | ||
|  |                sum(ma.rep_a_sum_pv + ma.rep_b_sum_pv)           repSumPv, | ||
|  |                sum(ma.rep_a_sum_amount + ma.rep_b_sum_amount)   repSumAmount, | ||
|  |                sum(ma.a_sum_real_pv + ma.b_sum_real_pv)         sumRealPv, | ||
|  |                sum(ma.a_sum_real_amount + ma.b_sum_real_amount) sumRealAmount, | ||
|  |                sum(ma.hi_fun_pv)                                hiFunPv, | ||
|  |                sum(ma.hi_fun_amount)                            hiFunAmount | ||
|  |         from ${achieveTableName} ma, | ||
|  |              (select tt.pk_member, tt.pk_team_code | ||
|  |               from (select t.pk_member, t.pk_parent, t.pk_team_code | ||
|  |                     from ${memberTableName} t | ||
|  |                     where t.pay_status = 1 | ||
|  |                       and t.category = 0 | ||
|  |                       and t.pk_settle_country = #{pkSettleCountry} | ||
|  |                       and t.period = #{period}) tt | ||
|  |               where 1 = 1 | ||
|  |                   start | ||
|  |               with tt.pk_member = #{pkMember} | ||
|  |               connect by prior tt.pk_member = tt.pk_parent) p | ||
|  |         where ma.pk_member = p.pk_member | ||
|  |           and ma.pk_country = #{pkSettleCountry} | ||
|  |           and ma.period = #{period} | ||
|  |         group by p.pk_team_code | ||
|  |     </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="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, | ||
|  |         cmt.pk_vertex, | ||
|  |         cmt.nick_name, | ||
|  |         cmt.service_code | ||
|  |         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 cu_member cmt | ||
|  |         on cmt.pk_id = 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} or cmt.SERVICE_CODE = #{memberCode}) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and (cm.member_name = #{memberName} or cmt.NICK_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, | ||
|  |         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, | ||
|  |         cmt.pk_vertex, | ||
|  |         cmt.nick_name, | ||
|  |         cmt.service_code | ||
|  |         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 cu_member cmt | ||
|  |         on cmt.pk_id = 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} or cmt.SERVICE_CODE = #{memberCode}) | ||
|  |         </if> | ||
|  |         <if test="memberName != null and memberName != ''"> | ||
|  |             and (cm.member_name = #{memberName} or cmt.NICK_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> | ||
|  | </mapper> |