Compare commits
	
		
			2 Commits
		
	
	
		
			7efa68ae01
			...
			bd7d788769
		
	
	| Author | SHA1 | Date | 
|---|---|---|
| 
							
							
								
								 | 
						bd7d788769 | |
| 
							
							
								
								 | 
						82a0459bfe | 
| 
						 | 
					@ -70,11 +70,40 @@ public class CuRegionAssessServiceImpl extends ServiceImpl<CuRegionAssessMapper,
 | 
				
			||||||
                Map<Long, CuRegionAssess> regionAssessMap = new HashMap<>();
 | 
					                Map<Long, CuRegionAssess> regionAssessMap = new HashMap<>();
 | 
				
			||||||
                List<CuRegionAssessDetail> regionAssessDetailList = new ArrayList<>();
 | 
					                List<CuRegionAssessDetail> regionAssessDetailList = new ArrayList<>();
 | 
				
			||||||
                for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) {
 | 
					                for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    if (null != cuMemberRetailRegion.getEffectiveEndDate()) {
 | 
				
			||||||
 | 
					                        // 设置过生效结束时间
 | 
				
			||||||
                        CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
 | 
					                        CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
 | 
				
			||||||
                                .pkMember(cuMemberRetailRegion.getPkMember())
 | 
					                                .pkMember(cuMemberRetailRegion.getPkMember())
 | 
				
			||||||
                                .pkRegion(cuMemberRetailRegion.getPkId())
 | 
					                                .pkRegion(cuMemberRetailRegion.getPkId())
 | 
				
			||||||
                                .assessPeriod(1)
 | 
					                                .assessPeriod(1)
 | 
				
			||||||
                                .assessStartDate(assessDate)
 | 
					                                .assessStartDate(assessDate)
 | 
				
			||||||
 | 
					                                // 考核结束期
 | 
				
			||||||
 | 
					                                .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(1, cuMemberRetailRegion.getEffectiveEndDate())))
 | 
				
			||||||
 | 
					                                .source(cuMemberRetailRegion.getSource())
 | 
				
			||||||
 | 
					                                .build();
 | 
				
			||||||
 | 
					                        cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN);
 | 
				
			||||||
 | 
					                        cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry());
 | 
				
			||||||
 | 
					                        regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess);
 | 
				
			||||||
 | 
					                        while (assessDate.compareTo(cuRegionAssess.getAssessEndDate()) <= 0) {
 | 
				
			||||||
 | 
					                            CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder()
 | 
				
			||||||
 | 
					                                    .pkRegionAssess(cuRegionAssess.getPkMember())
 | 
				
			||||||
 | 
					                                    .assessDate(assessDate)
 | 
				
			||||||
 | 
					                                    .pkMember(cuRegionAssess.getPkMember())
 | 
				
			||||||
 | 
					                                    .build();
 | 
				
			||||||
 | 
					                            cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN);
 | 
				
			||||||
 | 
					                            cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry());
 | 
				
			||||||
 | 
					                            regionAssessDetailList.add(cuRegionAssessDetail);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            assessDate = DateUtils.afterMonthDate(1, assessDate);
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    } else {
 | 
				
			||||||
 | 
					                        CuRegionAssess cuRegionAssess = CuRegionAssess.builder()
 | 
				
			||||||
 | 
					                                .pkMember(cuMemberRetailRegion.getPkMember())
 | 
				
			||||||
 | 
					                                .pkRegion(cuMemberRetailRegion.getPkId())
 | 
				
			||||||
 | 
					                                .assessPeriod(1)
 | 
				
			||||||
 | 
					                                .assessStartDate(assessDate)
 | 
				
			||||||
 | 
					                                // 考核结束期
 | 
				
			||||||
                                .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate)))
 | 
					                                .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate)))
 | 
				
			||||||
                                .source(cuMemberRetailRegion.getSource())
 | 
					                                .source(cuMemberRetailRegion.getSource())
 | 
				
			||||||
                                .build();
 | 
					                                .build();
 | 
				
			||||||
