KKSU
2024-05-11 dcc9e23af5cc800768dfa7802be5962862598a1d
src/main/java/cc/mrbird/febs/dapp/soccer/service/Impl/CountryServiceImpl.java
@@ -1,5 +1,6 @@
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;
@@ -14,6 +15,7 @@
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;
@@ -21,6 +23,8 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
@@ -45,6 +49,11 @@
        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")));
@@ -82,6 +91,11 @@
                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")));
@@ -90,8 +104,54 @@
                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);
    }
}