用户活动-我的订阅
This commit is contained in:
@@ -31,4 +31,5 @@ public class UserEventVO extends UserEvent {
|
||||
private Long erbanNo;
|
||||
private Byte gender;
|
||||
private String avatar;
|
||||
private Long offectTimes;
|
||||
}
|
||||
|
@@ -90,7 +90,7 @@ public interface UserEventService extends IService<UserEvent> {
|
||||
BusiResult<List<UserEventVO>> square(Long uid, Integer page, Integer pageSize);
|
||||
|
||||
/**
|
||||
* 我的广场,包括我的+订阅的
|
||||
* 我的广场,包括我的
|
||||
*
|
||||
* @param uid
|
||||
* @param page
|
||||
@@ -98,6 +98,15 @@ public interface UserEventService extends IService<UserEvent> {
|
||||
* @return
|
||||
*/
|
||||
BusiResult<List<UserEventVO>> mysquare(Long uid, Integer page, Integer pageSize);
|
||||
/**
|
||||
* 我的广场,订阅的
|
||||
*
|
||||
* @param uid
|
||||
* @param page
|
||||
* @param pageSize
|
||||
* @return
|
||||
*/
|
||||
BusiResult<List<UserEventVO>> mySub(Long uid, Integer page, Integer pageSize);
|
||||
|
||||
/**
|
||||
* 刷新最近即将发生的活动
|
||||
|
@@ -310,30 +310,36 @@ public class UserEventServiceImpl extends ServiceImpl<UserEventMapper, UserEvent
|
||||
UserEventConstant.EventStatus.IN_REVIEW))
|
||||
.eq(UserEvent::getUid, uid);
|
||||
List<UserEvent> userEvents = baseMapper.selectList(wrapper);
|
||||
List<UserEvent> totalList = new ArrayList<>();
|
||||
if (CollectionUtils.isNotEmpty(userEvents)) {
|
||||
totalList.addAll(userEvents);
|
||||
}
|
||||
List<Long> existIds = totalList.stream().map(UserEvent::getId).collect(Collectors.toList());
|
||||
Date now = new Date();
|
||||
List<Long> subEventIds = userEventSubService.subEventId(uid);
|
||||
if (CollectionUtils.isNotEmpty(subEventIds)) {
|
||||
subEventIds.removeIf(existIds::contains);
|
||||
if (CollectionUtils.isNotEmpty(subEventIds)) {
|
||||
wrapper = Wrappers.lambdaQuery();
|
||||
wrapper.in(UserEvent::getId, subEventIds)
|
||||
.eq(UserEvent::getEventStatus, UserEventConstant.EventStatus.PASS);
|
||||
userEvents = baseMapper.selectList(wrapper);
|
||||
if (CollectionUtils.isNotEmpty(userEvents)) {
|
||||
totalList.addAll(userEvents);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (CollectionUtils.isEmpty(totalList)) {
|
||||
if (CollectionUtils.isEmpty(userEvents)) {
|
||||
return BusiResult.success(EMPTY_LIST);
|
||||
}
|
||||
Collections.sort(totalList, Comparator.comparing(UserEvent::getEventStartTime));
|
||||
List<UserEvent> resultList = PageUtil.page(totalList, page, pageSize);
|
||||
Collections.sort(userEvents, Comparator.comparing(UserEvent::getEventStartTime));
|
||||
List<UserEvent> resultList = PageUtil.page(userEvents, page, pageSize);
|
||||
if (CollectionUtils.isEmpty(resultList)) {
|
||||
return BusiResult.success(EMPTY_LIST);
|
||||
}
|
||||
return BusiResult.success(this.calUserEventVo(resultList, now, uid));
|
||||
}
|
||||
|
||||
@Override
|
||||
public BusiResult<List<UserEventVO>> mySub(Long uid, Integer page, Integer pageSize) {
|
||||
Date now = new Date();
|
||||
List<Long> subEventIds = userEventSubService.subEventId(uid);
|
||||
|
||||
if (CollectionUtils.isEmpty(subEventIds)) {
|
||||
return BusiResult.success(EMPTY_LIST);
|
||||
}
|
||||
LambdaQueryWrapper<UserEvent> wrapper = Wrappers.lambdaQuery();
|
||||
wrapper = Wrappers.lambdaQuery();
|
||||
wrapper.in(UserEvent::getId, subEventIds)
|
||||
.eq(UserEvent::getEventStatus, UserEventConstant.EventStatus.PASS);
|
||||
List<UserEvent> userEvents = baseMapper.selectList(wrapper);
|
||||
if (CollectionUtils.isEmpty(userEvents)) {
|
||||
return BusiResult.success(EMPTY_LIST);
|
||||
}
|
||||
Collections.sort(userEvents, Comparator.comparing(UserEvent::getEventStartTime));
|
||||
List<UserEvent> resultList = PageUtil.page(userEvents, page, pageSize);
|
||||
if (CollectionUtils.isEmpty(resultList)) {
|
||||
return BusiResult.success(EMPTY_LIST);
|
||||
}
|
||||
@@ -379,6 +385,7 @@ public class UserEventServiceImpl extends ServiceImpl<UserEventMapper, UserEvent
|
||||
vo.setRoomAvatar(room.getAvatar());
|
||||
}
|
||||
Date eventStartTime = vo.getEventStartTime();
|
||||
vo.setOffectTimes(eventStartTime.getTime() - now.getTime());
|
||||
vo.setLiveStatus(genLiveStatus(eventStartTime, vo.getEventEndTime(), now));
|
||||
vo.setEventStartTimeStr(DateTimeUtil.convertWithZoneId(eventStartTime, partitionEnum.getZoneId()).format(DateTimeUtil.datetimeFormatter));
|
||||
vo.setSubStatus(subbedEvents.contains(vo.getId()));
|
||||
|
@@ -110,6 +110,17 @@ public class UserEventController extends BaseController {
|
||||
return userEventService.mysquare(uid, page, pageSize);
|
||||
}
|
||||
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "uid", value = "uid", required = true, dataType = "long", paramType = "query"),
|
||||
@ApiImplicitParam(name = "page", value = "page", required = true, dataType = "int", paramType = "query"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "pageSize", required = true, dataType = "int", paramType = "query"),
|
||||
})
|
||||
@ApiOperation(value = "我的订阅", httpMethod = "GET")
|
||||
@GetMapping("/mySub")
|
||||
public BusiResult<List<UserEventVO>> mySub(@RequestParam Long uid, @RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "2") Integer pageSize) {
|
||||
return userEventService.mySub(uid, page, pageSize);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "用户活动配置", httpMethod = "GET")
|
||||
@GetMapping(value = "/goldConfig")
|
||||
@ResponseBody
|
||||
|
Reference in New Issue
Block a user