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

+ 23 - 0
android_mobile/src/main/yd_w_xiaomi_2/code/com/wdkl/ncs/android/component/home/activity/WatchUserSettingActivity.java

@@ -49,6 +49,8 @@ public class WatchUserSettingActivity extends Activity {
     private RadioButton callYes, callNo;
     private RadioGroup imChannelGroup;
     private RadioButton imChannelYes, imChannelNo;
+    private RadioGroup callTransGroup;
+    private RadioButton transferOn, transferOff;
 
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -80,6 +82,10 @@ public class WatchUserSettingActivity extends Activity {
         imChannelYes = findViewById(R.id.rb_im_channel_yes);
         imChannelNo = findViewById(R.id.rb_im_channel_no);
 
+        callTransGroup = findViewById(R.id.group_call_transfer);
+        transferOn = findViewById(R.id.rb_call_transfer_on);
+        transferOff = findViewById(R.id.rb_call_transfer_off);
+
         TextView partNameView = findViewById(R.id.part_name);
         partNameView.setText(Constants.Companion.getPartName());
 
@@ -105,6 +111,12 @@ public class WatchUserSettingActivity extends Activity {
             imChannelNo.setChecked(true);
         }
 
+        if (SettingConfig.getCallTransfer(BaseApplication.appContext)) {
+            transferOn.setChecked(true);
+        } else {
+            transferOff.setChecked(true);
+        }
+
         int mode = SettingConfig.getLanguageMode(BaseApplication.appContext);
         RadioGroup languageMode = findViewById(R.id.group_language_mode);
         RadioButton languageYes = findViewById(R.id.rb_language_yes);
@@ -237,6 +249,17 @@ public class WatchUserSettingActivity extends Activity {
             }
         });
 
