| 
					
				 | 
			
			
				@@ -1,6 +1,8 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package com.yingyang.healthconsultation.paid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.Manifest 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.annotation.SuppressLint 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.content.Context 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.content.Intent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.os.Bundle 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.text.TextUtils 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -9,6 +11,8 @@ import android.view.View 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import androidx.recyclerview.widget.GridLayoutManager 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.alibaba.android.arouter.facade.annotation.Route 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.alibaba.android.arouter.launcher.ARouter 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.hjq.permissions.OnPermissionCallback 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.hjq.permissions.XXPermissions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tencent.imsdk.v2.V2TIMConversation 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tencent.qcloud.tuicore.TUIConstants 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tencent.qcloud.tuicore.TUICore 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -21,6 +25,7 @@ import com.yingyang.healthconsultation.entity.PurchaseConsultationBean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.config.AccountConfig 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.db.DoctorBean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.dialog.EvaluateDialog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.yingyangfly.baselib.dialog.TipDialogFragment 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.dialog.TipsDialog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.ext.getEndAnimation 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.ext.getScaleAnimation 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -31,6 +36,8 @@ import com.yingyangfly.baselib.mvvm.BaseMVVMActivity 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.router.RouterUrlCommon 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.utils.JumpUtil 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.baselib.utils.User 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import kotlin.collections.ArrayList 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * 已支付 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -51,6 +58,14 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private var isConsultation: String = "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private var doctor: DoctorBean? = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 添加存储权限的原因是 以防启动页面没有授权存储权限 相机权限,摄像头权限 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private val cameraPermission = Arrays.asList( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Manifest.permission.WRITE_EXTERNAL_STORAGE, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Manifest.permission.READ_EXTERNAL_STORAGE, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Manifest.permission.CAMERA, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Manifest.permission.RECORD_AUDIO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ).toTypedArray() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     override fun onCreate(savedInstanceState: Bundle?) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         id = intent.getStringExtra("id") ?: "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         doctorId = intent.getStringExtra("doctorId") ?: "" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -255,7 +270,7 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 showTipsDialog(id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "2" -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                getUserSign() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                applyCameraPermission() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             "4" -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 evaluationOrder() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -388,4 +403,59 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 申请录音权限 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private fun applyCameraPermission() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (cameraPermissionBool(mContext)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            getUserSign() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 没有权限申请权限 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            XXPermissions.with(mContext) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .permission(cameraPermission) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .request(object : OnPermissionCallback { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    override fun onGranted(permissions: List<String>, all: Boolean) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (all) { // 全部获取权限成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            getUserSign() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } else { // 部分获取权限成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            showTipDialog(permissions) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    override fun onDenied(permissions: List<String>, never: Boolean) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (never) { // 被永久拒绝 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // 如果是被永久拒绝就跳转到应用权限系统设置页面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            XXPermissions.startPermissionActivity(mContext, permissions) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            showTipDialog(permissions) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 是否有相机权限 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private fun cameraPermissionBool(context: Context): Boolean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return XXPermissions.isGranted(context, cameraPermission) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 跳转设置页面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private fun showTipDialog(permissions: List<String>) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        TipDialogFragment.TipDialogBuilder() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .content("当前应用缺少必要权限,请点击“设置”-“权限”-“权限管理”打开所需权限") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .leftBtnText("退出") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .rightBtnText("设置") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .leftClick({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, dimiss = true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .rightClick({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                XXPermissions.startPermissionActivity(mContext, permissions) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, dimiss = true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .show(supportFragmentManager) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |