Commit b6c8fd01 by root

获取定制赛事

parent 1aae4d34
package com.live.common.domain.dto.api;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CustomMadeTeamResponse {
private List<CustomMadeTeamInfo> football;
private List<CustomMadeTeamInfo> basketball;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class CustomMadeTeamInfo {
private String sportsName;
private List<TeamResponse> teamResponses;
}
}
......@@ -46,6 +46,9 @@ public class Sports extends BaseStringIdEntity {
//0 Leyu 1 AlStat
private Integer sourceType;
//1展示在定制中
private Integer customMade;
//篮球使用 性别类型(male: 男子, female: 女子, youthMale: 青年男子, youthFemale: 青年女子)
private String gender;
//篮球使用 比赛常规时间节数
......
......@@ -25,5 +25,7 @@ public class Team extends BaseStringIdEntity {
private String teamIcon;
//0默认1热门
private Integer hotTeam;
private String apiResponse;
private String sportsDbId;
}
package com.live.common.service;
import com.live.common.domain.ResponseData;
import com.live.common.domain.request.CommonIntId;
import javax.servlet.http.HttpServletRequest;
......@@ -14,4 +15,6 @@ public interface CategoryService {
ResponseData<?> getMatchHomeType(HttpServletRequest request);
ResponseData<?> customMadeTeam(CommonIntId commonIntId, HttpServletRequest request);
}
package com.live.common.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.live.common.constant.ConstantValue;
import com.live.common.domain.ResponseData;
import com.live.common.domain.dto.api.CategoryListResponse;
import com.live.common.domain.dto.api.MatchSportsTypeResponse;
import com.live.common.domain.dto.api.MatchTypeListResponse;
import com.live.common.domain.dto.api.*;
import com.live.common.domain.entity.Category;
import com.live.common.domain.entity.Match;
import com.live.common.domain.entity.Sports;
import com.live.common.domain.entity.Team;
import com.live.common.domain.request.CommonIntId;
import com.live.common.mapper.CategoryMapper;
import com.live.common.mapper.SportsMapper;
import com.live.common.mapper.TeamMapper;
import com.live.common.service.CategoryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
......@@ -28,6 +28,8 @@ import java.util.stream.Collectors;
public class CategoryServiceImpl implements CategoryService {
@Resource
private TeamMapper teamMapper;
@Resource
private SportsMapper sportsMapper;
@Resource
private CategoryMapper categoryMapper;
......@@ -133,4 +135,55 @@ public class CategoryServiceImpl implements CategoryService {
.build()));
return ResponseData.successResponse(matchTypeListResponses);
}
@Override
public ResponseData<?> customMadeTeam(CommonIntId commonIntId, HttpServletRequest request) {
if(commonIntId == null || commonIntId.getId() < -1 || commonIntId.getId() > 1){
return ResponseData.fail400Response(" -1 全部 0 足球 1 篮球");
}
QueryWrapper<Sports> wrapper = new QueryWrapper<>();
wrapper.eq("deleted", 0);
wrapper.eq("source_type", 1);
wrapper.eq("custom_made", 1);
if(commonIntId.getId() != -1){
wrapper.eq("sports_id", commonIntId.getId());
}
List<Sports> sports = sportsMapper.selectList(wrapper);
CustomMadeTeamResponse response = new CustomMadeTeamResponse();
response.setBasketball(new LinkedList<>());
response.setFootball(new LinkedList<>());
for(Sports s : sports){
List<Team> teams = teamMapper.selectList(Wrappers.<Team>lambdaQuery()
.eq(Team::getDeleted, 0)
.eq(Team::getOriginalType, 1)
.eq(Team::getSportsDbId, s.getId())
.orderByDesc(Team::getUpdateTime)
);
if(s.getSportsId() == 0){
response.getFootball().add(CustomMadeTeamResponse.CustomMadeTeamInfo.builder()
.sportsName(s.getCompetitionShortName())
.teamResponses(teams.stream().map(b -> TeamResponse.builder()
.score(0)
.teamName(b.getTeamName())
.teamIcon(b.getTeamIcon())
.id(b.getId())
.build()).collect(Collectors.toList()))
.build());
} else {
response.getBasketball().add(CustomMadeTeamResponse.CustomMadeTeamInfo.builder()
.sportsName(s.getCompetitionShortName())
.teamResponses(teams.stream().map(b -> TeamResponse.builder()
.score(0)
.teamName(b.getTeamName())
.teamIcon(b.getTeamIcon())
.id(b.getId())
.build()).collect(Collectors.toList()))
.build());
}
}
return ResponseData.successResponse(response);
}
}
......@@ -281,15 +281,17 @@ public class MatchServiceImpl implements MatchService {
GetTeamInfoListResponse response = new GetTeamInfoListResponse();
response.setHotTeam(new ArrayList<>());
for (Team team : teams) {
GetTeamInfoListResponse.GetTeamInfoInfoResponse teamInfo = GetTeamInfoListResponse.GetTeamInfoInfoResponse.builder()
.id(team.getId())
.teamIcon(team.getTeamIcon())
.teamName(team.getTeamName())
.teamNameEn(team.getTeamNameEn())
.build();
if(commonPage.getPageNum() == 1) {
for (Team team : teams) {
GetTeamInfoListResponse.GetTeamInfoInfoResponse teamInfo = GetTeamInfoListResponse.GetTeamInfoInfoResponse.builder()
.id(team.getId())
.teamIcon(team.getTeamIcon())
.teamName(team.getTeamName())
.teamNameEn(team.getTeamNameEn())
.build();
response.getHotTeam().add(teamInfo);
response.getHotTeam().add(teamInfo);
}
}
long count = teamMapper.selectCount(Wrappers.<Team>lambdaQuery()
......
......@@ -30,7 +30,8 @@ public class IntercaptorConfig implements WebMvcConfigurer {
.excludePathPatterns("/file/**")
.excludePathPatterns("/match/getMatchHomeType", "/match/getMatchListBySportsId", "/match/getMatchInfo", "/match/matchInfoBasketball",
"/match/matchInfoFootball", "/match/getMatchSummaryById", "/match/getMatchLiveList", "/match/matchFootballOdds", "/match/matchBasketballOdds",
"/match/getMatchNewsById", "/match/getHotRankList", "/match/getHotRankInfoById","/match/getHotRankAssociate","/match/getMatchSportsType")
"/match/getMatchNewsById", "/match/getHotRankList", "/match/getHotRankInfoById","/match/getHotRankAssociate","/match/getMatchSportsType",
"/match/customMadeTeam")
.excludePathPatterns("/room/getGiftList", "/room/getRoomInfo", "/room/getAnchorMatch", "/room/leaderboard", "/room/getHotAnchor", "/room/getChatMessage")
.excludePathPatterns("/live/**")
.excludePathPatterns("/article/**")
......
......@@ -50,18 +50,18 @@ public class CommonController {
// return commonService.getMessageList(commonPage, request);
// }
//
// @RequestMapping(value = "/getShareConfig", method = {RequestMethod.POST})
// @ApiOperation(value = "获取分享配置")
// @ApiResponses({
// @ApiResponse(code = 200, message = "成功处理请求"),
// @ApiResponse(code = 401, message = "没有权限访问该服务"),
// @ApiResponse(code = 403, message = "权限不足无法访问该服务"),
// @ApiResponse(code = 404, message = "未发现该服务"),
// @ApiResponse(code = 500, message = "服务器内部错误")
// })
// public ResponseData<?> getShareConfig(HttpServletRequest request) {
// return commonService.getShareConfig(request);
// }
@RequestMapping(value = "/getShareConfig", method = {RequestMethod.POST})
@ApiOperation(value = "获取分享配置")
@ApiResponses({
@ApiResponse(code = 200, message = "成功处理请求"),
@ApiResponse(code = 401, message = "没有权限访问该服务"),
@ApiResponse(code = 403, message = "权限不足无法访问该服务"),
@ApiResponse(code = 404, message = "未发现该服务"),
@ApiResponse(code = 500, message = "服务器内部错误")
})
public ResponseData<?> getShareConfig(HttpServletRequest request) {
return commonService.getShareConfig(request);
}
//
// @ApiIgnore
// @RequestMapping(value = "/imageCallback", method = {RequestMethod.POST})
......
......@@ -64,6 +64,19 @@ public class MatchController {
return categoryService.getMatchHomeType(request);
}
@PostMapping(value = "/customMadeTeam")
@ApiOperation(value = "获取定制球队 -1 全部 0 足球 1 篮球")
@ApiResponses({
@ApiResponse(code = 200, message = "成功处理请求"),
@ApiResponse(code = 401, message = "没有权限访问该服务"),
@ApiResponse(code = 403, message = "权限不足无法访问该服务"),
@ApiResponse(code = 404, message = "未发现该服务"),
@ApiResponse(code = 500, message = "服务器内部错误")
})
public ResponseData<?> customMadeTeam(@RequestBody CommonIntId commonIntId, HttpServletRequest request) {
return categoryService.customMadeTeam(commonIntId, request);
}
@PostMapping(value = "/getMatchListBySportsId")
@ApiOperation(value = "根据 sportsId 获取赛程列表(可带可不带token,带token判断关注)")
@ApiResponses({
......
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