From 4b83e449973eff3303ba813806c1edfafd323347 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期五, 31 三月 2017 15:20:06 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java | 69 +++++++++++++++++++++++++++++++--- 1 files changed, 63 insertions(+), 6 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java index 470afd8..32fce45 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java @@ -3,11 +3,12 @@ import org.xutils.http.RequestParams; import org.xutils.x; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; import java.util.List; -import cn.com.basic.face.base.BaseApplication; import cn.com.basic.face.discern.common.BaseCommonCallBack; -import cn.com.basic.face.discern.query.condition.VisitorQueryCondition; import cn.com.basic.face.discern.query.item.SupervisoryQueryItem; import cn.com.basic.face.fragment.SupervisoryFragment; import cn.com.basic.face.util.AppApi; @@ -32,11 +33,21 @@ x.http().post(params, new BaseCommonCallBack() { public void success() { List<SupervisoryQueryItem> list = getList(SupervisoryQueryItem.class); - for (SupervisoryQueryItem item : list) { - item.setType(Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE); - } if (isVisit) { - SupervisoryFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().show(list, true); + int i = 0; + for (SupervisoryQueryItem item : list) { + if (i % 5 == 0) { + item.setType(Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE); + } else { + item.setType(Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE); + } + i++; + } + + List<SupervisoryQueryItem> doubleList = new ArrayList<SupervisoryQueryItem>(); + fillBlank(list, doubleList); + + SupervisoryFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().show(doubleList, true); } else { SupervisoryFragment.getInstance().get_fragment_supervisory_bottom_attendance_list_view().show(list, true); } @@ -44,4 +55,50 @@ }); } + + private void fillBlank(List<SupervisoryQueryItem> list, List<SupervisoryQueryItem> doubleList) { + List<SupervisoryQueryItem> registerList = new ArrayList<SupervisoryQueryItem>(); + List<SupervisoryQueryItem> checkInList = new ArrayList<SupervisoryQueryItem>(); + + for (SupervisoryQueryItem item : list) { + if (item.getType() == Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE) { + registerList.add(item); + } + if (item.getType() == Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE) { + checkInList.add(item); + } + } + + List<SupervisoryQueryItem> blenderList = new ArrayList<SupervisoryQueryItem>(); + + int i = 0, m = 0, n = 0; + for (i = 0; i < registerList.size() + checkInList.size(); i++) { + SupervisoryQueryItem item; + if (i % 2 == 0 && m < registerList.size()) { + item = registerList.get(m); + m++; + } else { + item = checkInList.get(n); + n++; + } + blenderList.add(item); + } + + for (SupervisoryQueryItem item : blenderList) { + if (doubleList.size() % 2 == 0 && item.getType() != Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE) { + doubleList.add(getBlankItem()); + } + if (doubleList.size() % 2 != 0 && item.getType() != Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE) { + doubleList.add(getBlankItem()); + } + doubleList.add(item); + } + } + + private SupervisoryQueryItem getBlankItem() { + SupervisoryQueryItem blankItem = new SupervisoryQueryItem(); + blankItem.setType(Constant.Supervisory.VISIT_BLANK_ITEM_TYPE); + return blankItem; + } + } -- Gitblit v1.8.0