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