import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;String result =null;
Map params = new HashMap();//请求参数params.put("key",Global.APPKEY);//您申请的appKey
params.put("year-month",selectYearMoth);
try {
result =net(“URL”, params, "GET");
if(result==null) {
System.out.println("接口查询失败");
}
JSONObject object = JSONObject.parseObject(result);
if(Integer.parseInt(object.get("error_code").toString())!=0){
if(!"217701".equals(object.get("error_code").toString())) {// 217701 无返回数据
System.out.println("接口连接错误。错误代码:"+object.get("error_code").toString());
}
}else{
JSONObject object1 = JSONObject.parseObject(object.getString("result"));
JSONObject object2 = JSONObject.parseObject(object1.getString("data"));
JSONArray object3 = null;
try {//聚合数据在holiday时 有时为 JSONArray 有时为JSONObject 此处均转换为JSONArray
object3 = JSONArray.parseArray(object2.getString("holiday"));
} catch (Exception e) {
String temp = "["+object2.getString("holiday")+"]";
object3 = JSONArray.parseArray(temp);
}
for (Object object4 : object3) {
JSONObject object5 = JSONObject.parseObject(object4.toString());
//JSONArray object6 = JSONArray.parseArray(object5.getString("list"));
JSONArray object6 = null;
try {//聚合数据在holiday时 有时为 JSONArray 有时为JSONObject 此处均转换为JSONArray
object6 = JSONArray.parseArray(object5.getString("list"));
} catch (Exception e) {
String temp = "["+object5.getString("list")+"]";
object6 = JSONArray.parseArray(temp);
}
for (Object object7 : object6) {
JSONObject object8 = JSONObject.parseObject(object7.toString());
//System.out.println(object8.get("date")+":"+object8.get("status"));
String[] nowDate = object8.get("date").toString().split("-");
//System.out.println(nowDate[0]+":"+nowDate[1]+":"+nowDate[2]);
//String[] selectDate = selectYearMoth.split("-");
int year = Integer.parseInt(nowDate[0]);
int month = Integer.parseInt(nowDate[1]);
int day = Integer.parseInt(nowDate[2]);
int validate = object8.get("date").toString().indexOf(selectYearMoth);
//System.out.println(object8.get("date").toString().indexOf(selectYearMoth));
if(validate !=-1 &&dao.validateHoliday(year, month, day)) {//查询月份相同再入库 返回json会出现连月假期
Bean bean = new Bean();
String name =object5.getString("name");
if("1".equals(object8.get("status"))) {//1是假期 2是调休补办
name+="假期";
}else {
name+="调休补班";
}
//各种set
dao.save(bean);
}else {
//System.out.println(name+":"+object8.get("date")+"无法插入"+selectDate[1]);
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}