| 
									
										
										
										
											2025-06-10 15:45:02 +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.CuMemberRetailRangeMapper"> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <!-- 通用查询映射结果 --> | 
					
						
							|  |  |  |     <resultMap id="CuMemberRetailRangeExt" type="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         <result column="PK_COUNTRY" property="pkCountry"/> | 
					
						
							|  |  |  |         <result column="PK_MEMBER" property="pkMember"/> | 
					
						
							|  |  |  |         <result column="PK_PARENT" property="pkParent"/> | 
					
						
							|  |  |  |         <result column="MEMBER_CODE" property="memberCode"/> | 
					
						
							|  |  |  |         <result column="MEMBER_NAME" property="memberName"/> | 
					
						
							|  |  |  |         <result column="CUSTOMER_TYPE" property="customerType"/> | 
					
						
							|  |  |  |         <result column="PHONE" property="phone"/> | 
					
						
							|  |  |  |         <result column="PK_GRADE" property="pkGrade"/> | 
					
						
							|  |  |  |         <result column="PK_AWARDS" property="pkAwards"/> | 
					
						
							|  |  |  |         <result column="ACCOUNT_STATUS" property="accountStatus"/> | 
					
						
							|  |  |  |         <result column="PAY_STATUS" property="payStatus"/> | 
					
						
							|  |  |  |         <result column="PAY_TIME" property="payTime"/> | 
					
						
							|  |  |  |         <result column="CATEGORY" property="category"/> | 
					
						
							|  |  |  |         <result column="PURCHASE_STATUS" property="purchaseStatus"/> | 
					
						
							|  |  |  |         <result column="INCOME_STATUS" property="incomeStatus"/> | 
					
						
							|  |  |  |         <result column="PK_TEAM_CODE" property="pkTeamCode"/> | 
					
						
							|  |  |  |         <result column="PK_CENTER_CODE" property="pkCenterCode"/> | 
					
						
							|  |  |  |         <result column="PK_VERTEX" property="pkVertex"/> | 
					
						
							|  |  |  |         <result column="PK_SETTLE_COUNTRY" property="pkSettleCountry"/> | 
					
						
							|  |  |  |         <result column="IS_REAL_NAME" property="isRealName"/> | 
					
						
							|  |  |  |         <result column="PK_RATE" property="pkRate"/> | 
					
						
							|  |  |  |         <result column="SYSTEM_TYPE" property="systemType"/> | 
					
						
							|  |  |  |         <result column="CONSUME_BOX_NUM" property="consumeBoxNum"/> | 
					
						
							|  |  |  |         <result column="NEW_BOX_NUM" property="newBoxNum"/> | 
					
						
							|  |  |  |         <result column="TEAM_BOX_NUM" property="teamBoxNum"/> | 
					
						
							|  |  |  |         <result column="MONTH_BOX_NUM" property="monthBoxNum"/> | 
					
						
							|  |  |  |         <result column="TEAM_NEW_BOX_NUM" property="teamNewBoxNum"/> | 
					
						
							|  |  |  |         <result column="CONSUME_PV" property="consumePv"/> | 
					
						
							|  |  |  |         <result column="MONTH_CONSUME_PV" property="monthConsumePv"/> | 
					
						
							|  |  |  |         <result column="NEW_CONSUME_PV" property="newConsumePv"/> | 
					
						
							|  |  |  |         <result column="TEAM_CONSUME_AMOUNT" property="teamConsumeAmount"/> | 
					
						
							|  |  |  |         <result column="TEAM_CONSUME_PV" property="teamConsumePv"/> | 
					
						
							|  |  |  |         <result column="TEAM_MONTH_AMOUNT" property="teamMonthAmount"/> | 
					
						
							|  |  |  |         <result column="TEAM_MONTH_PV" property="teamMonthPv"/> | 
					
						
							|  |  |  |         <result column="TEAM_NEW_AMOUNT" property="teamNewAmount"/> | 
					
						
							|  |  |  |         <result column="TEAM_NEW_PV" property="teamNewPv"/> | 
					
						
							|  |  |  |         <result column="RECOMMEND_NUM" property="recommendNum"/> | 
					
						
							|  |  |  |         <result column="TEAM_NUM" property="teamNum"/> | 
					
						
							|  |  |  |         <result column="REGION_ADDRESS" property="regionAddress"/> | 
					
						
							|  |  |  |         <result column="GRADE_VALUE" property="gradeValue"/> | 
					
						
							|  |  |  |         <result column="GRADE_NAME" property="gradeName"/> | 
					
						
							|  |  |  |         <result column="AWARDS_NAME" property="awardsName"/> | 
					
						
							|  |  |  |         <result column="AWARDS_VALUE" property="awardsValue"/> | 
					
						
							|  |  |  |         <result column="SHARE_AWARDS_VALUE" property="shareAwardsValue"/> | 
					
						
							|  |  |  |         <result column="RANGE_RATIO" property="rangeRatio"/> | 
					
						
							|  |  |  |         <result column="BENEFIT_AVG_RATIO" property="benefitAvgRatio"/> | 
					
						
							|  |  |  |         <result column="BENEFIT_SHARE_RATIO" property="benefitShareRatio"/> | 
					
						
							|  |  |  |         <result column="COUNTRY_NAME" property="countryName"/> | 
					
						
							|  |  |  |         <result column="big_box_num" property="bigBoxNum"/> | 
					
						
							|  |  |  |         <result column="small_box_num" property="smallBoxNum"/> | 
					
						
							|  |  |  |         <result column="big_team_pv" property="bigTeamPv"/> | 
					
						
							|  |  |  |         <result column="small_team_pv" property="smallTeamPv"/> | 
					
						
							|  |  |  |     </resultMap> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeMemberRetailRangeInit"> | 
					
						
							|  |  |  |         update ${rangeTableName} | 
					
						
							|  |  |  |         set consume_box_num=0, | 
					
						
							|  |  |  |             new_box_num=0, | 
					
						
							|  |  |  |             team_box_num=0, | 
					
						
							|  |  |  |             month_box_num=0, | 
					
						
							|  |  |  |             team_new_box_num=0, | 
					
						
							| 
									
										
										
										
											2025-06-16 09:44:45 +08:00
										 |  |  |             pk_share_awards = (select pk_id from BD_AWARDS where awards_value = 0), | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             consume_pv=0, | 
					
						
							|  |  |  |             month_consume_pv=0, | 
					
						
							|  |  |  |             new_consume_pv=0, | 
					
						
							|  |  |  |             team_consume_amount=0, | 
					
						
							|  |  |  |             team_consume_pv=0, | 
					
						
							|  |  |  |             enable_status=1, | 
					
						
							|  |  |  |             team_month_amount=0, | 
					
						
							|  |  |  |             team_month_pv=0, | 
					
						
							|  |  |  |             team_new_amount=0, | 
					
						
							|  |  |  |             team_new_pv=0, | 
					
						
							|  |  |  |             recommend_num=0, | 
					
						
							|  |  |  |             team_num=0, | 
					
						
							| 
									
										
										
										
											2025-06-16 09:44:45 +08:00
										 |  |  |             pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20), | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             region_address=0, | 
					
						
							|  |  |  |             big_box_num=0, | 
					
						
							|  |  |  |             small_box_num=0, | 
					
						
							|  |  |  |             big_team_pv=0, | 
					
						
							|  |  |  |             small_team_pv=0 | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeMemberRetailRangeByYesterday"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |         using( | 
					
						
							|  |  |  |         select pk_member,consume_box_num,new_box_num,team_box_num,month_box_num,team_new_box_num,enable_status, | 
					
						
							|  |  |  |         consume_pv,month_consume_pv,new_consume_pv,team_consume_amount,team_consume_pv,pk_share_awards, | 
					
						
							|  |  |  |         team_month_amount,team_month_pv,team_new_amount,team_new_pv,recommend_num,team_num,pk_grade, | 
					
						
							| 
									
										
										
										
											2025-06-12 17:03:38 +08:00
										 |  |  |         big_box_num,small_box_num,big_team_pv,small_team_pv | 
					
						
							|  |  |  |         from ${yesterdayRangeTableName} | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |         ) b | 
					
						
							|  |  |  |         on (a.pk_member=b.pk_member) | 
					
						
							|  |  |  |         when matched then | 
					
						
							|  |  |  |         update set a.consume_box_num=b.consume_box_num,a.team_box_num=b.team_box_num, | 
					
						
							|  |  |  |         a.consume_pv=b.consume_pv,a.team_consume_amount=b.team_consume_amount,a.team_consume_pv=b.team_consume_pv, | 
					
						
							| 
									
										
										
										
											2025-06-12 17:03:38 +08:00
										 |  |  |         a.recommend_num=b.recommend_num,a.team_num=b.team_num,a.pk_grade=b.pk_grade, a.enable_status = b.enable_status, | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |         a.big_box_num=b.big_box_num,a.small_box_num=b.small_box_num, | 
					
						
							|  |  |  |         a.big_team_pv=b.big_team_pv,a.small_team_pv=b.small_team_pv | 
					
						
							|  |  |  |         <if test="isSameMonth == 0"> | 
					
						
							|  |  |  |             ,a.month_box_num=b.month_box_num,a.month_consume_pv=b.month_consume_pv,a.pk_share_awards=b.pk_share_awards, | 
					
						
							|  |  |  |             a.team_month_amount=b.team_month_amount,a.team_month_pv=b.team_month_pv | 
					
						
							|  |  |  |         </if> | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeCuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |         using ( | 
					
						
							|  |  |  |         <foreach collection="cuMemberRangeExtList" item="item" open=" " close=" " separator="union"> | 
					
						
							| 
									
										
										
										
											2025-06-12 14:29:05 +08:00
										 |  |  |             select #{item.pkMember} pk_member, #{item.pkAwards} pk_awards, #{item.pkGrade} pk_grade, | 
					
						
							|  |  |  |             #{item.consumeBoxNum} consume_box_num, #{item.newBoxNum} new_bosx_num, #{item.pkShareAwards} pk_share_awards, | 
					
						
							|  |  |  |             #{item.teamBoxNum} team_box_num, #{item.monthBoxNum} month_box_num, #{item.teamNewBoxNum} team_new_box_num, | 
					
						
							|  |  |  |             #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv, | 
					
						
							|  |  |  |             #{item.newConsumePv} new_consume_pv, #{item.teamConsumeAmount} team_consume_amount, | 
					
						
							|  |  |  |             #{item.teamMonthAmount} team_month_amount, #{item.teamMonthPv} team_month_pv, | 
					
						
							|  |  |  |             #{item.teamNewPv} team_new_pv, #{item.teamNewAmount} team_new_amount, | 
					
						
							|  |  |  |             #{item.teamConsumePv} team_consume_pv, #{item.newBoxNum} new_box_num, | 
					
						
							|  |  |  |             #{item.recommendNum} recommend_num, #{item.teamNum} team_num, | 
					
						
							|  |  |  |             #{item.enableStatus} enable_status | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             from dual | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |         ) b | 
					
						
							|  |  |  |         on (a.pk_member=b.pk_member) | 
					
						
							|  |  |  |         when matched then | 
					
						
							| 
									
										
										
										
											2025-06-12 14:29:05 +08:00
										 |  |  |         update set a.pk_awards = b.pk_awards, a.pk_grade = b.pk_grade, a.pk_share_awards = b.pk_share_awards, | 
					
						
							|  |  |  |         a.consume_box_num = b.consume_box_num, a.new_box_num = b.new_box_num, a.team_box_num = b.team_box_num, | 
					
						
							|  |  |  |         a.month_box_num = b.month_box_num, a.team_new_box_num = b.team_new_box_num, | 
					
						
							|  |  |  |         a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv, a.new_consume_pv = b.new_consume_pv, | 
					
						
							|  |  |  |         a.team_consume_amount = b.team_consume_amount, a.team_consume_pv = b.team_consume_pv, | 
					
						
							|  |  |  |         a.team_month_amount = b.team_month_amount, a.team_month_pv = b.team_month_pv, | 
					
						
							|  |  |  |         a.team_new_amount = b.team_new_amount, a.team_new_pv = b.team_new_pv, | 
					
						
							|  |  |  |         a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <!-- 当前网体更新极差秒接表 --> | 
					
						
							|  |  |  |     <update id="mergeMemberSecondRetailRangeByRange"> | 
					
						
							|  |  |  |         merge into ${secondRangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select a.pk_id           pk_member, | 
					
						
							|  |  |  |                        a.pk_parent, | 
					
						
							|  |  |  |                        a.pk_settle_grade pk_grade, | 
					
						
							|  |  |  |                        a.pk_awards, | 
					
						
							|  |  |  |                        a.is_activate     enable_status, | 
					
						
							|  |  |  |                        a.system_type | 
					
						
							|  |  |  |                 from (select * | 
					
						
							|  |  |  |                       from cu_member | 
					
						
							|  |  |  |                       where del_flag = 0 | 
					
						
							|  |  |  |                           start | 
					
						
							|  |  |  |                       with pk_id = #{pkMember} | 
					
						
							| 
									
										
										
										
											2025-06-12 13:28:52 +08:00
										 |  |  |                       connect by pk_id = prior pk_parent | 
					
						
							|  |  |  |                      ) a | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             ) b | 
					
						
							|  |  |  |             on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |             when not matched then | 
					
						
							|  |  |  |                 insert (pk_member, pk_parent, pk_grade, pk_awards, enable_status, system_type) | 
					
						
							|  |  |  |                     values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.enable_status, b.system_type) | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <!-- 更新极差秒接表,用昨天的结算表 --> | 
					
						
							|  |  |  |     <update id="mergeMemberSecondRetailRangeByRangeEnable"> | 
					
						
							|  |  |  |         merge into ${secondRangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select a.pk_id                 pk_member, | 
					
						
							|  |  |  |                        a.pk_parent, | 
					
						
							|  |  |  |                        a.pk_settle_grade       pk_grade, | 
					
						
							|  |  |  |                        a.pk_awards, | 
					
						
							|  |  |  |                        nvl(b.enable_status, 1) enable_status | 
					
						
							|  |  |  |                 from (select * | 
					
						
							|  |  |  |                       from cu_member | 
					
						
							|  |  |  |                       where del_flag = 0 | 
					
						
							|  |  |  |                           start | 
					
						
							|  |  |  |                       with pk_id = #{pkMember} | 
					
						
							| 
									
										
										
										
											2025-06-12 13:28:52 +08:00
										 |  |  |                       connect by pk_id = prior pk_parent | 
					
						
							|  |  |  |                      ) a | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |                          left join ${rangeTableName} b | 
					
						
							|  |  |  |                                    on a.pk_id = b.pk_member | 
					
						
							|  |  |  |                 where b.enable_status = 0 | 
					
						
							|  |  |  |             ) b | 
					
						
							|  |  |  |             on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |             when matched then | 
					
						
							|  |  |  |                 update set a.enable_status = b.enable_status, a.pk_grade = b.pk_grade | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <!-- 更新新零售极差秒接表 --> | 
					
						
							|  |  |  |     <update id="mergeCuMemberSecondRange"> | 
					
						
							|  |  |  |         merge into ${secondTableName} a | 
					
						
							|  |  |  |         using ( | 
					
						
							|  |  |  |         <foreach collection="cuMemberRangeExtList" item="item" open=" " close=" " separator="union"> | 
					
						
							|  |  |  |             select #{item.pkMember} pk_member, #{item.pkGrade} pk_grade, #{item.pkAwards} pk_awards, | 
					
						
							| 
									
										
										
										
											2025-06-12 14:29:05 +08:00
										 |  |  |             #{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv, | 
					
						
							|  |  |  |             #{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv, | 
					
						
							|  |  |  |             #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             from dual | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |         ) b | 
					
						
							|  |  |  |         on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |         when matched then | 
					
						
							|  |  |  |         update set a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, | 
					
						
							| 
									
										
										
										
											2025-06-12 14:29:05 +08:00
										 |  |  |         a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv, | 
					
						
							|  |  |  |         a.team_new_box_num = b.team_new_box_num,a.team_new_pv = b.team_new_pv, | 
					
						
							|  |  |  |         a.team_new_amount = b.team_new_amount,a.enable_status = b.enable_status | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeMemberRetailGradeByMember"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select pk_id pk_member, pk_parent, pk_settle_grade, pk_awards | 
					
						
							| 
									
										
										
										
											2025-06-11 15:39:32 +08:00
										 |  |  |                 from cu_member start with pk_id = #{pkMember} | 
					
						
							|  |  |  |                 connect by prior pk_parent = pk_id | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             ) b | 
					
						
							|  |  |  |             on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |             when matched then | 
					
						
							| 
									
										
										
										
											2025-06-11 15:39:32 +08:00
										 |  |  |                 update set a.pk_grade = b.pk_settle_grade, a.pk_awards = b.pk_awards | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeMemberRetailRegion"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select cm.pk_member, cr.county region_address | 
					
						
							|  |  |  |                 from ${rangeTableName} cm | 
					
						
							|  |  |  |                          inner join cu_member_retail_region cr | 
					
						
							|  |  |  |                                     on cr.pk_member = cm.pk_member and cr.effective = 0 and cr.del_flag = 0 | 
					
						
							|  |  |  |                 where cr.creation_time < #{settleDate,jdbcType=DATE}) b | 
					
						
							|  |  |  |             on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |             when matched then | 
					
						
							|  |  |  |                 update set a.region_address = b.region_address | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeCuMemberRetailRangeBySpecial"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select a.* | 
					
						
							|  |  |  |                 from cu_member_spe_retail a | 
					
						
							|  |  |  |                          inner join( | 
					
						
							|  |  |  |                     select member_code, max(nvl(modified_time, creation_time)) creation_time | 
					
						
							|  |  |  |                     from cu_member_spe_retail | 
					
						
							|  |  |  |                     where del_flag = 0 | 
					
						
							|  |  |  |                       and period = #{period} | 
					
						
							|  |  |  |                     group by member_code) b | 
					
						
							|  |  |  |                                    on a.member_code = b.member_code and nvl(a.modified_time, a.creation_time) = b.creation_time | 
					
						
							|  |  |  |             ) b | 
					
						
							|  |  |  |             on (a.member_code = b.member_code) | 
					
						
							|  |  |  |             when matched then | 
					
						
							|  |  |  |                 update set a.big_box_num = b.team_box_num - b.small_box_num,a.small_box_num = b.small_box_num, | 
					
						
							|  |  |  |                     a.team_box_num = a.team_box_num + b.team_box_num,a.team_consume_pv = a.team_consume_pv + b.total_team_pv, | 
					
						
							|  |  |  |                     a.team_month_pv = a.team_month_pv + b.total_team_pv, | 
					
						
							| 
									
										
										
										
											2025-06-16 09:44:45 +08:00
										 |  |  |                     a.big_team_pv = b.total_team_pv - b.small_area_pv, a.small_team_pv = b.small_area_pv | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <update id="mergeCuMemberRetailBackBoxBySpecial"> | 
					
						
							|  |  |  |         merge into ${rangeTableName} a | 
					
						
							|  |  |  |             using ( | 
					
						
							|  |  |  |                 select * | 
					
						
							|  |  |  |                 from ${beforeTableName} a | 
					
						
							|  |  |  |                          inner join( | 
					
						
							|  |  |  |                     select cr.* | 
					
						
							|  |  |  |                     from cu_member_spe_retail cr | 
					
						
							|  |  |  |                              inner join( | 
					
						
							|  |  |  |                         select member_code, max(pk_id) pk_id | 
					
						
							|  |  |  |                         from cu_member_spe_retail | 
					
						
							|  |  |  |                         where period < #{period} | 
					
						
							|  |  |  |                           and del_flag = 0 | 
					
						
							|  |  |  |                         group by member_code | 
					
						
							|  |  |  |                     ) b | 
					
						
							|  |  |  |                                        on cr.member_code = b.member_code | 
					
						
							|  |  |  |                     where cr.period = #{period} | 
					
						
							|  |  |  |                       and cr.del_flag = 0) b | 
					
						
							|  |  |  |                                    on a.member_code = b.member_code | 
					
						
							|  |  |  |             ) b | 
					
						
							|  |  |  |             on (a.pk_member = b.pk_member) | 
					
						
							|  |  |  |             when matched then | 
					
						
							|  |  |  |                 update set a.big_box_num = 0,a.small_box_num = 0, | 
					
						
							|  |  |  |                     a.team_box_num = a.team_box_num - a.big_box_num - a.small_box_num | 
					
						
							|  |  |  |     </update> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberRetailRangeParent" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         <foreach collection="saOrderExtList" item="item" close=" " open=" " separator="union"> | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             select | 
					
						
							|  |  |  |             a.pk_member, | 
					
						
							|  |  |  |             a.member_code, | 
					
						
							|  |  |  |             a.member_name, | 
					
						
							|  |  |  |             a.pk_parent, | 
					
						
							|  |  |  |             a.pk_settle_country, | 
					
						
							|  |  |  |             a.category, | 
					
						
							|  |  |  |             a.account_status, | 
					
						
							|  |  |  |             a.pk_grade, | 
					
						
							|  |  |  |             a.pk_awards, | 
					
						
							|  |  |  |             a.income_status, | 
					
						
							|  |  |  |             a.consume_pv, | 
					
						
							|  |  |  |             a.pay_time, | 
					
						
							|  |  |  |             a.pk_rate, | 
					
						
							|  |  |  |             a.system_type, | 
					
						
							|  |  |  |             a.income_status, | 
					
						
							|  |  |  |             a.pk_country, | 
					
						
							|  |  |  |             a.pk_settle_country, | 
					
						
							|  |  |  |             a.pk_share_awards, | 
					
						
							| 
									
										
										
										
											2025-06-12 20:39:15 +08:00
										 |  |  |             a.enable_status, | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             new_box_num, | 
					
						
							| 
									
										
										
										
											2025-06-16 10:09:45 +08:00
										 |  |  |             consume_box_num, | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             month_box_num, | 
					
						
							| 
									
										
										
										
											2025-06-16 10:09:45 +08:00
										 |  |  |             new_consume_pv, | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             consume_pv, | 
					
						
							|  |  |  |             month_consume_pv, | 
					
						
							| 
									
										
										
										
											2025-06-16 10:09:45 +08:00
										 |  |  |             team_box_num, | 
					
						
							|  |  |  |             team_new_box_num, | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             team_consume_amount, | 
					
						
							|  |  |  |             team_consume_pv, | 
					
						
							|  |  |  |             team_month_amount, | 
					
						
							|  |  |  |             team_month_pv, | 
					
						
							|  |  |  |             team_new_amount, | 
					
						
							|  |  |  |             team_new_pv, | 
					
						
							|  |  |  |             recommend_num, | 
					
						
							|  |  |  |             team_num, | 
					
						
							|  |  |  |             pk_grade, | 
					
						
							|  |  |  |             ba.grade_value, | 
					
						
							|  |  |  |             ba.grade_name, | 
					
						
							|  |  |  |             bw.awards_value, | 
					
						
							|  |  |  |             bw.awards_name, | 
					
						
							|  |  |  |             bwa.awards_value share_awards_value, | 
					
						
							|  |  |  |             a.big_box_num, | 
					
						
							|  |  |  |             a.small_box_num, | 
					
						
							|  |  |  |             a.big_team_pv, | 
					
						
							|  |  |  |             a.small_team_pv, | 
					
						
							|  |  |  |             bw.range_ratio, | 
					
						
							|  |  |  |             bw.benefit_avg_ratio, | 
					
						
							|  |  |  |             bw.benefit_share_ratio, | 
					
						
							|  |  |  |             br.name country_name | 
					
						
							|  |  |  |             from ( | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             select * from ${tableName} | 
					
						
							|  |  |  |             start with pk_member = #{item} | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             connect by pk_member = prior pk_parent | 
					
						
							|  |  |  |             ) a | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             inner join bd_grade ba | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             on a.pk_grade = ba.pk_id | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             inner join bd_awards bw | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             on bw.pk_id = a.pk_awards | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             left join bd_awards bwa | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |             left join bd_area br | 
					
						
							| 
									
										
										
										
											2025-06-10 20:31:14 +08:00
										 |  |  |             on br.pk_id = a.region_address and br.del_flag = 0 | 
					
						
							|  |  |  |             where ba.del_flag = 0 and bw.del_flag = 0 | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |         </foreach> | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberRetailRangeExtByParent" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select a.pk_member, | 
					
						
							|  |  |  |                a.member_code, | 
					
						
							|  |  |  |                a.member_name, | 
					
						
							|  |  |  |                a.pk_parent, | 
					
						
							|  |  |  |                a.pk_settle_country, | 
					
						
							|  |  |  |                a.category, | 
					
						
							|  |  |  |                a.account_status, | 
					
						
							|  |  |  |                a.pk_grade, | 
					
						
							|  |  |  |                a.pk_awards, | 
					
						
							|  |  |  |                a.income_status, | 
					
						
							|  |  |  |                a.consume_pv, | 
					
						
							|  |  |  |                a.pay_time, | 
					
						
							|  |  |  |                a.pk_rate, | 
					
						
							|  |  |  |                a.income_status, | 
					
						
							|  |  |  |                a.pk_country, | 
					
						
							|  |  |  |                a.pk_settle_country, | 
					
						
							|  |  |  |                a.pk_share_awards, | 
					
						
							|  |  |  |                a.big_box_num, | 
					
						
							|  |  |  |                a.small_box_num, | 
					
						
							|  |  |  |                a.big_team_pv, | 
					
						
							|  |  |  |                a.small_team_pv, | 
					
						
							|  |  |  |                a.system_type, | 
					
						
							|  |  |  |                consume_box_num, | 
					
						
							|  |  |  |                new_box_num, | 
					
						
							|  |  |  |                team_box_num, | 
					
						
							|  |  |  |                month_box_num, | 
					
						
							|  |  |  |                team_new_box_num, | 
					
						
							|  |  |  |                consume_pv, | 
					
						
							|  |  |  |                month_consume_pv, | 
					
						
							|  |  |  |                new_consume_pv, | 
					
						
							|  |  |  |                team_consume_amount, | 
					
						
							|  |  |  |                team_consume_pv, | 
					
						
							|  |  |  |                team_month_amount, | 
					
						
							|  |  |  |                team_month_pv, | 
					
						
							|  |  |  |                team_new_amount, | 
					
						
							|  |  |  |                team_new_pv, | 
					
						
							|  |  |  |                recommend_num, | 
					
						
							|  |  |  |                team_num, | 
					
						
							|  |  |  |                ba.grade_value, | 
					
						
							|  |  |  |                ba.grade_name, | 
					
						
							|  |  |  |                bw.awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                bwa.awards_value share_awards_value, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio, | 
					
						
							|  |  |  |                br.name          country_name | 
					
						
							|  |  |  |         from ${tableName} a | 
					
						
							|  |  |  |                  inner join bd_grade ba | 
					
						
							|  |  |  |                             on a.pk_grade = ba.pk_id | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = a.pk_awards | 
					
						
							|  |  |  |                  left join bd_area br | 
					
						
							|  |  |  |                            on br.pk_id = a.region_address and br.del_flag = 0 | 
					
						
							|  |  |  |                  left join bd_awards bwa | 
					
						
							|  |  |  |                            on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 | 
					
						
							|  |  |  |         where ba.del_flag = 0 | 
					
						
							|  |  |  |           and bw.del_flag = 0 | 
					
						
							|  |  |  |           and a.pk_parent = #{pkParent} | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="batchQueryMemberRetailRangeByMemberPk" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         <foreach collection="memberPkList" item="item" close=" " open=" " separator="union"> | 
					
						
							|  |  |  |             select pk_member,c.pk_parent,member_code,member_name,c.pk_awards,c.pk_grade,c.pk_rate,c.enable_status, | 
					
						
							|  |  |  |             c.income_status,c.pk_country,c.pk_settle_country,c.account_status,c.category,bwa.awards_value share_awards_value, | 
					
						
							|  |  |  |             bg.grade_value,bg.grade_name,bw.awards_value,bw.awards_name,c.pk_share_awards,c.system_type, | 
					
						
							|  |  |  |             bw.range_ratio,bw.benefit_avg_ratio,bw.benefit_share_ratio from ( | 
					
						
							|  |  |  |             select * from ${rangeTableName} | 
					
						
							|  |  |  |             start with pk_member = #{item} | 
					
						
							|  |  |  |             connect by pk_member = prior pk_parent | 
					
						
							|  |  |  |             ) c | 
					
						
							|  |  |  |             inner join bd_grade bg | 
					
						
							|  |  |  |             on c.pk_grade = bg.pk_id | 
					
						
							|  |  |  |             left join bd_awards bw | 
					
						
							|  |  |  |             on bw.pk_id=c.pk_awards | 
					
						
							|  |  |  |             left join bd_awards bwa | 
					
						
							|  |  |  |             on bwa.pk_id=c.pk_share_awards and bwa.del_flag=0 | 
					
						
							|  |  |  |             where bg.del_flag=0 and bw.del_flag=0 | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="batchQueryMemberRetailRangeByAwards" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select pk_member, | 
					
						
							|  |  |  |                member_code, | 
					
						
							|  |  |  |                member_name, | 
					
						
							|  |  |  |                a.pk_awards, | 
					
						
							|  |  |  |                a.pk_grade, | 
					
						
							|  |  |  |                a.pk_rate, | 
					
						
							|  |  |  |                a.income_status, | 
					
						
							|  |  |  |                a.pk_country, | 
					
						
							|  |  |  |                a.pk_settle_country, | 
					
						
							|  |  |  |                a.account_status, | 
					
						
							|  |  |  |                a.category, | 
					
						
							|  |  |  |                bg.grade_value, | 
					
						
							|  |  |  |                bg.grade_name, | 
					
						
							|  |  |  |                bw.awards_value share_awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                a.month_consume_pv, | 
					
						
							|  |  |  |                a.team_month_pv, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio | 
					
						
							|  |  |  |         from ${rangeTableName} a | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = a.pk_share_awards | 
					
						
							|  |  |  |                  inner join bd_grade bg | 
					
						
							|  |  |  |                             on bg.pk_id = a.pk_grade | 
					
						
							|  |  |  |         where bw.del_flag = 0 | 
					
						
							|  |  |  |           and bg.del_flag = 0 | 
					
						
							|  |  |  |           and bg.grade_value >= 70 | 
					
						
							|  |  |  |           and bw.awards_value >= 20 | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="batchQueryMemberRetailRangeByParent" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select pk_member,pk_parent,member_code,member_name,a.pk_awards,a.pk_grade,a.pk_rate, | 
					
						
							|  |  |  |         a.income_status,a.pk_country,a.pk_settle_country,a.account_status,a.category, | 
					
						
							|  |  |  |         bg.grade_value,bg.grade_name,bw.awards_value,bw.awards_name,a.month_consume_pv, | 
					
						
							|  |  |  |         a.team_month_pv, | 
					
						
							|  |  |  |         bw.range_ratio,bw.benefit_avg_ratio,bw.benefit_share_ratio from ${rangeTableName} a | 
					
						
							|  |  |  |         inner join bd_awards bw | 
					
						
							|  |  |  |         on bw.pk_id=a.pk_awards | 
					
						
							|  |  |  |         inner join bd_grade bg | 
					
						
							|  |  |  |         on bg.pk_id=a.pk_grade | 
					
						
							|  |  |  |         where bw.del_flag=0 and bg.del_flag=0 | 
					
						
							|  |  |  |         and a.pk_parent in | 
					
						
							|  |  |  |         <foreach collection="memberRetailRangeExtList" item="item" open="(" close=")" separator=","> | 
					
						
							|  |  |  |             #{item.pkMember} | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="batchQueryMemberRetailRangeByCounty" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select pk_member, | 
					
						
							|  |  |  |                pk_parent, | 
					
						
							|  |  |  |                member_code, | 
					
						
							|  |  |  |                member_name, | 
					
						
							|  |  |  |                a.pk_awards, | 
					
						
							|  |  |  |                a.pk_grade, | 
					
						
							|  |  |  |                a.pk_rate, | 
					
						
							|  |  |  |                a.pk_share_awards, | 
					
						
							|  |  |  |                a.enable_status, | 
					
						
							|  |  |  |                a.income_status, | 
					
						
							|  |  |  |                a.pk_country, | 
					
						
							|  |  |  |                a.pk_settle_country, | 
					
						
							|  |  |  |                a.region_address, | 
					
						
							|  |  |  |                ba.name country_name, | 
					
						
							|  |  |  |                bg.grade_value, | 
					
						
							|  |  |  |                bg.grade_name, | 
					
						
							|  |  |  |                bw.awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                a.account_status, | 
					
						
							|  |  |  |                a.category, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio, | 
					
						
							|  |  |  |                a.system_type | 
					
						
							|  |  |  |         from ${rangeTableName} a | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = a.pk_awards | 
					
						
							|  |  |  |                  inner join bd_grade bg | 
					
						
							|  |  |  |                             on bg.pk_id = a.pk_grade | 
					
						
							|  |  |  |                  inner join bd_area ba | 
					
						
							|  |  |  |                             on ba.pk_id = a.region_address | 
					
						
							|  |  |  |         where bw.del_flag = 0 | 
					
						
							|  |  |  |           and bg.del_flag = 0 | 
					
						
							|  |  |  |           and ba.del_flag = 0 | 
					
						
							|  |  |  |           and a.region_address > 0 | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="batchQueryMemberRetailSecondRangeByCounty" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select cm.pk_id                                       pk_member, | 
					
						
							|  |  |  |                cm.pk_parent, | 
					
						
							|  |  |  |                cm.member_code, | 
					
						
							|  |  |  |                cm.member_name, | 
					
						
							|  |  |  |                cm.pk_awards, | 
					
						
							|  |  |  |                cm.pk_settle_grade                             pk_grade, | 
					
						
							|  |  |  |                bt.pk_id                                       pk_rate, | 
					
						
							|  |  |  |                cm.income_status, | 
					
						
							|  |  |  |                cm.pk_country, | 
					
						
							|  |  |  |                cm.pk_settle_country, | 
					
						
							|  |  |  |                cr.county                                      region_address, | 
					
						
							|  |  |  |                ba.name                                        country_name, | 
					
						
							|  |  |  |                bg.grade_value, | 
					
						
							|  |  |  |                bg.grade_name, | 
					
						
							|  |  |  |                bw.awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                cm.account_status, | 
					
						
							|  |  |  |                cm.category, | 
					
						
							|  |  |  |                cm.system_type, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio, | 
					
						
							|  |  |  |                nvl(nvl(sc.enable_status, r.enable_status), 1) enable_status | 
					
						
							|  |  |  |         from cu_member cm | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = cm.pk_awards | 
					
						
							|  |  |  |                  inner join bd_grade bg | 
					
						
							|  |  |  |                             on bg.pk_id = cm.pk_settle_grade | 
					
						
							|  |  |  |                  inner join cu_member_retail_region cr | 
					
						
							|  |  |  |                             on cr.pk_member = cm.pk_id | 
					
						
							|  |  |  |                  inner join bd_area ba | 
					
						
							|  |  |  |                             on ba.pk_id = cr.county | 
					
						
							|  |  |  |                  inner join bd_currency bt | 
					
						
							|  |  |  |                             on bt.pk_country = cm.pk_settle_country | 
					
						
							|  |  |  |                  left join ${rangeTableName} r | 
					
						
							|  |  |  |                            on r.pk_member = cm.pk_id | 
					
						
							|  |  |  |                  left join ${secondRangeTableName} sc | 
					
						
							|  |  |  |                            on sc.pk_member = cm.pk_id | 
					
						
							|  |  |  |         where bw.del_flag = 0 | 
					
						
							|  |  |  |           and bg.del_flag = 0 | 
					
						
							|  |  |  |           and ba.del_flag = 0 | 
					
						
							|  |  |  |           and cr.effective = 0 | 
					
						
							|  |  |  |           and cr.del_flag = 0 | 
					
						
							|  |  |  |           and cm.del_flag = 0 | 
					
						
							|  |  |  |           and cr.county = #{county} | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberSecondRangeParent" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select a.pk_member, | 
					
						
							|  |  |  |                cm.member_code, | 
					
						
							|  |  |  |                cm.member_name, | 
					
						
							|  |  |  |                a.pk_parent, | 
					
						
							|  |  |  |                cm.pk_settle_country, | 
					
						
							|  |  |  |                cm.category, | 
					
						
							|  |  |  |                cm.account_status, | 
					
						
							|  |  |  |                a.pk_grade, | 
					
						
							|  |  |  |                a.pk_awards, | 
					
						
							|  |  |  |                cm.income_status, | 
					
						
							|  |  |  |                cm.pay_time, | 
					
						
							|  |  |  |                b.pk_rate, | 
					
						
							| 
									
										
										
										
											2025-06-12 17:03:38 +08:00
										 |  |  |                nvl(cm.is_activate, a.enable_status) enable_status, | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |                nvl(b.consume_box_num, 0) + a.new_box_num         consume_box_num, | 
					
						
							|  |  |  |                a.new_box_num, | 
					
						
							|  |  |  |                nvl(b.team_box_num, 0) + a.team_new_box_num       team_box_num, | 
					
						
							|  |  |  |                nvl(b.month_box_num, 0) + a.team_new_box_num      month_box_num, | 
					
						
							|  |  |  |                a.team_new_box_num, | 
					
						
							|  |  |  |                nvl(b.consume_pv, 0) + a.new_consume_pv           consume_pv, | 
					
						
							|  |  |  |                nvl(month_consume_pv, 0) + a.new_consume_pv       month_consume_pv, | 
					
						
							|  |  |  |                a.new_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_consume_amount, 0) + a.team_new_amount team_consume_amount, | 
					
						
							|  |  |  |                nvl(b.team_consume_pv, 0) + a.team_new_pv         team_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_month_amount, 0) + a.team_new_amount   team_month_amount, | 
					
						
							|  |  |  |                nvl(b.team_month_pv, 0) + a.team_new_pv           team_month_pv, | 
					
						
							|  |  |  |                nvl(b.big_box_num, 0)                             big_box_num, | 
					
						
							|  |  |  |                nvl(b.small_box_num, 0)                           small_box_num, | 
					
						
							|  |  |  |                nvl(b.big_team_pv, 0)                             big_team_pv, | 
					
						
							|  |  |  |                nvl(b.small_team_pv, 0)                           small_team_pv, | 
					
						
							|  |  |  |                a.system_type, | 
					
						
							|  |  |  |                a.team_new_amount, | 
					
						
							|  |  |  |                a.team_new_pv, | 
					
						
							|  |  |  |                bg.grade_value, | 
					
						
							|  |  |  |                bg.grade_name, | 
					
						
							|  |  |  |                bw.awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio, | 
					
						
							|  |  |  |                br.name                                           country_name, | 
					
						
							|  |  |  |                cr.county                                         region_address | 
					
						
							|  |  |  |         from ( | 
					
						
							|  |  |  |                  select * | 
					
						
							|  |  |  |                  from ${secondTableName} start with pk_member = #{pkMember} | 
					
						
							|  |  |  |                  connect by pk_member = prior pk_parent | 
					
						
							|  |  |  |              ) a | 
					
						
							|  |  |  |                  left join ${rangeTableName} b | 
					
						
							|  |  |  |                            on a.pk_member = b.pk_member | 
					
						
							|  |  |  |                  inner join cu_member cm | 
					
						
							|  |  |  |                             on cm.pk_id = a.pk_member | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = a.pk_awards | 
					
						
							|  |  |  |                  inner join bd_grade bg | 
					
						
							|  |  |  |                             on bg.pk_id = a.pk_grade | 
					
						
							|  |  |  |                  left join cu_member_retail_region cr | 
					
						
							|  |  |  |                            on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 | 
					
						
							|  |  |  |                  left join bd_area br | 
					
						
							|  |  |  |                            on br.pk_id = cr.county and br.del_flag = 0 | 
					
						
							|  |  |  |         where bw.del_flag = 0 | 
					
						
							|  |  |  |           and bg.del_flag = 0 | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberSecondRange" resultMap="CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select a.pk_member, | 
					
						
							|  |  |  |                a.pk_parent, | 
					
						
							|  |  |  |                nvl(b.consume_box_num, 0) + a.new_box_num         consume_box_num, | 
					
						
							|  |  |  |                a.new_box_num, | 
					
						
							|  |  |  |                nvl(b.team_box_num, 0) + a.team_new_box_num       team_box_num, | 
					
						
							|  |  |  |                nvl(b.month_box_num, 0) + a.team_new_box_num      month_box_num, | 
					
						
							|  |  |  |                a.team_new_box_num, | 
					
						
							|  |  |  |                nvl(b.consume_pv, 0) + a.new_consume_pv           consume_pv, | 
					
						
							|  |  |  |                nvl(month_consume_pv, 0) + a.new_consume_pv       month_consume_pv, | 
					
						
							|  |  |  |                a.new_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_consume_amount, 0) + a.team_new_amount team_consume_amount, | 
					
						
							|  |  |  |                nvl(b.team_consume_pv, 0) + a.team_new_pv         team_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_month_amount, 0) + a.team_new_amount   team_month_amount, | 
					
						
							|  |  |  |                nvl(b.team_month_pv, 0) + a.team_new_pv           team_month_pv, | 
					
						
							|  |  |  |                nvl(b.big_box_num, 0)                             big_box_num, | 
					
						
							|  |  |  |                nvl(b.small_box_num, 0)                           small_box_num, | 
					
						
							|  |  |  |                nvl(b.big_team_pv, 0)                             big_team_pv, | 
					
						
							|  |  |  |                nvl(b.small_team_pv, 0)                           small_team_pv, | 
					
						
							|  |  |  |                a.team_new_amount, | 
					
						
							|  |  |  |                a.team_new_pv | 
					
						
							|  |  |  |         from ${secondTableName} a | 
					
						
							|  |  |  |                  left join ${rangeTableName} b | 
					
						
							|  |  |  |                            on a.pk_member = b.pk_member | 
					
						
							|  |  |  |         where a.pk_member = #{pkMember} | 
					
						
							|  |  |  |            or a.pk_parent = #{pkMember} | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberSecondRangeExtByParent" resultMap="CuMemberRetailRangeExt"> | 
					
						
							| 
									
										
										
										
											2025-06-12 13:28:52 +08:00
										 |  |  |         select cm.pk_id pkMember, | 
					
						
							|  |  |  |                nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, | 
					
						
							|  |  |  |                nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, | 
					
						
							|  |  |  |                nvl(b.big_box_num, 0) big_box_num, | 
					
						
							|  |  |  |                nvl(b.small_box_num, 0) small_box_num | 
					
						
							|  |  |  |         from cu_member cm | 
					
						
							|  |  |  |                  left join ${secondTableName} a | 
					
						
							|  |  |  |                            on cm.pk_id = a.pk_member | 
					
						
							|  |  |  |                  left join ${rangeTableName} b | 
					
						
							|  |  |  |                            on cm.pk_id = b.pk_member | 
					
						
							|  |  |  |         where cm.pk_parent = #{pkMember} | 
					
						
							|  |  |  |           and cm.del_flag = 0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         <!--
 | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |         select a.pk_member, | 
					
						
							|  |  |  |                cm.member_code, | 
					
						
							|  |  |  |                cm.member_name, | 
					
						
							|  |  |  |                a.pk_parent, | 
					
						
							|  |  |  |                cm.pk_settle_country, | 
					
						
							|  |  |  |                cm.category, | 
					
						
							|  |  |  |                cm.account_status, | 
					
						
							|  |  |  |                a.pk_grade, | 
					
						
							|  |  |  |                a.pk_awards, | 
					
						
							|  |  |  |                cm.income_status, | 
					
						
							|  |  |  |                nvl(b.consume_box_num, 0) + a.new_box_num         consume_box_num, | 
					
						
							|  |  |  |                a.new_box_num, | 
					
						
							|  |  |  |                nvl(b.team_box_num, 0) + a.team_new_box_num       team_box_num, | 
					
						
							|  |  |  |                nvl(b.month_box_num, 0) + a.team_new_box_num      month_box_num, | 
					
						
							|  |  |  |                a.team_new_box_num, | 
					
						
							|  |  |  |                nvl(b.consume_pv, 0) + a.new_consume_pv           consume_pv, | 
					
						
							|  |  |  |                nvl(month_consume_pv, 0) + a.new_consume_pv       month_consume_pv, | 
					
						
							|  |  |  |                a.new_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_consume_amount, 0) + a.team_new_amount team_consume_amount, | 
					
						
							|  |  |  |                nvl(b.team_consume_pv, 0) + a.team_new_pv         team_consume_pv, | 
					
						
							|  |  |  |                nvl(b.team_month_amount, 0) + a.team_new_amount   team_month_amount, | 
					
						
							|  |  |  |                nvl(b.team_month_pv, 0) + a.team_new_pv           team_month_pv, | 
					
						
							|  |  |  |                a.team_new_amount, | 
					
						
							|  |  |  |                a.team_new_pv, | 
					
						
							|  |  |  |                bg.grade_value, | 
					
						
							|  |  |  |                bg.grade_name, | 
					
						
							|  |  |  |                bw.awards_value, | 
					
						
							|  |  |  |                bw.awards_name, | 
					
						
							|  |  |  |                nvl(b.big_box_num, 0)                             big_box_num, | 
					
						
							|  |  |  |                nvl(b.small_box_num, 0)                           small_box_num, | 
					
						
							|  |  |  |                nvl(b.big_team_pv, 0)                             big_team_pv, | 
					
						
							|  |  |  |                nvl(b.small_team_pv, 0)                           small_team_pv, | 
					
						
							|  |  |  |                a.system_type, | 
					
						
							|  |  |  |                bw.range_ratio, | 
					
						
							|  |  |  |                bw.benefit_avg_ratio, | 
					
						
							|  |  |  |                bw.benefit_share_ratio, | 
					
						
							|  |  |  |                br.name                                           country_name | 
					
						
							|  |  |  |         from ${secondTableName} a | 
					
						
							|  |  |  |                  left join ${rangeTableName} b | 
					
						
							|  |  |  |                            on a.pk_member = b.pk_member | 
					
						
							|  |  |  |                  inner join cu_member cm | 
					
						
							|  |  |  |                             on cm.pk_id = a.pk_member | 
					
						
							|  |  |  |                  inner join bd_awards bw | 
					
						
							|  |  |  |                             on bw.pk_id = a.pk_awards | 
					
						
							|  |  |  |                  inner join bd_grade bg | 
					
						
							|  |  |  |                             on bg.pk_id = a.pk_grade | 
					
						
							|  |  |  |                  left join cu_member_retail_region cr | 
					
						
							|  |  |  |                            on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 | 
					
						
							|  |  |  |                  left join bd_area br | 
					
						
							|  |  |  |                            on br.pk_id = cr.county and br.del_flag = 0 | 
					
						
							|  |  |  |         where bw.del_flag = 0 | 
					
						
							|  |  |  |           and bg.del_flag = 0 | 
					
						
							|  |  |  |           and a.pk_parent = #{pkMember} | 
					
						
							| 
									
										
										
										
											2025-06-12 13:28:52 +08:00
										 |  |  |           --> | 
					
						
							| 
									
										
										
										
											2025-06-10 15:45:02 +08:00
										 |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberSpeRetailRangeParent" | 
					
						
							|  |  |  |             resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select * from ${tableName} | 
					
						
							|  |  |  |         where pk_parent in | 
					
						
							|  |  |  |         <foreach collection="saOrderExtList" item="item" open="(" close=")" separator=","> | 
					
						
							|  |  |  |             #{item} | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |         union | 
					
						
							|  |  |  |         select * from ${tableName} | 
					
						
							|  |  |  |         where pk_member in | 
					
						
							|  |  |  |         <foreach collection="saOrderExtList" item="item" open="(" close=")" separator=","> | 
					
						
							|  |  |  |             #{item} | 
					
						
							|  |  |  |         </foreach> | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberRetailRangeEnoughAchieve" resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select pk_member, | 
					
						
							|  |  |  |                pk_parent, | 
					
						
							|  |  |  |                consume_box_num, | 
					
						
							|  |  |  |                new_box_num, | 
					
						
							|  |  |  |                team_box_num, | 
					
						
							|  |  |  |                month_box_num, | 
					
						
							|  |  |  |                team_new_box_num, | 
					
						
							|  |  |  |                consume_pv, | 
					
						
							|  |  |  |                month_consume_pv, | 
					
						
							|  |  |  |                new_consume_pv, | 
					
						
							|  |  |  |                team_consume_amount, | 
					
						
							|  |  |  |                team_consume_pv, | 
					
						
							|  |  |  |                team_month_amount, | 
					
						
							|  |  |  |                team_month_pv, | 
					
						
							|  |  |  |                big_box_num, | 
					
						
							|  |  |  |                small_box_num, | 
					
						
							|  |  |  |                big_team_pv, | 
					
						
							|  |  |  |                small_team_pv, | 
					
						
							|  |  |  |                team_new_amount, | 
					
						
							|  |  |  |                team_new_pv | 
					
						
							|  |  |  |         from ${tableName} | 
					
						
							|  |  |  |         where pk_parent = #{pkParent} | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <select id="queryCuMemberSecondRangeYes" | 
					
						
							|  |  |  |             resultType="com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt"> | 
					
						
							|  |  |  |         select pk_member, | 
					
						
							|  |  |  |                pk_parent, | 
					
						
							|  |  |  |                consume_box_num, | 
					
						
							|  |  |  |                new_box_num, | 
					
						
							|  |  |  |                team_box_num, | 
					
						
							|  |  |  |                month_box_num, | 
					
						
							|  |  |  |                team_new_box_num, | 
					
						
							|  |  |  |                consume_pv, | 
					
						
							|  |  |  |                month_consume_pv, | 
					
						
							|  |  |  |                new_consume_pv, | 
					
						
							|  |  |  |                team_consume_amount, | 
					
						
							|  |  |  |                team_consume_pv, | 
					
						
							|  |  |  |                team_month_amount, | 
					
						
							|  |  |  |                team_month_pv, | 
					
						
							|  |  |  |                big_box_num, | 
					
						
							|  |  |  |                small_box_num, | 
					
						
							|  |  |  |                big_team_pv, | 
					
						
							|  |  |  |                small_team_pv, | 
					
						
							|  |  |  |                team_new_amount, | 
					
						
							|  |  |  |                team_new_pv | 
					
						
							|  |  |  |         from ${rangeTableName} | 
					
						
							|  |  |  |         where pk_member = #{pkMember} | 
					
						
							|  |  |  |            or pk_parent = #{pkMember} | 
					
						
							|  |  |  |     </select> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | </mapper> |