From 9530084e3b4891331d320959c45a377eb57c6320 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 17:22:26 +0800 Subject: [PATCH] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E9=80=81=E7=AD=89=E7=BA=A7=EF=BC=8C=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E7=BB=A7=E7=BB=AD=E4=B9=B0=EF=BC=88293?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/ICuMemberDetailServiceApi.java | 14 +++++------- .../activity/dto/UpgradeGiveConfigDTO.java | 3 --- .../detail/mapper/CuMemberLevelMapper.java | 5 +++-- .../provider/CuMemberDetailProvider.java | 12 +++++----- .../detail/service/ICuMemberLevelService.java | 5 +++-- .../impl/CuMemberLevelServiceImpl.java | 18 +++++++-------- .../member/detail/CuMemberLevelMapper.xml | 17 +++++++++----- .../service/impl/SaOrderServiceImpl.java | 22 +++++++++++++++---- 8 files changed, 54 insertions(+), 42 deletions(-) diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java index b28fe445..b1117993 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java @@ -1,26 +1,24 @@ package com.hzs.member.detail; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberAwards; import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; +import java.util.List; + /** - * @Description: 会员升级记录dubbo服务 - * @Author: jiang chao - * @Time: 2024/1/30 17:24 - * @Classname: ICuMemberLevelServiceApi - * @PackageName: com.hzs.member.detail + * 会员升级记录dubbo服务 */ public interface ICuMemberDetailServiceApi { /** - * 查询手动升级的最新一条 + * 查询最新一条 * * @param pkMember 会员ID + * @param typeList 升级类型列表 * @return */ - R queryLastManualUpgrade(Long pkMember); + R queryLastManualUpgrade(Long pkMember, List typeList); /** * 查询手动开通奖衔的最新一条 diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/dto/UpgradeGiveConfigDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/dto/UpgradeGiveConfigDTO.java index adf885a8..53a4e0a6 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/dto/UpgradeGiveConfigDTO.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/dto/UpgradeGiveConfigDTO.java @@ -9,9 +9,6 @@ import java.util.Date; /** * 升级权限赠送规则表DTO - * - * @author zhangjing - * @since 2024-02-18 */ @Data public class UpgradeGiveConfigDTO implements Serializable { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java index f4aae2cf..cb0771eb 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java @@ -22,11 +22,12 @@ public interface CuMemberLevelMapper extends BaseMapper { List listMemberLevelList(@Param("param") CuMemberLevelParam param); /** - * 查询手动 + 自动升级的最新一条 + * 查询最新一条 * * @param pkMember 会员ID + * @param typeList 升级类型列表 * @return */ - CuMemberLevel queryLastManualUpgrade(@Param("pkMember") Long pkMember); + CuMemberLevel queryLastManualUpgrade(@Param("pkMember") Long pkMember, @Param("typeList") List typeList); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java index 981f8e3a..30303c9a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java @@ -9,12 +9,10 @@ import com.hzs.member.detail.service.ICuMemberLevelService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; +import java.util.List; + /** - * @Description: 会员升级记录dubbo服务 - * @Author: jiang chao - * @Time: 2024/1/30 17:25 - * @Classname: CuMemberLevelProvider - * @PackageName: com.hzs.member.detail.provider + * 会员升级记录dubbo服务 */ @DubboService public class CuMemberDetailProvider implements ICuMemberDetailServiceApi { @@ -25,8 +23,8 @@ public class CuMemberDetailProvider implements ICuMemberDetailServiceApi { private ICuMemberAwardsService iCuMemberAwardsService; @Override - public R queryLastManualUpgrade(Long pkMember) { - return R.ok(iCuMemberLevelService.queryLastManualUpgrade(pkMember)); + public R queryLastManualUpgrade(Long pkMember, List typeList) { + return R.ok(iCuMemberLevelService.queryLastManualUpgrade(pkMember, typeList)); } @Override diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java index 2eae8d5b..004cf196 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java @@ -31,11 +31,12 @@ public interface ICuMemberLevelService extends IService { void deleteCuMemberLevelRecord(Long pkOrder, Long pkApprove, Date currentDateTime); /** - * 查询手动升级的最新一条 + * 查询最新一条 * * @param pkMember 会员ID + * @param typeList 升级类型列表 * @return */ - CuMemberLevel queryLastManualUpgrade(Long pkMember); + CuMemberLevel queryLastManualUpgrade(Long pkMember, List typeList); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java index b1b1da17..537f9fb1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java @@ -1,9 +1,7 @@ package com.hzs.member.detail.service.impl; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.SaOrderFieldConstants; -import com.hzs.common.core.constant.SystemFieldConstants; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.detail.ext.CuMemberLevelExt; @@ -28,17 +26,17 @@ public class CuMemberLevelServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkApprove); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, currentDateTime); - updateWrapper.eq(SaOrderFieldConstants.PK_ORDER, pkOrder); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(CuMemberLevel::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(CuMemberLevel::getPkModified, pkApprove); + updateWrapper.set(CuMemberLevel::getModifiedTime, currentDateTime); + updateWrapper.eq(CuMemberLevel::getPkOrder, pkOrder); update(updateWrapper); } @Override - public CuMemberLevel queryLastManualUpgrade(Long pkMember) { - return baseMapper.queryLastManualUpgrade(pkMember); + public CuMemberLevel queryLastManualUpgrade(Long pkMember, List typeList) { + return baseMapper.queryLastManualUpgrade(pkMember, typeList); } } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml index 9e8d82e4..e7497a09 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml @@ -39,15 +39,20 @@ order by cml.creation_time desc - + diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 87e8e477..8593c482 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1453,8 +1453,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl cuMember.setConsumeMoney(BigDecimal.ZERO); cuMember.setConsumeAchieve(cuMemberRegister.getConsumeAchieve()); - // 查询最新一条手动升级记录 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId()).getData(); + // 查询最新一条升级记录 + CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId(), Arrays.asList(EUpgradeType.AUTO_UPGRADE.getValue(), EUpgradeType.MANUAL_UPGRADE.getValue())).getData(); if (null != cuMemberLevel) { // 存在手动升级 cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); @@ -1466,8 +1466,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl cuMember.setPkRegisterGrade(gradeDTO.getPkId()); cuMember.setPkSettleGrade(gradeDTO.getPkId()); - // 查询最新一条手动升级记录 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId()).getData(); + // 查询最新一条升级记录 + CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId(), Arrays.asList(EUpgradeType.BUY_UPGRADE.getValue(), EUpgradeType.MANUAL_UPGRADE.getValue())).getData(); if (null != cuMemberLevel) { // 存在手动升级 cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); @@ -2160,6 +2160,13 @@ public class SaOrderServiceImpl extends ServiceImpl impl cuMember.setPkSettleGrade(cuMemberRegister.getPkRegisterGrade()); cuMember.setConsumeMoney(BigDecimal.ZERO); cuMember.setConsumeAchieve(cuMemberRegister.getConsumeAchieve()); + + // 查询最新一条升级记录 + CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId(), Arrays.asList(EUpgradeType.AUTO_UPGRADE.getValue(), EUpgradeType.MANUAL_UPGRADE.getValue())).getData(); + if (null != cuMemberLevel) { + // 存在手动升级 + cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); + } } else { OrderReturn orderReturn = OrderReturn.builder().isEnough(false).build(); GradeDTO gradeDTO = calculateGradeDTO(EOrderType.UPGRADE_ORDER.getValue(), cuMember.getPkSettleCountry(), cuMember.getPkId(), @@ -2167,6 +2174,13 @@ public class SaOrderServiceImpl extends ServiceImpl impl cuMember.setPkRegisterGrade(gradeDTO.getPkId()); cuMember.setPkSettleGrade(gradeDTO.getPkId()); + // 查询最新一条升级记录 + CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.queryLastManualUpgrade(cuMember.getPkId(), Arrays.asList(EUpgradeType.BUY_UPGRADE.getValue(), EUpgradeType.MANUAL_UPGRADE.getValue())).getData(); + if (null != cuMemberLevel) { + // 存在手动升级 + cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); + } + // 记录原奖衔与新奖衔 BdAwards tmpAwards; // 判断奖衔,原奖衔>新奖衔 不进行变奖衔