+        callTransGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
+            @Override
+            public void onCheckedChanged(RadioGroup group, int checkedId) {
+                if (checkedId == R.id.rb_call_transfer_on) {
+                    SettingConfig.setCallTransfer(BaseApplication.appContext, true);
+                } else {
+                    SettingConfig.setCallTransfer(BaseApplication.appContext, false);
+                }
+            }
+        });
+
 
         Button update = findViewById(R.id.btn_update_contact);
         update.setOnClickListener(new View.OnClickListener() {

+ 9 - 0
android_mobile/src/main/yd_w_xiaomi_2/code/com/wdkl/ncs/android/component/home/settingconfig/SettingConfig.java

@@ -29,6 +29,8 @@ public class SettingConfig {
     private static final String KEY_LANGUAGE_MODE = "KEY_LANGUAGE_MODE";
     //是否使用sip通话
     private static final String KEY_SP_SIP_ENABLE = "KEY_SP_SIP_ENABLE";
+    //呼叫转移
+    private static final String KEY_SP_CALL_TRANSFER = "KEY_SP_CALL_TRANSFER";
 
     public static int getLanguageId(Context context) {
         //0--auto, 1--English, 2--中文, 3--西班牙语, 4--俄语
@@ -55,6 +57,13 @@ public class SettingConfig {
         getEditor(context).putBoolean(KEY_SP_SIP_ENABLE, enable).apply();
     }
 
+    public static boolean getCallTransfer(Context context) {
+        return getSP(context).getBoolean(KEY_SP_CALL_TRANSFER, true);
+    }
+
+    public static void setCallTransfer(Context context, boolean on) {
+        getEditor(context).putBoolean(KEY_SP_CALL_TRANSFER, on).apply();
+    }
 
     /**
      * 获取转发时间

+ 12 - 5
android_mobile/src/main/yd_w_xiaomi_2/code/com/wdkl/ncs/android/component/home/ui/FragmentAudio.java

@@ -25,6 +25,7 @@ import com.wdkl.ncs.android.component.home.util.MediaPlayHelper;
 import com.wdkl.ncs.android.component.home.util.RingPlayHelper;
 import com.wdkl.ncs.android.component.home.util.SpeechUtil;
 import com.wdkl.ncs.android.component.home.util.Util;
+import com.wdkl.ncs.android.lib.base.BaseApplication;
 import com.wdkl.ncs.android.lib.utils.ExtendMethodsKt;
 import com.wdkl.ncs.android.middleware.common.Constants;
 import com.wdkl.ncs.android.middleware.model.vo.InteractionVO;
@@ -131,8 +132,8 @@ public class FragmentAudio extends SingleCallFragment implements View.OnClickLis
                         frameName = getShowName();
                     }
 
-                    String text = frameName + getString(R.string.call_incoming) + frameName + getString(R.string.call_incoming)
-                            + frameName + getString(R.string.call_incoming) + frameName + getString(R.string.call_incoming);
+                    String text = frameName + getString(R.string.call_incoming) + "/" + frameName + getString(R.string.call_incoming) + "/"
+                            + frameName + getString(R.string.call_incoming) + "/" + frameName + getString(R.string.call_incoming);
                     SpeechUtil.getInstance().startSpeak(text);
                 }
             }
@@ -167,9 +168,15 @@ public class FragmentAudio extends SingleCallFragment implements View.OnClickLis
                     portraitImageView.setImageResource(R.drawable.face_customer);
 
                     if (!isOutgoing) {
-                        if (Constants.Companion.getRoleId() != null
-                            /*&& (Constants.Companion.getRoleId() == RoleTypeEnum.NURSE.value() || Constants.Companion.getRoleId() == RoleTypeEnum.NURSE_HEAD.value())*/) {
-                            transLinearLayout.setVisibility(View.VISIBLE);
+                        if (SettingConfig.getCallTransfer(BaseApplication.appContext)) {
+                            if (Constants.Companion.getRoleId() != null
+                                /*&& (Constants.Companion.getRoleId() == RoleTypeEnum.NURSE.value() || Constants.Companion.getRoleId() == RoleTypeEnum.NURSE_HEAD.value())*/) {
+                                transLinearLayout.setVisibility(View.VISIBLE);
+                            } else {
+                                hangupLinearLayout.setVisibility(View.VISIBLE);
+                            }
+                        } else {
+                            hangupLinearLayout.setVisibility(View.VISIBLE);
                         }
                     }
                 }

+ 30 - 1
android_mobile/src/main/yd_w_xiaomi_2/res/layout/user_setting_layout.xml

@@ -347,11 +347,40 @@
                 </RadioGroup>
 
                 <TextView
-                    android:id="@+id/tv_im_channel_title"
+                    android:id="@+id/tv_call_transfer"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_below="@id/tv_call_title"
                     android:layout_marginTop="16dp"
+                    android:text="@string/str_call_transfer_title"
+                    android:textSize="16sp" />
+
+                <RadioGroup
+                    android:id="@+id/group_call_transfer"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@id/tv_call_transfer"
+                    android:layout_marginTop="10dp"
+                    android:orientation="horizontal">
+                    <RadioButton
+                        android:id="@+id/rb_call_transfer_on"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:text="@string/str_yes"/>
+                    <RadioButton
+                        android:id="@+id/rb_call_transfer_off"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:layout_marginLeft="4dp"
+                        android:text="@string/str_no"/>
+                </RadioGroup>
+
+                <TextView
+                    android:id="@+id/tv_im_channel_title"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@id/group_call_transfer"
+                    android:layout_marginTop="16dp"
                     android:text="@string/media_button_message"
                     android:textSize="16sp" />
 

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

@@ -187,6 +187,7 @@
     <string name="str_system_settings">Configuración del sistema</string>
     <string name="str_check_net">Comprobar conexión</string>
     <string name="media_button_message">Habilitar mensaje de botón multimedia:</string>
+    <string name="str_call_transfer_title">Call transfer:</string>
 
     <string name="permission_tips">Otorgue permisos</string>
     <string name="device_not_register">Dispositivo no registrado, comuníquese con su administrador</string>

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

@@ -195,6 +195,7 @@
     <string name="language_set_title">Набор языков:</string>
     <string name="language_set_mode">Синхронизировать язык с сервера:</string>
     <string name="str_language_settings">Языковые настройки</string>
+    <string name="str_call_transfer_title">Call transfer:</string>
 
     <string name="contact_start_load">Start load contact</string>
     <string name="contact_start_update">Start update, wait a moment.</string>

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

@@ -187,6 +187,7 @@
     <string name="str_system_settings">系统设置</string>
     <string name="str_check_net">网络检测</string>
     <string name="media_button_message">开启按键留言:</string>
+    <string name="str_call_transfer_title">呼叫转移:</string>
 
     <string name="permission_tips">请先授权再进入APP</string>
     <string name="device_not_register">本机未注册,请将识别码发给管理员</string>

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

@@ -187,6 +187,7 @@
     <string name="str_system_settings">System settings</string>
     <string name="str_check_net">Net check</string>
     <string name="media_button_message">Enable media button message:</string>
+    <string name="str_call_transfer_title">Call transfer:</string>
 
     <string name="permission_tips">Please grant permissions</string>
     <string name="device_not_register">Device not registered, please contact your administrator</string>