From 753a424a08470721117cd13d6c39805516768a7e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 28 Jul 2025 14:41:08 +0800 Subject: [PATCH 1/2] =?UTF-8?q?##=20=E6=B7=BB=E5=8A=A0=E6=9C=88=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E8=80=83=E6=A0=B8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/IBdAwardsRegionConfigServiceApi.java | 12 +- .../service/impl/CuMemberTreeServiceImpl.java | 2 - .../service/impl/BonusSettleServiceImpl.java | 22 ++-- .../detail/mapper/CuMemberAssessMapper.java | 38 ++++++ .../service/ICuMemberAssessService.java | 10 ++ .../impl/CuMemberAssessServiceImpl.java | 35 +++++ .../bonus/detail/CuMemberAssessMapper.xml | 124 ++++++++++++++++++ .../mapper/BdAwardsRegionConfigMapper.java | 9 ++ .../BdAwardsRegionConfigServiceProvider.java | 20 ++- .../service/IBdAwardsRegionConfigService.java | 10 ++ .../impl/BdAwardsRegionConfigServiceImpl.java | 7 +- .../base/BdAwardsRegionConfigMapper.xml | 40 ++---- .../common/core/enums/EAssessmentType.java | 13 ++ .../com/hzs/common/core/utils/DateUtils.java | 45 +------ .../system/config/BdAwardsRegionConfig.java | 2 +- .../config/ext/BdAwardsRegionConfigExt.java | 18 +++ 16 files changed, 314 insertions(+), 93 deletions(-) create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdAwardsRegionConfigExt.java diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBdAwardsRegionConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBdAwardsRegionConfigServiceApi.java index 1b4e3c61..7c242342 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBdAwardsRegionConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBdAwardsRegionConfigServiceApi.java @@ -2,16 +2,16 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import com.hzs.system.base.dto.ApprovalPushInfoDTO; import java.util.List; +import java.util.Map; public interface IBdAwardsRegionConfigServiceApi { - /** - * 审批推送站内信信息 - * - * @param approvalPushInfoDTOList 推送信息DTO - * @return R - */ + R> getMatchList(Integer value); + + R> getAwardsRegionConfig(); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index e20d80ce..b1d22d5c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -85,8 +85,6 @@ public class CuMemberTreeServiceImpl extends ServiceImpl saOrderExtList) { try { + Date currentSettleDate = DateUtils.parseStringToDate(settleDate); // 今天期间(settleDate - 年月日) Integer period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); // 会员结算日表(cu_member_settle) + 期间 @@ -433,9 +434,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberAchieveLogList.forEach(cuMemberAchieveLog -> iCuMemberAchieveService.updateCuMemberSettleAchieveBySpecialBus(currentSettleTableName, period, cuMemberAchieveLog.getPkId())); } // 注水到期回退 - iCuMemberAchieveService.mergeCuMemberSettleByAchieveLogByDate(currentSettleTableName, DateUtils.parseStringToDate(settleDate)); + iCuMemberAchieveService.mergeCuMemberSettleByAchieveLogByDate(currentSettleTableName, currentSettleDate); // 判断特殊业务是否有到期日期,有到期的需要使用真实业绩,昨天的期间真实更新当前的 - iCuMemberAchieveService.updateCuMemberSettleAchieveByDueDate(currentSettleTableName, yesterdayTableName, DateUtils.parseStringToDate(settleDate)); + iCuMemberAchieveService.updateCuMemberSettleAchieveByDueDate(currentSettleTableName, yesterdayTableName, currentSettleDate); // 2025.05.14 新拓展处理在2025.06.01之前还是走原来的1:1对碰,之后走1:2对碰 // true 走新逻辑(首购+复购 合并计算) @@ -487,7 +488,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 获取所有国家的奖金项 key = 国家 + 奖金项的值 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 获取所有区域配置(key:省-市-区,value:会员ID) - Map memberRegionMap = iMemberServiceApi.memberRegionMap(DateUtils.getEndTime(DateUtils.parseStringToDate(settleDate))).getData(); + Map memberRegionMap = iMemberServiceApi.memberRegionMap(DateUtils.getEndTime(currentSettleDate)).getData(); //*********************************计算奖衔 更新奖衔*********************************/ // 开始计算奖衔 计算奖衔 更新奖衔(根据最新业绩查询变动且业绩满足下一等级,根据等级判断是否满足考核,安置考核或血缘考核) @@ -505,8 +506,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { iCuMemberTreeService.updateCuMemberSettle(cuMemberAchieveHashMap, currentSettleTableName); // 实际处理数据方法(计算奖衔) iCuMemberAwardsService.calculateCuMemberAwards(settleDate, awardsMap, currentSettleTableName); - // 2025.04.23 调整需求,乐学升级不需要处理结算套数处理 -- new 乐学,处理V3 V4的升级 -// iCuMemberLevelService.calculateCuMemberGrade(settleDate, currentSettleTableName); // 计算完奖衔回退金额、业绩,最终根据新增进行回写 iCuMemberTreeService.updateCuMemberBackSettle(cuMemberAchieveHashMap, currentSettleTableName); @@ -558,14 +557,14 @@ public class BonusSettleServiceImpl implements IBonusSettleService { iCuMemberTreeService.insertCuMemberTreeBySettleDate(settleDate, currentSettleTableName, period); // 计算完当日奖金后,处理下月表初始化 - Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); + Date currentAfterDate = DateUtils.afterDate(1, ChronoUnit.DAYS, currentSettleDate); // 结算日期的后一天 - String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate); + String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentAfterDate); if (afterDate.endsWith("01")) { // new 不是月奖衔,每月初不更新(月度级差奖衔需要去掉) // String rangeTableName = TableNameConstants.CU_MEMBER_RANGE + period; // // 月第一天日期 -// String monthFirstDate = DateUtils.currentMonthFirstDateStr(DateUtils.parseStringToDate(settleDate)); +// String monthFirstDate = DateUtils.currentMonthFirstDateStr(currentSettleDate); // // 月第一天期数 // Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(monthFirstDate).getPkId(); // // 更新奖衔,根据新结算的奖衔 @@ -586,9 +585,14 @@ public class BonusSettleServiceImpl implements IBonusSettleService { iCuMemberTreeService.createCuMemberTreeParentIndex(monthTableName); iCuMemberTreeService.createCuMemberTreePlaceIndex(monthTableName); } + + // 创建考核月表(cu_member_assess) + iCuMemberAssessService.createCuMemberAssessMonth(afterDate); + // TODO 区域考核,当月、次月免考 + iCuMemberAssessService.initAreaMemberAssess(settleDate, currentSettleDate, currentSettleTableName); } // 奖金计算结束,统计拨比、业绩、4-N拨比 - iCuBonusExpandService.updateCuBonusExpandRatio(BonusExpandParam.builder().settleDate(DateUtils.parseStringToDate(settleDate)).build(), "cu_member_bonus"); + iCuBonusExpandService.updateCuBonusExpandRatio(BonusExpandParam.builder().settleDate(currentSettleDate).build(), "cu_member_bonus"); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java index 6b5d908f..1105c2d0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.common.domain.member.ext.CuMemberAssessExt; import com.hzs.bonus.detail.vo.CuMemberAssessVO; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -226,4 +227,41 @@ public interface CuMemberAssessMapper extends BaseMapper { @Param("startDate") Date startDate, @Param("endDate") Date endDate); + /** + * 初始化区域考核数据 + * + * @param accessTableName + * @param assessDate + * @param currentSettleDate + * @return + */ + int initAreaAssess(@Param("accessTableName") String accessTableName, + @Param("assessDate") Date assessDate, + @Param("currentSettleDate") Date currentSettleDate, + @Param("province") BdAwardsRegionConfigExt province, + @Param("city") BdAwardsRegionConfigExt city, + @Param("county") BdAwardsRegionConfigExt county); + + /** + * 更新区域考核月度业绩 + * + * @param accessTableName + * @param currentSettleTableName + * @param beforeMonthSettleTableName + * @return + */ + int updateAreaSmallPV(@Param("accessTableName") String accessTableName, + @Param("currentSettleTableName") String currentSettleTableName, + @Param("beforeMonthSettleTableName") String beforeMonthSettleTableName); + + /** + * 更新会员区域失效 + * + * @param accessTableName + * @param currentSettleDate + * @return + */ + int updateRetailRegionEffective(@Param("accessTableName") String accessTableName, + @Param("currentSettleDate") Date currentSettleDate); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java index 5884026c..ba87130d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java @@ -94,4 +94,14 @@ public interface ICuMemberAssessService extends IService { */ void initMemberAssess(String settleDate, String currentSettleTableName); + /** + * 区域收益考核 + * + * @param settleDate 结算日期(本月最后一天) + * @param currentSettleDate 结算日期(本月最后一天) + * @param currentSettleTableName 今天日结表(本月最后一天) + */ + void initAreaMemberAssess(String settleDate, Date currentSettleDate, String currentSettleTableName); + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java index 0ac3e8e5..d7828950 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java @@ -17,6 +17,9 @@ import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.bonus.detail.mapper.CuMemberAssessMapper; import com.hzs.bonus.detail.vo.CuMemberAssessVO; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; +import com.hzs.system.base.IBdAwardsRegionConfigServiceApi; +import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -39,6 +42,8 @@ public class CuMemberAssessServiceImpl extends ServiceImpl regionConfigMap = iBdAwardsRegionConfigServiceApi.getAwardsRegionConfig().getData(); + + // 考核时间,当月最后一天(2025-07-25 23:59:59),往前推2个月 -- 这2个月新选的不需要处理 + Date assessDate = DateUtils.getEndTime(DateUtils.addMonths(currentSettleDate, -2)); + // 本月考核(本月最后一天) + String accessTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getMonth(settleDate); + // 初始化本次考核会员数据 + // TODO 需要处理兼容重算的处理 + baseMapper.initAreaAssess(accessTableName, assessDate, currentSettleDate, + regionConfigMap.get(EAreaType.PROVINCE.getValue()), + regionConfigMap.get(EAreaType.CITY.getValue()), + regionConfigMap.get(EAreaType.COUNTY.getValue())); + + // 上月日结表(上月最后一天日结表) + Integer beforeMonthPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.beforeMonthLastDateStr(currentSettleDate)).getPkId(); + // 会员结算日表(cu_member_settle) + 期间 + String beforeMonthSettleTableName = TableNameConstants.CU_MEMBER_SETTLE + beforeMonthPeriod; + // 当月最后一天日结(currentSettleTableName) - 上月最后一天日结(beforeMonthSettleTableName) + // 累计算大小区,当天 - 上月最后一天 = 新増业绩 + baseMapper.updateAreaSmallPV(accessTableName, currentSettleTableName, beforeMonthSettleTableName); + + // 根据考核结果,更新区域有效状态 + baseMapper.updateRetailRegionEffective(accessTableName, currentSettleDate); + } + } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml index fbbeed79..ad9b42cd 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml @@ -519,4 +519,128 @@ values (tmp.pk_member, 5, 1, 0, tmp.pk_member, trunc(tmp.pay_time), #{endDate}) + + + merge into ${accessTableName} cma + using (select cmrr.pk_member, + case + when cmrr.city = 0 and cmrr.county = 0 then 6 + when cmrr.city != 0 and cmrr.county = 0 then 7 + when cmrr.city != 0 and cmrr.county != 0 then 8 + end assess_type, + case + when cmrr.city = 0 and cmrr.county = 0 then #{province.pkAwards} + when cmrr.city != 0 and cmrr.county = 0 then #{city.pkAwards} + when cmrr.city != 0 and cmrr.county != 0 then #{county.pkAwards} + end pk_awards, + case + when cmrr.city = 0 and cmrr.county = 0 then #{province.smallAssess} + when cmrr.city != 0 and cmrr.county = 0 then #{city.smallAssess} + when cmrr.city != 0 and cmrr.county != 0 then #{county.smallAssess} + end assess_target, + case + when #{assessDate} >= cmrr.creation_time then 2 + else 1 + end assess_status, + 100000000 pk_creator, + #{currentSettleDate} end_date + from cu_member_retail_region cmrr + where cmrr.del_flag = 0 + and cmrr.effective = 0) tmp + on (cma.pk_member = tmp.pk_member and cma.assess_type = tmp.assess_type and cma.del_flag = 0) + when not matched then + insert ( + pk_member, + assess_type, + pk_awards, + assess_target, + assess_status, + pk_creator, + end_date) + values ( + tmp.pk_member, + tmp.assess_type, + tmp.pk_awards, + tmp.assess_target, + tmp.assess_status, + tmp.pk_creator, + tmp.end_date) + + + + + merge into ${accessTableName} cma + using (select t.pk_member, + case + when t.a_sum_pv > t.b_sum_pv then + t.b_sum_pv + else + t.a_sum_pv + end small_pv + from (select a.pk_member, + nvl(a.a_sum_pv, 0) + nvl(a.rep_a_sum_pv, 0) - + nvl(b.a_sum_pv, 0) - nvl(b.rep_a_sum_pv, 0) a_sum_pv, + nvl(a.b_sum_pv, 0) + nvl(a.rep_b_sum_pv, 0) - + nvl(b.b_sum_pv, 0) - nvl(b.rep_b_sum_pv, 0) b_sum_pv + from (select cms.pk_member, + cms.a_sum_pv, + cms.b_sum_pv, + cms.rep_a_sum_pv, + cms.rep_b_sum_pv + from ${currentSettleTableName} cms + where cms.pk_member in + (select cma.pk_member + from ${accessTableName} cma + where cma.del_flag = 0 + and cma.assess_type in (6, 7, 8))) a + left join (select cms.pk_member, + cms.a_sum_pv, + cms.b_sum_pv, + cms.rep_a_sum_pv, + cms.rep_b_sum_pv + from ${beforeMonthSettleTableName} cms + where cms.pk_member in + (select cma.pk_member + from ${accessTableName} cma + where cma.del_flag = 0 + and cma.assess_type in (6, 7, 8))) b + on a.pk_member = b.pk_member) t) tmp + on (cma.pk_member = tmp.pk_member and cma.assess_type in (6, 7, 8) and cma.del_flag = 0) + when matched then + update set cma.month_add = tmp.small_pv, + cma.ASSESS_STATUS = + (case + when tmp.small_pv >= cma.assess_target then + 1 + else + 2 + end) + + + + + merge into cu_member_retail_region cmrr + using (select cmrr.pk_id + from ${accessTableName} cma + left join (select t.pk_id, + t.pk_member, + case + when t.city = 0 and t.county = 0 then 6 + when t.city != 0 and t.county = 0 then 7 + when t.city != 0 and t.county != 0 then 8 + end assess_type + from CU_MEMBER_RETAIL_REGION t + where t.del_flag = 0 + and t.effective = 0) cmrr + on cmrr.pk_member = cma.pk_member and cmrr.assess_type = cma.assess_type + where cma.del_flag = 0 + and cma.assess_type in (6, 7, 8) + and cma.assess_status = 2 + ) tmp + on (cmrr.pk_id = tmp.pk_id) + when matched then + update set cmrr.effective = 1, + cmrr.effective_end_date = #{currentSettleDate} + + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdAwardsRegionConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdAwardsRegionConfigMapper.java index 00f82976..a1e1a8ca 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdAwardsRegionConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdAwardsRegionConfigMapper.java @@ -2,6 +2,7 @@ package com.hzs.system.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import java.util.List; @@ -16,4 +17,12 @@ import java.util.List; public interface BdAwardsRegionConfigMapper extends BaseMapper { List getList(); + + /** + * 配置+奖衔需要小区业绩 + * + * @return + */ + List listConfigAndAssess(); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/BdAwardsRegionConfigServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/BdAwardsRegionConfigServiceProvider.java index 68829b4d..91616021 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/BdAwardsRegionConfigServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/BdAwardsRegionConfigServiceProvider.java @@ -7,13 +7,16 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import com.hzs.system.base.IBdAwardsRegionConfigServiceApi; import com.hzs.system.base.service.IBdAwardsRegionConfigService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** *

