From 0abb3d251383bcdf22db67e2b26431b7a7b74148 Mon Sep 17 00:00:00 2001
From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期五, 11 八月 2017 14:30:34 +0800
Subject: [PATCH] bug fix
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java | 235 +++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 142 insertions(+), 93 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 3f6f628..7a0e444 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
@@ -1,6 +1,6 @@
package cn.com.basic.face.adapter;
-import android.content.Context;
+import android.graphics.Bitmap;
import android.net.Uri;
import android.view.View;
import android.widget.LinearLayout;
@@ -12,70 +12,47 @@
import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder;
import com.facebook.drawee.view.SimpleDraweeView;
-import java.util.List;
-
+import cn.com.basic.face.base.MainActivity;
+import cn.com.basic.face.discern.common.CommonVariables;
import cn.com.basic.face.discern.query.item.CheckInQueryItem;
import cn.com.basic.face.util.AppApi;
-import cn.com.basic.face.util.Constant;
+import cn.com.basic.face.util.FileUtil;
public class CheckInFragment {
- public static class CheckInLeftListViewAdapter extends EasyRecyclerViewAdapter {
- private Context mContext;
- private int type, mTypeColor;
- private List list;
- private TextView fragment_check_in_left_interviewee_row_name;
- private TextView fragment_check_in_left_interviewee_row_dept;
- private SimpleDraweeView fragment_check_in_left_interviewee_row_photo;
- public static final int TYPE_NAME = 10000;
- public static final int TYPE_DEPARTMENT = 10001;
-
- public CheckInLeftListViewAdapter(Context mContext, int type) {
- this.mContext = mContext;
- this.type = type;
- }
-
- public CheckInLeftListViewAdapter(Context mContext) {
- this.mContext = mContext;
- }
+ public static class CheckInLeftVisitorAdapter extends EasyRecyclerViewAdapter {
@Override
public int[] getItemLayouts() {
- return new int[]{R.layout.fragment_check_in_left_visitor_row, R.layout.fragment_check_in_left_interviewee_row};
+ return new int[]{R.layout.fragment_check_in_left_visitor_row, R.layout.fragment_check_in_left_first_letter_row,R.layout.load_more, R.layout.no_more, R.layout.reach_bottom};
}
@Override
- public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) {
- switch (type) {
- case Constant.CheckIn.VISITOR_ROW:
- visitorCellHolder(viewHolder, position);
- break;
- case Constant.CheckIn.INTERVIEWEE_ROW:
- intervieweeCellHolder(viewHolder, position);
- break;
+ public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) {
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) {
+ return;
}
- }
-
- @Override
- public int getRecycleViewItemType(int position) {
- switch (type) {
- case Constant.CheckIn.VISITOR_ROW:
- return 0;
- case Constant.CheckIn.INTERVIEWEE_ROW:
- return 1;
- default:
- return 1;
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) {
+ return;
}
- }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) {
+ TextView load_more_text_view = viewHolder.findViewById(R.id.load_more_text_view);
+ load_more_text_view.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ cn.com.basic.face.fragment.CheckInFragment.getInstance().addPageNum();
+ cn.com.basic.face.fragment.CheckInFragment.getInstance().append();
+ }
+ });
+ return;
+ }
+ 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;
+ }
- /**
- * 鏉ヨ浜篐older
- *
- * @param holder
- * @param posistion
- */
- private void visitorCellHolder(EasyRecyclerViewHolder holder, final int posistion) {
- LinearLayout fragment_check_in_left_visitor_row_linear_layout = holder.findViewById(R.id.fragment_check_in_left_visitor_row_linear_layout);
+ 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);
SimpleDraweeView fragment_check_in_left_visitor_row_photo = (SimpleDraweeView) fragment_check_in_left_visitor_row_linear_layout.findViewById(R.id.fragment_check_in_left_visitor_row_photo);
@@ -85,7 +62,7 @@
fragment_check_in_left_visitor_row_relative_layout.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
- Object data = getList().get(posistion);
+ Object data = getList().get(position);
if (data instanceof CheckInQueryItem) {
CheckInQueryItem item = (CheckInQueryItem) data;
cn.com.basic.face.fragment.CheckInFragment.getInstance().getFragment_check_in_right_visitor_cell().setVisitorInfo(item);
@@ -95,38 +72,109 @@
fragment_check_in_left_visitor_row_name.setText("");
- Object data = getList().get(posistion);
+ Object data = getList().get(position);
if (data instanceof CheckInQueryItem) {
CheckInQueryItem item = (CheckInQueryItem) data;
- fragment_check_in_left_visitor_row_name.setText(item.getName());
- fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE + item.getImagePath()));
+ fragment_check_in_left_visitor_row_name.setText(item.getUsername());
+ if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) {
+ Bitmap bitmap = FileUtil.loadBitmap(item.getSurveillancePhoto());
+ if (bitmap != null) {
+ fragment_check_in_left_visitor_row_photo.setImageBitmap(bitmap);
+ } else {
+ fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ }
+ } else {
+ fragment_check_in_left_visitor_row_photo.setImageResource(R.drawable.u68);
+ }
}
}
- /**
- * 琚闂瓾older
- *
- * @param holder
- * @param posistion
- */
- private void intervieweeCellHolder(EasyRecyclerViewHolder holder, final int posistion) {
- fragment_check_in_left_interviewee_row_name = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_name);
- fragment_check_in_left_interviewee_row_dept = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_dept);
- fragment_check_in_left_interviewee_row_photo = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_photo);
+ @Override
+ public int getRecycleViewItemType(int position) {
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) {
+ return 4;
+ }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) {
+ return 3;
+ }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) {
+ return 2;
+ }
+ if (!(getItem(position) instanceof CheckInQueryItem)) {
+ return 1;
+ }
+ return 0;
+ }
- Object data = getList().get(posistion);
- if (data instanceof CheckInQueryItem) {
- CheckInQueryItem item = (CheckInQueryItem) data;
- fragment_check_in_left_interviewee_row_name.setText(item.getName());
- fragment_check_in_left_interviewee_row_dept.setText(item.getDeptName());
- fragment_check_in_left_interviewee_row_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE + item.getImagePath()));
+ }
+
+ public static class CheckInLeftIntervieweeAdapter extends EasyRecyclerViewAdapter {
+
+ private boolean isSortByDept;
+
+ @Override
+ public int[] getItemLayouts() {
+ return new int[]{R.layout.fragment_check_in_left_interviewee_row, R.layout.fragment_check_in_left_first_letter_row,R.layout.load_more, R.layout.no_more, R.layout.reach_bottom};
+ }
+
+ @Override
+ public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) {
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) {
+ return;
+ }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) {
+ return;
+ }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) {
+ TextView load_more_text_view = viewHolder.findViewById(R.id.load_more_text_view);
+ load_more_text_view.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ cn.com.basic.face.fragment.CheckInFragment.getInstance().addPageNum();
+ cn.com.basic.face.fragment.CheckInFragment.getInstance().append();
+ }
+ });
+ return;
+ }
+ 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);
+
+ if (isSortByDept) {
+ fragment_check_in_left_interviewee_row_name.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_b));
+ fragment_check_in_left_interviewee_row_dept.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_5));
+ } else {
+ fragment_check_in_left_interviewee_row_name.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_5));
+ fragment_check_in_left_interviewee_row_dept.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_b));
}
- holder.findViewById(R.id.fragment_check_in_left_interviewee_row_relativeLayout).setOnClickListener(new View.OnClickListener(){
+ Object data = getList().get(position);
+ if (data instanceof CheckInQueryItem) {
+ CheckInQueryItem item = (CheckInQueryItem) data;
+ fragment_check_in_left_interviewee_row_name.setText(item.getUsername());
+ fragment_check_in_left_interviewee_row_dept.setText(item.getDeptName());
+ if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) {
+ Bitmap bitmap = FileUtil.loadBitmap(item.getSurveillancePhoto());
+ if (bitmap != null) {
+ fragment_check_in_left_interviewee_row_photo.setImageBitmap(bitmap);
+ } else {
+ fragment_check_in_left_interviewee_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ }
+ } else {
+ fragment_check_in_left_interviewee_row_photo.setImageResource(R.drawable.u68);
+ }
+ }
+
+ viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_relativeLayout).setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
- Object data = getList().get(posistion);
+ Object data = getList().get(position);
if (data instanceof CheckInQueryItem) {
CheckInQueryItem item = (CheckInQueryItem) data;
cn.com.basic.face.fragment.CheckInFragment.getInstance().getFragment_check_in_right_interviewee_cell().setIntervieweeInfo(item);
@@ -134,30 +182,31 @@
}
});
- if (mTypeColor == TYPE_DEPARTMENT) {
- fragment_check_in_left_interviewee_row_name.setTextColor(mContext.getResources().getColor(R.color.colorText_b));
- fragment_check_in_left_interviewee_row_dept.setTextColor(mContext.getResources().getColor(R.color.colorText_5));
- } else {
- fragment_check_in_left_interviewee_row_name.setTextColor(mContext.getResources().getColor(R.color.colorText_5));
- fragment_check_in_left_interviewee_row_dept.setTextColor(mContext.getResources().getColor(R.color.colorText_b));
+ }
+
+ @Override
+ public int getRecycleViewItemType(int position) {
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) {
+ return 4;
}
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) {
+ return 3;
+ }
+ if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) {
+ return 2;
+ }
+ if (!(getItem(position) instanceof CheckInQueryItem)) {
+ return 1;
+ }
+ return 0;
+ }
+
+ public void resetForm() {
}
- public void set_fragment_check_in_left_sort_radio_group_type(int type) {
- this.mTypeColor = type;
- }
-
- public void setVisitorRow() {
- this.type = Constant.CheckIn.VISITOR_ROW;
- }
-
- public void setIntervieweeRow() {
- this.type = Constant.CheckIn.INTERVIEWEE_ROW;
- }
-
- public void setRowType(int type) {
- this.type = type;
+ public void setSortByDept(boolean isSortByDept) {
+ this.isSortByDept = isSortByDept;
}
}
--
Gitblit v1.8.0