package com.basic.security.manager.impl.sqlite; import android.text.TextUtils; import com.basic.security.model.ModelAdapter; import com.basic.security.utils.BaseSetting; import org.apache.commons.lang3.StringUtils; /** * 基本设置相关数据库操作方法 */ public class SlBaseSettingManager extends SlBaseManager { public static ModelAdapter baseSetting = new ModelAdapter(); /*保存基本设置*/ public static void save(BaseSetting baseSettingBean) { baseSetting = getBaseSetting(); baseSetting.setString("auto_mode", baseSettingBean.auto_mode); // 18-10-30 废弃 // baseSetting.setString("auto_mode_verify_phone", baseSettingBean.auto_mode_verify_phone); baseSetting.setString("auto_normal_verify", baseSettingBean.auto_normal_verify); baseSetting.setString("open_door_duration", baseSettingBean.open_door_duration); baseSetting.setString("auto_normal_verify_phone", baseSettingBean.auto_normal_verify_phone); baseSetting.setString("auto_normal_verify_idcard", baseSettingBean.auto_normal_verify_idcard); baseSetting.setString("auto_normal_verify_name", baseSettingBean.auto_normal_verify_name); baseSetting.setString("auto_idcard_verify", baseSettingBean.auto_idcard_verify); baseSetting.setString("auto_idcard_verify_phone", baseSettingBean.auto_idcard_verify_phone); baseSetting.setString("auto_register_identity_id", baseSettingBean.auto_register_identity_id); baseSetting.setString("auto_register_identity_name", baseSettingBean.auto_register_identity_name); baseSetting.setString("admin_mode", baseSettingBean.admin_mode); baseSetting.setString("admin_normal_verify", baseSettingBean.admin_normal_verify); baseSetting.setString("admin_normal_verify_phone", baseSettingBean.admin_normal_verify_phone); baseSetting.setString("admin_normal_verify_idcard", baseSettingBean.admin_normal_verify_idcard); baseSetting.setString("admin_normal_verify_name", baseSettingBean.admin_normal_verify_name); baseSetting.setString("admin_idcard_verify", baseSettingBean.admin_idcard_verify); baseSetting.setString("admin_idcard_verify_phone", baseSettingBean.admin_idcard_verify_phone); baseSetting.setString("login_expire_long", baseSettingBean.login_expire_long); baseSetting.setString("back_to_home", baseSettingBean.back_to_home); baseSetting.setString("face_ratio", baseSettingBean.face_ratio); baseSetting.setString("face_angle", baseSettingBean.face_angle); baseSetting.setString("table", baseSettingBean.getTable()); baseSetting.setString("image_play_interval", baseSettingBean.image_play_interval); baseSetting.setString("image_play_time", baseSettingBean.image_play_time); baseSetting.setString("detect_multiple_face", baseSettingBean.detect_multiple_face); // baseSetting.setString("device_id", DeviceUuidFactory.getInstance(BaseApplication.getApplication()).getDeviceUuid().toString()); baseSetting.setString("company_id", SlDeviceManager.getCompareId()); // 新加 baseSetting.setString("auto_register_rule", baseSettingBean.auto_register_rule); baseSetting.setString("auto_checked_time_rule_id", baseSettingBean.auto_checked_time_rule_id); baseSetting.setString("pass_mode", baseSettingBean.pass_mode); baseSetting.setString("visitor_mode", baseSettingBean.visitor_mode); baseSetting.setString("device_setting", baseSettingBean.device_setting); baseSetting.setString("relation_person", baseSettingBean.relation_person); baseSetting.setString("relation_device", baseSettingBean.relation_device); baseSetting.setString("device_name_ip", baseSettingBean.device_name_ip); baseSetting.setString("server_name_ip", baseSettingBean.server_name_ip); baseSetting.setString("no_face_delay", baseSettingBean.no_face_delay); baseSetting.setString("picture_rotation_angle", baseSettingBean.picture_rotation_angle); // 新加设备id baseSetting.setString("device_id", SlDeviceManager.getDeviceId()); save(baseSetting); baseSetting = null; } static long lastTimeSetBaseSetting = 0; /*得到基本设置*/ public static ModelAdapter getBaseSetting() { if (baseSetting == null || System.currentTimeMillis() - lastTimeSetBaseSetting > 5000) { if (TextUtils.isEmpty(SlDeviceManager.getDeviceId())) { baseSetting = findOne("select * from base_setting"); } else { baseSetting = findOne("select * from base_setting where device_id = '" + SlDeviceManager.getDeviceId() + "'"); } lastTimeSetBaseSetting = System.currentTimeMillis(); } if (baseSetting == null) { baseSetting = new ModelAdapter(); } return baseSetting; } /** * 无操作多少秒回到首页 **/ public static int getBackToHomeInSeconds() { int backToHomeInSeconds = 5; try { String time = getBaseSetting().getString("back_to_home"); if (!TextUtils.isEmpty(time)) { backToHomeInSeconds = Integer.parseInt(time); } } catch (Exception e) { e.printStackTrace(); } if (backToHomeInSeconds <= 0) { backToHomeInSeconds = 5; } return backToHomeInSeconds; } /*是否为自助注册模式*/ public static boolean isAutoSignUpMode() { String auto_mode = getBaseSetting().getString("auto_mode"); if (!TextUtils.isEmpty(auto_mode) && auto_mode.equals("1")) { return true; } else { return false; } } /* *//*自助注册模式(要身份证), 手机号是否必填*//* public static boolean isAutoSignUpModeNeedPhone() { String admin_normal_verify_phone = getBaseSetting().getString("auto_mode_verify_phone"); if (!TextUtils.isEmpty(admin_normal_verify_phone) && admin_normal_verify_phone.equals("1")) { return true; } else { return false; } }*/ /*是否为人工注册模式*/ public static boolean isAdminAuthSignUpMode() { String admin_mode = getBaseSetting().getString("admin_mode"); if ("1".equals(admin_mode)) { return true; } else { return false; } } /*是否为通行模式*/ public static boolean isPassMode() { String pass_mode = getBaseSetting().getString("pass_mode"); if (!TextUtils.isEmpty(pass_mode) && pass_mode.equals("1")) { return true; } else { return false; } } /*是否为访客模式*/ public static boolean isVisitorMode() { String visitor_mode = getBaseSetting().getString("visitor_mode"); if (!TextUtils.isEmpty(visitor_mode) && visitor_mode.equals("1")) { return true; } else { return false; } } /*管理员授权注册,是否为身份证验证*/ public static boolean isAdminAuthSignUpModeNeedIdCard() { if (isAutoSignUpMode()) {// 如果在自助注册模式点击人工注册,按照自助注册的模式注册 return isAutoSignUpIDCardMode(); } String admin_idcard_verify = getBaseSetting().getString("admin_idcard_verify"); if (!TextUtils.isEmpty(admin_idcard_verify) && admin_idcard_verify.equals("1")) { return true; } else { return false; } } /*管理员授权注册,身份证模式, 手机号是否必填*/ public static boolean adminIDCardSignUpModeNeedPhone() { if (isAutoSignUpMode()) { // 如果在自助注册模式点击人工注册,必填项按照自助注册 return isAutoSignUpIDCardModeNeedPhone(); } String admin_idcard_verify_phone = getBaseSetting().getString("admin_idcard_verify_phone"); if (!TextUtils.isEmpty(admin_idcard_verify_phone) && admin_idcard_verify_phone.equals("1")) { return true; } else { return false; } } /*管理员授权注册,普通模式(不要身份证), 手机号是否必填*/ public static boolean adminNormalSignUpModeNeedPhone() { if (isAutoSignUpMode()) { // 如果在自助注册模式点击人工注册,必填项按照自助注册 return isAutoSignUpNotIDCardModeNeedPhone(); } String admin_normal_verify_phone = getBaseSetting().getString("admin_normal_verify_phone"); if (!TextUtils.isEmpty(admin_normal_verify_phone) && admin_normal_verify_phone.equals("1")) { return true; } else { return false; } } /*管理员授权注册,普通模式(不要身份证), 姓名是否必填*/ public static boolean adminNormalSignUpModeNeedName() { if (isAutoSignUpMode()) { // 如果在自助注册模式点击人工注册,必填项按照自助注册 return isAutoSignUpNotIDCardModeNeedName(); } String admin_normal_verify_name = getBaseSetting().getString("admin_normal_verify_name"); if (!TextUtils.isEmpty(admin_normal_verify_name) && admin_normal_verify_name.equals("1")) { return true; } else { return false; } } /*管理员授权注册,普通模式(不要身份证), 身份证号是否必填*/ public static boolean adminNormalSignUpModeNeedIDNumber() { if (isAutoSignUpMode()) { // 如果在自助注册模式点击人工注册,必填项按照自助注册 return isAutoSignUpNotIDCardModeNeedIDNumber(); } String admin_normal_verify_idcard = getBaseSetting().getString("admin_normal_verify_idcard"); if (!TextUtils.isEmpty(admin_normal_verify_idcard) && admin_normal_verify_idcard.equals("1")) { return true; } else { return false; } } /** * 默认管理员登录多少分钟退出 **/ public static long getLoginExpireInMinutes() { try { String login_expire_long = getBaseSetting().getString("login_expire_long"); if (!TextUtils.isEmpty(login_expire_long)) { int login_expire_long_int = Integer.parseInt(login_expire_long); if (login_expire_long_int > 0) { return login_expire_long_int; } } } catch (Exception e) { e.printStackTrace(); } return 10; } /** * 是否允许多张脸同时校验 * * @return true 允许 */ public static boolean allowMultipleFace() { String detect_multiple_face = getBaseSetting().getString("detect_multiple_face"); if (!TextUtils.isEmpty(detect_multiple_face) && "1".equals(detect_multiple_face)) { return true; } else { return false; } } /* 是否选中图片轮播 **/ public static boolean imagePlayInterval() { String detect_multiple_face = getBaseSetting().getString("image_play_interval"); if (!TextUtils.isEmpty(detect_multiple_face) && "1".equals(detect_multiple_face)) { return true; } else { return false; } } /* 设置图片轮播 时间 **/ public static int getImagePlayTime() { try { String image_play_time = getBaseSetting().getString("image_play_time"); if (!TextUtils.isEmpty(image_play_time)) { int image_play_time_int = Integer.parseInt(image_play_time); if (image_play_time_int > 0) { return image_play_time_int; } } } catch (Exception e) { e.printStackTrace(); } return 10; } /* 人脸占屏幕比 **/ public static String getFaceRatio() { try { String face_ratio = getBaseSetting().getString("face_ratio"); if (!TextUtils.isEmpty(face_ratio)) { String[] split = face_ratio.split("/"); return (Double.parseDouble(split[0]) / Double.parseDouble(split[1])) + ""; } } catch (Exception e) { e.printStackTrace(); } return "0.25"; } /* 人脸角度 **/ public static String getFaceAngle() { try { String face_angle = getBaseSetting().getString("face_angle"); if (!TextUtils.isEmpty(face_angle)) { return face_angle; } } catch (Exception e) { e.printStackTrace(); } return "10"; } /* 自助注册 - 默认身份id*/ public static String getDefaultIdentityId() { String auto_register_identity_id = getBaseSetting().getString("auto_register_identity_id"); if (!TextUtils.isEmpty(auto_register_identity_id)) { return auto_register_identity_id; } return null; } /* 自助注册 - 默认身份name*/ public static String getDefaultIdentityName() { String auto_register_identity_name = getBaseSetting().getString("auto_register_identity_name"); if (!TextUtils.isEmpty(auto_register_identity_name)) { return auto_register_identity_name; } return null; } /* 自助注册 - 默认规则*/ public static String getDefaultRegisterRule() { String auto_register_identity_id = getBaseSetting().getString("auto_register_rule"); if (!TextUtils.isEmpty(auto_register_identity_id)) { return auto_register_identity_id; } return null; } /* 自助注册 - 有效时间内通行选中的时间段ID*/ public static String getDefaultRegisterTimeId() { String auto_register_identity_name = getBaseSetting().getString("auto_checked_time_rule_id"); if (!TextUtils.isEmpty(auto_register_identity_name)) { return auto_register_identity_name; } return null; } /*自助注册模式, 是否为身份验证*/ public static boolean isAutoSignUpIDCardMode() { String auto_idcard_verify = getBaseSetting().getString("auto_idcard_verify"); if (!TextUtils.isEmpty(auto_idcard_verify) && auto_idcard_verify.equals("1")) { return true; } else { return false; } } /*自助注册模式, 身份验证,手机号是否必填*/ public static boolean isAutoSignUpIDCardModeNeedPhone() { String auto_idcard_verify_phone = getBaseSetting().getString("auto_idcard_verify_phone"); if (!TextUtils.isEmpty(auto_idcard_verify_phone) && auto_idcard_verify_phone.equals("1")) { return true; } else { return false; } } /*自助注册模式, 是否为普通验证*/ public static boolean isAutoSignUpNormalMode() { String auto_normal_verify = getBaseSetting().getString("auto_normal_verify"); if (!TextUtils.isEmpty(auto_normal_verify) && auto_normal_verify.equals("1")) { return true; } else { return false; } } /*自助注册模式,普通验证(不要身份证), 姓名是否必填*/ public static boolean isAutoSignUpNotIDCardModeNeedName() { String auto_normal_verify_name = getBaseSetting().getString("auto_normal_verify_name"); if (!TextUtils.isEmpty(auto_normal_verify_name) && auto_normal_verify_name.equals("1")) { return true; } else { return false; } } /*自助注册模式,普通验证(不要身份证), 身份证号是否必填*/ public static boolean isAutoSignUpNotIDCardModeNeedIDNumber() { String auto_normal_verify_idcard = getBaseSetting().getString("auto_normal_verify_idcard"); if (!TextUtils.isEmpty(auto_normal_verify_idcard) && auto_normal_verify_idcard.equals("1")) { return true; } else { return false; } } /*自助注册模式,普通验证(不要身份证), 手机号是否必填*/ public static boolean isAutoSignUpNotIDCardModeNeedPhone() { String auto_normal_verify_phone = getBaseSetting().getString("auto_normal_verify_phone"); if (!TextUtils.isEmpty(auto_normal_verify_phone) && auto_normal_verify_phone.equals("1")) { return true; } else { return false; } } // 选择设备配置是确认通行还是注册通行 public static String getDeviceSetting() { return getBaseSetting().getString("device_setting"); } // 确认通行下关联人是否选中(此方法没有用) public static boolean relationPersonIsCheck() { String relation_person = getBaseSetting().getString("relation_person"); if ("确认通行".equals(getBaseSetting().getString("device_setting")) && "1".equals(relation_person)) { return true; } else { return false; } } // 确认通行下关联设备是否选中(此方法没有用) public static boolean relationDeviceIsCheck() { String relation_device = getBaseSetting().getString("relation_device"); if ("确认通行".equals(getBaseSetting().getString("device_setting")) && "1".equals(relation_device)) { return true; } else { return false; } } // 确认通行下设备名称 public static String getDeviceName() { String device_name_ip = getBaseSetting().getString("device_name_ip"); if ("确认通行".equals(getBaseSetting().getString("device_setting")) && !TextUtils.isEmpty(device_name_ip)) { return device_name_ip; } else { return null; } } // 确认通行下服务器名称 public static String getServerName() { String server_name_ip = getBaseSetting().getString("server_name_ip"); if ("确认通行".equals(getBaseSetting().getString("device_setting")) && !TextUtils.isEmpty(server_name_ip)) { return server_name_ip; } else { return null; } } // 无人脸延时时间 public static int getNoFaceDelay() { try { String no_face_delay = getBaseSetting().getString("no_face_delay"); if (!TextUtils.isEmpty(no_face_delay)) { int no_face_delay_int = Integer.parseInt(no_face_delay); if (no_face_delay_int > 0) { return no_face_delay_int; } } } catch (Exception e) { e.printStackTrace(); } return 5; } // 设备照片旋转角度 public static int getPictureRotationAngle() { try { String picture_rotation_angle = getBaseSetting().getString("picture_rotation_angle"); if (!TextUtils.isEmpty(picture_rotation_angle)) { int picture_rotation_angle_int = Integer.parseInt(picture_rotation_angle); if (picture_rotation_angle_int > 0) { return picture_rotation_angle_int; } } } catch (Exception e) { e.printStackTrace(); } return 0; } public static boolean isDoorAccessOnlyMode() { return false; } public static boolean isVisitOnlyMode() { return false; } public static long getOpenDoorDurationSeconds() { int openDoorDuration = 10; try { String openDoorDurationStr = getBaseSetting().getString("open_door_duration"); openDoorDuration = Integer.parseInt(openDoorDurationStr); if (openDoorDuration <= 0) { openDoorDuration = 10; } } catch (Exception e) { System.out.println(e.getMessage()); } return openDoorDuration; } }