zhangzengfei
2020-11-05 cbdaa0559af3b8ae9c8cf8287d30916d5f81ee3c
app/src/main/java/com/basic/security/manager/SettingManager.java
@@ -3,43 +3,65 @@
import android.content.SharedPreferences;
import com.basic.security.base.BaseApplication;
import com.basic.security.dao.SqliteManager;
import com.basic.security.fragment.SettingFragment;
import com.basic.security.model.Setting;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import static android.content.Context.MODE_PRIVATE;
public class SettingManager {
public class SettingManager extends SqliteManager {
    public static long milliSeconds = 10*1000;
    public static String alarmAudio;
    public static boolean saveSetting(String secondStr, String ipStr, String alarmAudioStr, String portStr) {
        SharedPreferences.Editor editor = BaseApplication.getApplication().activity.getSharedPreferences("setting", MODE_PRIVATE).edit();
        editor.putString("second", secondStr);
        editor.putString("alarmAudio", alarmAudioStr);
        editor.putString("ip", ipStr);
        editor.putString("port", portStr);
        editor.apply();
    public static Map<String, String> findSetting() {
        Map<String, String> setting = findById(Setting.table, "1");
        if (setting == null) {
            setting = new HashMap<>();
            setting.put(Setting.id , "1");
            setting.put(Setting.port, "53692");
            setting.put(Setting.ip, "58.118.225.79");
            setting.put(Setting.second, "10");
            setting.put(Setting.alarmAudio, SettingFragment.alarmAudioArray[0]);
            setting.put(Setting.keepTime, SettingFragment.keepTimeArray[0]);
            setting.put(Setting.keepTimeType, SettingFragment.keepTimeTypeArray[0]);
            setting.put(Setting.password, "basic");
            setting.put(Setting.appTitle, "报警系统");
            setting.put("table", Setting.table);
            save(setting);
        }
        return setting;
    }
    public static boolean saveSetting(Map<String, String> setting) {
        setting.put(Setting.id, "1");
        setting.put("table", Setting.table);
        save(setting);
        initMilliSecond();
        initAlarmAudio();
        return true;
    }
    public static String getSecondStr() {
        SharedPreferences prefs = BaseApplication.getApplication().activity.getSharedPreferences("setting", MODE_PRIVATE);
        String second = prefs.getString("second", "10");
        return second;
        return findSetting().get(Setting.second);
    }
    public static String getIpStr() {
        SharedPreferences prefs = BaseApplication.getApplication().activity.getSharedPreferences("setting", MODE_PRIVATE);
        String ip = prefs.getString("ip", "192.168.1.124");
        return ip;
        return findSetting().get(Setting.ip);
    }
    public static String getAppTitle() {
        return findSetting().get(Setting.appTitle);
    }
    public static String getPortStr() {
        SharedPreferences prefs = BaseApplication.getApplication().activity.getSharedPreferences("setting", MODE_PRIVATE);
        String prot = prefs.getString("port", "6000");
        return prot;
        return findSetting().get(Setting.port);
    }
    public static int getPort() {
@@ -74,8 +96,40 @@
    }
    public static String getAlarmAudioStr() {
        SharedPreferences prefs = BaseApplication.getApplication().activity.getSharedPreferences("setting", MODE_PRIVATE);
        String alarmAudio = prefs.getString("alarmAudio", SettingFragment.alarmAudioArray[0]);
        return alarmAudio;
        return findSetting().get(Setting.alarmAudio);
    }
    public static String getKeepTime() {
        return findSetting().get(Setting.keepTime);
    }
    public static String getKeepTimeType() {
        return findSetting().get(Setting.keepTimeType);
    }
    public static String oldPassword() {
        String password = findSetting().get(Setting.password);
        System.out.println("oldPassword="+password);
        return password;
    }
    public static long getKeepStartTime() {
        Calendar cal = Calendar.getInstance();
        try {
            Map<String, String> setting = findSetting();
            String keepTimeType = setting.get(Setting.keepTimeType);
            int keepTime = Integer.parseInt(setting.get(Setting.keepTime));
            if ("月".equals(keepTimeType)) {
                cal.add(Calendar.MONTH, -1*keepTime);
            }
            if ("周".equals(keepTimeType)) {
                cal.add(Calendar.DATE, -1*keepTime*7);
            }
        } catch (Exception e){
            e.printStackTrace();
        }
        return cal.getTime().getTime();
    }
}