diff --git a/hzs-api/hzs-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java b/hzs-api/hzs-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java index a1bfc91d..2559bf5a 100644 --- a/hzs-api/hzs-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java +++ b/hzs-api/hzs-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java @@ -7,8 +7,6 @@ import com.hzs.common.domain.system.config.ext.BdAwardsExt; import java.util.List; import java.util.Map; -import java.util.Set; -import java.util.TreeMap; /** * @description: 根据国家查询奖衔配置列表api diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index 5cb41e99..e7819f24 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -508,15 +508,20 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 迁移网体数据到月表 cuMemberTreeService.insertCuMemberTreeBySettleDate(settleDate, currentSettleTableName, period); - Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); - // 计算上个月末跟上上个月末最后一天业绩 - Integer beforeMonthPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeMonthLastDate(DateUtils.parseStringToDate(settleDate)))).getPkId(); - String beforeMonthTableName = TableNameConstants.CU_MEMBER_SETTLE + beforeMonthPeriod; - // 当月第一天 - Integer currentMonthFirstPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.currentMonthFirstDateStr(DateUtils.parseStringToDate(settleDate))).getPkId(); - cuMemberAwardsService.calculateCuMemberAwardsEveryMonth(currentMonthFirstPeriod, yesterdayPeriod, period, settleDate, beforeMonthTableName, awardsMap); + + // TODO new 之前月奖衔的数据处理 +// // 上月最后一天 +// Integer beforeMonthPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( +// DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeMonthLastDate(DateUtils.parseStringToDate(settleDate))) +// ).getPkId(); +// // 当月第一天 +// Integer currentMonthFirstPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( +// DateUtils.currentMonthFirstDateStr(DateUtils.parseStringToDate(settleDate)) +// ).getPkId(); +// cuMemberAwardsService.calculateCuMemberAwardsEveryMonth(currentMonthFirstPeriod, yesterdayPeriod, period, settleDate, beforeMonthPeriod, awardsMap); // 计算完当日奖金后,根据业绩计算下月奖衔 + Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate); if (afterDate.endsWith("01")) { // TODO new 不是月奖衔,每月初不更新(月级差奖衔需要去掉) @@ -545,8 +550,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberTreeService.createCuMemberTreePlaceIndex(monthTableName); } } + // 应该是给4-N配置使用的 bonusExpandService.updateCuBonusExpandRatio(BonusExpandParam.builder().settleDate(DateUtils.parseStringToDate(settleDate)).build(), "cu_member_bonus"); + if (leXueRangeParam != null) { + // 乐学相关,处理提货数据 if (CollectionUtil.isNotEmpty(leXueRangeParam.getAcPickExtList())) { if (!acPickServiceApi.updatePickUse(leXueRangeParam.getAcPickExtList(), leXueRangeParam.getAcPickMemberLogList()).getData()) { throw new RuntimeException("更新提货专区数量失败"); diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java index f6ffb03f..4ec19a82 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java @@ -67,7 +67,7 @@ public interface ICuMemberAwardsService extends IService { * @date: 2024/8/31 9:31 * @param: null null **/ - void calculateCuMemberAwardsEveryMonth(Integer currentMonthFirstPeriod, Integer yesterdayPeriod, Integer period, String settleDate, String beforeMontTableName, Map awardsMap); + void calculateCuMemberAwardsEveryMonth(Integer currentMonthFirstPeriod, Integer yesterdayPeriod, Integer period, String settleDate, Integer beforeMonthPeriod, Map awardsMap); /* * @description: 根据结算表更新奖衔 diff --git a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index ebef0f92..b290e374 100644 --- a/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/hzs-business/hzs-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -34,31 +34,31 @@ import java.util.*; public class CuMemberAwardsServiceImpl extends ServiceImpl implements ICuMemberAwardsService { @Autowired - private ICuMemberTreeService cuMemberTreeService; + private ICuMemberTreeService iCuMemberTreeService; @Autowired - private ICuMemberService cuMemberService; + private ICuMemberService iCuMemberService; @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Override @Transactional(rollbackFor = Exception.class) public void calculateCuMemberAwards(String setDate, Map countryAwardsMap, String settleTableName) { // 查询结算日当天奖衔发生过变动的会员,本期 Date settleDate = DateUtils.parseStringToDate(setDate); - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(setDate).getPkId(); + Integer period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(setDate).getPkId(); // 某一期的会员奖衔 List cuMemberAwards = queryCuMemberAwardsByPeriod(period); // 回退会员奖衔(日结表) - cuMemberTreeService.updateBackCuMemberSettleAward(settleTableName, period); + iCuMemberTreeService.updateBackCuMemberSettleAward(settleTableName, period); // 更新会员奖衔根据临时表(会员表) - cuMemberService.updateBackCuMemberAward(cuMemberAwards, period); + iCuMemberService.updateBackCuMemberAward(cuMemberAwards, period); // 回退业绩表奖衔(删除会员奖衔升级记录) baseMapper.deleteCuMemberAwards(period); while (true) { // 查询出符合下一奖衔足够业绩的会员 - List cuMemberSettleExtList = cuMemberTreeService.queryCuMemberSettleEnoughAwardAchieve(settleTableName); + List cuMemberSettleExtList = iCuMemberTreeService.queryCuMemberSettleEnoughAwardAchieve(settleTableName); if (!calculateAwards(countryAwardsMap, settleTableName, settleDate, period, cuMemberSettleExtList)) { break; } @@ -69,8 +69,8 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl cuMemberAwards = queryCuMemberAwardsByPeriod(period); - cuMemberTreeService.updateBackCuMemberSettleRangeAward(rangeTableName, period); - cuMemberService.updateBackCuMemberRangeAward(cuMemberAwards, period); + iCuMemberTreeService.updateBackCuMemberSettleRangeAward(rangeTableName, period); + iCuMemberService.updateBackCuMemberRangeAward(cuMemberAwards, period); // 回退业绩表奖衔 baseMapper.deleteCuMemberAwards(period); } @@ -157,13 +157,13 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl 0) { // 将变动值插入临时表中 // 更新会员表 - cuMemberService.updateCuMemberByPeriod(enoughAwardsMemberList, period); + iCuMemberService.updateCuMemberByPeriod(enoughAwardsMemberList, period); // 更新结算网体表 -- 结算日期到当前日期的所有日结算表 updateMemberAwardPeriod(settleDate); return Boolean.TRUE; } else { // 更新会员表 - cuMemberService.updateCuMemberByPeriod(null, period); + iCuMemberService.updateCuMemberByPeriod(null, period); // 更新结算网体表 -- 结算日期到当前日期的所有日结算表 updateMemberAwardPeriod(settleDate); return Boolean.FALSE; @@ -175,10 +175,10 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl periodList = new ArrayList<>(); while (DateUtils.compareDateBefore(settleDate, currentDate)) { String settleDateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, settleDate); - periodList.add(cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDateStr).getPkId()); + periodList.add(iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDateStr).getPkId()); settleDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleDate); } - cuMemberTreeService.updateCuMemberSettleByPeriod(periodList); + iCuMemberTreeService.updateCuMemberSettleByPeriod(periodList); } @Override @@ -192,7 +192,7 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl awardsMap) { + public void calculateCuMemberAwardsEveryMonth(Integer currentMonthFirstPeriod, Integer yesterdayPeriod, Integer period, String settleDate, Integer beforeMonthPeriod, Map awardsMap) { // 根据奖衔找到最小的业绩要求 BigDecimal minAchieve = BigDecimal.valueOf(999999999); List bdAwardsList = new ArrayList<>(); @@ -201,26 +201,35 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl - - - DEL_FLAG, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_COUNTRY, - PK_ID, PK_MEMBER, PERIOD, UP_TYPE, OLD_LEVEL, NEW_LEVEL, REMARK - - insert ALL @@ -47,30 +36,58 @@ merge into cu_member_settle_awards a - using( - select #{period} period,b.* from( - select pk_member,pk_country,a_balance,b_balance,a_new_pv,b_new_pv, - (case when a_balance=0 and b_balance=0 then a_new_pv+b_new_pv when a_balance=0 then a_new_pv else b_new_pv end) new_pv from ( - select ct.pk_member,ct.pk_country,nvl(ctb.a_balance,0) a_balance,nvl(ctb.b_balance,0) b_balance, - ct.a_sum_pv a_new_pv,ct.b_sum_pv b_new_pv - from ( - select pk_member,pk_country,sum(A_NEW_PV+REP_A_NEW_PV) A_SUM_PV,sum(b_NEW_PV+REP_B_NEW_PV) b_SUM_PV, - sum(register_new_pv) REGISTER_PV,sum(upgrade_new_pv) UPGRADE_PV,sum(repurchase_new_pv) REPURCHASE_PV, - sum(hi_fun_new_pv) HI_FUN_PV,sum(mall_new_pv) MALL_PV from cu_member_achieve${month} - where period <= #{period} and pk_country=1 - group by pk_member,pk_country - ) ct - left join ${beforeMontTableName} ctb - on ct.pk_member = ctb.pk_member - )) b - where new_pv>=#{minAchieve}) b - on (a.pk_member=b.pk_member and a.period=b.period) + using ( + select #{period} period, b.* + from ( + select pk_member, + pk_country, + a_balance, + b_balance, + a_new_pv, + b_new_pv, + (case + when a_balance = 0 and b_balance = 0 then a_new_pv + b_new_pv + when a_balance = 0 then a_new_pv + else b_new_pv end) new_pv + from ( + select ct.pk_member, + ct.pk_country, + nvl(ctb.a_balance, 0) a_balance, + nvl(ctb.b_balance, 0) b_balance, + ct.a_sum_pv a_new_pv, + ct.b_sum_pv b_new_pv + from ( + select pk_member, + pk_country, + sum(A_NEW_PV + REP_A_NEW_PV) A_SUM_PV, + sum(b_NEW_PV + REP_B_NEW_PV) b_SUM_PV, + sum(register_new_pv) REGISTER_PV, + sum(upgrade_new_pv) UPGRADE_PV, + sum(repurchase_new_pv) REPURCHASE_PV, + sum(hi_fun_new_pv) HI_FUN_PV, + sum(mall_new_pv) MALL_PV + from cu_member_achieve${month} + where period <= #{period} + and pk_country = 1 + group by pk_member, pk_country + ) ct + left join ${beforeMontTableName} ctb + on ct.pk_member = ctb.pk_member + )) b + where new_pv >= #{minAchieve}) b + on (a.pk_member = b.pk_member and a.period = b.period) when matched then - update set a.a_balance=b.a_balance,a.b_balance=b.b_balance, - a.a_new_pv=b.a_new_pv,a.b_new_pv=b.b_new_pv,a.new_pv=b.new_pv + update set + a.a_balance = b.a_balance, + a.b_balance = b.b_balance, + a.a_new_pv = b.a_new_pv, + a.b_new_pv = b.b_new_pv, + a.new_pv = b.new_pv when not matched then - insert(pk_id,period,pk_member,a_balance,b_balance,a_new_pv,b_new_pv,new_pv,pk_country,assess_status) - values(cu_member_settle_awards_seq.nextval,b.period,b.pk_member,b.a_balance,b.b_balance,b.a_new_pv,b.b_new_pv,b.new_pv,b.pk_country,3) + insert (pk_id, period, pk_member, a_balance, b_balance, a_new_pv, b_new_pv, new_pv, pk_country, + assess_status) + values (cu_member_settle_awards_seq.nextval, b.period, b.pk_member, b.a_balance, b.b_balance, + b.a_new_pv, b.b_new_pv, b.new_pv, b.pk_country, 3) @@ -78,7 +95,7 @@ using( select pk_member,period,max(pk_awards) pk_awards from( - select pk_member,period,#{item.pkId} pk_awards + select pk_member,period, #{item.pkId} pk_awards from cu_member_settle_awards where period = #{period} and pk_country=#{item.pkCountry} and new_pv>=#{item.communityCheck} diff --git a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java index dd8a2738..2049fa0c 100644 --- a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java +++ b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java @@ -99,6 +99,13 @@ public interface ICuMemberAchieveService extends IService { */ List selectNewAddAchieveContrast(Long pkMember, Integer pkCountry, Integer month); + /** + * 根据天数类型获取开始日期 + * + * @param dayType + * @param localDate + * @return + */ LocalDate getStartDateByType(Integer dayType, LocalDate localDate); /** @@ -110,6 +117,13 @@ public interface ICuMemberAchieveService extends IService { **/ PlaceNewAddAchieveVO placeNewAddAchieveStat(PlaceNewAddAchieveVO pna); + /** + * 根据年月获取日期 + * + * @param year + * @param month + * @return + */ Date getDateFromYearAndMonth(String year, String month); /** diff --git a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java index 710d70c1..292010ec 100644 --- a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -18,16 +18,13 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.common.domain.member.ext.CuMemberTeamExt; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.achieve.controller.vo.*; import com.hzs.member.achieve.mapper.CuMemberAchieveMapper; -import com.hzs.member.achieve.mapper.CuMemberTreeMapper; import com.hzs.member.achieve.param.MemberAchieveDisParam; -import com.hzs.member.achieve.param.MemberAchieveParam; import com.hzs.member.achieve.param.MonthAchieveParam; import com.hzs.member.achieve.service.ICuMemberAchieveService; import com.hzs.member.achieve.service.ICuMemberMonthAchieveService; @@ -67,9 +64,7 @@ import java.util.concurrent.Future; import java.util.stream.Collectors; /** - *

* 会员业绩记录 服务实现类 - *

* * @author hzs * @since 2022-10-26 @@ -78,58 +73,35 @@ import java.util.stream.Collectors; @Service public class CuMemberAchieveServiceImpl extends ServiceImpl implements ICuMemberAchieveService { - private ICuMemberTreeService cuMemberTreeService; - - private CuMemberBonusSettle cuMemberBonusSettle; - - private ICuMemberService cuMemberService; - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; + private ICuMemberTreeService iCuMemberTreeService; + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Autowired private ICuMemberBaseService iCuMemberBaseService; @Autowired - private ICuMemberMonthAchieveService memberMonthAchieveService; + private ICuMemberMonthAchieveService iCuMemberMonthAchieveService; + @Autowired + private ITransactionCommonService iTransactionCommonService; @DubboReference ICountryServiceApi iCountryServiceApi; @DubboReference - IAwardsServiceApi awardsServiceApi; + IAwardsServiceApi iAwardsServiceApi; @DubboReference IVertexServiceApi iVertexServiceApi; @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; @DubboReference - IMemberTeamServiceApi teamServiceApi; - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } - - @Autowired - public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) { - this.cuMemberTreeService = cuMemberTreeService; - } - - @Autowired - ITransactionCommonService iTransactionCommonService; + IMemberTeamServiceApi iMemberTeamServiceApi; @Override public CuMemberAchieve queryCuMemberAchieveByPkMember(Long pkMember, Integer pkCountry) { Date currentDate = DateUtils.currentDate(); // 查看秒接表,秒接表不存在查询昨天的结算表 - int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)).getPkId(); + int currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)).getPkId(); String currentTableName = TableNameConstants.CU_MEMBER_SECOND + currentPeriod; CuMemberAchieve cuMemberAchieve = baseMapper.queryCuMemberAchieveByPkMember(pkMember, pkCountry, currentTableName); if (cuMemberAchieve != null) { @@ -139,7 +111,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl cuMemberExtList = cuMemberService.queryMemberByCondition(CuMember.builder().pkId(memberAchieveDisParam.getPkMember()).build()); + List cuMemberExtList = iCuMemberService.queryMemberByCondition(CuMember.builder().pkId(memberAchieveDisParam.getPkMember()).build()); CuMemberExt cuMember = cuMemberExtList.get(0); String image = setGradeImageUrl(cuMember.getCategory(), cuMember.getGradeValue()); CuMemberDisVO cuMemberDisVO = CuMemberDisVO.builder() @@ -158,7 +130,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl lastCuMemberList = cuMemberService.queryCuMemberLastPlaceParent(memberAchieveDisParam.getPkMember()); + List lastCuMemberList = iCuMemberService.queryCuMemberLastPlaceParent(memberAchieveDisParam.getPkMember()); if (CollectionUtil.isNotEmpty(lastCuMemberList)) { for (CuMemberExt cuMemberExt : lastCuMemberList) { String imageUrl = setGradeImageUrl(cuMemberExt.getCategory(), cuMemberExt.getGradeValue()); @@ -190,13 +162,13 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl cuMemberSettleExtList = cuMemberTreeService.queryCuMemberTree(tableName, member.getPkId(), null); +// CuMemberExt member = iCuMemberService.getMemberByCode(memberAchieveDisParam.getMemberCode()); +// List cuMemberSettleExtList = iCuMemberTreeService.queryCuMemberTree(tableName, member.getPkId(), null); // return BeanUtil.copyProperties(cuMemberSettleExtList.get(0), CuMemberDisVO.class); // }else{ - CuMember cuMember = cuMemberService.queryMember(memberAchieveDisParam.getMemberCode()); + CuMember cuMember = iCuMemberService.queryMember(memberAchieveDisParam.getMemberCode()); CuMemberDisVO cuMemberDisVO = BeanUtil.copyProperties(cuMember, CuMemberDisVO.class); cuMemberDisVO.setMemberCode(CommonUtil.getMemberCode(cuMember.getMemberCode(), cuMember.getServiceCode())); cuMemberDisVO.setMemberName(CommonUtil.getMemberName(cuMember.getPkVertex(), cuMember.getMemberName(), cuMember.getNickName())); @@ -226,7 +198,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl awardsMap = awardsList.stream().collect(Collectors.toMap(BdAwards::getAwardsValue, o -> o)); if (pkAwards != null) { - BdAwards bdAwards = awardsServiceApi.getAwardsOne(pkAwards).getData(); + BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(pkAwards).getData(); List list = awardsList.stream().filter(a -> a.getAwardsValue() > bdAwards.getAwardsValue()).collect(Collectors.toList()); //当奖衔最大级别时,目标值-1 @@ -514,7 +486,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl awardsList = awardsServiceApi.queryAwards(pkCountry).getData(); + List awardsList = iAwardsServiceApi.queryAwards(pkCountry).getData(); cuMemberAwardsUnderVO.setAwardsList(awardsList); //获取当前会员的奖衔 cuMemberAwardsUnderVO.setPkAwards(getMemberAwards(awardsList, cuMemberAwardsUnderVO.getSumRealPv())); @@ -608,10 +580,10 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl awardsList = awardsServiceApi.queryAwards(pkCountry).getData(); + List awardsList = iAwardsServiceApi.queryAwards(pkCountry).getData(); //升序排序 awardsList.sort(Comparator.comparing(BdAwards::getAwardsValue)); @@ -627,8 +599,8 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl list = awardsList.stream().filter(awards -> awards.getAwardsValue() > bdAwards.getAwardsValue()).collect(Collectors.toList()); BigDecimal targetPv = awardsMap.get(list.get(0).getAwardsValue()).getCommunityCheck(); @@ -641,7 +613,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); //查询左右区业绩 PlaceNewAddAchieveVO achieve = selectNewABAchieve(pna); @@ -1065,7 +1037,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); //结束期数 - int endPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(pa.getEndDate()).getPkId(); + int endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(pa.getEndDate()).getPkId(); pa.setPeriod(endPeriod); //直推等级人数和业绩 @@ -1346,14 +1318,14 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl parentAchieveLeft(ParentAchieveVO pa) { pa = getDateStr(pa); //获取期数 - int endPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(pa.getEndDate()).getPkId(); + int endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(pa.getEndDate()).getPkId(); pa.setPeriod(endPeriod); - CuMember member = cuMemberService.getMember(pa.getPkMember()); + CuMember member = iCuMemberService.getMember(pa.getPkMember()); List parentList = new ArrayList<>(); ParentAchieveVO par = new ParentAchieveVO(); par.setMemberName(member.getMemberName()); par.setPkMember(member.getPkId()); - R currency = currencyServiceApi.getCurrency(pa.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(pa.getPkCountry()); //查询本人直推业绩 List endSelfParentList = selfParentCounAchieve(pa); par.setUmbrellaList(endSelfParentList); @@ -1613,7 +1585,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl currencyDto = currencyServiceApi.getCurrency(pkCountry); + R currencyDto = iCurrencyServiceApi.getCurrency(pkCountry); CurrencyDTO currency = currencyDto.getData(); //当月 RealPerformanceVo realPerformanceVo = null; @@ -1624,7 +1596,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl currencyDto = currencyServiceApi.getCurrency(pkCountry); + R currencyDto = iCurrencyServiceApi.getCurrency(pkCountry); CurrencyDTO currency = currencyDto.getData(); //当月 AzAchievementPie achievementPie = null; //左区人数 - Long leftCount = cuMemberService.selectByDeptNumberCount(pkMember, EPlaceDept.LEFT_DEPT.getValue()); + Long leftCount = iCuMemberService.selectByDeptNumberCount(pkMember, EPlaceDept.LEFT_DEPT.getValue()); // 右区人数 - Long rightCount = cuMemberService.selectByDeptNumberCount(pkMember, EPlaceDept.RIGHT_DEPT.getValue()); + Long rightCount = iCuMemberService.selectByDeptNumberCount(pkMember, EPlaceDept.RIGHT_DEPT.getValue()); DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); String time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - CuMemberSettleExt memberSettleExt = cuMemberTreeService.queryCuMemberTreeByPkMemberTable(settleTableName, pkMember); + CuMemberSettleExt memberSettleExt = iCuMemberTreeService.queryCuMemberTreeByPkMemberTable(settleTableName, pkMember); BigDecimal aSumRealPv = BigDecimal.ZERO; BigDecimal bSumRealPv = BigDecimal.ZERO; if (memberSettleExt.getASumRealPv() != null) { @@ -1766,7 +1738,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl vertexDTOList = iVertexServiceApi.findAllByPkCountry(param.getPkSettleCountry()).getData(); @@ -2145,7 +2117,7 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl teamList = teamServiceApi.queryCuMemberTeam(param.getPkSettleCountry()).getData(); + List teamList = iMemberTeamServiceApi.queryCuMemberTeam(param.getPkSettleCountry()).getData(); Map teamMap = teamList.stream().collect(Collectors.toMap(CuMemberTeamExt::getPkId, o -> o)); for (Map.Entry>> entry : futureMap.entrySet()) { diff --git a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index b194722e..7ba15ec4 100644 --- a/hzs-business/hzs-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/hzs-business/hzs-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -2,7 +2,7 @@ package com.hzs.member.base.controller.api; import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.config.HzsConfig; @@ -25,16 +25,12 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberChangeLog; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.ext.CuMemberHistroyAwardsExt; import com.hzs.common.domain.system.config.BdAgreementRenewalWhite; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; -import com.hzs.member.achieve.service.ICuMemberAchieveService; -import com.hzs.member.achieve.vo.CuMemberAwardsUnderVO; import com.hzs.member.base.param.MemberDataParam; -import com.hzs.member.base.service.ICuMemberHistroyAwardsService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.IMemberInfoService; import com.hzs.common.core.utils.UploadFileUtil; @@ -48,6 +44,7 @@ import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CountryDTO; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAgreementRenewalWhiteServiceApi; +import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -81,19 +78,17 @@ public class ApiMemberController extends BaseController { private ICuMemberChangeLogService memberChangeLogService; @Autowired private IApiSmsService iApiSmsService; - @Autowired - private ICuMemberHistroyAwardsService iCuMemberHistroyAwardsService; - @Autowired - private ICuMemberAchieveService iCuMemberAchieveService; @DubboReference - IGradeServiceApi gradeServiceApi; + IGradeServiceApi iGradeServiceApi; @DubboReference - ICountryServiceApi countryServiceApi; + IAwardsServiceApi iAwardsServiceApi; @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICountryServiceApi iCountryServiceApi; @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; + @DubboReference + ISystemConfigServiceApi iSystemConfigServiceApi; @DubboReference IAgreementRenewalWhiteServiceApi iAgreementRenewalWhiteServiceApi; @@ -417,8 +412,8 @@ public class ApiMemberController extends BaseController { * @Author: sui q * @Date: 2022/8/27 16:47 */ - @PostMapping("/reg-share-member") @RepeatSubmit + @PostMapping("/reg-share-member") public AjaxResult confirmRegisterOrder(@RequestBody MemberParam memberParam) { if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { if (new Date().getTime() >= SysConstants.CLOSE_ZERO_DATE_TEST) { @@ -455,7 +450,7 @@ public class ApiMemberController extends BaseController { // 系统中存在该手机号走的验证 if (cuMemberExtList.size() > 0) { // 手机号注册次数 - String value = systemConfigServiceApi.getBonusSystemConfig(cuMember.getPkSettleCountry(), ESystemConfig.HA_FUN_REGISTER_NUMBER.getKey()).getData(); + String value = iSystemConfigServiceApi.getBonusSystemConfig(cuMember.getPkSettleCountry(), ESystemConfig.HA_FUN_REGISTER_NUMBER.getKey()).getData(); if (cuMemberExtList.size() >= Integer.parseInt(value)) { // 手机注册次数已达系统上限 return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.SYSTEM_REGISTER_COUNT)); @@ -544,7 +539,7 @@ public class ApiMemberController extends BaseController { private CountryDTO getCountryDTO(String pkParent) { Long pkParentId = Long.parseLong(new String(Base64Decoder.decode(pkParent))); CuMember cuMember = iCuMemberService.getMember(pkParentId); - return countryServiceApi.getCountry(cuMember.getPkSettleCountry()).getData(); + return iCountryServiceApi.getCountry(cuMember.getPkSettleCountry()).getData(); } /** @@ -710,13 +705,13 @@ public class ApiMemberController extends BaseController { * * @return */ - @GetMapping("parent-list") + @GetMapping("/parent-list") public TableDataInfo parentList(String memberCode, String memberName, Date startCreateTime, Date endCreateTime, String memberInfo) { Long memberId = SecurityUtils.getUserId(); // 查询等级 Integer pkCountry = SecurityUtils.getPkCountry(); - R> grderDate = gradeServiceApi.findAll(); + R> grderDate = iGradeServiceApi.findAll(); List grderList = grderDate.getData(); if (endCreateTime != null) { @@ -728,7 +723,7 @@ public class ApiMemberController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { Map transactionMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE); - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); for (ParentMemberVo cuMember : list) { @@ -760,13 +755,13 @@ public class ApiMemberController extends BaseController { /** * 查询是否首次登录 需要弹出修改密码弹窗 */ - @GetMapping("get-member-is-updatepassword") + @GetMapping("/get-member-is-updatepassword") public AjaxResult getMemberIsUpdatePassword() { Long memberId = SecurityUtils.getUserId(); // 查询是否首次登录 需要修改密码 - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("PK_MEMBER", memberId); - qw.eq("CHANGE_TYPE", EMemberChangeType.LOGIN_PWD.getValue()); + LambdaUpdateWrapper qw = new LambdaUpdateWrapper<>(); + qw.eq(CuMemberChangeLog::getPkMember, memberId); + qw.eq(CuMemberChangeLog::getChangeType, EMemberChangeType.LOGIN_PWD.getValue()); int count = memberChangeLogService.count(qw); return AjaxResult.success(count); } @@ -858,47 +853,49 @@ public class ApiMemberController extends BaseController { @GetMapping("/member-awards-info") public AjaxResult memberAwardsInfo() { Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); MemberAwardsInfoVO memberAwardsInfoVO = new MemberAwardsInfoVO(); - // 最高奖衔(取cu_member 中的max_awards和本月实时奖衔进行对比,哪个高用哪个) - CuMemberAwardsUnderVO cuMemberAwardsUnderVO = iCuMemberAchieveService.getPkAwardBySmallAchieve(pkMember, pkCountry, false); - // 奖衔列表 - List awardsList = cuMemberAwardsUnderVO.getAwardsList(); - Map awardsMap = new HashMap<>(); - for (BdAwards bdAwards : awardsList) { - awardsMap.put(bdAwards.getPkId(), bdAwards); - } +// Integer pkCountry = SecurityUtils.getPkCountry(); +// // 最高奖衔(取cu_member 中的max_awards和本月实时奖衔进行对比,哪个高用哪个) +// CuMemberAwardsUnderVO cuMemberAwardsUnderVO = iCuMemberAchieveService.getPkAwardBySmallAchieve(pkMember, pkCountry, false); +// // 奖衔列表 +// List awardsList = cuMemberAwardsUnderVO.getAwardsList(); +// Map awardsMap = new HashMap<>(); +// for (BdAwards bdAwards : awardsList) { +// awardsMap.put(bdAwards.getPkId(), bdAwards); +// } +// +// // 会员信息 +// CuMemberExt cuMember = iCuMemberService.getMemberById(pkMember); +// if (null == cuMember.getPkMaxAwards()) { +// // 当月奖衔 +// BdAwards nowAwards = awardsMap.get(cuMemberAwardsUnderVO.getPkAwards()); +// memberAwardsInfoVO.setMaxAwardsName(nowAwards.getAwardsName()); +// } else { +// // 当月奖衔 +// BdAwards nowAwards = awardsMap.get(cuMemberAwardsUnderVO.getPkAwards()); +// // 新制度最高奖衔 +// BdAwards maxAwards = awardsMap.get(cuMember.getPkMaxAwards()); +// +// if (maxAwards.getAwardsValue().compareTo(nowAwards.getAwardsValue()) >= 0) { +// memberAwardsInfoVO.setMaxAwardsName(maxAwards.getAwardsName()); +// } else { +// memberAwardsInfoVO.setMaxAwardsName(nowAwards.getAwardsName()); +// } +// } + +// // 查询历史荣誉奖衔 +// CuMemberHistroyAwardsExt memberHistroyAwards = iCuMemberHistroyAwardsService.getOldAwards(pkMember); +// if (null != memberHistroyAwards) { +// memberAwardsInfoVO.setHistoryAwards(memberHistroyAwards.getAwardsName()); +// memberAwardsInfoVO.setHistoryAwardsImg(memberHistroyAwards.getImage()); +// } // 会员信息 CuMemberExt cuMember = iCuMemberService.getMemberById(pkMember); - if (null == cuMember.getPkMaxAwards()) { - // 当月奖衔 - BdAwards nowAwards = awardsMap.get(cuMemberAwardsUnderVO.getPkAwards()); - memberAwardsInfoVO.setMaxAwardsName(nowAwards.getAwardsName()); - } else { - // 当月奖衔 - BdAwards nowAwards = awardsMap.get(cuMemberAwardsUnderVO.getPkAwards()); - // 新制度最高奖衔 - BdAwards maxAwards = awardsMap.get(cuMember.getPkMaxAwards()); - if (maxAwards.getAwardsValue().compareTo(nowAwards.getAwardsValue()) >= 0) { - memberAwardsInfoVO.setMaxAwardsName(maxAwards.getAwardsName()); - } else { - memberAwardsInfoVO.setMaxAwardsName(nowAwards.getAwardsName()); - } - } - - // 查询历史荣誉奖衔 - CuMemberHistroyAwardsExt memberHistroyAwards = iCuMemberHistroyAwardsService.getOldAwards(pkMember); - if (null != memberHistroyAwards) { - memberAwardsInfoVO.setHistoryAwards(memberHistroyAwards.getAwardsName()); - memberAwardsInfoVO.setHistoryAwardsImg(memberHistroyAwards.getImage()); - } - - // 新制度最高奖衔 - BdAwards memberAwards = awardsMap.get(cuMember.getPkAwards()); + BdAwards memberAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); memberAwardsInfoVO.setAwardsName(memberAwards.getAwardsName()); return AjaxResult.success(memberAwardsInfoVO);