From f18f343009b97b7802635ff2d3a84cc4f89cdb41 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 13 May 2024 12:07:17 +0800
Subject: [PATCH] 球队信息

---
 src/main/java/cc/mrbird/febs/dapp/soccer/service/SoccerOnlineService.java          |    7 +
 src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/SoccerOnlineServiceImpl.java |   15 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/Venue.java                         |   29 ++++
 src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerController.java          |   20 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerTeamMapper.java              |    7 +
 src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerVenueMapper.java             |    7 +
 src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java      |   87 ++++++++++++
 src/main/java/cc/mrbird/febs/dapp/soccer/dto/TeamsApiDto.java                      |   39 +++++
 src/main/java/cc/mrbird/febs/dapp/soccer/util/SoccerResponseUtil.java              |   17 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerVenue.java                   |   18 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/Team.java                          |   29 ++++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/LeaguesResponse.java               |    2 
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerTeam.java                    |   18 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfo.java                     |   15 ++
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerLeaguesSeasons.java          |   13 +
 src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfoResponse.java             |   37 +++++
 src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerOnlineController.java    |   25 +++
 src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerLeaguesSeasonsMapper.java    |    7 +
 src/main/java/cc/mrbird/febs/dapp/soccer/service/CountryService.java               |    5 
 19 files changed, 392 insertions(+), 5 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerController.java b/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerController.java
index f91f813..100a1c3 100644
--- a/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerController.java
@@ -2,12 +2,16 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.dapp.soccer.dto.LeaguesApiDto;
+import cc.mrbird.febs.dapp.soccer.dto.TeamsApiDto;
 import cc.mrbird.febs.dapp.soccer.service.CountryService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 @Slf4j
 @RequiredArgsConstructor
@@ -36,4 +40,18 @@
     public FebsResponse leagues(LeaguesApiDto leaguesApiDto) {
         return countryService.leagues(leaguesApiDto);
     }
