3
0
Fork 0

## 会员撤单如果不是代理了,则需要删除会员区域和配送中心;

This commit is contained in:
cabbage 2025-08-21 17:20:30 +08:00
parent 72c7e9c2c9
commit ab875ac18d
3 changed files with 35 additions and 11 deletions

View File

@ -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<Boolean> 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());
}
}

View File

@ -853,6 +853,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
SaOrderExt saOrder = saOrderMap.get(pkMember);
// 删除等级
iCuMemberLevelService.deleteCuMemberLevelRecord(saOrder.getPkId(), pkApprove, currentDateTime);
// 删除会员区域
iCuMemberRetailRegionService.update(Wrappers.<CuMemberRetailRegion>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);
// 删除会员区域
// 如果会员等级非代理则需要删除会员区域
GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData();
if (gradeDTO.getGradeValue() != EGrade.REGION.getValue()
&& gradeDTO.getGradeValue() != EGrade.DIRECTOR.getValue()) {
// 删除会员区域选择
iCuMemberRetailRegionService.update(Wrappers.<CuMemberRetailRegion>lambdaUpdate()
.eq(CuMemberRetailRegion::getPkMember, saOrder.getPkMember())
.eq(CuMemberRetailRegion::getBusinessType, 1)
.set(CuMemberRetailRegion::getDelFlag, EDelFlag.DELETE.getValue())
.set(CuMemberRetailRegion::getModifiedTime, currentDateTime)
);
// 更新会员配送中心为失效
iCuMemberRetailRegionService.update(Wrappers.<CuMemberRetailRegion>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)
);
}
}
// 更新会员标记如果是则更新会员信息

View File

@ -2119,8 +2119,9 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
// iSaOrderWaresLimitService.updateCancelOrder(saOrderExt.getPkId(), saOrderExt.getPkMember(), saOrderExt.getModifiedTime(), boxProductList);
// }
if (!iMemberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO).getData()) {
throw new ServiceException("撤单处理会员失败");
R<Boolean> tmpR = iMemberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO);
if (!tmpR.isSuccess()) {
throw new ServiceException("撤单失败 " + tmpR.getMsg());
}
}