| | |
| | | package cc.mrbird.febs.dapp.soccer.service.Impl; |
| | | |
| | | import cc.mrbird.febs.common.contants.SoccerContants; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.dapp.soccer.dto.LeaguesApiDto; |
| | | import cc.mrbird.febs.dapp.soccer.entity.SoccerCountries; |
| | |
| | | import cn.hutool.json.JSONArray; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.mashape.unirest.http.HttpResponse; |
| | | import com.mashape.unirest.http.Unirest; |
| | |
| | | import lombok.RequiredArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Slf4j |
| | | @Service |
| | |
| | | if(CollUtil.isNotEmpty(jsonArray)){ |
| | | for(Object list : jsonArray){ |
| | | JSONObject jsonObject = JSONUtil.parseObj(list); |
| | | String code = SoccerResponseUtil.objectToStr(jsonObject.get("code")); |
| | | List<SoccerCountries> soccerCountryList = soccerCountriesMapper.selectList(new QueryWrapper<SoccerCountries>().eq("code", code)); |
| | | if(CollUtil.isNotEmpty(soccerCountryList)){ |
| | | continue; |
| | | } |
| | | SoccerCountries soccerCountries = new SoccerCountries(); |
| | | soccerCountries.setName(SoccerResponseUtil.objectToStr(jsonObject.get("code"))); |
| | | soccerCountries.setCode(SoccerResponseUtil.objectToStr(jsonObject.get("name"))); |
| | |
| | | JSONObject parseObjLeague = JSONUtil.parseObj(leagueObj); |
| | | JSONObject leagueStr = JSONUtil.parseObj(parseObjLeague); |
| | | |
| | | Integer leaguesId = SoccerResponseUtil.objectToInteger(leagueStr.get("id")); |
| | | List<SoccerLeagues> soccerLeaguesList = soccerLeaguesMapper.selectList(new QueryWrapper<SoccerLeagues>().eq("leagues_id", leaguesId)); |
| | | if(CollUtil.isNotEmpty(soccerLeaguesList)){ |
| | | continue; |
| | | } |
| | | SoccerLeagues soccerLeagues = new SoccerLeagues(); |
| | | soccerLeagues.setLeaguesId(SoccerResponseUtil.objectToInteger(leagueStr.get("id"))); |
| | | soccerLeagues.setLeaguesName(SoccerResponseUtil.objectToStr(leagueStr.get("name"))); |
| | |
| | | soccerLeaguesMapper.insert(soccerLeagues); |
| | | } |
| | | } |
| | | System.out.println(jsonArray); |
| | | log.info(String.valueOf(response.getRawBody())); |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse timezone() { |
| | | HttpResponse<String> response = null; |
| | | try { |
| | | response = Unirest.get("https://v3.football.api-sports.io/timezone") |
| | | .header("x-rapidapi-key", "87f8d87d629d1704ba49622cb978eb81") |
| | | .header("x-rapidapi-host", "v3.football.api-sports.io").asString(); |
| | | } catch (UnirestException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | log.info(response.getBody()); |
| | | |
| | | // JSONArray jsonArray = SoccerResponseUtil.getResponseToJSONArray(response); |
| | | // if(CollUtil.isNotEmpty(jsonArray)){ |
| | | // for(Object list : jsonArray){ |
| | | // JSONObject jsonObject = JSONUtil.parseObj(list); |
| | | // String code = SoccerResponseUtil.objectToStr(jsonObject.get("code")); |
| | | // List<SoccerCountries> soccerCountryList = soccerCountriesMapper.selectList(new QueryWrapper<SoccerCountries>().eq("code", code)); |
| | | // if(CollUtil.isNotEmpty(soccerCountryList)){ |
| | | // continue; |
| | | // } |
| | | // SoccerCountries soccerCountries = new SoccerCountries(); |
| | | // soccerCountries.setName(SoccerResponseUtil.objectToStr(jsonObject.get("code"))); |
| | | // soccerCountries.setCode(SoccerResponseUtil.objectToStr(jsonObject.get("name"))); |
| | | // soccerCountries.setFlag(SoccerResponseUtil.objectToStr(jsonObject.get("flag"))); |
| | | // soccerCountriesMapper.insert(soccerCountries); |
| | | // } |
| | | // } |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | |
| | | StringBuffer stringBuffer = new StringBuffer("{\n" + |
| | | "get: \"timezone\"\n" + |
| | | "parameters: [\n" + |
| | | "]\n" + |
| | | "errors: [\n" + |
| | | "]\n" + |
| | | "results: 427 paging: {current: 1 total: 1}response: [0: \"Africa/Abidjan\"1: \"Africa/Accra\"2: \"Africa/Addis_Ababa\"3: \"Africa/Algiers\"4: \"Africa/Asmara\"]}"); |
| | | JSONObject parseObj = JSONUtil.parseObj(stringBuffer); |
| | | Object responseStr = parseObj.get(SoccerContants.RESPONSE); |
| | | JSONArray jsonArray = JSONUtil.parseArray(responseStr); |
| | | System.out.println(jsonArray); |
| | | |
| | | } |
| | | } |