Forráskód Böngészése

修改换药键Y和清除键R为同样的取消功能

weizhengliang 8 hónapja
szülő
commit
c00cb82f6c

+ 28 - 5
conversion_box/src/main/java/com/wdkl/app/ncs/conversion_box/activity/MainActivity.kt

@@ -1072,7 +1072,7 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
                         sendNursing(addr)
                     }
 
-                    "Y" -> {
+                    /*"Y" -> {
                         //换药按键
 
                         //印尼项目定义为呼叫取消
@@ -1097,11 +1097,11 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
                         SerialPortHelper.closeSoundChannel(addr)
 
                         removeCall(addr)
-                    }
+                    }*/
 
-                    "R" -> {
-                        //清除所有事件
-                        //退出护理
+                    "Y", "R" -> {
+                        //印尼项目手柄Y按键和面板R按键功能一样
+                        //1.退出护理
                         val mac = addr.toUpperCase(Locale.ROOT)
                         Log.e(TAG,"nursing map size: " + nursingMap.size + ", " + mac)
                         if (nursingMap.size > 0 && nursingMap.containsKey(mac)) {
@@ -1109,6 +1109,29 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
                             nursingMap.remove(mac)
                         }
 
+                        //2.取消呼叫
+                        if (Constant.CALL_STATE == Constant.CALL_CALLING) {
+                            if (addr.equals(curDeviceUart, true)) {
+                                handoffCall()
+                            } else {
+                                cancelOutCall2(addr, false)
+                            }
+                        } else if (Constant.CALL_STATE == Constant.CALL_INCOMING) {
+                            if (addr.equals(curDeviceUart, true)) {
+                                rejectCall()
+                                SerialPortHelper.closeSoundChannel(addr)
+                                RingPlayHelper.stopRingTone()
+                            } else {
+                                cancelOutCall2(addr, false)
+                            }
+                        } else {
+                            cancelOutCall2(addr, true)
+                        }
+
+                        SerialPortHelper.closeSoundChannel(addr)
+                        removeCall(addr)
+
+                        //3.取消事件
                         Log.e(TAG,"event list size: " + eventList.size + ", " + mac)
                         if (eventList.size > 0) {
                             val iterator = eventList.iterator()