package com.basic.security.manager.helper.rm.base;
|
|
import com.basic.security.manager.BaseSettingManager;
|
import com.basic.security.manager.BusinessPersonManager;
|
import com.basic.security.manager.HintDoorAccessManager;
|
import com.basic.security.model.Person;
|
|
public class CurrentBaseDoorAccess extends CurrentBaseAdmin {
|
// 注册规则, 业务规则, 设备规则
|
public Object doorAccessSuccessInStep = "";
|
public Object doorAccessSuccessInStepS = "";
|
public Object doorAccessSuccessWelcomeObject = new Object();
|
public Object doorAccessSuccessWelcomeObjectS = new Object();
|
// 注册规则, 业务规则, 设备规则
|
public Object doorAccessDenyInStep = "";
|
public Object doorAccessDenyInStepS = "";
|
public Object doorAccessDenyMessage = new Object();
|
public Object doorAccessDenyMessageS = new Object();
|
|
public boolean doorAccessMode() {
|
// if (Constants.indoorOutdoorInOne) {
|
// return true;
|
// }
|
return
|
activity.currentFragment != activity.fragment_su_logged_ic_compare_success &&
|
activity.currentFragment != activity.fragment_su_logged_ic_wait_idcard &&
|
activity.currentFragment != activity.fragment_su_logged_ic_wait_face &&
|
activity.currentFragment != activity.fragment_su_logged_nic_wait_detail &&
|
activity.currentFragment != activity.fragment_su_logged_nic_wait_face
|
;
|
// return activity.currentFragment == activity.fragment_su_auto_wait_face ||
|
// activity.currentFragment == activity.fragment_door_access_confirm ||
|
// activity.currentFragment == activity.fragment_guest_mode ||
|
// activity.currentFragment == activity.fragment_door_access_success;
|
}
|
|
protected boolean doorAccessNeedToStep3S() {
|
return doorAccessNeedToStep2S();
|
}
|
|
protected boolean doorAccessNeedToStep3() {
|
return doorAccessNeedToStep2();
|
}
|
|
public void doorAccessCheckByDeviceRuleS() {
|
String deviceRuleName = BaseSettingManager.getDevicePassMode();
|
if ("允许通行".equals(deviceRuleName)) {
|
doorAccessSuccessInStepS = "设备规则";
|
doorAccessAllowedListS.add(currentFacePosition);
|
doorAccessSuccessWelcomeObjectS = "";
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(HintDoorAccessManager.getDeviceDoorAccessAllowMessage(currentPerson));
|
}
|
if ("确认通行".equals(deviceRuleName)) {
|
currentDoorAccessStateS = true;
|
doorAccessConfirmListS.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(HintDoorAccessManager.getDeviceDoorAccessConfirmMessage(currentPerson));
|
}
|
}
|
|
public void doorAccessCheckByDeviceRule() {
|
String deviceRuleName = BaseSettingManager.getDevicePassMode();
|
if ("允许通行".equals(deviceRuleName)) {
|
doorAccessSuccessInStep = "设备规则";
|
doorAccessAllowedList.add(currentFacePosition);
|
doorAccessSuccessWelcomeObject = "";
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(HintDoorAccessManager.getDeviceDoorAccessAllowMessage(currentPerson));
|
}
|
if ("确认通行".equals(deviceRuleName)) {
|
currentDoorAccessState = true;
|
doorAccessConfirmList.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(HintDoorAccessManager.getDeviceDoorAccessConfirmMessage(currentPerson));
|
}
|
}
|
|
protected void doorAccessCheckByBusinessRuleS() {
|
if (currentValidBusinessRuleList.size() > 0) {
|
doorAccessSuccessInStepS = "业务规则";
|
currentDoorAccessStateS = true;
|
doorAccessAllowedListS.add(currentFacePosition);
|
doorAccessSuccessWelcomeObjectS = currentValidBusinessRuleList.get(0);
|
if (currentValidBusinessRuleConfirmList.size() > 0) {
|
String doorAccessMessage = BusinessPersonManager.getBusinessRuleDoorAccessConfirmMessage(currentValidBusinessRuleList.get(0), currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
} else {
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(BusinessPersonManager.getBusinessRuleDoorAccessAllowMessage(currentValidBusinessRuleList.get(0), currentPerson));
|
}
|
} else if (currentValidBusinessRuleListButTimeNotReach.size() > 0) {
|
doorAccessDenyInStepS = "业务规则";
|
currentDoorAccessStateS = false;
|
doorAccessDenyMessageS = currentValidBusinessRuleListButTimeNotReach.get(0);
|
doorAccessDeniedListS.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(BusinessPersonManager.getBusinessDoorAccessTimeNotReachMessage(currentValidBusinessRuleListButTimeNotReach.get(0), currentPerson));
|
}
|
}
|
|
protected void doorAccessCheckByBusinessRule() {
|
if (currentValidBusinessRuleList.size() > 0) {
|
doorAccessSuccessInStep = "业务规则";
|
currentDoorAccessState = true;
|
doorAccessAllowedList.add(currentFacePosition);
|
doorAccessSuccessWelcomeObject = currentValidBusinessRuleList.get(0);
|
if (currentValidBusinessRuleConfirmList.size() > 0) {
|
String doorAccessMessage = BusinessPersonManager.getBusinessRuleDoorAccessConfirmMessage(currentValidBusinessRuleList.get(0), currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
} else {
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(BusinessPersonManager.getBusinessRuleDoorAccessAllowMessage(currentValidBusinessRuleList.get(0), currentPerson));
|
}
|
} else if (currentValidBusinessRuleListButTimeNotReach.size() > 0) {
|
doorAccessDenyInStep = "业务规则";
|
currentDoorAccessState = false;
|
doorAccessDenyMessage = currentValidBusinessRuleListButTimeNotReach.get(0);
|
doorAccessDeniedList.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(BusinessPersonManager.getBusinessDoorAccessTimeNotReachMessage(currentValidBusinessRuleListButTimeNotReach.get(0), currentPerson));
|
}
|
}
|
|
public void doorAccess() {
|
doorAccessSuccessInStep = "";
|
doorAccessSuccessWelcomeObject = new Object();
|
doorAccessDenyInStep = "";
|
doorAccessDenyMessage = new Object();
|
if ("访客注册".equals(currentPerson.getString(Person.sign_up_method))) {
|
try {
|
long guest_visit_valid_time = Long.parseLong(currentPerson.getString(Person.guest_visit_valid_time));
|
if (System.currentTimeMillis() - guest_visit_valid_time < 0) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(null, currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
doorAccessAllowedList.add(currentFacePosition);
|
} else {
|
String denyMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson);
|
currentFaceTitleAndTips.faceTitle(denyMessage);
|
currentFaceTitleAndTips.faceTitle2(denyMessage, true);
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
} else {
|
doorAccesss1();
|
if (doorAccessNeedToStep2()) {
|
doorAccessCheckByBusinessRule();
|
if (doorAccessNeedToStep3()) {
|
doorAccessCheckByDeviceRule();
|
}
|
}
|
}
|
}
|
|
public void doorAccessS() {
|
doorAccessSuccessInStepS = "";
|
doorAccessSuccessWelcomeObjectS = new Object();
|
doorAccessDenyInStepS = "";
|
doorAccessDenyMessageS = new Object();
|
if ("访客注册".equals(currentPerson.getString(Person.sign_up_method))) {
|
try {
|
long guest_visit_valid_time = Long.parseLong(currentPerson.getString(Person.guest_visit_valid_time));
|
if (System.currentTimeMillis() - guest_visit_valid_time < 0) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(null, currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
doorAccessAllowedListS.add(currentFacePosition);
|
currentFaceTitleAndTipsS.setFaceTitleGreenColor();
|
} else {
|
String denyMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson);
|
// System1.out.println("CurrentBaseDoorAccess.doorAccessS " + (System.currentTimeMillis() - guest_visit_valid_time < 0) +" " + denyMessage);
|
currentFaceTitleAndTipsS.faceTitle(denyMessage);
|
currentFaceTitleAndTipsS.setFaceTitleRedColor();
|
currentFaceTitleAndTipsS.faceTitle2(denyMessage, true);
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
} else {
|
doorAccesss1S();
|
if (doorAccessNeedToStep2S()) {
|
doorAccessCheckByBusinessRuleS();
|
if (doorAccessNeedToStep3S()) {
|
doorAccessCheckByDeviceRuleS();
|
}
|
}
|
}
|
}
|
|
public void doorAccesss1S() {
|
// System1.out.println("CurrentBaseDoorAccess.doorAccesss1S 1 " + currentSignUpRuleName);
|
if ("拒绝通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
doorAccess1DeniedS();
|
currentFaceTitleAndTipsS.setFaceTitleRedColor();
|
} else if ("确认通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getDeviceDoorAccessConfirmMessage(currentPerson);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
// System1.out.println("CurrentBaseDoorAccess.doorAccesss1 doorAccessMessage="+doorAccessMessage);
|
// doorAccess1AllowedS();
|
currentFaceTitleAndTipsS.setFaceTitleGreenColor();
|
} else if ("允许通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(null, currentPerson);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
doorAccess1AllowedS();
|
currentFaceTitleAndTipsS.setFaceTitleGreenColor();
|
} else if ("有效时间内通行".equals(currentSignUpRuleName)) {
|
doorAccess1TimeRangeCheckS();
|
}
|
}
|
|
public void doorAccesss1() {
|
if ("拒绝通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
doorAccess1Denied();
|
} else if ("确认通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getDeviceDoorAccessConfirmMessage(currentPerson);
|
// System1.out.println("CurrentBaseDoorAccess.doorAccesss1 doorAccessMessage="+doorAccessMessage);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
// doorAccess1Allowed();
|
} else if ("允许通行".equals(currentSignUpRuleName)) {
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(null, currentPerson);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
doorAccess1Allowed();
|
} else if ("有效时间内通行".equals(currentSignUpRuleName)) {
|
doorAccess1TimeRangeCheck();
|
}
|
}
|
|
protected boolean doorAccess1TimeRangeCheckS() {
|
if (currentValidSignUpRuleList.size() > 0) {
|
doorAccessDenyInStepS = "注册规则";
|
currentDoorAccessStateS = true;
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(currentValidSignUpRuleList.get(0), currentPerson);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
doorAccessAllowedListS.add(currentFacePosition);
|
currentFaceTitleAndTipsS.setFaceTitleGreenColor();
|
return true;
|
} else if (currentValidSignUpRuleListButTimeNotReach.size() > 0) {
|
doorAccessDenyInStepS = "注册规则";
|
currentDoorAccessStateS = false;
|
doorAccessDenyMessageS = currentValidSignUpRuleListButTimeNotReach.get(0);
|
doorAccessDeniedListS.add(currentFacePosition);
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeNotReachMessage(currentValidSignUpRuleListButTimeNotReach.get(0), currentPerson);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(doorAccessMessage);
|
currentFaceTitleAndTipsS.setFaceTitleRedColor();
|
return false;
|
}
|
return false;
|
}
|
|
protected boolean doorAccess1TimeRangeCheck() {
|
if (currentValidSignUpRuleList.size() > 0) {
|
doorAccessDenyInStep = "注册规则";
|
currentDoorAccessState = true;
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessAllowMessage(currentValidSignUpRuleList.get(0), currentPerson);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
doorAccessAllowedList.add(currentFacePosition);
|
return true;
|
} else if (currentValidSignUpRuleListButTimeNotReach.size() > 0) {
|
doorAccessDenyInStep = "注册规则";
|
currentDoorAccessState = false;
|
doorAccessDenyMessage = currentValidSignUpRuleListButTimeNotReach.get(0);
|
doorAccessDeniedList.add(currentFacePosition);
|
String doorAccessMessage = HintDoorAccessManager.getSignUpRuleDoorAccessTimeNotReachMessage(currentValidSignUpRuleListButTimeNotReach.get(0), currentPerson);
|
currentFaceTitleAndTips.faceTitle2(doorAccessMessage, true);
|
currentFaceTitleAndTipsS.faceTitle2(doorAccessMessage, true);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(doorAccessMessage);
|
return false;
|
}
|
return false;
|
}
|
|
protected boolean doorAccess1DeniedS() {
|
doorAccessDenyInStepS = "注册规则";
|
currentDoorAccessStateS = false;
|
doorAccessDeniedListS.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessageS(HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson));
|
return true;
|
}
|
|
protected boolean doorAccess1Denied() {
|
doorAccessDenyInStep = "注册规则";
|
currentDoorAccessState = false;
|
doorAccessDeniedList.add(currentFacePosition);
|
CurrentBaseFacePosition.setCurrentDoorAccessMessage(HintDoorAccessManager.getSignUpRuleDoorAccessTimeDeniedMessage(currentPerson));
|
return true;
|
}
|
|
protected boolean doorAccess1AllowedS() {
|
doorAccessSuccessInStepS = "注册规则";
|
currentDoorAccessStateS = true;
|
doorAccessAllowedListS.add(currentFacePosition);
|
return false;
|
}
|
|
protected boolean doorAccess1Allowed() {
|
doorAccessSuccessInStep = "注册规则";
|
currentDoorAccessState = true;
|
doorAccessAllowedList.add(currentFacePosition);
|
return false;
|
}
|
}
|