From 32788c14d2900c460f992d931f8b00af82fd0ede Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Sun, 04 Feb 2024 10:44:29 +0800
Subject: [PATCH] 确认收货更新用户的会员信息
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index aa7fd5e..572d0c9 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -735,6 +735,23 @@
}
}
+ Integer isMember = member.getIsMember();
+ if(AppContants.MEMBER_STATE_NO == isMember){
+ List<MallOrderInfo> mallOrderInfos = this.baseMapper.selectOrderInfoByStatus(OrderStatusEnum.FINISH.getValue());
+ if(CollUtil.isNotEmpty(mallOrderInfos)){
+ DataDictionaryCustom minAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.MIN_AMOUNT_IS_MEMBER.getType(),
+ DataDictionaryEnum.MIN_AMOUNT_IS_MEMBER.getCode()
+ );
+ BigDecimal minAmount = new BigDecimal(minAmountDic.getValue());//系统设置的累计消费金额
+ BigDecimal accumulateAmount = mallOrderInfos.stream().map(MallOrderInfo::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);//累计消费金额
+ if(minAmount.compareTo(accumulateAmount) <= 0){//用户累计消费大于系统设置的累计消费
+ member.setIsMember(AppContants.MEMBER_STATE_YES);
+ memberMapper.updateById(member);
+ }
+ }
+ }
+
}
@Override
--
Gitblit v1.9.1