From 61a8a1b57718b83b6f8ac09e817fabf09e96fdc0 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 19 May 2025 18:01:56 +0800
Subject: [PATCH] fix(member): 修正会员累计订单统计
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 46 +++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 41 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index 879af4e..7761620 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -275,12 +275,18 @@
);
if(happyMemberLevel != null){
mallMemberVo.setLevelName(happyMemberLevel.getName());
+ mallMemberVo.setLevelNamePng(happyMemberLevel.getIconPng());
}
if(StrUtil.isNotEmpty(mallMember.getReferrerId())){
MallMember referMember = this.baseMapper.selectInfoByInviteId(mallMember.getReferrerId());
if (referMember != null) {
mallMemberVo.setReferrerName(referMember.getName());
}
+ }
+ if(mallMember.getStoreMaster() == 0){
+ mallMemberVo.setIsTeamLeader(2);
+ }else{
+ mallMemberVo.setIsTeamLeader(1);
}
if (StrUtil.isNotBlank(mallMember.getTradePassword())) {
@@ -649,6 +655,7 @@
mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
mallMember.setOpenId(openId);
mallMember.setSessionKey(sessionKey);
+ mallMember.setTradePassword(SecureUtil.md5("123456"));
if (StrUtil.isNotBlank(apiXcxLoginDto.getInviteId())) {
MallMember member = this.baseMapper.selectInfoByInviteId(apiXcxLoginDto.getInviteId());
@@ -693,6 +700,13 @@
wallet.setBalance(BigDecimal.ZERO);
wallet.setMemberId(mallMember.getId());
mallMemberWalletMapper.insert(wallet);
+
+ //分销员的邀请码赠送优惠卷
+ if (StrUtil.isNotBlank(apiXcxLoginDto.getInviteId())) {
+ GetCouponDto getCouponDto = new GetCouponDto();
+ getCouponDto.setInviteId(apiXcxLoginDto.getInviteId());
+ scanCoupon(getCouponDto);
+ }
} else {
if (MallMember.ACCOUNT_STATUS_DISABLED.equals(mallMember.getAccountStatus())) {
throw new FebsException("账号已停用");
@@ -762,7 +776,7 @@
this.baseMapper.updateById(mallMember);
//完善信息赠送新人礼
- if (StrUtil.isBlank(mallMember.getLevel())) {
+ if (StrUtil.isNotBlank(mallMember.getPhone())) {
DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
CommonDictionaryEnum.NEW_GIFT_SETTING.getType(),
CommonDictionaryEnum.NEW_GIFT_SETTING.getCode()
@@ -918,10 +932,12 @@
mallMoneyFlowService.addMoneyFlow(
memberId,
amount,
- MoneyFlowTypeEnum.RECHARGE.getValue(),
+ ScoreFlowTypeEnum.RECHARGE_ING.getValue(),
rechargeNo,
FlowTypeEnum.BALANCE.getValue(),
- "余额充值",1);
+ StrUtil.format(ScoreFlowTypeEnum.RECHARGE_ING.getDesc(),amount),
+ 1
+ );
String wxResultStr = JSONUtil.toJsonStr(brandWCPayRequestData);
String payResultStr = brandWCPayRequestData.getPrepay_id();
@@ -1568,13 +1584,31 @@
@Override
public FebsResponse newGiftEvent() {
+ // 获取当前登录用户的ID
+ Long memberId = LoginUserUtil.getLoginUser().getId();
+
+ ApiMemberNewGiftSettingVo apiMemberNewGiftSettingVo = new ApiMemberNewGiftSettingVo();
+
+ MallMember mallMember = this.baseMapper.selectById(memberId);
+ Date lastLoginTime = mallMember.getLastLoginTime();
+ if(lastLoginTime == null){
+ apiMemberNewGiftSettingVo.setOpenState(1);
+ }
+ if(lastLoginTime != null){
+ Date now = new Date();
+ long between = DateUtil.between(lastLoginTime, now, DateUnit.DAY);
+ if(between > 0){
+ apiMemberNewGiftSettingVo.setOpenState(1);
+ }else{
+ apiMemberNewGiftSettingVo.setOpenState(0);
+ }
+ }
+
DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
CommonDictionaryEnum.NEW_GIFT_SETTING.getType(),
CommonDictionaryEnum.NEW_GIFT_SETTING.getCode()
);
ApiNewGiftSettingDto apiNewGiftSettingDto = JSONObject.parseObject(dic.getValue(), ApiNewGiftSettingDto.class);
-
- ApiMemberNewGiftSettingVo apiMemberNewGiftSettingVo = new ApiMemberNewGiftSettingVo();
apiMemberNewGiftSettingVo.setState(apiNewGiftSettingDto.getState());
apiMemberNewGiftSettingVo.setPrizeScore(apiNewGiftSettingDto.getPrizeScore());
@@ -1587,6 +1621,8 @@
apiMemberNewGiftSettingVo.setCouponName(coupons.get(0).getName());
}
+ this.baseMapper.updateLastLoginTime(memberId,new Date());
+
return new FebsResponse().success().data(apiMemberNewGiftSettingVo);
}
--
Gitblit v1.9.1