a
554325746@qq.com
2019-12-25 603cb36a5123e46656b06a5deb8d7ac7ff81307f
app/src/main/java/com/basic/security/fragment/PersonManageFragment.java
@@ -7,19 +7,22 @@
import android.view.ViewGroup;
import com.basic.security.base.BaseFragment;
import com.basic.security.manager.AccountManager;
import com.basic.security.manager.BaseSettingManager;
import com.basic.security.manager.CompanyManager;
import com.basic.security.manager.DeviceManager;
import com.basic.security.manager.FeatureManager;
import com.basic.security.manager.HintSignUpManager;
import com.basic.security.manager.OrgManager;
import com.basic.security.manager.PersonManager;
import com.basic.security.manager.UserManager;
import com.basic.security.model.Model;
import com.basic.security.model.ModelAdapter;
import com.basic.security.model.Org;
import com.basic.security.model.Person;
import com.basic.security.utils.BasicIdUtil;
import com.basic.security.utils.ButtonClickIntervalsUtils;
import com.basic.security.utils.CheckIdCard;
import com.basic.security.utils.FaceId;
import com.basic.security.utils.FrameUtil;
import com.basic.security.utils.Constants;
import com.basic.security.utils.PhoneNumberCheckUtils;
import com.basic.security.utils.ResolutionAdaptation;
import com.basic.security.utils.SocketUtil;
@@ -42,11 +45,27 @@
    public ConfirmDialog confirmDialog;
    public String savedPersonId;
    public boolean messageComplete = false;
    boolean isNewPerson = false;
    public void selectedPerson(ModelAdapter selectedPerson) {
        String personName = null;
        if (selectedPerson != null) {
            personName = selectedPerson.getString(Person.name);
            selectedPerson.setString(Model.debug, Constants.TRUE);
        }
        this.selectedPerson = selectedPerson;
        mainActivity.fragment_face_detail.showPersonDetail(selectedPerson);
    }
    public ModelAdapter selectedPerson() {
        return this.selectedPerson;
    }
    public void savePerson() {
        if (!ButtonClickIntervalsUtils.isCanClick()) {
            return;
        }
        isNewPerson = false;
        final String[] msg = {"保存成功"};
        canSavePerson = true;
        BaseFragment currentFragment = mainActivity().currentFragment;
@@ -57,18 +76,18 @@
                        return;
                    }
                    if (needSaveIdCard()) {
                        saveIdCard(selectedPerson);
                        saveIdCard(selectedPerson());
                    }
                    if (TextUtils.isEmpty(selectedPerson.getString("verify_status")) || idCard != null) {
                    if (TextUtils.isEmpty(selectedPerson().getString("verify_status")) || idCard != null) {
                        setVerifyStatus();
                    }
                    setIsSignUp();
                    if (mainActivity().fragment_face_detail.savePersonIdentity(selectedPerson.getId())) {
                        byte[] camera_image_feature = selectedPerson.getBlob("camera_image_feature");
                    if (mainActivity().fragment_face_detail.savePersonIdentity(selectedPerson().getId())) {
                        byte[] camera_image_feature = selectedPerson().getBlob("camera_image_feature");
                        if (camera_image_feature != null && camera_image_feature != null) {
                            int identitySize = mainActivity().fragment_face_detail.getIdentitySize();
                            int identitySize = mainActivity().fragment_face_detail.checkedIdentityMapByPerson.values().size();
                            identitySize = 1;
                            if ("已注册".equals(selectedPerson.getString("sign_up_status"))
                            if ("已注册".equals(selectedPerson().getString("sign_up_status"))
                                    && currentFragment == mainActivity().fragment_person_manage) {
                                if (!messageComplete) {
                                    return;
@@ -79,25 +98,25 @@
                                }
                                ToastUtil.show(msg[0]);
                            }
                            selectedPerson.setString("all_device", mainActivity().fragment_face_detail.aboutDevice());
                            if (TextUtils.isEmpty(selectedPerson.getString(Person.org_id))) {
                            selectedPerson().setString("all_device", mainActivity().fragment_face_detail.clusterDevices.isChecked() ? "1" : "0");
                            if (TextUtils.isEmpty(selectedPerson().getString(Person.org_id))) {
                                ModelAdapter rootOrg = OrgManager.findRootOrg();
                                if (rootOrg != null) {
                                    selectedPerson.setString(Person.org_id, rootOrg.getString(Org.id));
                                    selectedPerson.setString(Person.org_ids, rootOrg.getString(Org.ids));
                                    selectedPerson().setString(Person.org_id, rootOrg.getString(Org.id));
                                    selectedPerson().setString(Person.org_ids, rootOrg.getString(Org.ids));
                                }
                            }
                            PersonManager.savePerson(selectedPerson);
                            SocketUtil.rpcCallSavePerson(selectedPerson);
                            savedPersonId = selectedPerson.getId();
                            mainActivity().fragment_face_detail.updateData(selectedPerson.getId());
                            PersonManager.savePerson(selectedPerson());
                            SocketUtil.rpcCallSavePerson(selectedPerson());
                            savedPersonId = selectedPerson().getId();
                            if (isNewPerson()) {
                                FaceId.instance.addFeatureToDb(selectedPerson.getId(), selectedPerson.getBlob("camera_image_feature"));
                                selectedPerson.setString(Model.newModel, com.basic.security.utils.Constants.TRUE);
                                selectedPerson(selectedPerson);
                                FeatureManager.addFeature(selectedPerson().getId(), selectedPerson().getBlob("camera_image_feature"));
                            }
                        } else {
                            ToastUtil.show("获取头像失败,请稍后重试!");
                        }
                        System.out.println("SavePersonHelper.execute MainActivity.showFragment fragment_su_logged_ic_compare_success " + FrameUtil.getFrames());
                        mainActivity().runOnUiThread(() -> {
                            jumpToPage();
                        });
@@ -106,13 +125,13 @@
            }
            public void setIsSignUp() {
                if (!AccountManager.adminLoggedIn()) {
                    selectedPerson.setString("sign_up_status", "已注册");
                if (!UserManager.adminLoggedIn()) {
                    selectedPerson().setString("sign_up_status", "已注册");
                }
                if (AccountManager.adminLoggedIn()) {
                    String sign_up_status = selectedPerson.getString("sign_up_status");
                if (UserManager.adminLoggedIn()) {
                    String sign_up_status = selectedPerson().getString("sign_up_status");
                    messageComplete = mainActivity().fragment_face_detail.detailMessageIsComplete();
                    int identitySize = mainActivity().fragment_face_detail.getIdentitySize();
                    int identitySize = mainActivity().fragment_face_detail.checkedIdentityMapByPerson.values().size();
                    identitySize = 1; // 不判断是否有身份信息都可以保存
                    if (mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_compare_success
                            || mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_wait_idcard
@@ -120,25 +139,25 @@
                            || mainActivity().currentFragment == mainActivity().fragment_su_logged_nic_wait_detail
                            || mainActivity().currentFragment == mainActivity().fragment_su_logged_nic_wait_face) {
                        if (messageComplete) {
                            selectedPerson.setString("sign_up_status", "已注册");
                            selectedPerson().setString("sign_up_status", "已注册");
                            ToastUtil.show("注册成功");
                        } else {
                            selectedPerson.setString("sign_up_status", "未注册");
                            selectedPerson().setString("sign_up_status", "未注册");
                        }
                    } else {
                        if (!"已注册".equals(sign_up_status)) {
                            if (messageComplete) {
                                selectedPerson.setString("sign_up_status", "已注册");
                                selectedPerson().setString("sign_up_status", "已注册");
                                msg[0] = HintSignUpManager.getRegisterSuccessHint();
                                if (identitySize > 0) {
                                    selectedPerson.setString("sign_up_status", "已注册");
                                    selectedPerson().setString("sign_up_status", "已注册");
                                    msg[0] = HintSignUpManager.getRegisterSuccessHint();
                                } else {
                                    ToastUtil.show("请选择身份!");
                                    selectedPerson.setString("sign_up_status", "未注册");
                                    selectedPerson().setString("sign_up_status", "未注册");
                                }
                            } else {
                                selectedPerson.setString("sign_up_status", "未注册");
                                selectedPerson().setString("sign_up_status", "未注册");
                                ToastUtil.show("信息填写不完整!");
                            }
                        }
@@ -147,44 +166,56 @@
            }
            public void setVerifyStatus() {
                if ("自助注册".equals(selectedPerson.getString("sign_up_method"))) {
                if ("自助注册".equals(selectedPerson().getString("sign_up_method"))) {
                    if (BaseSettingManager.isAutoSignUpIDCardMode()) {
                        selectedPerson.setString("verify_status", "未验证身份证");
                        selectedPerson().setString("verify_status", "未验证身份证");
                    } else {
                        selectedPerson.setString("verify_status", "不需要验证身份证");
                        selectedPerson().setString("verify_status", "不需要验证身份证");
                    }
                } else {
                    if (BaseSettingManager.isAdminAuthSignUpModeNeedIdCard()) {
                        selectedPerson.setString("verify_status", "未验证身份证");
                        selectedPerson().setString("verify_status", "未验证身份证");
                    } else {
                        selectedPerson.setString("verify_status", "不需要验证身份证");
                        selectedPerson().setString("verify_status", "不需要验证身份证");
                    }
                }
                if (selectedPerson.getBlob("id_card_image_path") != null) {
                    selectedPerson.setString("verify_status", "已经验证身份证");
                if (selectedPerson().getBlob("id_card_image_path") != null) {
                    selectedPerson().setString("verify_status", "已经验证身份证");
                }
            }
            public boolean checkPersonDocument() {
                boolean isNewPerson = false;
                if (isNewPerson()) {
                    mainActivity().fragment_face_detail.emptyInput();
                    mainActivity().fragment_face_detail.showPersonDetail(null);
                    isNewPerson = true;
                    createNewPerson();
                    if (!AccountManager.adminLoggedIn()) {
                        selectedPerson.setString("sign_up_method", "自助注册");
                    if (!UserManager.adminLoggedIn()) {
                        selectedPerson().setString("sign_up_method", "自助注册");
                    } else {
                        selectedPerson.setString("sign_up_method", "人工注册");
                        selectedPerson().setString("sign_up_method", "人工注册");
                    }
                    if (!savePhotoAndFeature()) {
                        return false;
                    }
                    if (PersonManager.isDuplicate(selectedPerson)) {
                        System.out.println("PersonManagerFragment:114,不应该有重复");
                        return false;
//                    String duplicatedPersonId = PersonManager.isDuplicate(selectedPerson());
                    String duplicatedPersonId = FeatureManager.isDuplicateInAllDb(selectedPerson());
                    if (!TextUtils.isEmpty(duplicatedPersonId)) {
                        if (isNewPerson) {
                            try {
                                FeatureManager.removeFeature(duplicatedPersonId);
                                ModelAdapter duplicatedPerson = PersonManager.findPersonById(duplicatedPersonId);
                                PersonManager.deletePerson(duplicatedPerson);
                                selectedPerson().setString(Person.id, duplicatedPersonId);
                            } catch (Exception e) {
                                e.printStackTrace();
                    }
                } else {
                    if (selectedPerson == null) {
                            System1.out.println("PersonManagerFragment:114,不应该有重复 personId=" + duplicatedPersonId);
                            return false;
                        }
                    }
                } else {
                    if (selectedPerson() == null) {
                        return false;
                    }
                }
@@ -192,15 +223,18 @@
            }
            public void createNewPerson() {
                selectedPerson = new ModelAdapter(BasicIdUtil.getPersonId());
                selectedPerson.setString("del_flag", "0");
                selectedPerson.setString("table", "person");
                selectedPerson.setString("sign_up_time", new Date().getTime() + "");
                selectedPerson = new ModelAdapter(BasicIdUtil.getPersonId(getFaceFeature()));
                selectedPerson.setString(Model.debug, Constants.TRUE);
                selectedPerson().setString(Person.device_id, DeviceManager.getDeviceId());
                selectedPerson().setString(Person.company_id, CompanyManager.getCompanyId());
                selectedPerson().setString("del_flag", "0");
                selectedPerson().setString("table", "person");
                selectedPerson().setString("sign_up_time", new Date().getTime() + "");
            }
            public void jumpToPage() {
                isFromAdminRegister = false;
                if (AccountManager.adminLoggedIn()) {
                if (UserManager.adminLoggedIn()) {
                    if (currentFragment == mainActivity().fragment_su_logged_nic_wait_detail) {
                        mainActivity().showFragment(mainActivity().fragment_su_logged_nic_wait_face);
                        mainActivity().fragment_face_detail.clearInPutText();
@@ -229,16 +263,12 @@
                    if (mainActivity().currentFragment != mainActivity().fragment_person_manage) {
                        if (mainActivity().currentFragment != mainActivity().fragment_su_logged_nic_wait_face
                                || mainActivity().currentFragment != mainActivity().fragment_su_logged_nic_wait_detail) {
                            mainActivity().fragment_face_detail.updateDetailUI(null);
                            mainActivity().fragment_face_detail.updateIdentityListUI(null);
                        } else {
                            personChanged(null, true, false);
                        }
                    } else {
                        if ("未注册".equals(mainActivity().fragment_face_list.isRegister())) {
                            mainActivity().fragment_face_list.findNextPosition(selectedPerson, false);
                        } else {
                            personChanged(PersonManager.findPersonById(selectedPerson.getId()), false, false);
                            mainActivity().fragment_face_list.findNextPosition(selectedPerson(), false);
                        }
                    }
                } else {
@@ -252,14 +282,14 @@
            }
            public boolean needSaveIdCard() {
                if (!AccountManager.adminLoggedIn()) {
                if (!UserManager.adminLoggedIn()) {
                    if (currentFragment == mainActivity().fragment_su_auto_ic_compare_success ||
                            currentFragment == mainActivity().fragment_su_auto_ic_wait_phone ||
                            currentFragment == mainActivity().fragment_su_auto_ic_wait_idcard) {
                        return true;
                    }
                }
                if (AccountManager.adminLoggedIn()) {
                if (UserManager.adminLoggedIn()) {
                    if (currentFragment == mainActivity().fragment_su_logged_ic_wait_idcard ||
                            currentFragment == mainActivity().fragment_su_logged_ic_compare_success) {
                        return true;
@@ -272,66 +302,66 @@
                boolean success = true;
                boolean allowPhone = true;
                boolean allowIDNumber = true;
                if (!AccountManager.adminLoggedIn()) {
                    selectedPerson.setString("sign_up_rule", BaseSettingManager.getDefaultRegisterRule());
                if (!UserManager.adminLoggedIn()) {
                    selectedPerson().setString("sign_up_rule", BaseSettingManager.getDefaultRegisterRule());
                    if ("有效时间内通行".equals(BaseSettingManager.getDefaultRegisterRule())) {
                        if (TextUtils.isEmpty(BaseSettingManager.getDefaultRegisterTimeId())) {
                            ToastUtil.show("请选择有效时间内通行具体时间段");
                            canSavePerson = false;
                        }
                        selectedPerson.setString("checked_time_rule_id", BaseSettingManager.getDefaultRegisterTimeId());
                        selectedPerson().setString("checked_time_rule_id", BaseSettingManager.getDefaultRegisterTimeId());
                    }
                    if (currentFragment == mainActivity().fragment_su_auto_ic_compare_success) {
                        String phone = mainActivity().fragment_su_auto_ic_compare_success.phone_number.getText().toString().trim();
                        if (!TextUtils.isEmpty(phone) && !PhoneNumberCheckUtils.isPhone(phone)) {
                            allowPhone = false;
                        } else {
                            selectedPerson.setString("phone", phone);
                            selectedPerson().setString("phone", phone);
                        }
                    } else if (currentFragment == mainActivity().fragment_su_auto_wait_face) {
                    } else if (currentFragment == mainActivity().fragment_su_auto_nic_wait_detail) {
                        SuAutoNicWaitDetailFragment fragment_su_auto_nic_wait_detail = mainActivity().fragment_su_auto_nic_wait_detail;
                        String phone = fragment_su_auto_nic_wait_detail.phone_number.getText().toString();
                        String idCardNumber = fragment_su_auto_nic_wait_detail.id_card.getText().toString();
                        selectedPerson.setString("name", fragment_su_auto_nic_wait_detail.name.getText().toString());
                        selectedPerson().setString("name", fragment_su_auto_nic_wait_detail.name.getText().toString());
                        if (!TextUtils.isEmpty(idCardNumber)) {
                            CheckIdCard idCard = new CheckIdCard(idCardNumber);
                            if (idCard.validate()) {
                                selectedPerson.setString("id_card_number", idCardNumber);
                                selectedPerson().setString("id_card_number", idCardNumber);
                            } else {
                                allowIDNumber = false;
                            }
                        } else {
                            selectedPerson.setString("id_card_number", idCardNumber);
                            selectedPerson().setString("id_card_number", idCardNumber);
                        }
                        if (!TextUtils.isEmpty(phone) && !PhoneNumberCheckUtils.isPhone(phone)) {
                            allowPhone = false;
                        } else {
                            selectedPerson.setString("phone", phone);
                            selectedPerson().setString("phone", phone);
                        }
                    }
                }
                if (AccountManager.adminLoggedIn()) {
                if (UserManager.adminLoggedIn()) {
                    FaceDetailFragment faceDetailFragment = mainActivity().fragment_face_detail;
                    String phone = faceDetailFragment.getInPutPhoneNumber();
                    String idCardNumber = faceDetailFragment.getInPutIdCardNumber();
                    String studentId = faceDetailFragment.getInputStudentId();
                    selectedPerson.setString(Person.student_id, studentId);
                    selectedPerson().setString(Person.student_id, studentId);
                    if (faceDetailFragment.selectedOrg != null) {
                        selectedPerson.setString(Person.org_id, faceDetailFragment.selectedOrg.getString(Org.id));
                        selectedPerson.setString(Person.org_ids, faceDetailFragment.selectedOrg.getString(Org.ids));
                        selectedPerson().setString(Person.org_id, faceDetailFragment.selectedOrg.getString(Org.id));
                        selectedPerson().setString(Person.org_ids, faceDetailFragment.selectedOrg.getString(Org.ids));
                    }
                    selectedPerson.setString("sign_up_rule", faceDetailFragment.getSignUpRule());
                    selectedPerson().setString("sign_up_rule", faceDetailFragment.getSignUpRule());
                    if ("有效时间内通行".equals(faceDetailFragment.getSignUpRule())) {
                        if (TextUtils.isEmpty(faceDetailFragment.getCheckedTimeRuleId())) {
                            ToastUtil.show("请选择有效时间内通行具体时间段");
                            canSavePerson = false;
                        }
                        selectedPerson.setString("checked_time_rule_id", faceDetailFragment.getCheckedTimeRuleId());
                        selectedPerson().setString("checked_time_rule_id", faceDetailFragment.getCheckedTimeRuleId());
                    }
                    selectedPerson.setString("name", faceDetailFragment.getInPutName());
                    selectedPerson.setString(Person.guest_visit_valid_time, faceDetailFragment.getGuestVisitValid());
                    if (!isNewPerson && StringUtils.isEmpty(selectedPerson.getString(Person.name)) &&
                    selectedPerson().setString("name", faceDetailFragment.getInPutName());
                    selectedPerson().setString(Person.guest_visit_valid_time, faceDetailFragment.getGuestVisitValid());
                    if (!isNewPerson && StringUtils.isEmpty(selectedPerson().getString(Person.name)) &&
                            BaseSettingManager.isAutoSignUpNotIDCardModeNeedName()) {
                        ToastUtil.show("姓名不能为空");
                        return false;
@@ -339,7 +369,7 @@
                    if (!TextUtils.isEmpty(idCardNumber)) {
                        CheckIdCard idCard = new CheckIdCard(idCardNumber);
                        if (idCard.validate()) {
                            selectedPerson.setString("id_card_number", idCardNumber);
                            selectedPerson().setString("id_card_number", idCardNumber);
                        } else {
                            if (!isNewPerson) {
                                ToastUtil.show("请输入正确的身份证号码");
@@ -352,7 +382,7 @@
                            ToastUtil.show("身份证号码不能为空");
                            return false;
                        }
                        selectedPerson.setString("id_card_number", idCardNumber);
                        selectedPerson().setString("id_card_number", idCardNumber);
                    }
                    if (!TextUtils.isEmpty(phone) && !PhoneNumberCheckUtils.isPhone(phone)) {
                        allowPhone = false;
@@ -361,16 +391,16 @@
                            return false;
                        }
                    } else {
                        selectedPerson.setString("phone", phone);
                        selectedPerson().setString("phone", phone);
                    }
                    if (!isNewPerson && StringUtils.isEmpty(selectedPerson.getString(Person.phone)) &&
                    if (!isNewPerson && StringUtils.isEmpty(selectedPerson().getString(Person.phone)) &&
                            BaseSettingManager.isAutoSignUpNotIDCardModeNeedPhone()) {
                        ToastUtil.show("电话号码不能为空");
                        return false;
                    }
                }
                if ("已经验证身份证".equals(selectedPerson.getString("verify_status"))
                        || "未验证身份证".equals(selectedPerson.getString("verify_status"))) {
                if ("已经验证身份证".equals(selectedPerson().getString("verify_status"))
                        || "未验证身份证".equals(selectedPerson().getString("verify_status"))) {
                    if (!allowPhone) {
                        ToastUtil.show("请输入正确的手机号码");
                        canSavePerson = false;
@@ -395,9 +425,9 @@
            }
            public boolean savePhotoAndFeature() {
                if (!saveBlob(selectedPerson, "camera_image_feature", getFaceFeature()) ||
                        !saveBlob(selectedPerson, "camera_image_path", getFacePositionJpgData())) {
                    System.out.println("没有头像图片和头像特征");
                if (!saveBlob(selectedPerson(), "camera_image_feature", getFaceFeature()) ||
                        !saveBlob(selectedPerson(), "camera_image_path", getFacePositionJpgData())) {
                    System1.out.println("没有头像图片和头像特征");
                    return false;
                }
                return true;
@@ -409,7 +439,7 @@
                        mainActivity().fragment_su_logged_ic_wait_face).contains(currentFragment)) {
                    return true;
                }
                return !AccountManager.adminLoggedIn();
                return !UserManager.adminLoggedIn();
            }
        }
        new SavePersonHelper().execute();
@@ -420,19 +450,18 @@
    }
    public void deletePerson() {
        if (selectedPerson == null || "1".equals(selectedPerson.getString("auto_init"))) {
//            ToastUtil.show("系统管理员不能被删除");
        if (selectedPerson() == null || "1".equals(selectedPerson().getString("auto_init"))) {
            return;
        }
        confirmDialog = new ConfirmDialog(mainActivity(), "确认是否删除", "确认删除", "取消");
        confirmDialog.show();
        confirmDialog.setClickListener(new ConfirmDialog.ClickListenerInterface() {
            public void doConfirm() {
                String personId = selectedPerson.getId();
                FaceId.instance.removeFeatureFromDb(selectedPerson.getId());
                PersonManager.deletePerson(selectedPerson);
                String personId = selectedPerson().getId();
                FeatureManager.removeFeature(selectedPerson().getId());
                PersonManager.deletePerson(selectedPerson());
                if (mainActivity().currentFragment == mainActivity().fragment_person_manage) {
                    mainActivity().fragment_face_list.findNextPosition(selectedPerson, true);
                    mainActivity().fragment_face_list.findNextPosition(selectedPerson(), true);
                }
                if (mainActivity().currentFragment == mainActivity().fragment_su_logged_nic_wait_detail
                        || mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_compare_success
@@ -445,6 +474,7 @@
                    mainActivity().fragment_person_manage.personChanged(null, false, false);
                }
                confirmDialog.dismiss();
                mainActivity().fragment_person_manage.selectedPerson(null);
            }
            public void doCancel() {
@@ -464,9 +494,9 @@
                        new HashMap<>(), person);
            }
        }
        selectedPerson = person;
        mainActivity().fragment_face_detail.updateIdentityListUI(person);
        mainActivity().fragment_face_detail.updateDetailUI(person);
        selectedPerson(person);
//        mainActivity().fragment_face_detail.updateIdentityListUI(person);
//        mainActivity().fragment_face_detail.updateDetailUI(person);
    }
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
@@ -481,24 +511,23 @@
        super.show();
        mainActivity().fragment_face_list.update_tv_person_number();
        if (mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_wait_idcard) {
            mainActivity().fragment_face_detail.updateIdentityListUI(null);
//            mainActivity().fragment_face_detail.updateIdentityListUI(null);
        }
        // 解决从注册页面跳到人员管理页面,第一次不显示请在刷卡区验证身份证
        if (selectedPerson != null && isFromAdminRegister) {
            mainActivity().fragment_face_detail.updateDetailUI(selectedPerson);
        if (selectedPerson() != null && isFromAdminRegister) {
//            mainActivity().fragment_face_detail.updateDetailUI(selectedPerson());
        }
    }
    public void hide() {
        super.hide();
        if (mainActivity().currentFragment != mainActivity().fragment_person_manage) {
            // 当人工注册身份证验证时,会把selectedPerson置为null,暂时没找到置为null的原因,为了不影响已有的逻辑
            // 当为工注册身份证验证时,不把selectedPerson置为null,
            if (mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_compare_success
                    || mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_wait_idcard
                    || mainActivity().currentFragment == mainActivity().fragment_su_logged_ic_wait_face) {
            } else {
                selectedPerson = null;
//                selectedPerson(null);
//                mainActivity.fragment_face_detail.updateDetailUI(null);
//                mainActivity.fragment_face_detail.updateIdentityListUI(null);
            }
            if (confirmDialog != null) {
                confirmDialog.dismiss();
@@ -506,22 +535,20 @@
        }
    }
    //取消
    public void giveUpSave() {
        mainActivity().fragment_menu.person_add();
    }
    //验证身份证和手机号
    private boolean checkIdCardAndPhone() {
        if (!TextUtils.isEmpty(selectedPerson.getString("id_card_number"))) {
            CheckIdCard checkIdCard = new CheckIdCard(selectedPerson.getString("id_card_number"));
        if (!TextUtils.isEmpty(selectedPerson().getString("id_card_number"))) {
            CheckIdCard checkIdCard = new CheckIdCard(selectedPerson().getString("id_card_number"));
            if (!checkIdCard.validate()) {
                ToastUtil.show("请输入正确的身份证号");
                return false;
            }
        }
        if (!TextUtils.isEmpty(selectedPerson.getString("phone"))) {
            if (!PhoneNumberCheckUtils.isPhone(selectedPerson.getString("phone"))) {
        if (!TextUtils.isEmpty(selectedPerson().getString("phone"))) {
            if (!PhoneNumberCheckUtils.isPhone(selectedPerson().getString("phone"))) {
                ToastUtil.show("请输入正确的手机号");
                return false;
            }