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/fragment/PhoneCallFragment.java | 2 -
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SupervisoryMng.java | 69 +++++++++++++++++++++++++++++++---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SupervisoryFragment.java | 2
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/SupervisoryBottomListView.java | 2
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SupervisoryBottomListViewAdapter.java | 15 ++++---
VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory_bottom_visit_blank_cell.xml | 7 +++
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/Constant.java | 2 +
VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory.xml | 19 +--------
8 files changed, 86 insertions(+), 32 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SupervisoryBottomListViewAdapter.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SupervisoryBottomListViewAdapter.java
index b0267cf..11717ec 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SupervisoryBottomListViewAdapter.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SupervisoryBottomListViewAdapter.java
@@ -27,7 +27,7 @@
@Override
public int[] getItemLayouts() {
- return new int[]{R.layout.fragment_supervisory_bottom_register_cell,R.layout.fragment_supervisory_bottom_visitor_cell};
+ return new int[]{R.layout.fragment_supervisory_bottom_register_cell,R.layout.fragment_supervisory_bottom_visitor_cell, R.layout.fragment_supervisory_bottom_visit_blank_cell};
}
@Override
@@ -44,12 +44,15 @@
@Override
public int getRecycleViewItemType(int position) {
- int itemType = ((SupervisoryQueryItem)getList().get(position)).getType();
- if (itemType == Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE) {
- return Constant.Supervisory.REGISTER_CELL_VIEW_INDEX;
- } else {
- return Constant.Supervisory.CHECK_IN_CELL_VIEW_INDEX;
+ switch (((SupervisoryQueryItem)getList().get(position)).getType()) {
+ case Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE:
+ return Constant.Supervisory.REGISTER_CELL_VIEW_INDEX;
+ case Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE:
+ return Constant.Supervisory.CHECK_IN_CELL_VIEW_INDEX;
+ case Constant.Supervisory.VISIT_BLANK_ITEM_TYPE:
+ return Constant.Supervisory.VISIT_BLANK_CELL_VIEW_INDEX;
}
+ return Constant.Supervisory.VISIT_BLANK_CELL_VIEW_INDEX;
}
/**
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/PhoneCallFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/PhoneCallFragment.java
index fddf50e..aef6b4f 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/PhoneCallFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/PhoneCallFragment.java
@@ -95,13 +95,11 @@
public void onCheckedChanged(RadioGroup radioGroup, int i) {
switch (radioGroup.getCheckedRadioButtonId()){
case R.id.fragment_check_in_left_sort_by_name_radio_button:
-// mAdapter.setVisitorToTextColor(CheckInLeftListViewAdapter.TYPE_NAME);
mAdapter.set_fragment_check_in_left_sort_radio_group_type(CheckInLeftListViewAdapter.TYPE_NAME);
mAdapter.setList(mList);
mRecyclerView.setAdapter(mAdapter);
break;
case R.id.fragment_check_in_left_sort_by_dept_radio_button:
-// mAdapter.setVisitorToTextColor(CheckInLeftListViewAdapter.TYPE_DEPARTMENT);
mAdapter.set_fragment_check_in_left_sort_radio_group_type(CheckInLeftListViewAdapter.TYPE_DEPARTMENT);
mAdapter.setList(mList);
mRecyclerView.setAdapter(mAdapter);
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SupervisoryFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SupervisoryFragment.java
index fc71781..759164a 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SupervisoryFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SupervisoryFragment.java
@@ -34,7 +34,7 @@
private View fragment_supervisory_bottom_visitor_background;
@ViewInject(R.id.fragment_supervisory_bottom_attendance_background)
private View fragment_supervisory_bottom_attendance_background;
- @ViewInject(R.id.fragment_supervisory_bottom_visit_register_list_view)
+ @ViewInject(R.id.fragment_supervisory_bottom_visit_list_view)
private SupervisoryBottomListView fragment_supervisory_bottom_visit_list_view;
@ViewInject(R.id.fragment_supervisory_bottom_attendance_list_view)
private SupervisoryBottomListView fragment_supervisory_bottom_attendance_list_view;
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;
+ }
+
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/Constant.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/Constant.java
index df63b01..6480bf5 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/Constant.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/Constant.java
@@ -16,9 +16,11 @@
public static class Supervisory {
public static final int VISIT_REGISTER_ITEM_TYPE = 1;
public static final int VISIT_CHECK_IN_ITEM_TYPE = 2;
+ public static final int VISIT_BLANK_ITEM_TYPE = 3;
public static final int REGISTER_CELL_VIEW_INDEX = 0;
public static final int CHECK_IN_CELL_VIEW_INDEX = 1;
+ public static final int VISIT_BLANK_CELL_VIEW_INDEX = 2;
}
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/SupervisoryBottomListView.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/SupervisoryBottomListView.java
index 8f53f9e..1080e2f 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/SupervisoryBottomListView.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/SupervisoryBottomListView.java
@@ -42,7 +42,7 @@
public void initLayout() {
addItemDecoration(new SpaceItemDecoration());
- GridLayoutManager gridLayoutManager = new GridLayoutManager(MainActivity.getInstance(), 1);
+ GridLayoutManager gridLayoutManager = new GridLayoutManager(MainActivity.getInstance(), 2);
gridLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
setLayoutManager(gridLayoutManager);
}
diff --git a/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory.xml b/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory.xml
index c755dbc..bbd6374 100644
--- a/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory.xml
+++ b/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory.xml
@@ -171,24 +171,11 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white">
- <LinearLayout
+ <cn.com.basic.face.widget.SupervisoryBottomListView
+ android:id="@+id/fragment_supervisory_bottom_visit_list_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
- android:orientation="vertical">
- <cn.com.basic.face.widget.SupervisoryBottomListView
- android:id="@+id/fragment_supervisory_bottom_visit_register_list_view"
- android:layout_width="wrap_content"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="vertical"/>
- <cn.com.basic.face.widget.SupervisoryBottomListView
- android:id="@+id/fragment_supervisory_bottom_visit_check_in_list_view"
- android:layout_width="wrap_content"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="vertical"/>
- </LinearLayout>
-
+ android:orientation="vertical"/>
<cn.com.basic.face.widget.SupervisoryBottomListView
android:id="@+id/fragment_supervisory_bottom_attendance_list_view"
diff --git a/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory_bottom_visit_blank_cell.xml b/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory_bottom_visit_blank_cell.xml
new file mode 100644
index 0000000..f2335f1
--- /dev/null
+++ b/VisitFace/DemoForBsk/app/src/main/res/layout/fragment_supervisory_bottom_visit_blank_cell.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/fragment_home_bottom_register_cell_relative_layout"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content">
+
+</RelativeLayout>
\ No newline at end of file
--
Gitblit v1.8.0