package cn.com.basic.face.adapter;
|
|
import android.content.Context;
|
import android.net.Uri;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.ImageView;
|
import android.widget.RelativeLayout;
|
import android.widget.TextView;
|
|
import com.alibaba.fastjson.JSON;
|
import com.bsk.zhangbo.demoforbsk.R;
|
import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter;
|
import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder;
|
|
import java.util.List;
|
|
import cn.com.basic.face.base.MainActivity;
|
import cn.com.basic.face.dialog.SurveillancePhotoDialog;
|
import cn.com.basic.face.discern.common.CommonVariables;
|
import cn.com.basic.face.discern.query.item.CheckInQueryItem;
|
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
|
import cn.com.basic.face.fragment.*;
|
import cn.com.basic.face.util.AppApi;
|
import cn.com.basic.face.util.BitmapUtil;
|
import cn.com.basic.face.util.Constant;
|
|
public class SurveillanceFragment {
|
|
public static class SurveillanceBottomVisitorListViewAdapter extends EasyRecyclerViewAdapter {
|
private Context context;
|
public SurveillanceBottomVisitorListViewAdapter(Context context) {
|
this.context = context;
|
}
|
|
@Override
|
public int[] getItemLayouts() {
|
return new int[]{R.layout.fragment_surveillance_bottom_register_cell,R.layout.fragment_surveillance_bottom_visitor_cell, R.layout.fragment_surveillance_bottom_visit_blank_cell};
|
}
|
|
@Override
|
public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) {
|
Object obj = getList().get(position);
|
if (obj instanceof SurveillanceQueryItem) {
|
switch (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn()){
|
case Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE:
|
RegisterCellViewFillData(viewHolder,position);
|
break;
|
case Constant.Surveillance.VISIT_CHECK_IN_ITEM_TYPE:
|
checkInCellViewFillData(viewHolder,position);
|
break;
|
}
|
}
|
|
}
|
|
@Override
|
public int getRecycleViewItemType(int position) {
|
switch (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn()) {
|
case Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE:
|
return Constant.Surveillance.REGISTER_CELL_VIEW_INDEX;
|
case Constant.Surveillance.VISIT_CHECK_IN_ITEM_TYPE:
|
return Constant.Surveillance.CHECK_IN_CELL_VIEW_INDEX;
|
case Constant.Surveillance.VISIT_BLANK_ITEM_TYPE:
|
return Constant.Surveillance.VISIT_BLANK_CELL_VIEW_INDEX;
|
}
|
return Constant.Surveillance.VISIT_BLANK_CELL_VIEW_INDEX;
|
}
|
|
/**
|
* 人员注册
|
*/
|
private void RegisterCellViewFillData(EasyRecyclerViewHolder holder, int position){
|
|
RelativeLayout mLayout = holder.findViewById(R.id.fragment_home_bottom_register_cell_relative_layout);
|
ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams();
|
layoutParams.height = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h127dp);
|
layoutParams.width = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h122dp);
|
mLayout.setLayoutParams(layoutParams);
|
|
final Object data = this.getItem(position);
|
|
ImageView fragment_home_bottom_register_cell_photo = holder.findViewById(R.id.fragment_home_bottom_register_cell_photo);
|
TextView fragment_home_bottom_register_cell_to_register = holder.findViewById(R.id.fragment_home_bottom_register_cell_to_register);
|
|
if (data instanceof SurveillanceQueryItem) {
|
final SurveillanceQueryItem item = (SurveillanceQueryItem)data;
|
|
if (item.getImagePath() != null && !item.getImagePath().equals("")) {
|
fragment_home_bottom_register_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath()));
|
} else {
|
if (item.getBitmap() != null) {
|
//fragment_home_bottom_register_cell_photo.setImageResource(R.drawable.u45);
|
fragment_home_bottom_register_cell_photo.setImageBitmap(item.getBitmap());
|
// fragment_home_bottom_register_cell_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
|
// (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
|
} else {
|
fragment_home_bottom_register_cell_photo.setImageResource(R.drawable.u45);
|
}
|
}
|
|
fragment_home_bottom_register_cell_to_register.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View view) {
|
MainActivity.selectPage(1);
|
// RegisterFragment.getInstance().setRegisterInfo(getVo(item));//java.lang.OutOfMemoryError: Failed to allocate a 25338980 byte allocation with 15827186 free bytes and 15MB until OOM
|
if(item.getBitmap() != null) {
|
RegisterFragment.getInstance().setChoosePhoto(item.getBitmap());
|
RegisterFragment.getInstance().setSurveillanceQueryItem_selectPhoto(item);
|
RegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect();
|
}
|
}
|
});
|
}
|
}
|
|
/**
|
* 来访登记
|
*/
|
private void checkInCellViewFillData(EasyRecyclerViewHolder holder, int position){
|
|
RelativeLayout mLayout = holder.findViewById(R.id.fragment_supervisory_bottom_visitor_cell_relative_layout);
|
ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams();
|
layoutParams.height = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h127dp);
|
layoutParams.width = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h122dp);
|
mLayout.setLayoutParams(layoutParams);
|
|
ImageView fragment_home_bottom_visitor_cell_photo = (ImageView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_photo);
|
TextView fragment_home_bottom_visitor_cell_warning = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_warning);
|
TextView fragment_home_bottom_visitor_cell_name = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_name);
|
TextView fragment_home_bottom_visitor_cell_status = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_status);
|
|
|
Object data = this.getItem(position);
|
// if (data instanceof FacePhotoItem) {
|
// final FacePhotoItem item = (FacePhotoItem) data;
|
//
|
// if (item.getWarning().length() > 0 && "来访登记".equals(item.getStatus())) {
|
// //warningTv.setText("警告");
|
// fragment_home_bottom_visitor_cell_warning.setVisibility(View.VISIBLE);
|
// } else {
|
// fragment_home_bottom_visitor_cell_warning.setVisibility(View.GONE);
|
// }
|
//
|
// fragment_home_bottom_visitor_cell_name.setText(item.getName());
|
//
|
// fragment_home_bottom_visitor_cell_status.setText(item.getStatus());
|
// if ("来访登记".equals(item.getStatus())) {
|
// fragment_home_bottom_visitor_cell_status.setBackground(context.getDrawable(R.drawable.rectangle_textview));
|
//
|
// fragment_home_bottom_visitor_cell_status.setHeight((int)(context.getResources().getDisplayMetrics().density * 45));
|
// fragment_home_bottom_visitor_cell_status.setOnClickListener(new View.OnClickListener(){
|
// @Override
|
// public void onClick(View view) {
|
// MainActivity.selectPage(2);
|
// }
|
// });
|
// } else {
|
// fragment_home_bottom_visitor_cell_status.setBackground(null);
|
// fragment_home_bottom_visitor_cell_status.setOnClickListener(null);
|
// }
|
// }
|
|
fragment_home_bottom_visitor_cell_name.setText("");
|
if (data instanceof SurveillanceQueryItem) {
|
final SurveillanceQueryItem item = (SurveillanceQueryItem)data;
|
fragment_home_bottom_visitor_cell_name.setText(item.getUsername());
|
|
if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) {
|
fragment_home_bottom_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getSurveillancePhoto()));
|
} else {
|
if (item.getBitmap() != null) {
|
fragment_home_bottom_visitor_cell_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
|
(int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
|
} else {
|
fragment_home_bottom_visitor_cell_photo.setImageResource(R.drawable.u45);
|
}
|
}
|
if (1==1) {
|
fragment_home_bottom_visitor_cell_status.setBackground(context.getDrawable(R.drawable.rectangle_textview));
|
|
fragment_home_bottom_visitor_cell_status.setHeight((int)(context.getResources().getDisplayMetrics().density * 45));
|
fragment_home_bottom_visitor_cell_status.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View view) {
|
MainActivity.selectPage(Constant.TabType.CHECK_IN);
|
cn.com.basic.face.fragment.CheckInFragment.getInstance().
|
getFragment_check_in_right_visitor_cell()
|
.setVisitorInfo(getVo(item));
|
if (item.getBitmap() != null && (item.getImagePath() == null || "".equals(item.getImagePath()))) {
|
cn.com.basic.face.fragment.CheckInFragment.getInstance().
|
getFragment_check_in_right_visitor_cell().setPhoto(item.getBitmap());
|
}
|
}
|
});
|
}
|
if (item.getWarning() != null && "1".equals(item.getWarning())) {
|
fragment_home_bottom_visitor_cell_warning.setVisibility(View.VISIBLE);
|
} else {
|
fragment_home_bottom_visitor_cell_warning.setVisibility(View.INVISIBLE);
|
}
|
|
}
|
|
}
|
|
private CheckInQueryItem getVo(SurveillanceQueryItem item) {
|
return JSON.parseObject(JSON.toJSONString(item), CheckInQueryItem.class);
|
}
|
|
public void setRowType(int i) {
|
|
}
|
}
|
|
public static class SurveillanceBottomAttendanceListViewAdapter extends EasyRecyclerViewAdapter {
|
private Context context;
|
public SurveillanceBottomAttendanceListViewAdapter(Context context) {
|
this.context = context;
|
}
|
|
@Override
|
public int[] getItemLayouts() {
|
return new int[]{R.layout.fragment_surveillance_bottom_attendance_cell, R.layout.fragment_surveillance_bottom_attendance_blank_cell};
|
}
|
|
@Override
|
public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) {
|
RelativeLayout mLayout = viewHolder.findViewById(R.id.fragment_supervisory_bottom_attendance_cell_relative_layout);
|
ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams();
|
layoutParams.height = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h127dp);
|
layoutParams.width = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h122dp);
|
mLayout.setLayoutParams(layoutParams);
|
|
ImageView fragment_home_bottom_attendance_cell_photo = (ImageView) mLayout.findViewById(R.id.fragment_home_bottom_attendance_cell_photo);
|
TextView fragment_home_bottom_attendance_cell_name = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_attendance_cell_name);
|
TextView fragment_home_bottom_attendance_cell_status = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_attendance_cell_status);
|
|
Object data = this.getItem(position);
|
|
fragment_home_bottom_attendance_cell_name.setText("");
|
if (data instanceof SurveillanceQueryItem) {
|
final SurveillanceQueryItem item = (SurveillanceQueryItem)data;
|
fragment_home_bottom_attendance_cell_name.setText(item.getUsername());
|
|
if (item.getImagePath() != null && !item.getImagePath().equals("")) {
|
fragment_home_bottom_attendance_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath()));
|
} else {
|
if (item.getBitmap() != null) {
|
fragment_home_bottom_attendance_cell_photo.setImageBitmap(
|
BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
|
(int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))
|
);
|
} else {
|
fragment_home_bottom_attendance_cell_photo.setImageResource(R.drawable.u45);
|
}
|
}
|
fragment_home_bottom_attendance_cell_status.setText(item.getStatus());
|
}
|
}
|
|
@Override
|
public int getRecycleViewItemType(int position) {
|
return 0;
|
}
|
|
private CheckInQueryItem getVo(SurveillanceQueryItem item) {
|
return JSON.parseObject(JSON.toJSONString(item), CheckInQueryItem.class);
|
}
|
}
|
|
public static class SurveillancePhotoSelectListViewAdapter extends EasyRecyclerViewAdapter {
|
private Context context;
|
public SurveillancePhotoSelectListViewAdapter(Context context) {
|
this.context = context;
|
}
|
public static int selectPhotoOrUploadPhoto;
|
|
@Override
|
public int[] getItemLayouts() {
|
return new int[]{R.layout.fragment_surveillance_photo_cell, R.layout.fragment_surveillance_photo_blank_cell};
|
}
|
|
@Override
|
public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) {
|
RelativeLayout mLayout = viewHolder.findViewById(R.id.fragment_surveillance_photo_cell_relative_layout);
|
ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams();
|
layoutParams.height = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h127dp);
|
layoutParams.width = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h122dp);
|
mLayout.setLayoutParams(layoutParams);
|
if (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() != Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) {
|
return;
|
}
|
|
ImageView fragment_surveillance_photo_cell_photo = (ImageView) mLayout.findViewById(R.id.fragment_surveillance_photo_cell_photo);
|
final View fragment_surveillance_photo_cell_select = mLayout.findViewById(R.id.fragment_surveillance_photo_cell_select);
|
|
Object data = this.getItem(position);
|
|
if (data instanceof SurveillanceQueryItem) {
|
final SurveillanceQueryItem item = (SurveillanceQueryItem)data;
|
fragment_surveillance_photo_cell_select.setVisibility(item.isSurveillancePhotoSelected()
|
? View.VISIBLE : View.INVISIBLE
|
);
|
|
fragment_surveillance_photo_cell_photo.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.SELECT_PHOTO) {
|
RegisterFragment.getInstance().set_fragment_register_surveillance_photo(item);
|
RegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect();
|
}
|
if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.UPLOAD_PHOTO) {
|
RegisterFragment.getInstance().set_fragment_register_upload_custom_photo(item);
|
RegisterFragment.selectedCustomPhotoId = item.getIdForSelect();
|
}
|
for (SurveillanceQueryItem queryItem : (List<SurveillanceQueryItem>)getList()) {
|
queryItem.setSurveillancePhotoSelected(false);
|
}
|
item.setSurveillancePhotoSelected(true);
|
notifyDataSetChanged();
|
}
|
});
|
|
if (item.getImagePath() != null && !item.getImagePath().equals("")) {
|
fragment_surveillance_photo_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath()));
|
} else {
|
if (item.getBitmap() != null) {
|
fragment_surveillance_photo_cell_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
|
(int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
|
} else {
|
fragment_surveillance_photo_cell_photo.setImageResource(R.drawable.u45);
|
}
|
}
|
}
|
}
|
|
@Override
|
public int getRecycleViewItemType(int position) {
|
if (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() != Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) {
|
return 1;
|
}
|
return 0;
|
}
|
|
private CheckInQueryItem getVo(SurveillanceQueryItem item) {
|
return JSON.parseObject(JSON.toJSONString(item), CheckInQueryItem.class);
|
}
|
}
|
}
|