package cn.scau.scautreasure.ui; import android.widget.AbsListView; import org.androidannotations.annotations.AfterViews; import org.androidannotations.annotations.Background; import org.androidannotations.annotations.EActivity; import org.androidannotations.annotations.Extra; import org.androidannotations.annotations.rest.RestService; import org.springframework.web.client.HttpStatusCodeException; import java.util.ArrayList; import cn.scau.scautreasure.AppContext; import cn.scau.scautreasure.R; import cn.scau.scautreasure.adapter.ClassRoomAdapter; import cn.scau.scautreasure.api.EdusysApi; import cn.scau.scautreasure.helper.UIHelper; import cn.scau.scautreasure.util.StringUtil; import static cn.scau.scautreasure.helper.UIHelper.LISTVIEW_EFFECT_MODE.EXPANDABLE_SWING; /** * User: Special Leung * Date: 13-8-17 * Time: 下午6:15 * Mail: specialcyci@gmail.com */ @EActivity( R.layout.emptyclassroom ) public class EmptyClassRoom extends CommonQueryActivity{ @RestService EdusysApi api; @Extra("value") ArrayList<String> value; @AfterViews void init(){ setTitle(R.string.title_emptyclassroom); setDataEmptyTips(R.string.tips_emptyclassroom_null); cacheHelper.setCacheKey("emptyClassRoom_" + StringUtil.join(value, "_")); list = cacheHelper.loadListFromCache(); buildAndShowListViewAdapter(); } @Background( id = UIHelper.CANCEL_FLAG ) void loadData(Object... params) { beforeLoadData(); try{ ArrayList<String> param = value; list = api.getEmptyClassRoom(AppContext.userName, app.getEncodeEduSysPassword(), AppContext.server, param.get(0), param.get(1), param.get(2), param.get(3), param.get(4), param.get(5), param.get(6)).getClassRooms(); cacheHelper.writeListToCache(list); buildAndShowListViewAdapter(); }catch (HttpStatusCodeException e){ showErrorResult(getSherlockActivity(), e.getStatusCode().value(), this); }catch (Exception e){ handleNoNetWorkError(getSherlockActivity()); } afterLoadData(); } private void buildAndShowListViewAdapter(){ ClassRoomAdapter cAdapter = new ClassRoomAdapter(getSherlockActivity(), R.layout.emptyclassroom_listitem, list); adapter = UIHelper.buildEffectAdapter(cAdapter, (AbsListView) listView,EXPANDABLE_SWING); showSuccessResult(); } }