Commit fb214741 authored by libin's avatar libin

抽奖活动弹窗修改

parent a1f29bf8
...@@ -8,6 +8,7 @@ import tk.mybatis.mapper.code.IdentityDialect; ...@@ -8,6 +8,7 @@ import tk.mybatis.mapper.code.IdentityDialect;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Transient;
import java.math.BigInteger; import java.math.BigInteger;
@Data @Data
...@@ -61,4 +62,7 @@ public class ActivityPopup { ...@@ -61,4 +62,7 @@ public class ActivityPopup {
@Column(name = "time_type") @Column(name = "time_type")
private Integer timeType; private Integer timeType;
@Column(name = "activity_id")
private Integer activityId;
} }
...@@ -7,6 +7,7 @@ import com.xxfc.platform.activity.entity.ActivityPopup; ...@@ -7,6 +7,7 @@ import com.xxfc.platform.activity.entity.ActivityPopup;
import com.xxfc.platform.activity.entity.ActivityPopupUser; import com.xxfc.platform.activity.entity.ActivityPopupUser;
import com.xxfc.platform.activity.mapper.ActivityPopupMapper; import com.xxfc.platform.activity.mapper.ActivityPopupMapper;
import com.xxfc.platform.activity.mapper.ActivityPopupUserMapper; import com.xxfc.platform.activity.mapper.ActivityPopupUserMapper;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -16,10 +17,8 @@ import tk.mybatis.mapper.weekend.WeekendSqls; ...@@ -16,10 +17,8 @@ import tk.mybatis.mapper.weekend.WeekendSqls;
import javax.swing.plaf.synth.SynthEditorPaneUI; import javax.swing.plaf.synth.SynthEditorPaneUI;
import java.math.BigInteger; import java.math.BigInteger;
import java.util.ArrayList; import java.time.Instant;
import java.util.Arrays; import java.util.*;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -38,6 +37,9 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup ...@@ -38,6 +37,9 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup
@Autowired @Autowired
private ActivityPopupUserBiz activityPopupUserBiz; private ActivityPopupUserBiz activityPopupUserBiz;
@Autowired
private ActivityPopularizeUserBiz activityPopularizeUserBiz;
/** /**
* 获取活动弹窗,根据是否登录 * 获取活动弹窗,根据是否登录
* *
...@@ -50,7 +52,7 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup ...@@ -50,7 +52,7 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup
if (activityPopups == null || activityPopups.size() == 0) { if (activityPopups == null || activityPopups.size() == 0) {
return activityPopups; return activityPopups;
} }
List<Integer> collect = activityPopups.parallelStream().map(ActivityPopup::getId).collect(Collectors.toList()); /* List<Integer> collect = activityPopups.parallelStream().map(ActivityPopup::getId).collect(Collectors.toList());
Example exaple = Example.builder(ActivityPopupUser.class) Example exaple = Example.builder(ActivityPopupUser.class)
.where(WeekendSqls.<ActivityPopupUser>custom() .where(WeekendSqls.<ActivityPopupUser>custom()
.andEqualTo(ActivityPopupUser::getUserId, userInfo.getUserid()) .andEqualTo(ActivityPopupUser::getUserId, userInfo.getUserid())
...@@ -60,13 +62,22 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup ...@@ -60,13 +62,22 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup
if (activityPopupUsers == null || activityPopupUsers.size() == 0) { if (activityPopupUsers == null || activityPopupUsers.size() == 0) {
return activityPopups; return activityPopups;
} }
Set<Integer> popupIdSet = activityPopupUsers.parallelStream().map(ActivityPopupUser::getPopupId).collect(Collectors.toSet()); Set<Integer> popupIdSet = activityPopupUsers.parallelStream().map(ActivityPopupUser::getPopupId).collect(Collectors.toSet());*/
List<ActivityPopup> result = new ArrayList<>(); List<ActivityPopup> result = new ArrayList<>();
List<Integer> activityIds = activityPopups.stream().map(ActivityPopup::getActivityId).collect(Collectors.toList());
activityIds = CollectionUtils.isEmpty(activityIds)? Collections.EMPTY_LIST:activityIds;
Map<Integer, Boolean> activityPopularizeUserMap = activityPopularizeUserBiz.getByUserIdAndPopularizeId(userInfo.getUserid(), activityIds);
for (ActivityPopup activityPopup : activityPopups) { for (ActivityPopup activityPopup : activityPopups) {
if (popupIdSet.add(activityPopup.getId())) { /*if (popupIdSet.add(activityPopup.getId())) {*/
result.add(activityPopup); boolean flag = activityPopularizeUserMap.isEmpty() ||
} activityPopularizeUserMap.get(activityPopup.getActivityId()) == null ||
activityPopularizeUserMap.get(activityPopup.getActivityId().equals(Boolean.FALSE));
if (flag) {
result.add(activityPopup);
}
// }
} }
return result; return result;
} else { } else {
...@@ -89,8 +100,8 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup ...@@ -89,8 +100,8 @@ public class ActivityPopupBiz extends BaseBiz<ActivityPopupMapper, ActivityPopup
.where( .where(
WeekendSqls.<ActivityPopup>custom() WeekendSqls.<ActivityPopup>custom()
.andEqualTo(ActivityPopup::getTimeType, 1) .andEqualTo(ActivityPopup::getTimeType, 1)
.andGreaterThanOrEqualTo(ActivityPopup::getEndTime, BigInteger.valueOf(timeMillis)) .andGreaterThanOrEqualTo(ActivityPopup::getStartTime, BigInteger.valueOf(timeMillis))
.andLessThanOrEqualTo(ActivityPopup::getStartTime, BigInteger.valueOf(timeMillis)) .andLessThanOrEqualTo(ActivityPopup::getEndTime, BigInteger.valueOf(timeMillis))
.andIn(ActivityPopup::getType, Arrays.asList(Types.split(","))) .andIn(ActivityPopup::getType, Arrays.asList(Types.split(",")))
.andEqualTo(ActivityPopup::getStatus, 1) .andEqualTo(ActivityPopup::getStatus, 1)
.andEqualTo(ActivityPopup::getIsDel, 0) .andEqualTo(ActivityPopup::getIsDel, 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment