a
554325746@qq.com
2020-01-15 956063ff14bc75e3a2a97c7bcaa06b9edc84ad24
app/src/main/java/com/basic/security/widget/RecognizeFaceInfoView.java
@@ -16,17 +16,26 @@
import com.basic.security.manager.FaceTitleAndTipsManager;
import com.basic.security.manager.HintDoorAccessManager;
import com.basic.security.manager.HintSignUpManager;
import com.basic.security.manager.IdentityManager;
import com.basic.security.manager.helper.rm.base.CurrentBase;
import com.basic.security.model.ModelAdapter;
import com.basic.security.model.Person;
import com.basic.security.utils.Constants;
import com.basic.security.utils.FacePosition;
import com.basic.security.utils.FaceTitleAndTips;
import com.basic.security.yuyin.outdoor.R;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class RecognizeFaceInfoView extends FrameLayout {
    public static long stopDrawFaceRect;
    LinearLayout recognized_face_info_view_layout;
    MyTextView face_title, tipsTxt, face_title_top;
    MyTextView face_title, tipsTxt, face_title_top, face_title_tips;
    FaceOuterBorderView face_border;
    BaseShapeView scanner_view;
    TextView face_background;
@@ -51,6 +60,7 @@
        recognized_face_info_view_layout = view.findViewById(com.basic.security.utils.RUtils.R_id_recognized_face_info_view_layout);
        face_title_top = view.findViewById(com.basic.security.utils.RUtils.R_id_face_title_top);
        face_title = view.findViewById(com.basic.security.utils.RUtils.R_id_face_title);
        face_title_tips = view.findViewById(com.basic.security.utils.RUtils.R_id_face_title_tips);
        tipsTxt = view.findViewById(com.basic.security.utils.RUtils.R_id_tipsTxt);
        scanner_view = view.findViewById(com.basic.security.utils.RUtils.R_id_scanner_view);
        face_border = view.findViewById(com.basic.security.utils.RUtils.R_id_face_border);
@@ -68,18 +78,52 @@
        MainActivity mainActivity = (MainActivity) BaseApplication.getApplication().activity;
        FaceTitleAndTips faceTitleAndTips = FaceTitleAndTipsManager.getFaceTitleMap(facePosition, true);
        String faceTitle = faceTitleAndTips.getFaceTitle();
        face_title.setText(faceTitle);
        String[] titles = faceTitle.trim().split("\\s+");
//        System.out.println("faceTitle:"+ faceTitle + "; tips:"+ titles[0]);
        List<ModelAdapter> allIdentity = IdentityManager.findIdentityList();
        ArrayList<String> temp = new ArrayList<String>();
        for(ModelAdapter i:allIdentity){
            temp.add(i.getString("name"));
        }
        if(temp.contains(titles[0])){
            face_title.setText(titles[0] + " " + titles[1]);
        }else{
            face_title.setText(titles[0]);
        }
//        for(String t:temp){
//            System.out.println("face_title:"+ t);
//        }
        if(titles.length >1){
            face_title_tips.setText(titles[titles.length -1]);
            face_title_tips.setTextColor(Color.WHITE);
        }else{
            face_title_tips.setText("");
            face_title_tips.setVisibility(View.GONE);
        }
        tipsTxt.setText(faceTitleAndTips.getTipsTxt());
        tipsTxt.setTextColor1(Color.GREEN);
        tipsTxt.setTextColor(Color.GREEN);
        face_title.setTextColor(Color.GREEN);
        face_title.setTextColor(Color.WHITE);
        face_border.setBorderColor(Color.GREEN);
        if (CurrentBase.activity.currentFragment == CurrentBase.activity.fragment_door_access_result) {
            if ("开门成功".equals((CurrentBase.activity.fragment_door_access_result).openDoorTitle())) {
                face_title.setTextColor1(Color.parseColor("#00FF00"));
                if(titles.length > 1){
                    face_title.setTextColor(Color.WHITE);
                }else{
                    face_title.setTextColor1(Color.parseColor("#00FF00"));
                }
                face_title_tips.setBackgroundResource(R.drawable.radus_textview);
                face_border.setBorderColor1(Color.parseColor("#00FF00"));
            } else {
                face_title.setTextColor1(Color.parseColor("#FF0000"));
                if(titles.length > 1){
                    face_title.setTextColor(Color.WHITE);
                }else{
                    face_title.setTextColor1(Color.parseColor("#FF0000"));
                }
                face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
                face_border.setBorderColor1(Color.parseColor("#FF0000"));
            }
        } else {
@@ -99,6 +143,7 @@
            }
            if (TextUtils.isEmpty(face_title.getText())) {
                face_title.setTextColor1(Color.RED);
                face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
                face_border.setBorderColor1(Color.RED);
            }
            if (face_title.getCurrentTextColor1() == Color.GREEN) {
@@ -113,9 +158,11 @@
                    ) {
                face_title.setTextColor1(Color.RED);
                face_border.setBorderColor1(Color.RED);
                face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
            } else {
                face_title.setTextColor1(Color.GREEN);
                face_border.setBorderColor1(Color.GREEN);
                face_title_tips.setBackgroundResource(R.drawable.radus_textview);
                if (face_title.getCurrentTextColor1() == Color.GREEN) {
                    tipsTxt.setText("");
                }
@@ -131,11 +178,13 @@
                    face_title.setText(HintSignUpManager.getNoVerificationIDCardHint());
                    face_title.setTextColor1(Color.GREEN);
                    face_border.setBorderColor1(Color.GREEN);
                    face_title_tips.setBackgroundResource(R.drawable.radus_textview);
                }
                if (mainActivity.currentFragment == mainActivity.fragment_su_logged_ic_compare_success) {
                    face_title.setText(HintSignUpManager.getImperfectHint());
                    face_title.setTextColor1(Color.GREEN);
                    face_border.setBorderColor1(Color.GREEN);
                    face_title_tips.setBackgroundResource(R.drawable.radus_textview);
                }
            }
        }