@@ -25,12 +28,25 @@ import java.util.List; */ @DubboService public class BdAwardsRegionConfigServiceProvider implements IBdAwardsRegionConfigServiceApi { + @Autowired - IBdAwardsRegionConfigService service; + private IBdAwardsRegionConfigService iBdAwardsRegionConfigService; + @Override public R> getMatchList(Integer value) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.le(BdAwardsRegionConfig::getAwardsValue, value); - return R.ok(service.list(queryWrapper)); + return R.ok(iBdAwardsRegionConfigService.list(queryWrapper)); } + + @Override + public R> getAwardsRegionConfig() { + Map resultMap = new HashMap<>(); + List configList = iBdAwardsRegionConfigService.listConfigAndAssess(); + for (BdAwardsRegionConfigExt bdAwardsRegionConfig : configList) { + resultMap.put(bdAwardsRegionConfig.getAreaType(), bdAwardsRegionConfig); + } + return R.ok(resultMap); + } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdAwardsRegionConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdAwardsRegionConfigService.java index bda8272e..6171e0e4 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdAwardsRegionConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdAwardsRegionConfigService.java @@ -2,6 +2,7 @@ package com.hzs.system.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import java.util.List; @@ -15,4 +16,13 @@ import java.util.List; */ public interface IBdAwardsRegionConfigService extends IService { List getList(); + + + /** + * 配置+奖衔需要小区业绩 + * + * @return + */ + List listConfigAndAssess(); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdAwardsRegionConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdAwardsRegionConfigServiceImpl.java index dcda2fef..c470a48b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdAwardsRegionConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdAwardsRegionConfigServiceImpl.java @@ -2,11 +2,11 @@ package com.hzs.system.base.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import com.hzs.common.domain.system.config.ext.BdAwardsRegionConfigExt; import com.hzs.system.base.mapper.BdAwardsRegionConfigMapper; import com.hzs.system.base.service.IBdAwardsRegionConfigService; import org.springframework.stereotype.Service; -import java.util.Collections; import java.util.List; /** @@ -24,4 +24,9 @@ public class BdAwardsRegionConfigServiceImpl extends ServiceImpl getList() { return baseMapper.getList(); } + + @Override + public List listConfigAndAssess() { + return baseMapper.listConfigAndAssess(); + } } diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdAwardsRegionConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdAwardsRegionConfigMapper.xml index fb980011..13d3f5f2 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdAwardsRegionConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdAwardsRegionConfigMapper.xml @@ -2,35 +2,19 @@ - - - - - - - - - - - - - - - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_CREATOR, - PK_MODIFIED, - PK_ID, AREA_TYPE, PK_AWARDS, AWARDS_VALUE, RATE - + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAssessmentType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAssessmentType.java index 136d60eb..7907c9c4 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAssessmentType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAssessmentType.java @@ -30,6 +30,19 @@ public enum EAssessmentType { */ POINT_ASSESS(5, "见点收益考核", 0), + /** + * 6=区域收益省考核 + */ + PROVINCE_ASSESS(6, "区域收益省考核", 0), + /** + * 7=区域收益市考核 + */ + CITY_ASSESS(7, "区域收益市考核", 0), + /** + * 8=区域收益区考核 + */ + COUNTY_ASSESS(8, "区域收益区考核", 0), + ; /** diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java index 849cf675..5760ffb4 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java @@ -307,7 +307,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { } /** - * 获得之前月份的最后一天 + * 获得之前月份的最后一天(年月日) * * @param date 日期 * @return string @@ -318,7 +318,6 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return beforeMonthDate.with(TemporalAdjusters.lastDayOfMonth()).toString(); } - /** * 获得指定月份的最后一天 * @@ -881,46 +880,4 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return LocalDate.parse(date, fmt); } - public static void main(String[] args) { -// System.out.println(Base64Encoder.encode("139676")); - System.out.println(parseStringToDateTime("2023-09-25 13:00:00")); -// System.out.println(DateUtils.getRecentlyMonday(DateUtils.parseStringToDate("2023-08-07"))); -// System.out.println(DateUtils.getRecentlyMonday(DateUtils.parseStringToDate("2023-08-08"))); -// System.out.println(DateUtils.getRecentlyMonday(DateUtils.parseStringToDate("2023-08-09"))); -// System.out.println(DateUtils.getRecentlyMonday(DateUtils.parseStringToDate("2023-08-10"))); -// System.out.println(getRecentlyMonday(DateUtils.parseStringToDate("2023-07-17"))); -// System.out.println(parseDateToSecond()); -// System.out.println(parseDateToSecond(currentDateTime())); -// System.out.println(compareDate(currentDate(), afterDate(10, ChronoUnit.DAYS))); -// System.out.println(compareDate(currentDate(), currentDate())); -// System.out.println(parseDateToStr(DateUtils.YYYY_MM_DD, beforeDate(7, ChronoUnit.DAYS))); -// System.out.println(compareDate(currentDate(), beforeDate(7, ChronoUnit.DAYS))); -// System.out.println(betweenMonth(currentDate(), beforeDate(17, ChronoUnit.DAYS))); -// System.out.println(beforeMonthFirstDateStr(12, currentDate())); -// System.out.println(beforeMonthLastDate()); -// System.out.println(beforeMonthFirstDate()); -// System.out.println(currentMonthFirstDate()); -// System.out.println(currentMonthLastDate()); -// System.out.println(parseDateTimeToStr(DateUtils.YAMMERERS)); -// System.out.println(toLocalDate(currentDate())); -// System.out.println(toLocalDateTime(currentDateTime())); -// System.out.println(currentYear()); -// System.out.println(currentMonth()); -// System.out.println(currentDay()); -// System.out.println(getDateByCondition(2022, 8, 2)); -// System.out.println(compareDate(currentDate(), afterDate(10, ChronoUnit.DAYS))); -// System.out.println(compareDateEqual(currentDate(), currentDate())); -// System.out.println(compareDateAfter(currentDate(), afterDate(4, ChronoUnit.DAYS))); -// System.out.println(compareDateBefore(currentDate(), beforeDate(4, ChronoUnit.MONTHS))); -// System.out.println(isLeapYear()); -// System.out.println(checkBirthDate(getDateByCondition(1989, 10, 11))); -// System.out.println(betweenDay(beforeDate(5, ChronoUnit.WEEKS))); -// System.out.println(betweenMonth(beforeDate(10, ChronoUnit.WEEKS))); -// System.out.println(parseStringToDate("2022-09-05")); -// System.out.println(parseDateToStr(DateUtils.YAMMER, currentDate())); -// System.out.println(parseDateToStr(DateUtils.YYYY_MM_DD, currentDate())); -// System.out.println(parseDateToStr(DateUtils.YYYY, currentDate())); -// System.out.println(parseDateToStr(DateUtils.YYYY_MM, currentDate())); -// System.out.println(parseDateTimeToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, currentDateTime())); - } } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwardsRegionConfig.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwardsRegionConfig.java index 50c465c0..fdb8a4d9 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwardsRegionConfig.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwardsRegionConfig.java @@ -41,7 +41,7 @@ public class BdAwardsRegionConfig extends BaseEntity { * 奖衔ID */ @TableField("PK_AWARDS") - private Long pkAwards; + private Integer pkAwards; /** * 奖衔值 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdAwardsRegionConfigExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdAwardsRegionConfigExt.java new file mode 100644 index 00000000..7eb75ecc --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdAwardsRegionConfigExt.java @@ -0,0 +1,18 @@ +package com.hzs.common.domain.system.config.ext; + +import com.hzs.common.domain.system.config.BdAwardsRegionConfig; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +@EqualsAndHashCode(callSuper = true) +@Data +public class BdAwardsRegionConfigExt extends BdAwardsRegionConfig { + + /** + * 小区考核业绩 + */ + private BigDecimal smallAssess; + +} From 45f6bed6df637692014595db371a1ab657d6fd58 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 28 Jul 2025 14:56:52 +0800 Subject: [PATCH 2/2] =?UTF-8?q?##=20=E5=8C=BA=E5=9F=9F=E5=A5=96=E9=87=91?= =?UTF-8?q?=E5=A4=84=E7=90=86BUG=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java index 5189d9d7..e6a04697 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java @@ -918,7 +918,7 @@ public class BonusSettlePurchaseHandle extends BonusSettleHandle { if (null != targetMemberSettleExt) { // 处理区域收益 this.handleAreaBonus(saOrderExt, sourceMemberSettleExt, targetMemberSettleExt, period, bonusConfigDTO, regionAreaConfigMap, - cuMemberBonusMap, cuMemberBonusRangeList, EAreaType.CITY, beforeBonusCal); + cuMemberBonusMap, cuMemberBonusRangeList, EAreaType.PROVINCE, beforeBonusCal); } } }