+
+    @ApiOperation(value = "获取联赛赛季", notes = "获取联赛赛季")
+    @PostMapping(value = "/leagues/seasons")
+    public FebsResponse seasons() {
+        return countryService.seasons();
+    }
+
+    @ApiOperation(value = "获取球队", notes = "获取球队")
+    @PostMapping(value = "/teams")
+    public FebsResponse teams(TeamsApiDto teamsApiDto) {
+        return countryService.teams(teamsApiDto);
+    }
+
+
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerOnlineController.java b/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerOnlineController.java
new file mode 100644
index 0000000..76d61c1
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/controller/SoccerOnlineController.java
@@ -0,0 +1,25 @@
+package cc.mrbird.febs.dapp.soccer.controller;
+
+import cc.mrbird.febs.dapp.soccer.service.SoccerOnlineService;
+import io.swagger.annotations.Api;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Slf4j
+@RequiredArgsConstructor
+@CrossOrigin("*")
+@RestController
+@Api(value = "FOOTBALL-ONLINE", tags = "FOOTBALL-ONLINE")
+@RequestMapping(value = "/dapi/footballOnline")
+public class SoccerOnlineController {
+
+    private final SoccerOnlineService soccerOnlineService;
+
+    /**
+     *
+     */
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/dto/TeamsApiDto.java b/src/main/java/cc/mrbird/febs/dapp/soccer/dto/TeamsApiDto.java
new file mode 100644
index 0000000..f7b7fc2
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/dto/TeamsApiDto.java
@@ -0,0 +1,39 @@
+package cc.mrbird.febs.dapp.soccer.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class TeamsApiDto {
+
+
+    @ApiModelProperty(value = "球队ID", example = "20")
+    private Integer id;
+
+
+    @ApiModelProperty(value = "球队名称", example = "Australia")
+    private String name;
+
+
+    @ApiModelProperty(value = "球队编码", example = "AUS")
+    private String code;
+
+
+    @ApiModelProperty(value = "球队名称或国家名称", example = "Australia")
+    private String search;
+
+    @ApiModelProperty(value = "国家名称", example = "Australia")
+    private String country;
+
+
+    @ApiModelProperty(value = "联赛ID", example = "2024")
+    private Integer league;
+
+    @ApiModelProperty(value = "赛季,YYYY", example = "2023")
+    private Integer season;
+
+    @ApiModelProperty(value = "球馆ID", example = "20322")
+    private String venus;
+
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/LeaguesResponse.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/LeaguesResponse.java
index 5bbe20e..2b90260 100644
--- a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/LeaguesResponse.java
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/LeaguesResponse.java
@@ -20,7 +20,7 @@
     private int results;
 
     @JsonProperty("paging")
-    private JsonResponse.Paging paging;
+    private Paging paging;
 
     @JsonProperty("response")
     private List<LeaguesInfo> response;
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerLeaguesSeasons.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerLeaguesSeasons.java
new file mode 100644
index 0000000..152097d
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerLeaguesSeasons.java
@@ -0,0 +1,13 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("soccer_leagues_seasons")
+public class SoccerLeaguesSeasons extends BaseEntity {
+
+    private String seasonsName;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerTeam.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerTeam.java
new file mode 100644
index 0000000..82e47a7
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerTeam.java
@@ -0,0 +1,18 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("soccer_team")
+public class SoccerTeam extends BaseEntity {
+
+    private Integer teamId;
+    private String name;
+    private String code;
+    private String country;
+    private Integer founded;
+    private String national;
+    private String logo;
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerVenue.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerVenue.java
new file mode 100644
index 0000000..5cf2624
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/SoccerVenue.java
@@ -0,0 +1,18 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("soccer_venue")
+public class SoccerVenue extends BaseEntity {
+
+    private Integer venueId;
+    private String name;
+    private String address;
+    private String city;
+    private Integer capacity;
+    private String surface;
+    private String image;
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Team.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Team.java
new file mode 100644
index 0000000..a5163fc
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Team.java
@@ -0,0 +1,29 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class Team {
+
+    @JsonProperty("id")
+    private Integer id;
+
+    @JsonProperty("name")
+    private String name;
+
+    @JsonProperty("code")
+    private String code;
+
+    @JsonProperty("country")
+    private String country;
+
+    @JsonProperty("founded")
+    private Integer founded;
+
+    @JsonProperty("national")
+    private String national;
+
+    @JsonProperty("logo")
+    private String logo;
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfo.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfo.java
new file mode 100644
index 0000000..4699456
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfo.java
@@ -0,0 +1,15 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class TeamsInfo {
+
+    @JsonProperty("team")
+    private Team team;
+
+    @JsonProperty("venue")
+    private Venue venue;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfoResponse.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfoResponse.java
new file mode 100644
index 0000000..0746ed2
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/TeamsInfoResponse.java
@@ -0,0 +1,37 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+import java.util.List;
+@Data
+public class TeamsInfoResponse {
+
+    @JsonProperty("get")
+    private String get;
+
+    @JsonProperty("parameters")
+    private Object parameters;
+
+    @JsonProperty("errors")
+    private List<Object> errors;
+
+    @JsonProperty("results")
+    private int results;
+
+    @JsonProperty("paging")
+    private Paging paging;
+
+    @JsonProperty("response")
+    private List<TeamsInfo> response;
+
+
+    public static class Paging {
+        @JsonProperty("current")
+        private int current;
+
+        @JsonProperty("total")
+        private int total;
+
+    }
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Venue.java b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Venue.java
new file mode 100644
index 0000000..ee98638
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/entity/Venue.java
@@ -0,0 +1,29 @@
+package cc.mrbird.febs.dapp.soccer.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class Venue {
+
+    @JsonProperty("id")
+    private Integer id;
+
+    @JsonProperty("name")
+    private String name;
+
+    @JsonProperty("address")
+    private String address;
+
+    @JsonProperty("city")
+    private String city;
+
+    @JsonProperty("capacity")
+    private Integer capacity;
+
+    @JsonProperty("surface")
+    private String surface;
+
+    @JsonProperty("image")
+    private String image;
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerLeaguesSeasonsMapper.java b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerLeaguesSeasonsMapper.java
new file mode 100644
index 0000000..c7a34d9
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerLeaguesSeasonsMapper.java
@@ -0,0 +1,7 @@
+package cc.mrbird.febs.dapp.soccer.mapper;
+
+import cc.mrbird.febs.dapp.soccer.entity.SoccerLeaguesSeasons;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+public interface SoccerLeaguesSeasonsMapper extends BaseMapper<SoccerLeaguesSeasons> {
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerTeamMapper.java b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerTeamMapper.java
new file mode 100644
index 0000000..537c87b
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerTeamMapper.java
@@ -0,0 +1,7 @@
+package cc.mrbird.febs.dapp.soccer.mapper;
+
+import cc.mrbird.febs.dapp.soccer.entity.SoccerTeam;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+public interface SoccerTeamMapper extends BaseMapper<SoccerTeam> {
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerVenueMapper.java b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerVenueMapper.java
new file mode 100644
index 0000000..1d7baaa
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/mapper/SoccerVenueMapper.java
@@ -0,0 +1,7 @@
+package cc.mrbird.febs.dapp.soccer.mapper;
+
+import cc.mrbird.febs.dapp.soccer.entity.SoccerVenue;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+public interface SoccerVenueMapper extends BaseMapper<SoccerVenue> {
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/service/CountryService.java b/src/main/java/cc/mrbird/febs/dapp/soccer/service/CountryService.java
index 23b56fe..80cd201 100644
--- a/src/main/java/cc/mrbird/febs/dapp/soccer/service/CountryService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/service/CountryService.java
@@ -2,6 +2,7 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.dapp.soccer.dto.LeaguesApiDto;
+import cc.mrbird.febs.dapp.soccer.dto.TeamsApiDto;
 import cc.mrbird.febs.dapp.soccer.entity.SoccerCountries;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -12,4 +13,8 @@
     FebsResponse leagues(LeaguesApiDto leaguesApiDto);
 
     FebsResponse timezone();
+
+    FebsResponse seasons();
+
+    FebsResponse teams(TeamsApiDto teamsApiDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java
index 26bf217..138ae09 100644
--- a/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java
@@ -2,10 +2,9 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.dapp.soccer.dto.LeaguesApiDto;
+import cc.mrbird.febs.dapp.soccer.dto.TeamsApiDto;
 import cc.mrbird.febs.dapp.soccer.entity.*;
-import cc.mrbird.febs.dapp.soccer.mapper.SoccerCountriesMapper;
-import cc.mrbird.febs.dapp.soccer.mapper.SoccerLeaguesMapper;
-import cc.mrbird.febs.dapp.soccer.mapper.SoccerTimezoneMapper;
+import cc.mrbird.febs.dapp.soccer.mapper.*;
 import cc.mrbird.febs.dapp.soccer.service.CountryService;
 import cc.mrbird.febs.dapp.soccer.util.SoccerResponseUtil;
 import cn.hutool.core.collection.CollUtil;
@@ -33,6 +32,9 @@
     private final SoccerCountriesMapper soccerCountriesMapper;
     private final SoccerLeaguesMapper soccerLeaguesMapper;
     private final SoccerTimezoneMapper soccerTimezoneMapper;
+    private final SoccerLeaguesSeasonsMapper soccerLeaguesSeasonsMapper;
+    private final SoccerTeamMapper soccerTeamMapper;
+    private final SoccerVenueMapper soccerVenueMapper;
 
     @Override
     public FebsResponse countries() {
@@ -140,6 +142,85 @@
         return new FebsResponse().success().data(jsonResponse);
     }
 
+    @Override
+    public FebsResponse seasons() {
+        HttpResponse<String> httpResponse = null;
+        /**
+         * https://v3.football.api-sports.io/leagues/seasons
+         */
+        try {
+            httpResponse = Unirest.get("https://v3.football.api-sports.io/leagues/seasons")
+                    .header("x-rapidapi-key", "87f8d87d629d1704ba49622cb978eb81")
+                    .header("x-rapidapi-host", "v3.football.api-sports.io").asString();
+        } catch (UnirestException e) {
+            e.printStackTrace();
+        }
+
+        JsonResponse jsonResponse = SoccerResponseUtil.getJsonResponse(httpResponse);
+        if(ObjectUtil.isNotEmpty(jsonResponse)){
+            List<Object> responses = jsonResponse.getResponse();
+            if(CollUtil.isNotEmpty(jsonResponse.getResponse())){
+                for(Object seasonsName : responses){
+                    SoccerLeaguesSeasons soccerLeaguesSeasons = new SoccerLeaguesSeasons();
+                    soccerLeaguesSeasons.setSeasonsName(SoccerResponseUtil.objectToStr(seasonsName));
+                    soccerLeaguesSeasonsMapper.insert(soccerLeaguesSeasons);
+                }
+            }
+        }
+        return new FebsResponse().success().data(jsonResponse);
+    }
+
+    @Override
+    public FebsResponse teams(TeamsApiDto teamsApiDto) {
+        HttpResponse<String> httpResponse = null;
+        String country = teamsApiDto.getCountry();
+
+        try {
+            /**
+             *  https://v3.football.api-sports.io/teams
+             */
+            httpResponse = Unirest.get(" https://v3.football.api-sports.io/teams")
+                    .header("x-rapidapi-key", "87f8d87d629d1704ba49622cb978eb81")
+                    .header("x-rapidapi-host", "v3.football.api-sports.io")
+                    .queryString("country",country)
+                    .asString();
+        } catch (UnirestException e) {
+            e.printStackTrace();
+        }
+
+        TeamsInfoResponse teamsInfoResponse = SoccerResponseUtil.getTeamsInfoResponse(httpResponse);
+        if(ObjectUtil.isNotEmpty(teamsInfoResponse)){
+            List<TeamsInfo> responses = teamsInfoResponse.getResponse();
+            if(CollUtil.isNotEmpty(responses)){
+                for(TeamsInfo teamsInfo : responses){
+
+                    Team team = teamsInfo.getTeam();
+                    SoccerTeam soccerTeam = new SoccerTeam();
+                    soccerTeam.setTeamId(team.getId());
+                    soccerTeam.setName(team.getName());
+                    soccerTeam.setCode(team.getCode());
+                    soccerTeam.setCountry(team.getCountry());
+                    soccerTeam.setFounded(team.getFounded());
+                    soccerTeam.setNational(team.getNational());
+                    soccerTeam.setLogo(team.getLogo());
+                    soccerTeamMapper.insert(soccerTeam);
+
+                    Venue venue = teamsInfo.getVenue();
+                    SoccerVenue soccerVenue = new SoccerVenue();
+                    soccerVenue.setVenueId(venue.getId());
+                    soccerVenue.setName(venue.getName());
+                    soccerVenue.setAddress(venue.getAddress());
+                    soccerVenue.setCity(venue.getCity());
+                    soccerVenue.setCapacity(venue.getCapacity());
+                    soccerVenue.setSurface(venue.getSurface());
+                    soccerVenue.setImage(venue.getImage());
+                    soccerVenueMapper.insert(soccerVenue);
+                }
+            }
+        }
+        return new FebsResponse().success().data(teamsInfoResponse);
+    }
+
     public static void main(String[] args) {
         String str = "{\n" +
                 "    \"get\": \"leagues\",\n" +
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/SoccerOnlineServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/SoccerOnlineServiceImpl.java
new file mode 100644
index 0000000..1450a56
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/SoccerOnlineServiceImpl.java
@@ -0,0 +1,15 @@
+package cc.mrbird.febs.dapp.soccer.service.Impl;
+
+import cc.mrbird.febs.dapp.soccer.entity.SoccerLeagues;
+import cc.mrbird.febs.dapp.soccer.mapper.SoccerLeaguesMapper;
+import cc.mrbird.febs.dapp.soccer.service.SoccerOnlineService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class SoccerOnlineServiceImpl extends ServiceImpl<SoccerLeaguesMapper, SoccerLeagues> implements SoccerOnlineService {
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/service/SoccerOnlineService.java b/src/main/java/cc/mrbird/febs/dapp/soccer/service/SoccerOnlineService.java
new file mode 100644
index 0000000..6ba22c3
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/service/SoccerOnlineService.java
@@ -0,0 +1,7 @@
+package cc.mrbird.febs.dapp.soccer.service;
+
+import cc.mrbird.febs.dapp.soccer.entity.SoccerLeagues;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+public interface SoccerOnlineService extends IService<SoccerLeagues> {
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/soccer/util/SoccerResponseUtil.java b/src/main/java/cc/mrbird/febs/dapp/soccer/util/SoccerResponseUtil.java
index 5b6f498..113f695 100644
--- a/src/main/java/cc/mrbird/febs/dapp/soccer/util/SoccerResponseUtil.java
+++ b/src/main/java/cc/mrbird/febs/dapp/soccer/util/SoccerResponseUtil.java
@@ -3,6 +3,7 @@
 import cc.mrbird.febs.common.contants.SoccerContants;
 import cc.mrbird.febs.dapp.soccer.entity.JsonResponse;
 import cc.mrbird.febs.dapp.soccer.entity.LeaguesResponse;
+import cc.mrbird.febs.dapp.soccer.entity.TeamsInfoResponse;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONObject;
@@ -50,6 +51,22 @@
         return leaguesResponse;
     }
 
+    /**
+     * 将接口获取到的返回值转换成TeamsInfoResponse
+     * @param response
+     * @return
+     */
+    public static TeamsInfoResponse getTeamsInfoResponse(HttpResponse<String> response){
+        TeamsInfoResponse teamsInfoResponse = new TeamsInfoResponse();
+        ObjectMapper mapper = new ObjectMapper();
+        try {
+            teamsInfoResponse = mapper.readValue(response.getBody(), TeamsInfoResponse.class);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return teamsInfoResponse;
+    }
+
     public static String objectToStr(Object object){
         return ObjectUtil.isEmpty(object) ? "-" : (String) object;
     }

--
Gitblit v1.9.1