| 
						 | 
					@ -93,6 +122,8 @@ public class CuRegionAssessServiceImpl extends ServiceImpl<CuRegionAssessMapper,
 | 
				
			||||||
                            regionAssessDetailList.add(cuRegionAssessDetail);
 | 
					                            regionAssessDetailList.add(cuRegionAssessDetail);
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
                saveCuRegionAssess(regionAssessMap, regionAssessDetailList);
 | 
					                saveCuRegionAssess(regionAssessMap, regionAssessDetailList);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate);
 | 
					            iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -99,7 +99,13 @@
 | 
				
			||||||
            big_box_num = 0,
 | 
					            big_box_num = 0,
 | 
				
			||||||
            small_box_num = 0,
 | 
					            small_box_num = 0,
 | 
				
			||||||
            big_team_pv = 0,
 | 
					            big_team_pv = 0,
 | 
				
			||||||
            small_team_pv = 0
 | 
					            small_team_pv = 0,
 | 
				
			||||||
 | 
					            all_team_new_box_num = 0,
 | 
				
			||||||
 | 
					            all_team_box_num = 0,
 | 
				
			||||||
 | 
					            all_team_month_box_num = 0,
 | 
				
			||||||
 | 
					            all_team_new_pv = 0,
 | 
				
			||||||
 | 
					            all_team_consume_pv = 0,
 | 
				
			||||||
 | 
					            all_team_month_pv = 0
 | 
				
			||||||
    </update>
 | 
					    </update>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <update id="mergeMemberRetailRangeByYesterday">
 | 
					    <update id="mergeMemberRetailRangeByYesterday">
 | 
				
			||||||
| 
						 | 
					@ -112,7 +118,9 @@
 | 
				
			||||||
        team_new_pv, team_consume_pv, team_month_pv,
 | 
					        team_new_pv, team_consume_pv, team_month_pv,
 | 
				
			||||||
        team_new_amount, team_consume_amount, team_month_amount,
 | 
					        team_new_amount, team_consume_amount, team_month_amount,
 | 
				
			||||||
        recommend_num, team_num,
 | 
					        recommend_num, team_num,
 | 
				
			||||||
        big_box_num, small_box_num, big_team_pv, small_team_pv
 | 
					        big_box_num, small_box_num, big_team_pv, small_team_pv,
 | 
				
			||||||
 | 
					        all_team_new_box_num, all_team_box_num, all_team_month_box_num,
 | 
				
			||||||
 | 
					        all_team_new_pv, all_team_consume_pv, all_team_month_pv
 | 
				
			||||||
        from ${yesterdayRangeTableName}
 | 
					        from ${yesterdayRangeTableName}
 | 
				
			||||||
        ) b
 | 
					        ) b
 | 
				
			||||||
        on (a.pk_member = b.pk_member)
 | 
					        on (a.pk_member = b.pk_member)
 | 
				
			||||||