@@ -143,16 +192,19 @@
            if (currentPositionPerson == null || "未注册".equals(currentPositionPerson.getString(Person.sign_up_status))) {
                face_title.setTextColor1(Color.RED);
                face_border.setBorderColor1(Color.RED);
                face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
                face_title.setText(HintDoorAccessManager.getNoRegisterHint());
            }
        }
        if (faceTitle.equals(HintSignUpManager.getAdminLogoutHint())) {
            face_title.setTextColor1(Color.RED);
            face_border.setBorderColor1(Color.RED);
            face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
        }
        if (faceTitleAndTips.facePosition != null && Constants.USE_GRAY_CAMERA && !facePosition.liveness) {
            face_title.setTextColor1(Color.RED);
            face_border.setBorderColor1(Color.RED);
            face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
            face_title.setText("非活体");
        }
        this.setVisibility(VISIBLE);
@@ -197,9 +249,29 @@
        } else {
            face_border.setVisibility(VISIBLE);
            face_background.setVisibility(VISIBLE);
        }
        if (!TextUtils.isEmpty(tipsTxt.getText().toString())) {
            face_title.setText("");
        }
        if(!TextUtils.isEmpty(face_title.getText().toString()) && !TextUtils.isEmpty(face_title_tips.getText().toString())
              && face_border.getVisibility() == View.GONE  ){
            face_title_tips.setVisibility(View.VISIBLE);
            if(face_border.getBorderColor1() == Color.GREEN){
                face_title_tips.setBackgroundResource(R.drawable.radus_textview);
            }
            if(face_border.getBorderColor1() == Color.RED){
                face_title_tips.setBackgroundResource(R.drawable.radius_text_red);
            }
            face_title.setTextColor(Color.WHITE);
            face_title.setTextSize(100);
        }else{
            face_title_tips.setVisibility(View.GONE);
            face_title.setTextSize(50);
        }
//        System.out.println("face_title:"+ face_title.getText() + " || " + View.VISIBLE + " || "+View.GONE + " || "+View.INVISIBLE);
//        System.out.println("face_title:"+face_border.getBorderColor1()+"  ; Color:"+Color.GREEN+"||"+Color.RED);
    }
}