From 8696a36fbb05d376e6cbaba5814419f2a250ba4f Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 20 七月 2017 11:43:28 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java | 145 +++++++++++++++++++++++++++-------------------- 1 files changed, 83 insertions(+), 62 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java index b6c0be4..173e572 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java @@ -1,6 +1,7 @@ package cn.com.basic.face.adapter; import android.content.Context; +import android.graphics.Color; import android.net.Uri; import android.view.View; import android.view.ViewGroup; @@ -21,6 +22,7 @@ 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 { @@ -38,13 +40,16 @@ @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { - 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; + 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; + } } } @@ -90,14 +95,14 @@ } } - fragment_home_bottom_register_cell_to_register.setOnClickListener(new View.OnClickListener(){ + fragment_home_bottom_register_cell_photo.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); + VisitorRegisterFragment.getInstance().setChoosePhoto(item.getBitmap()); + VisitorRegisterFragment.getInstance().setSurveillanceQueryItem_selectPhoto(item); + VisitorRegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect(); } } }); @@ -120,56 +125,39 @@ 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()); + fragment_home_bottom_visitor_cell_warning.setVisibility(View.VISIBLE); + if (item.getWarning() != null && item.getWarning().length() > 0) { + fragment_home_bottom_visitor_cell_photo.setBackgroundColor(Color.RED); + fragment_home_bottom_visitor_cell_warning.setText("璀﹀憡"); + } else { + fragment_home_bottom_visitor_cell_photo.setBackgroundColor(Color.GRAY); + if (item.getAuthentication() != null && item.getAuthentication().length() > 0) { + fragment_home_bottom_visitor_cell_warning.setText("宸茶璇�"); + } else { + fragment_home_bottom_visitor_cell_warning.setText("鏈璇�"); + } + } + fragment_home_bottom_visitor_cell_name.setText(item.getVisitorType()); - if (item.getImagePath() != null && !item.getImagePath().equals("")) { - fragment_home_bottom_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath())); + 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(item.getBitmap()); + 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(){ + fragment_home_bottom_visitor_cell_status.setText(item.getStatus()); //绂诲紑 + fragment_home_bottom_visitor_cell_photo.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { MainActivity.selectPage(Constant.TabType.CHECK_IN); @@ -177,18 +165,15 @@ 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()); cn.com.basic.face.fragment.CheckInFragment.getInstance(). - getFragment_check_in_right_visitor_cell().setPhoto(item.getBitmap()); + getFragment_check_in_right_visitor_cell().setPhotoUri(Uri.parse(AppApi.IMAGE_URL_BASE +item.getSurveillancePhoto())); } + cn.com.basic.face.fragment.CheckInFragment.getInstance().selectVisiteeRadio(); } }); } - 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); - } - } } @@ -215,6 +200,17 @@ @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { + Object obj = getList().get(position); + if (obj instanceof SurveillanceQueryItem) { + if(((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() == CommonVariables.Surveillance.VISIT_ATTENDANCE_BLANK) { + return; + } else { + + } + } else { + return; + } + 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); @@ -230,13 +226,16 @@ 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()); + fragment_home_bottom_attendance_cell_name.setText(item.getVisitorType()); - if (item.getImagePath() != null && !item.getImagePath().equals("")) { - fragment_home_bottom_attendance_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath())); + if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) { + fragment_home_bottom_attendance_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getSurveillancePhoto())); } else { if (item.getBitmap() != null) { - fragment_home_bottom_attendance_cell_photo.setImageBitmap(item.getBitmap()); + 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); } @@ -247,7 +246,16 @@ @Override public int getRecycleViewItemType(int position) { - return 0; + int type = ((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn(); + if (type == CommonVariables.Surveillance.VISIT_ATTENDANCE_IN || + type == CommonVariables.Surveillance.VISIT_ATTENDANCE_OUT + ) { + return 0; + } + if (type == CommonVariables.Surveillance.VISIT_ATTENDANCE_BLANK) { + return 1; + } + return 1; } private CheckInQueryItem getVo(SurveillanceQueryItem item) { @@ -293,10 +301,22 @@ @Override public void onClick(View v) { if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.SELECT_PHOTO) { - RegisterFragment.getInstance().set_fragment_register_surveillance_photo(item); + if (CommonVariables.Register.VISITOR_REGISTER_SELECTED) { + VisitorRegisterFragment.getInstance().set_fragment_visitor_register_surveillance_photo(item); + VisitorRegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect(); + } else { + AttenderRegisterFragment.getInstance().set_fragment_attender_register_surveillance_photo(item); + AttenderRegisterFragment.getInstance().selectedSurveillancePhotoId = item.getIdForSelect(); + } } if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.UPLOAD_PHOTO) { - RegisterFragment.getInstance().set_fragment_register_upload_custom_photo(item); + if (CommonVariables.Register.VISITOR_REGISTER_SELECTED) { + VisitorRegisterFragment.getInstance().set_fragment_visitor_register_upload_custom_photo(item); + VisitorRegisterFragment.selectedCustomPhotoId = item.getIdForSelect(); + } else { + AttenderRegisterFragment.getInstance().set_fragment_attender_register_upload_custom_photo(item); + AttenderRegisterFragment.selectedCustomPhotoId = item.getIdForSelect(); + } } for (SurveillanceQueryItem queryItem : (List<SurveillanceQueryItem>)getList()) { queryItem.setSurveillancePhotoSelected(false); @@ -310,7 +330,8 @@ 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(item.getBitmap()); + 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); } -- Gitblit v1.8.0