package com.gitonway.fineday.domain;
import org.androidannotations.annotations.EBean;
import android.content.Context;
import com.gitonway.fineday.Constants;
import com.gitonway.fineday.domain.model.WeaterModel;
import com.gitonway.fineday.utils.ACache;
import com.gitonway.fineday.utils.LogUtils;
import com.gitonway.fineday.utils.http.HttpUtils;
import com.gitonway.fineday.utils.json.WeaterJsonUtils;
@EBean
public class WeaterLogic extends BaseLogic {
private static WeaterLogic _Instance = null;
public static WeaterLogic Instance() {
if (_Instance == null)
_Instance = new WeaterLogic();
return _Instance;
}
public WeaterModel getWeaterList(Context context,String cityid) throws Exception {
WeaterModel modle = null;
String result=HttpUtils.getByHttpClient(context,
Constants.WEATER_INFO_URL,
value("code", cityid),
value("app", "tq360"),
value("_jsonp", "renderData"));
//-1为无网络连接
if (result.equals("-1")||result==null){
result=ACache.get(context).getAsString(cityid);
LogUtils.v("加载离线数据:(城市ID"+cityid+")"+result);
//若没有历史数据则进入
if (result==null) {
modle=new WeaterModel();
modle.setOffline(true);
return modle;
}
WeaterJsonUtils toObj=new WeaterJsonUtils(context);
modle=toObj.readJson(result);
modle.setOffline(true);
return modle;
}
ACache.get(context).put(cityid, result);
WeaterJsonUtils toObj=new WeaterJsonUtils(context);
modle=toObj.readJson(result);
return modle;
}
}