Bladeren bron

1.添加获取用户信息接口

王鹏鹏 2 jaren geleden
bovenliggende
commit
9a2cf35cfa

+ 2 - 0
baselib/src/main/java/com/yingyangfly/baselib/net/BaseNetWork.kt

@@ -2,6 +2,7 @@ package com.yingyangfly.baselib.net
 
 import com.localebro.okhttpprofiler.OkHttpProfilerInterceptor
 import com.yingyangfly.baselib.net.convert.GsonConverterFactory
+import com.yingyangfly.baselib.utils.User
 import okhttp3.OkHttpClient
 import okhttp3.Request
 import retrofit2.Retrofit
@@ -46,6 +47,7 @@ object BaseNetWork {
                 val request = newOriginal.newBuilder()
                     .header("Content-Type", "application/json")
                     .header("app-header", "android")
+                    .header("userToken", User.getToken())
                     .method(newOriginal.method, newOriginal.body)
                     .build()
                 val response = chain.proceed(request)

+ 7 - 0
baselib/src/main/java/com/yingyangfly/baselib/utils/CommonParam.kt

@@ -0,0 +1,7 @@
+package com.yingyangfly.baselib.utils
+
+object CommonParam {
+    val TOKEN = "token"
+    val PHONE = "phone"
+    val AVATAR = "avatar"
+}

+ 46 - 0
baselib/src/main/java/com/yingyangfly/baselib/utils/User.kt

@@ -0,0 +1,46 @@
+package com.yingyangfly.baselib.utils
+
+import android.content.Context
+import com.tencent.bugly.crashreport.CrashReport
+import com.yingyangfly.baselib.BaseApplication
+
+object User {
+
+    val context: Context
+        get() = BaseApplication.appContext
+
+    /**
+     * 保存用户登陆手机号
+     */
+    fun savePhone(phone: String) {
+        Preferences.put(CommonParam.PHONE, phone)
+    }
+
+    fun getPhone(): String {
+        return if (Preferences.getString(CommonParam.PHONE).isNullOrEmpty()) {
+            ""
+        } else {
+            Preferences.getString(CommonParam.PHONE)!!
+        }
+    }
+
+    /**
+     * 保存用户token
+     */
+    fun saveToken(token: String) {
+        Preferences.put(CommonParam.TOKEN, token)
+        CrashReport.setUserId(token)
+    }
+
+    fun getToken(): String {
+        return if (Preferences.getString(CommonParam.TOKEN).isNullOrEmpty()) {
+            ""
+        } else {
+            Preferences.getString(CommonParam.TOKEN)!!
+        }
+    }
+
+    fun logout() {
+        saveToken("")
+    }
+}

+ 2 - 2
login/src/main/java/com/yingyang/login/ui/login/LoginActivity.kt

@@ -6,7 +6,7 @@ import com.yingyangfly.baselib.ext.toast
 import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
 import com.yingyangfly.baselib.router.RouterUrlCommon
 import com.yingyangfly.baselib.utils.JumpUtil
-import com.yingyangfly.baselib.utils.Preferences
+import com.yingyangfly.baselib.utils.User
 
 /**
  * 登录
@@ -24,7 +24,7 @@ class LoginActivity : BaseMVVMActivity<ActivityLoginBinding, LoginViewModel>() {
                 it.toast()
             }, success = {
                 if (it.isNullOrEmpty().not()) {
-                    Preferences.put("token", it)
+                    User.saveToken(it)
                     JumpUtil.jumpActivity(RouterUrlCommon.personalCenter)
                 }
             })

+ 1 - 9
personalcenter/src/main/java/com/yingyang/personalcenter/activity/PersonalCenterViewModel.kt

@@ -2,10 +2,6 @@ package com.yingyang.personalcenter.activity
 
 import com.yingyang.personalcenter.net.PERSONALCENTER_API
 import com.yingyangfly.baselib.mvvm.BaseViewModel
-import com.yingyangfly.baselib.net.CommonInterfaceRequestBean
-import com.yingyangfly.baselib.net.XUtils
-import com.yingyangfly.baselib.utils.GsonUtil
-import com.yingyangfly.baselib.utils.Preferences
 
 /**
  * 个人中心
@@ -16,11 +12,7 @@ class PersonalCenterViewModel : BaseViewModel() {
         fail: ((msg: String) -> Unit)? = null,
         success: ((success: Unit) -> Unit)? = null,
     ) = launchFlow(false) {
-        val requestBean = CommonInterfaceRequestBean().apply {
-            userToken = Preferences.getString("token")
-        }
-        val body = XUtils.createJson(GsonUtil.GsonString(requestBean))
-        PERSONALCENTER_API.getUserInfo(body)
+        PERSONALCENTER_API.getUserInfo()
     }.runUI(
         success,
         fail

+ 2 - 5
personalcenter/src/main/java/com/yingyang/personalcenter/net/PersonalCenterApiService.kt

@@ -1,7 +1,6 @@
 package com.yingyang.personalcenter.net
 
 import com.yingyangfly.baselib.net.BaseResp
-import okhttp3.RequestBody
 import retrofit2.http.*
 
 interface PersonalCenterApiService {
@@ -9,8 +8,6 @@ interface PersonalCenterApiService {
     /**
      * 获取首页游戏列表
      */
-    @POST("app/user")
-    suspend fun getUserInfo(
-        @Body requestBody: RequestBody
-    ): BaseResp<Unit>
+    @POST("app/user/info")
+    suspend fun getUserInfo(): BaseResp<Unit>
 }