Commit f62515d2 by Lem

count

parent 2886f5e5
......@@ -35,7 +35,7 @@ public interface MatchService {
ResponseData<?> getPlayerInfoSearch(PlayerInfoSearchRequest searchRequest, HttpServletRequest request);
ResponseData<?> getMatchList(GetMatchListRequest commonStringId, HttpServletRequest request);
// ResponseData<?> getMatchList(GetMatchListRequest commonStringId, HttpServletRequest request);
ResponseData<?> getMatchInfo(CommonStringId commonStringId, HttpServletRequest request);
......
......@@ -11,12 +11,6 @@ import javax.servlet.http.HttpServletRequest;
public interface RoomService {
ResponseData<?> getRoomInfo(CommonStringId commonStringId, HttpServletRequest request);
ResponseData<?> anchorMatch(CommonStringId commonIntId, HttpServletRequest request);
ResponseData<?> leaderboard(CommonStringId commonStringId);
ResponseData<?> getGiftList(HttpServletRequest request);
ResponseData<?> sendGift(SendGiftRequest sendGiftRequest, HttpServletRequest request);
......
......@@ -265,6 +265,7 @@ public class MatchServiceImpl implements MatchService {
List<UserReserve> userReserves = userReserveMapper.selectList(Wrappers.<UserReserve>lambdaQuery()
.eq(UserReserve::getUserId, account.getId())
.eq(UserReserve::getDeleted, StatusEnum.ENABLE.getCode())
.eq(UserReserve::getType, 1)
.orderByDesc(UserReserve::getCreateTime)
);
......@@ -622,85 +623,85 @@ public class MatchServiceImpl implements MatchService {
return ResponseData.successResponse(new ResultPage<>(commonPage.getPageNum(), commonPage.getPageSize(), (int) count, response));
}
@Override
public ResponseData<?> getMatchList(GetMatchListRequest commonStringId, HttpServletRequest request) {
List<Match> matches;
QueryWrapper<Match> wrapper = new QueryWrapper<>();
wrapper.eq("deleted", StatusEnum.ENABLE.getCode());
wrapper.eq("source_type", 1);
wrapper.ge("match_time", DateUtil.getStartTime());
Integer status = commonStringId.getStatus() == null ? 0 : commonStringId.getStatus();
switch (status) {
case -1:
wrapper.notIn("competition_status", 4);
if (StringUtils.isNotBlank(commonStringId.getId())) {
if (commonStringId.getId().length() < 10) {
wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
} else {
wrapper.eq("sports_id", commonStringId.getId());
}
}
wrapper.orderByAsc("match_time");
matches = matchMapper.selectList(wrapper);
break;
case 1:
case 2:
case 3:
wrapper.eq("competition_status", status);
if (StringUtils.isNotBlank(commonStringId.getId())) {
if (commonStringId.getId().length() < 10) {
wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
} else {
wrapper.eq("sports_id", commonStringId.getId());
}
}
wrapper.orderByAsc("match_time");
matches = matchMapper.selectList(wrapper);
break;
default:
wrapper.in("competition_status", 1, 2);
if (StringUtils.isNotBlank(commonStringId.getId())) {
if (commonStringId.getId().length() < 10) {
wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
} else {
wrapper.eq("sports_id", commonStringId.getId());
}
}
wrapper.orderByAsc("match_time");
matches = matchMapper.selectList(wrapper);
break;
}
MatchListResponse matchListResponse = conversionByList(matches, true);
try {
String phone = CommonMethod.getUserPhone(request);
User account = userMapper.selectOne(Wrappers.<User>lambdaQuery()
.eq(User::getPhone, phone)
);
List<UserReserve> userReserves = userReserveMapper.selectList(Wrappers.<UserReserve>lambdaQuery()
.eq(UserReserve::getUserId, account.getId())
.eq(UserReserve::getDeleted, 0)
);
Set<String> reservesId = userReserves.stream().map(UserReserve::getMatchId).collect(Collectors.toSet());
matchListResponse.getMatchLists().forEach(match -> {
match.getMatchInfos().forEach(matchInfo -> {
if (reservesId.contains(matchInfo.getId())) {
matchInfo.setSubscribe(true);
}
});
});
} catch (RuntimeException e) {
log.info("未携带 token !");
}
return ResponseData.successResponse(matchListResponse);
}
// @Override
// public ResponseData<?> getMatchList(GetMatchListRequest commonStringId, HttpServletRequest request) {
// List<Match> matches;
//
// QueryWrapper<Match> wrapper = new QueryWrapper<>();
// wrapper.eq("deleted", StatusEnum.ENABLE.getCode());
// wrapper.eq("source_type", 1);
// wrapper.ge("match_time", DateUtil.getStartTime());
//
// Integer status = commonStringId.getStatus() == null ? 0 : commonStringId.getStatus();
// switch (status) {
// case -1:
// wrapper.notIn("competition_status", 4);
// if (StringUtils.isNotBlank(commonStringId.getId())) {
// if (commonStringId.getId().length() < 10) {
// wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
// } else {
// wrapper.eq("sports_id", commonStringId.getId());
// }
// }
// wrapper.orderByAsc("match_time");
// matches = matchMapper.selectList(wrapper);
// break;
// case 1:
// case 2:
// case 3:
// wrapper.eq("competition_status", status);
// if (StringUtils.isNotBlank(commonStringId.getId())) {
// if (commonStringId.getId().length() < 10) {
// wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
// } else {
// wrapper.eq("sports_id", commonStringId.getId());
// }
// }
//
// wrapper.orderByAsc("match_time");
// matches = matchMapper.selectList(wrapper);
// break;
// default:
// wrapper.in("competition_status", 1, 2);
// if (StringUtils.isNotBlank(commonStringId.getId())) {
// if (commonStringId.getId().length() < 10) {
// wrapper.apply("FIND_IN_SET({0},category_id)", commonStringId.getId());
// } else {
// wrapper.eq("sports_id", commonStringId.getId());
// }
// }
//
// wrapper.orderByAsc("match_time");
// matches = matchMapper.selectList(wrapper);
// break;
// }
//
// MatchListResponse matchListResponse = conversionByList(matches, true);
//
// try {
// String phone = CommonMethod.getUserPhone(request);
// User account = userMapper.selectOne(Wrappers.<User>lambdaQuery()
// .eq(User::getPhone, phone)
// );
//
// List<UserReserve> userReserves = userReserveMapper.selectList(Wrappers.<UserReserve>lambdaQuery()
// .eq(UserReserve::getUserId, account.getId())
// .eq(UserReserve::getDeleted, 0)
// );
// Set<String> reservesId = userReserves.stream().map(UserReserve::getMatchId).collect(Collectors.toSet());
//
// matchListResponse.getMatchLists().forEach(match -> {
// match.getMatchInfos().forEach(matchInfo -> {
// if (reservesId.contains(matchInfo.getId())) {
// matchInfo.setSubscribe(true);
// }
// });
// });
// } catch (RuntimeException e) {
// log.info("未携带 token !");
// }
// return ResponseData.successResponse(matchListResponse);
// }
@Override
public ResponseData<?> getMatchInfo(CommonStringId commonStringId, HttpServletRequest request) {
......@@ -781,22 +782,27 @@ public class MatchServiceImpl implements MatchService {
long count = userReserveMapper.selectCount(Wrappers.<UserReserve>lambdaQuery()
.eq(UserReserve::getUserId, account.getId())
.eq(UserReserve::getType, 0)
.eq(UserReserve::getDeleted, 0)
);
List<UserReserve> userReserves = userReserveMapper.selectList(Wrappers.<UserReserve>lambdaQuery()
.eq(UserReserve::getUserId, account.getId())
.eq(UserReserve::getDeleted, 0)
.eq(UserReserve::getType, 0)
.last(String.format(" limit %s,%s", jumpNum, commonPage.getPageSize()))
);
List<Match> matches = new ArrayList<>();
if (userReserves.size() > 0) {
matches = matchMapper.selectList(Wrappers.<Match>lambdaQuery()
.in(Match::getId, userReserves.stream().map(UserReserve::getMatchId).collect(Collectors.toSet()))
.eq(Match::getDeleted, 0)
.orderByDesc(Match::getMatchTime)
);
for (UserReserve userReserve : userReserves) {
Match match = matchMapper.selectById(userReserve.getMatchId());
if (match != null) {
matches.add(match);
} else {
count--;
}
}
}
MatchHomeListByDayResponse response = new MatchHomeListByDayResponse();
......
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