|
|
@@ -20,8 +20,12 @@ import shop.alien.mapper.LifeUserMapper;
|
|
|
import shop.alien.store.service.ActivityInviteConfigService;
|
|
|
import shop.alien.util.common.RandomCreateUtil;
|
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.time.Instant;
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Comparator;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
@Slf4j
|
|
|
@@ -163,9 +167,12 @@ public class ActivityInviteConfigServiceImpl extends ServiceImpl<ActivityInviteC
|
|
|
int invitePoint = 0;
|
|
|
if(CollectionUtils.isNotEmpty(activityInviteLogList)){
|
|
|
inviteCount = activityInviteLogList.size();
|
|
|
-// invitePoint = activityInviteLogList.stream()
|
|
|
-// .mapToInt(ActivityInviteLog::getInvitePoint) // 将 Entity 流转换为 int 流
|
|
|
-// .sum();
|
|
|
+ for(ActivityInviteLog activityInviteLog : activityInviteLogList){
|
|
|
+ int inviteRewardType = activityInviteLog.getInviteRewardType();
|
|
|
+ if(inviteRewardType == 1 && StringUtils.isNotBlank(activityInviteLog.getInviteRewardContent())){
|
|
|
+ invitePoint = Integer.parseInt(activityInviteLog.getInviteRewardContent()) + invitePoint;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
ActivityInviteInfoVo activityInviteInfoVo = new ActivityInviteInfoVo();
|
|
|
activityInviteInfoVo.setInviteCode(inviteCode);
|
|
|
@@ -181,30 +188,56 @@ public class ActivityInviteConfigServiceImpl extends ServiceImpl<ActivityInviteC
|
|
|
IPage<ActivityInviteLog> iPage = new Page<>(pageNum, pageSize);
|
|
|
LambdaQueryWrapper<ActivityInviteLog> activityInviteLogLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
if(userId != null) {
|
|
|
- activityInviteLogLambdaQueryWrapper.eq(ActivityInviteLog::getInvitedUserId, userId);
|
|
|
+ activityInviteLogLambdaQueryWrapper.eq(ActivityInviteLog::getInviteUserId, userId);
|
|
|
}
|
|
|
activityInviteLogLambdaQueryWrapper.eq(ActivityInviteLog::getDeleteFlag, 0 );
|
|
|
return activityInviteLogMapper.selectPage(iPage, activityInviteLogLambdaQueryWrapper);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public String bindInviteCode(Integer userId, String inviteCode) {
|
|
|
- if(StringUtils.isNotBlank(inviteCode)){
|
|
|
- LifeUser originalLifeUser = lifeUserMapper.selectById(userId);
|
|
|
- if(originalLifeUser!=null && StringUtils.isNotBlank(originalLifeUser.getInviteCode())){
|
|
|
- return "已经绑定邀请码";
|
|
|
+ public String bindInviteCode(Integer invitedUserId, String inviteCode) {
|
|
|
+ if(StringUtils.isNotBlank(inviteCode) && invitedUserId != null){
|
|
|
+ // 根据邀请码查询邀请用户
|
|
|
+ LambdaQueryWrapper<LifeUser> lifeUserLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lifeUserLambdaQueryWrapper.eq(LifeUser::getInviteCode, inviteCode);
|
|
|
+ lifeUserLambdaQueryWrapper.eq(LifeUser::getDeleteFlag, 0);
|
|
|
+ List<LifeUser> lifeUserList = lifeUserMapper.selectList(lifeUserLambdaQueryWrapper);
|
|
|
+ if(CollectionUtils.isEmpty(lifeUserList)){
|
|
|
+ return "邀请码异常或邀请用户已注销";
|
|
|
+ }
|
|
|
+
|
|
|
+ LifeUser originalLifeUser = lifeUserList.get(0);
|
|
|
+ int inviteUserId = originalLifeUser.getId();
|
|
|
+ LifeUser invitedLifeUser = lifeUserMapper.selectById(invitedUserId);
|
|
|
+ if(invitedLifeUser != null && StringUtils.isNotBlank(invitedLifeUser.getInviteCode())){
|
|
|
+ return "已经绑定邀请码,不能重复绑定";
|
|
|
} else {
|
|
|
LambdaQueryWrapper<ActivityInviteConfig> activityInviteConfigLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
activityInviteConfigLambdaQueryWrapper.eq(ActivityInviteConfig::getDeleteFlag,0);
|
|
|
List<ActivityInviteConfig> activityInviteConfigList = activityInviteConfigMapper.selectList(activityInviteConfigLambdaQueryWrapper);
|
|
|
if(CollectionUtils.isNotEmpty(activityInviteConfigList)){
|
|
|
ActivityInviteConfig activityInviteConfig = activityInviteConfigList.get(0);
|
|
|
-
|
|
|
-
|
|
|
+ ActivityInviteLog activityInviteLog = new ActivityInviteLog();
|
|
|
+ activityInviteLog.setInviteUserId(inviteUserId);
|
|
|
+ activityInviteLog.setInvitedUserId(invitedUserId);
|
|
|
+ activityInviteLog.setActivityId(activityInviteConfig.getId());
|
|
|
+
|
|
|
+ if(invitedLifeUser!=null && StringUtils.isNotBlank(invitedLifeUser.getUserName())){
|
|
|
+ activityInviteLog.setNickName(invitedLifeUser.getUserName());
|
|
|
+ }
|
|
|
+ // 邀请奖励
|
|
|
+ activityInviteLog.setInviteRewardType(activityInviteConfig.getInviteRewardType());
|
|
|
+ activityInviteLog.setInviteRewardContent(activityInviteConfig.getInviteRewardContent());
|
|
|
+ // 被邀请奖励
|
|
|
+ activityInviteLog.setInviteRewardType(activityInviteConfig.getInvitedRewardType());
|
|
|
+ activityInviteLog.setInvitedRewardContent(activityInviteConfig.getInvitedRewardContent());
|
|
|
+ activityInviteLog.setInviteTime(Date.from(Instant.now()));
|
|
|
+ return "绑定成功";
|
|
|
+ } else {
|
|
|
+ return "活动未开始或已结束";
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
- return "";
|
|
|
+ return "参数异常";
|
|
|
}
|
|
|
}
|