|
|
@@ -122,6 +122,7 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
public void onViewCreated() {
|
|
|
activity = getActivity();
|
|
|
initView();
|
|
|
+ initData();
|
|
|
}
|
|
|
private String task_type = "-1";
|
|
|
private boolean isGameTask = false;
|
|
|
@@ -184,7 +185,7 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
}
|
|
|
private boolean isFirstCache = false;//是否首先尝试缓存
|
|
|
//先尝试缓存数据,无缓存数据时,再尝试获取网络数据
|
|
|
- public void initACacheData(){
|
|
|
+ public void initData(){
|
|
|
isFirstCache = true;
|
|
|
mInitData();
|
|
|
}
|
|
|
@@ -195,27 +196,28 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
mInitData();
|
|
|
}
|
|
|
public void mInitData() {
|
|
|
+ //加载缓存
|
|
|
type = 0;
|
|
|
-
|
|
|
if(isFirstCache){
|
|
|
List<TaskAcceptedEty> cacheTaskAcceptedEtyList;
|
|
|
if(isGameTask) {
|
|
|
cacheTaskAcceptedEtyList = DataUtil.getInstance().getCacheList(ApiKey.run_game_task, TaskAcceptedEty.class);
|
|
|
} else {
|
|
|
- cacheTaskAcceptedEtyList = DataUtil.getInstance().getCacheList(ApiKey.release_task(0, task_type, is_succession), TaskAcceptedEty.class);
|
|
|
+ cacheTaskAcceptedEtyList = DataUtil.getInstance().getCacheList(ApiKey.new_run_task(is_succession, 0), TaskAcceptedEty.class);
|
|
|
}
|
|
|
if (ListUtil.isEmpty(cacheTaskAcceptedEtyList)) {
|
|
|
acceptedEtyList.clear();
|
|
|
} else {
|
|
|
acceptedEtyList = cacheTaskAcceptedEtyList;
|
|
|
}
|
|
|
- getNetWork(type);
|
|
|
+ getFromACache(type);
|
|
|
+ }
|
|
|
+ //加载网络数据
|
|
|
+ type = 0;
|
|
|
+ if(isGameTask){
|
|
|
+ presenter.runGameTask();
|
|
|
} else {
|
|
|
- if(isGameTask){
|
|
|
- presenter.runGameTask();
|
|
|
- } else {
|
|
|
- presenter.returnTask(is_succession, 0);
|
|
|
- }
|
|
|
+ presenter.returnTask(is_succession, 0);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -280,15 +282,18 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
|
|
|
@Override
|
|
|
public void returnTaskTaskUpdataView(Object object) {
|
|
|
- if(object instanceof BaseMessage) {
|
|
|
- List<TaskAcceptedEty> taskAcceptedEty = ((BaseMessage) object).getDataList(TaskAcceptedEty.class);
|
|
|
- if(ListUtil.isEmpty(taskAcceptedEty)) {
|
|
|
- acceptedEtyList.clear();
|
|
|
- } else {
|
|
|
- acceptedEtyList = taskAcceptedEty;
|
|
|
+ boolean isNewData = DataUtil.getInstance().isNewData(isGameTask ? ApiKey.run_game_task : ApiKey.new_run_task(is_succession, 0));
|
|
|
+ if(isNewData) {
|
|
|
+ if (object instanceof BaseMessage) {
|
|
|
+ List<TaskAcceptedEty> taskAcceptedEty = ((BaseMessage) object).getDataList(TaskAcceptedEty.class);
|
|
|
+ if (ListUtil.isEmpty(taskAcceptedEty)) {
|
|
|
+ acceptedEtyList.clear();
|
|
|
+ } else {
|
|
|
+ acceptedEtyList = taskAcceptedEty;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- getNetWork(type);
|
|
|
+ getFromNetWork(type);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -307,7 +312,7 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
e.printStackTrace();
|
|
|
G.showToast(" 网络错误!");
|
|
|
}
|
|
|
- getNetWork(type);
|
|
|
+ getFromNetWork(type);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -316,9 +321,10 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
*/
|
|
|
@Override
|
|
|
public void releaseTaskTaskUpdataView(Object object) {
|
|
|
- if(object instanceof BaseMessage) {
|
|
|
+ boolean isNewData = DataUtil.getInstance().isNewData(ApiKey.release_task(type, task_type, is_succession));
|
|
|
+ if(isNewData && object instanceof BaseMessage) {
|
|
|
List<TaskReleaseEty> releaseEtyList = ((BaseMessage) object).getDataList(TaskReleaseEty.class);
|
|
|
- switch (type){
|
|
|
+ switch (type) {
|
|
|
case 0:
|
|
|
releaseEtyLists = releaseEtyList;
|
|
|
break;
|
|
|
@@ -331,24 +337,20 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void failReleaseTask2View(Object o) {
|
|
|
- loadReleaseOrNotifyAdapter();
|
|
|
- }
|
|
|
- private void loadReleaseOrNotifyAdapter(){
|
|
|
+ public void failReleaseTask2View(Object object) {
|
|
|
switch (type){
|
|
|
- case 0://获取已经发布任务
|
|
|
- if(ListUtil.isEmpty(releaseEtyLists)){//获取过数据,但是没有数据,直接保存空数据,以便下次不重复调接口
|
|
|
- DataUtil.getInstance().resetCacheTime(ApiKey.release_task(type, task_type, is_succession), DEFAULT_SAVE_TIME);
|
|
|
- }
|
|
|
+ case 0:
|
|
|
+ releaseEtyLists.clear();
|
|
|
break;
|
|
|
- case 1://即将开始的任务列表
|
|
|
- if(ListUtil.isEmpty(releaseEtyListsBegin)){
|
|
|
- DataUtil.getInstance().resetCacheTime(ApiKey.release_task(type, task_type, is_succession), DEFAULT_SAVE_TIME);
|
|
|
- }
|
|
|
+ case 1:
|
|
|
+ releaseEtyListsBegin.clear();
|
|
|
break;
|
|
|
}
|
|
|
+ loadReleaseOrNotifyAdapter();
|
|
|
+ }
|
|
|
+ private void loadReleaseOrNotifyAdapter(){
|
|
|
notifyDataSetChanged();
|
|
|
- getNetWork(++type);
|
|
|
+ getFromNetWork(++type);
|
|
|
}
|
|
|
|
|
|
@Subscribe
|
|
|
@@ -371,8 +373,8 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
@Override
|
|
|
public void onResume() {
|
|
|
super.onResume();
|
|
|
- if (presenter != null) {
|
|
|
- initACacheData();
|
|
|
+ if (presenter != null && DataUtil.getInstance().isTaskListChange()) {
|
|
|
+ refreshData();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -390,52 +392,54 @@ public class FgtTryMakeMoney extends BaseFragment implements TryMakeMoneyContrac
|
|
|
}
|
|
|
}
|
|
|
/**
|
|
|
- * 即将开始
|
|
|
+ * 发布的任务
|
|
|
* type: 0 1
|
|
|
*/
|
|
|
- private void getNetWork(int type){
|
|
|
+ private void getFromACache(int type){
|
|
|
if(type > 1){
|
|
|
return;
|
|
|
}
|
|
|
- if(isFirstCache){
|
|
|
- List<TaskReleaseEty> cacheTaskReleaseEtyList = DataUtil.getInstance().getCacheList(ApiKey.release_task(type, task_type, is_succession), TaskReleaseEty.class);
|
|
|
- switch (type){
|
|
|
- case 0:
|
|
|
- if(cacheTaskReleaseEtyList == null) {
|
|
|
- releaseEtyLists.clear();
|
|
|
- isFirstCache = false;//没有缓存
|
|
|
- getNetWork(type);
|
|
|
- } else {
|
|
|
- releaseEtyLists = cacheTaskReleaseEtyList;
|
|
|
- notifyDataSetChanged();
|
|
|
- getNetWork(++type);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 1:
|
|
|
- if(cacheTaskReleaseEtyList == null) {
|
|
|
- releaseEtyListsBegin.clear();
|
|
|
- isFirstCache = false;//没有缓存
|
|
|
- getNetWork(type);
|
|
|
- } else {
|
|
|
- releaseEtyListsBegin = cacheTaskReleaseEtyList;
|
|
|
- notifyDataSetChanged();
|
|
|
- getNetWork(++type);
|
|
|
- }
|
|
|
- break;
|
|
|
- }
|
|
|
- } else {
|
|
|
- RequestParameEty parameEty = new RequestParameEty();
|
|
|
- parameEty.setHashMap(
|
|
|
- CommonUtil.getInstance()
|
|
|
- .setHashMap(1,
|
|
|
- 100,
|
|
|
- SheepApp.getInstance().getConnectAddress().getPlatForm(),
|
|
|
- 0,
|
|
|
- 0,
|
|
|
- type,
|
|
|
- task_type,
|
|
|
- is_succession));
|
|
|
- presenter.releaseTask(parameEty);
|
|
|
+ List<TaskReleaseEty> cacheTaskReleaseEtyList = DataUtil.getInstance().getCacheList(ApiKey.release_task(type, task_type, is_succession), TaskReleaseEty.class);
|
|
|
+ switch (type){
|
|
|
+ case 0:
|
|
|
+ if(cacheTaskReleaseEtyList == null) {
|
|
|
+ releaseEtyLists.clear();
|
|
|
+ } else {
|
|
|
+ releaseEtyLists = cacheTaskReleaseEtyList;
|
|
|
+ notifyDataSetChanged();
|
|
|
+ getFromACache(++type);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ if(cacheTaskReleaseEtyList == null) {
|
|
|
+ releaseEtyListsBegin.clear();
|
|
|
+ } else {
|
|
|
+ releaseEtyListsBegin = cacheTaskReleaseEtyList;
|
|
|
+ notifyDataSetChanged();
|
|
|
+ getFromACache(++type);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 发布的任务
|
|
|
+ * type: 0 1
|
|
|
+ */
|
|
|
+ private void getFromNetWork(int type){
|
|
|
+ if(type > 1){
|
|
|
+ return;
|
|
|
}
|
|
|
+ RequestParameEty parameEty = new RequestParameEty();
|
|
|
+ parameEty.setHashMap(
|
|
|
+ CommonUtil.getInstance()
|
|
|
+ .setHashMap(1,
|
|
|
+ 100,
|
|
|
+ SheepApp.getInstance().getConnectAddress().getPlatForm(),
|
|
|
+ 0,
|
|
|
+ 0,
|
|
|
+ type,
|
|
|
+ task_type,
|
|
|
+ is_succession));
|
|
|
+ presenter.releaseTask(parameEty);
|
|
|
}
|
|
|
}
|