From bb2d5a28790b3456c99f62ca341c8462b3ff6d03 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 21 Aug 2025 17:20:30 +0800 Subject: [PATCH] =?UTF-8?q?##=20=E4=BC=9A=E5=91=98=E6=92=A4=E5=8D=95?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E4=B8=8D=E6=98=AF=E4=BB=A3=E7=90=86=E4=BA=86?= =?UTF-8?q?=EF=BC=8C=E5=88=99=E9=9C=80=E8=A6=81=E5=88=A0=E9=99=A4=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E5=8C=BA=E5=9F=9F=E5=92=8C=E9=85=8D=E9=80=81=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/provider/MemberServiceProvider.java | 9 ++++-- .../impl/CuMemberBusinessServiceImpl.java | 32 +++++++++++++++---- .../service/impl/SaOrderServiceImpl.java | 5 +-- 3 files changed, 35 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 4ba53ee8..b0b58ee1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -106,7 +106,7 @@ public class MemberServiceProvider implements IMemberServiceApi { if (iCuMemberBusinessService.mergeRevokeMemberByRegisterOrder(pkApprove, memberList, saOrderMap, businessCommissionDTO)) { return R.ok(); } - return R.fail("会员信息处理失败"); + return R.fail("合并撤单会员信息处理失败"); } catch (Exception e) { log.error("mergeRevokeMemberByRegisterOrder error msg:{}", e.getMessage(), e); return R.fail(e.getMessage()); @@ -116,10 +116,13 @@ public class MemberServiceProvider implements IMemberServiceApi { @Override public R normalRevokeOrder(Long pkApprove, SaOrderExt saOrder, CuMember cuMember, BusinessCommissionDTO businessCommissionDTO) { try { - return R.ok(iCuMemberBusinessService.normalRevokeOrder(pkApprove, saOrder, cuMember, businessCommissionDTO)); + if (iCuMemberBusinessService.normalRevokeOrder(pkApprove, saOrder, cuMember, businessCommissionDTO)) { + return R.ok(); + } + return R.fail("其它撤单会员信息处理失败"); } catch (Exception e) { log.error("normalRevokeOrder error msg: {}", e.getMessage(), e); - return R.ok(false); + return R.fail(e.getMessage()); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index 6cfbdd17..e17927cf 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -853,6 +853,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { SaOrderExt saOrder = saOrderMap.get(pkMember); // 删除等级 iCuMemberLevelService.deleteCuMemberLevelRecord(saOrder.getPkId(), pkApprove, currentDateTime); + // 删除会员区域 + iCuMemberRetailRegionService.update(Wrappers.lambdaUpdate() + .eq(CuMemberRetailRegion::getPkMember, saOrder.getPkMember()) + .set(CuMemberRetailRegion::getDelFlag, EDelFlag.DELETE.getValue()) + .set(CuMemberRetailRegion::getModifiedTime, currentDateTime) + ); // 回退奖衔,根据订单从 cu_member_awards查询 iCuMemberAwardsService.deleteCuMemberAwards(saOrder.getPkId(), pkApprove, currentDateTime); iCuMemberService.deleteCuMemberByPkMember(pkMember, pkApprove, currentDateTime); @@ -899,12 +905,26 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 升级订单 // 回退等级 iCuMemberLevelService.deleteCuMemberLevelRecord(saOrder.getPkId(), pkApprove, currentDateTime); - // 删除会员区域 - iCuMemberRetailRegionService.update(Wrappers.lambdaUpdate() - .eq(CuMemberRetailRegion::getPkMember, saOrder.getPkMember()) - .set(CuMemberRetailRegion::getDelFlag, EDelFlag.DELETE.getValue()) - .set(CuMemberRetailRegion::getModifiedTime, currentDateTime) - ); + // 如果会员等级非代理,则需要删除会员区域 + GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); + if (gradeDTO.getGradeValue() != EGrade.REGION.getValue() + && gradeDTO.getGradeValue() != EGrade.DIRECTOR.getValue()) { + // 删除会员区域选择 + iCuMemberRetailRegionService.update(Wrappers.lambdaUpdate() + .eq(CuMemberRetailRegion::getPkMember, saOrder.getPkMember()) + .eq(CuMemberRetailRegion::getBusinessType, 1) + .set(CuMemberRetailRegion::getDelFlag, EDelFlag.DELETE.getValue()) + .set(CuMemberRetailRegion::getModifiedTime, currentDateTime) + ); + // 更新会员配送中心为失效 + iCuMemberRetailRegionService.update(Wrappers.lambdaUpdate() + .eq(CuMemberRetailRegion::getPkMember, saOrder.getPkMember()) + .eq(CuMemberRetailRegion::getBusinessType, 2) + .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) + .set(CuMemberRetailRegion::getEffectiveEndDate, DateUtils.getEndTime(null)) + .set(CuMemberRetailRegion::getModifiedTime, currentDateTime) + ); + } } // 更新会员标记,如果是则更新会员信息 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 25a3aee0..92ab013e 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 @@ -2119,8 +2119,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl // iSaOrderWaresLimitService.updateCancelOrder(saOrderExt.getPkId(), saOrderExt.getPkMember(), saOrderExt.getModifiedTime(), boxProductList); // } - if (!iMemberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO).getData()) { - throw new ServiceException("撤单处理会员失败"); + R tmpR = iMemberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO); + if (!tmpR.isSuccess()) { + throw new ServiceException("撤单失败 " + tmpR.getMsg()); } }