From 5a425e02b159695d6d3085b899070f41e7c2b9e2 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 05 四月 2017 18:16:54 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java |   21 +++++++++++++++++++--
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java      |   31 +++++++++++++++++++++++++++----
 2 files changed, 46 insertions(+), 6 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
index bf1dc2b..fdad3e7 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
@@ -16,6 +16,8 @@
 
 import cn.com.basic.face.base.MainActivity;
 import cn.com.basic.face.discern.query.item.CheckInQueryItem;
+import cn.com.basic.face.service.vo.*;
+import cn.com.basic.face.service.vo.PhoneCallFragment;
 import cn.com.basic.face.util.AppApi;
 import cn.com.basic.face.util.Constant;
 
@@ -30,6 +32,12 @@
 
         @Override
         public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) {
+            if (!(getItem(position) instanceof CheckInQueryItem)) {
+                TextView fragment_phone_call_left_row_first_letter_name = viewHolder.findViewById(R.id.fragment_check_in_left_row_first_letter_name);
+                fragment_phone_call_left_row_first_letter_name.setText(getItem(position)+"".toUpperCase());
+                return;
+            }
+
             LinearLayout fragment_check_in_left_visitor_row_linear_layout = viewHolder.findViewById(R.id.fragment_check_in_left_visitor_row_linear_layout);
 
             TextView fragment_check_in_left_visitor_row_name = (TextView)fragment_check_in_left_visitor_row_linear_layout.findViewById(R.id.fragment_check_in_left_visitor_row_name);
@@ -60,6 +68,9 @@
 
         @Override
         public int getRecycleViewItemType(int position) {
+            if (!(getItem(position) instanceof CheckInQueryItem)) {
+                return 1;
+            }
             return 0;
         }
 
@@ -74,8 +85,11 @@
 
         @Override
         public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) {
-
-
+            if (!(getItem(position) instanceof CheckInQueryItem)) {
+                TextView fragment_phone_call_left_row_first_letter_name = viewHolder.findViewById(R.id.fragment_check_in_left_row_first_letter_name);
+                fragment_phone_call_left_row_first_letter_name.setText(getItem(position)+"".toUpperCase());
+                return;
+            }
             TextView fragment_check_in_left_interviewee_row_name = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_name);
             TextView fragment_check_in_left_interviewee_row_dept = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_dept);
             SimpleDraweeView fragment_check_in_left_interviewee_row_photo = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_photo);
@@ -103,6 +117,9 @@
 
         @Override
         public int getRecycleViewItemType(int position) {
+            if (!(getItem(position) instanceof CheckInQueryItem)) {
+                return 1;
+            }
             return 0;
         }
 
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
index fe5c918..3a893c4 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
@@ -4,11 +4,13 @@
 
 import cn.com.basic.face.base.BaseApplication;
 import cn.com.basic.face.fragment.CheckInFragment;
+import cn.com.basic.face.service.vo.PhoneCallFragment;
 import cn.com.basic.face.util.AppApi;
 
 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;
@@ -16,6 +18,7 @@
 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.CheckInQueryItem;
+import cn.com.basic.face.util.CharacterParser;
 
 public class CheckInMng {
 
@@ -47,10 +50,26 @@
             public void success() {
                 List<CheckInQueryItem> list = getList(CheckInQueryItem.class);
                 sort(list, isSortByDept);
+                List allItems = new ArrayList();
+                String name = "";
+                String prev = "";
+                for (int i = 0; i < list.size(); i++) {
+                    CheckInQueryItem item = list.get(i);
+                    if (isSortByDept) {
+                        name = CharacterParser.getInstance().getSelling(item.getDeptName()).substring(0, 1);
+                    } else {
+                        name = CharacterParser.getInstance().getSelling(item.getName()).substring(0, 1);
+                    }
+                    if (!name.equals(prev)) {
+                        allItems.add(name);
+                    }
+                    allItems.add(item);
+                    prev = name;
+                }
                 if (isVisitorList) {
-                    CheckInFragment.getInstance().get_fragment_check_in_left_visitor().show(list);
+                    CheckInFragment.getInstance().get_fragment_check_in_left_visitor().show(allItems);
                 } else {
-                    CheckInFragment.getInstance().get_fragment_check_in_left_interviewee().show(list);
+                    CheckInFragment.getInstance().get_fragment_check_in_left_interviewee().show(allItems);
                 }
             }
         });
@@ -64,12 +83,16 @@
                     String dept1Name = t1.getDeptName()==null?"":t1.getDeptName();
                     String dept2Name = t2.getDeptName()==null?"":t2.getDeptName();
                     if(!dept1Name.equals(dept2Name)) {
-                        return dept1Name.compareTo(dept2Name);
+                        String dept1Name_a = CharacterParser.getInstance().getSelling(dept1Name).toLowerCase();
+                        String dept1Name_b = CharacterParser.getInstance().getSelling(dept2Name).toLowerCase();
+                        return dept1Name_a.compareTo(dept1Name_b);
                     }
                 }
                 String name1 = t1.getName()==null?"":t1.getName();
                 String name2 = t2.getName()==null?"":t2.getName();
-                return name1.compareTo(name2);
+                String dept1Name_a = CharacterParser.getInstance().getSelling(name1).toLowerCase();
+                String dept1Name_b = CharacterParser.getInstance().getSelling(name2).toLowerCase();
+                return dept1Name_a.compareTo(dept1Name_b);
             }
         });
     }

--
Gitblit v1.8.0