xuxiuxi
2017-07-21 3faa0f1156937cc0f19e3893bb04df2b882ea41d
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;
@@ -15,8 +16,8 @@
import java.util.List;
import cn.com.basic.face.base.BaseApplication;
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;
@@ -51,7 +52,6 @@
                        break;
                }
            }
        }
        @Override
@@ -90,24 +90,20 @@
                    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(){
                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);
                            RegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect();
                            VisitorRegisterFragment.getInstance().setChoosePhoto(item.getBitmap());
                            VisitorRegisterFragment.getInstance().setSurveillanceQueryItem_selectPhoto(item);
                            VisitorRegisterFragment.selectedSurveillancePhotoId = item.getIdForSelect();
                        }
                    }
                });
@@ -130,44 +126,27 @@
            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(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
@@ -177,10 +156,9 @@
                    }
                }
                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);
@@ -188,18 +166,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);
                }
            }
        }
@@ -226,6 +201,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);
@@ -241,10 +227,10 @@
            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(
@@ -261,7 +247,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) {
@@ -288,7 +283,9 @@
            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) {
            SurveillanceQueryItem item1 = ((SurveillanceQueryItem)getList().get(position));
            if (!(item1.getRegisterOrCheckIn() == Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE
                    || item1.getRegisterOrCheckIn() == CommonVariables.Surveillance.OFFLINE_SURVEILLANCE_ITEM_TYPE)) {
                return;
            }
@@ -307,12 +304,22 @@
                    @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 (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);
                            RegisterFragment.selectedCustomPhotoId = item.getIdForSelect();
                            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);
@@ -322,7 +329,7 @@
                    }
                });
                if (item.getImagePath() != null && !item.getImagePath().equals("")) {
                if (item.getImagePath() != null && !item.getImagePath().equals("") && BaseApplication.getInstance().networkAvailable()) {
                    fragment_surveillance_photo_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath()));
                } else {
                    if (item.getBitmap() != null) {
@@ -337,7 +344,9 @@
        @Override
        public int getRecycleViewItemType(int position) {
            if (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() != Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) {
            if (!(((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() == Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE
                    || ((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() == CommonVariables.Surveillance.OFFLINE_SURVEILLANCE_ITEM_TYPE
                    )) {
                return 1;
            }
            return 0;