Преглед изворни кода

增加点阵屏自动校准时间开关

weizhengliang пре 1 година
родитељ
комит
abf73446b1

+ 10 - 8
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt

@@ -1367,15 +1367,17 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                         updateTcpState()
                     }
 
-                    //同步点阵屏时间
-                    /*if (Constants.LED_EXIST) {
-                        val calendar = Calendar.getInstance()
-                        val hour = calendar[Calendar.HOUR_OF_DAY]
-                        val minute = calendar[Calendar.MINUTE]
-                        if (hour == 23 && minute == 0) {
-                            LedManagerUtils.getInstance().syncTime()
+                    if (!"YUNPAI_H6".equals(Build.MODEL)) {
+                        //同步点阵屏时间
+                        if (Constants.LED_EXIST) {
+                            val calendar = Calendar.getInstance()
+                            val hour = calendar[Calendar.HOUR_OF_DAY]
+                            val minute = calendar[Calendar.MINUTE]
+                            if (hour == 23 && minute == 0) {
+                                LedManagerUtils.getInstance().syncTime()
+                            }
                         }
-                    }*/
+                    }
                 }
             }
         }

+ 9 - 7
android_host/src/main/h10_z3128_1h/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt

@@ -977,14 +977,16 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                         updateTcpState()
                     }
 
-                    /*if (Constants.LED_EXIST) {
-                        val calendar = Calendar.getInstance()
-                        val hour = calendar[Calendar.HOUR_OF_DAY]
-                        val minute = calendar[Calendar.MINUTE]
-                        if (hour == 23 && minute == 0) {
-                            LedManagerUtils.getInstance().syncTime()
+                    if (SettingConfig.getLedAutoSyncTime(activity)) {
+                        if (Constants.LED_EXIST) {
+                            val calendar = Calendar.getInstance()
+                            val hour = calendar[Calendar.HOUR_OF_DAY]
+                            val minute = calendar[Calendar.MINUTE]
+                            if (hour == 23 && minute == 0) {
+                                LedManagerUtils.getInstance().syncTime()
+                            }
                         }
-                    }*/
+                    }
                 }
             }
         }

+ 20 - 0
android_host/src/main/h10_z3128_1h/java/com/wdkl/ncs/android/component/nursehome/fragment/LedSettingsFragment.kt

@@ -143,6 +143,12 @@ class LedSettingsFragment: Fragment() {
             //C卡
             radio_led_type_c2m.isChecked = true
         }