| 
						 | 
					@ -127,13 +135,19 @@
 | 
				
			||||||
        a.pk_grade = b.pk_grade,
 | 
					        a.pk_grade = b.pk_grade,
 | 
				
			||||||
        a.enable_status = b.enable_status,
 | 
					        a.enable_status = b.enable_status,
 | 
				
			||||||
        a.big_box_num = b.big_box_num, a.small_box_num = b.small_box_num,
 | 
					        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
 | 
					        a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv,
 | 
				
			||||||
 | 
					        a.all_team_new_box_num = b.all_team_new_box_num,
 | 
				
			||||||
 | 
					        a.all_team_box_num = b.all_team_box_num,
 | 
				
			||||||
 | 
					        a.all_team_new_pv = b.all_team_new_pv,
 | 
				
			||||||
 | 
					        a.all_team_consume_pv = b.all_team_consume_pv
 | 
				
			||||||
        <if test="isSameMonth == 0">
 | 
					        <if test="isSameMonth == 0">
 | 
				
			||||||
            ,a.month_box_num = b.month_box_num
 | 
					            ,a.month_box_num = b.month_box_num
 | 
				
			||||||
            ,a.month_consume_pv = b.month_consume_pv
 | 
					            ,a.month_consume_pv = b.month_consume_pv
 | 
				
			||||||
            ,a.team_month_box_num = b.team_month_box_num
 | 
					            ,a.team_month_box_num = b.team_month_box_num
 | 
				
			||||||
            ,a.team_month_pv = b.team_month_pv
 | 
					            ,a.team_month_pv = b.team_month_pv
 | 
				
			||||||
            ,a.team_month_amount = b.team_month_amount
 | 
					            ,a.team_month_amount = b.team_month_amount
 | 
				
			||||||
 | 
					            ,a.all_team_month_box_num = b.all_team_month_box_num
 | 
				
			||||||
 | 
					            ,a.all_team_month_pv = b.all_team_month_pv
 | 
				
			||||||
        </if>
 | 
					        </if>
 | 
				
			||||||
    </update>
 | 
					    </update>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -55,11 +55,29 @@
 | 
				
			||||||
                from cu_region_assess_detail cd
 | 
					                from cu_region_assess_detail cd
 | 
				
			||||||
                         inner join cu_region_assess ca
 | 
					                         inner join cu_region_assess ca
 | 
				
			||||||
                                    on cd.pk_region_assess = ca.pk_id
 | 
					                                    on cd.pk_region_assess = ca.pk_id
 | 
				
			||||||
 | 
					                         inner join cu_member_retail_region cmrr
 | 
				
			||||||
 | 
					                                    on cmrr.pk_id = ca.pk_region
 | 
				
			||||||
                where cd.ASSESS_STATUS = 0
 | 
					                where cd.ASSESS_STATUS = 0
 | 
				
			||||||
                  and cd.del_flag = 0
 | 
					                  and cd.del_flag = 0
 | 
				
			||||||
                  and ca.del_flag = 0
 | 
					                  and ca.del_flag = 0
 | 
				
			||||||
                  and ca.assess_start_date <= #{assessDate,jdbcType=DATE}
 | 
					                  and ca.assess_start_date <= #{assessDate,jdbcType=DATE}
 | 
				
			||||||
                  and ca.assess_end_date >= #{assessDate,jdbcType=DATE}
 | 
					                  and ca.assess_end_date >= #{assessDate,jdbcType=DATE}
 | 
				
			||||||
 | 
					                  and cmrr.del_flag = 0
 | 
				
			||||||
 | 
					                  and cmrr.effective_end_date is null
 | 
				
			||||||
 | 
					                group by cd.pk_region_assess
 | 
				
			||||||
 | 
					                union
 | 
				
			||||||
 | 
					                <!-- 手动开通的,只查询手效期前6个月的数据 -->
 | 
				
			||||||
 | 
					                select cd.pk_region_assess, sum(1) REACH_NUM
 | 
				
			||||||
 | 
					                from cu_region_assess_detail cd
 | 
				
			||||||
 | 
					                         inner join cu_region_assess ca
 | 
				
			||||||
 | 
					                                    on cd.pk_region_assess = ca.pk_id
 | 
				
			||||||
 | 
					                         inner join CU_MEMBER_RETAIL_REGION cmrr
 | 
				
			||||||
 | 
					                                    on cmrr.pk_id = ca.pk_region
 | 
				
			||||||
 | 
					                where cd.del_flag = 0
 | 
				
			||||||
 | 
					                  and ca.del_flag = 0
 | 
				
			||||||
 | 
					                  and cmrr.del_flag = 0
 | 
				
			||||||
 | 
					                  and cmrr.effective_end_date is not null
 | 
				
			||||||
 | 
					                  and cd.assess_date > ADD_MONTHS(cmrr.effective_end_date, -6)
 | 
				
			||||||
                group by cd.pk_region_assess
 | 
					                group by cd.pk_region_assess
 | 
				
			||||||
            ) b
 | 
					            ) b
 | 
				
			||||||
            on (a.pk_id = b.pk_region_assess)
 | 
					            on (a.pk_id = b.pk_region_assess)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -535,24 +535,16 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
 | 
				
			||||||
        LocalDate today = getLocalDate(date);
 | 
					        LocalDate today = getLocalDate(date);
 | 
				
			||||||
        return ((Long) toLocalDate(date1).until(today, ChronoUnit.DAYS)).intValue();
 | 
					        return ((Long) toLocalDate(date1).until(today, ChronoUnit.DAYS)).intValue();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * 计算2个日期之间的天数
 | 
					     * 获得2个日期总共差的天数
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * @param date1 日期
 | 
					     * @param date1 第一个日期
 | 
				
			||||||
     * @param date  日期2
 | 
					     * @param date  第二个日期
 | 
				
			||||||
     * @return Integer
 | 
					     * @return Integer
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public static Boolean betweenMonth(Date date1, Date... date) {
 | 
					    public static Integer betweenMonth(Date date1, Date... date) {
 | 
				
			||||||
        LocalDate localDate = LocalDate.now();
 | 
					        LocalDate today = getLocalDate(date);
 | 
				
			||||||
        if (date.length > 0) {
 | 
					        return ((Long) toLocalDate(date1).until(today, ChronoUnit.MONTHS)).intValue();
 | 
				
			||||||
            localDate = toLocalDate(date[0]);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        LocalDate localDate1 = toLocalDate(date1);
 | 
					 | 
				
			||||||
        if (localDate.getMonth() == localDate1.getMonth()) {
 | 
					 | 
				
			||||||
            return Boolean.TRUE;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        return Boolean.FALSE;
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue