package com.basic.security.manager.helper.rm.base;
|
|
import android.os.SystemClock;
|
import android.text.TextUtils;
|
|
import com.basic.security.base.BaseFragment;
|
import com.basic.security.fragment.PersonManageFragment;
|
import com.basic.security.manager.PersonManager;
|
import com.basic.security.utils.Constants;
|
import com.basic.security.utils.FaceId;
|
|
public class CurrentBaseSavePerson extends CurrentBaseSignUpGuidTitle {
|
boolean shouldSleepNextTime = false;
|
boolean reloadFaceList = true;
|
|
public void savePersonAndShowFragment(BaseFragment baseFragment) {
|
PersonManageFragment personManageFragment = activity.fragment_person_manage;
|
if (activity.needCompareFeature()) {
|
if (shouldSleepNextTime) {
|
shouldSleepNextTime = false;
|
SystemClock.sleep(500);
|
return;
|
}
|
BaseFragment.detectedResult = CurrentBase.detectedResult;
|
BaseFragment.detectedResultTime = System.currentTimeMillis();
|
BaseFragment.selectedFacePositionIndex = currentFacePositionIndex;
|
personManageFragment.savePerson();
|
shouldSleepNextTime = true;
|
}
|
currentFacePosition.compareFeatureResult = null;
|
activity.refreshCurrentFragmentShowTime();
|
showFragmentSuccess = true;
|
activity.currentFragment = baseFragment;
|
activity.showFragment(baseFragment, true);
|
personManageFragment.personChanged(PersonManager.findPersonById(personManageFragment.savedPersonId), reloadFaceList, true);
|
}
|
|
public void saveFullPersonAndShowFragment(BaseFragment baseFragment) {
|
PersonManageFragment personManageFragment = activity.fragment_person_manage;
|
if (activity.needCompareFeature()) {
|
if (shouldSleepNextTime) {
|
shouldSleepNextTime = false;
|
SystemClock.sleep(1000);
|
return;
|
}
|
shouldSleepNextTime = true;
|
BaseFragment.detectedResult = CurrentBase.detectedResult;
|
BaseFragment.detectedResultTime = System.currentTimeMillis();
|
BaseFragment.selectedFacePositionIndex = currentFacePositionIndex;
|
personManageFragment.savedPersonId = "";
|
String compareResultStr = FaceId.instance.compareFeatureInDb(BaseFragment.getFaceFeature(), Constants.minRecognizeScore);
|
String personId = compareResultStr.split(",", -1)[0];
|
if (TextUtils.isEmpty(personId)) {
|
personManageFragment.savePerson();
|
} else {
|
return;
|
}
|
}
|
if (!TextUtils.isEmpty(personManageFragment.savedPersonId)) {
|
currentFacePosition.compareFeatureResult = null;
|
activity.refreshCurrentFragmentShowTime();
|
showFragmentSuccess = true;
|
activity.currentFragment = baseFragment;
|
activity.showFragment(baseFragment, true);
|
personManageFragment.personChanged(PersonManager.findPersonById(personManageFragment.savedPersonId), true, true);
|
}
|
}
|
}
|