+
+        if (SettingConfig.getLedAutoSyncTime(baseActivity)) {
+            radio_led_sync_time_on.isChecked = true
+        } else {
+            radio_led_sync_time_off.isChecked = true
+        }
     }
 
     private fun bindEvent() {
@@ -187,6 +193,12 @@ class LedSettingsFragment: Fragment() {
 
         led_refresh.setOnRefreshListener {
             (activity as NurseHomeActivity).loadLedDevice()
+
+            AppTool.Time.delay(10000) {
+                if (led_refresh != null) {
+                    led_refresh.finishRefresh()
+                }
+            }
         }
 
         skb_led_program_time.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener {
@@ -266,6 +278,14 @@ class LedSettingsFragment: Fragment() {
                 SettingConfig.setLedType(baseActivity, 0)
             }
         }
+
+        group_led_sync_time.setOnCheckedChangeListener { group, checkedId ->
+            if (checkedId == R.id.radio_led_sync_time_on) {
+                SettingConfig.setLedAutoSyncTime(baseActivity, true)
+            } else if (checkedId == R.id.radio_led_sync_time_off) {
+                SettingConfig.setLedAutoSyncTime(baseActivity, false)
+            }
+        }
     }
 
     override fun onStart() {

+ 9 - 0
android_host/src/main/h10_z3128_1h/java/com/wdkl/ncs/android/component/nursehome/settingconfig/SettingConfig.java

@@ -147,6 +147,7 @@ public class SettingConfig {
 
     //点阵屏控制卡型号
     private static final String KEY_SP_LED_TYPE = "KEY_SP_LED_TYPE";
+    private static final String KEY_SP_LED_AUTO_SYNC_TIME = "KEY_SP_LED_AUTO_SYNC_TIME";
 
     //语音播报模式
     public static int getTtsMode(Context context) {
@@ -239,6 +240,14 @@ public class SettingConfig {
         getEditor(context).putInt(KEY_SP_LED_TYPE, type).apply();
     }
 
+    public static boolean getLedAutoSyncTime(Context context) {
+        return getSP(context).getBoolean(KEY_SP_LED_AUTO_SYNC_TIME, true);
+    }
+
+    public static void setLedAutoSyncTime(Context context, boolean enable) {
+        getEditor(context).putBoolean(KEY_SP_LED_AUTO_SYNC_TIME, enable).apply();
+    }
+
 
     /**
      * 获取播报次数

+ 41 - 1
android_host/src/main/h10_z3128_1h/res/layout/fragment_led_settings.xml

@@ -101,7 +101,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center_vertical"
-                android:text="点阵屏类型:"
+                android:text="@string/led_type"
                 android:textColor="#000000"
                 android:textSize="24sp" />
 
@@ -132,6 +132,46 @@
 
         <LinearLayout
             android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="20dp"
+            android:padding="10dp"
+            android:orientation="horizontal">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_vertical"
+                android:text="@string/led_auto_sync_time"
+                android:textColor="#000000"
+                android:textSize="24sp" />
+
+            <RadioGroup
+                android:id="@+id/group_led_sync_time"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="20dp"
+                android:orientation="horizontal">
+
+                <RadioButton
+                    android:id="@+id/radio_led_sync_time_on"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="@string/str_yes"
+                    android:textSize="24sp" />
+
+                <RadioButton
+                    android:id="@+id/radio_led_sync_time_off"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginLeft="20dp"
+                    android:text="@string/str_no"
+                    android:textSize="24sp" />
+            </RadioGroup>
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="match_parent"
             android:layout_height="80dp"
             android:layout_marginTop="10dp"
             android:padding="10dp">

+ 2 - 0
resource/src/main/res/values-es/strings.xml

@@ -112,6 +112,8 @@
     <string name="led_no_font">Sin archivo de fuente</string>
     <string name="led_font_file_size">Tama?o del archivo de fuente: %d</string>
     <string name="led_null">Sin dispositivo LED</string>
+    <string name="led_type">LED type:</string>
+    <string name="led_auto_sync_time">Auto sync led time:</string>
     <string name="led_sync_time">Tiempo de sincronización de LED</string>
     <string name="led_reset">Restablecer LED</string>
     <string name="led_on_off">Encender/apagar</string>

+ 2 - 0
resource/src/main/res/values-ru/strings.xml

@@ -113,6 +113,8 @@
     <string name="led_no_font">Нет файла шрифта</string>
     <string name="led_font_file_size">размер файла шрифта: %d</string>
     <string name="led_null">Нет устройств с экраном</string>
+    <string name="led_type">LED type:</string>
+    <string name="led_auto_sync_time">Auto sync led time:</string>
     <string name="led_sync_time">время синхронизации экранов</string>
     <string name="led_reset">Сбросить индикатор</string>
     <string name="led_on_off">Включить/выключить</string>

+ 2 - 0
resource/src/main/res/values-zh/strings.xml

@@ -113,6 +113,8 @@
     <string name="led_no_font">字库文件不存在</string>
     <string name="led_font_file_size">字库文件大小: %d</string>
     <string name="led_null">没有点阵屏设备</string>
+    <string name="led_type">点阵屏类型:</string>
+    <string name="led_auto_sync_time">自动校准点阵屏时间:</string>
     <string name="led_sync_time">校正点阵屏时间</string>
     <string name="led_reset">重置点阵屏</string>
     <string name="led_on_off">开/关点阵屏</string>

+ 2 - 0
resource/src/main/res/values/strings.xml

@@ -113,6 +113,8 @@
     <string name="led_no_font">No font file</string>
     <string name="led_font_file_size">font file size: %d</string>
     <string name="led_null">No LED device</string>
+    <string name="led_type">LED type:</string>
+    <string name="led_auto_sync_time">Auto sync led time:</string>
     <string name="led_sync_time">LED sync time</string>
     <string name="led_reset">Reset LED</string>
     <string name="led_on_off">Turn on/off</string>