From 040f1aba13b179ff318366680a6346af7fd97795 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 11 四月 2025 16:11:23 +0800
Subject: [PATCH] feat(generallibrary): 新增补卡功能并优化底部导航栏

---
 generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt |   37 +++++++++++++------------------------
 1 files changed, 13 insertions(+), 24 deletions(-)

diff --git a/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt b/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt
index 8837b74..79e1dae 100644
--- a/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt
+++ b/generallibrary/src/main/java/com/dayu/general/net/ApiManager.kt
@@ -1,14 +1,10 @@
-package com.dayu.qiheonlinelibrary.net
+package com.dayu.general.net
 
 import android.content.Context
 import android.util.Log
+import com.dayu.baselibrary.business.BusinessProvider
 import com.dayu.baselibrary.net.subscribers.ProgressSubscriber
 import com.dayu.baselibrary.net.subscribers.SubscriberListener
-import com.dayu.general.net.ApiService
-import com.dayu.general.net.BaseResponse
-import com.dayu.general.net.MyJsonParser
-import com.dayu.general.net.NetConstans
-import com.dayu.general.net.RetrofitClient
 import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
 import io.reactivex.rxjava3.functions.Function
 import io.reactivex.rxjava3.schedulers.Schedulers
@@ -27,18 +23,10 @@
         @Volatile
         private var apiManager: ApiManager? = null
 
-        fun init() {
-            if (apiManager == null) {
-                synchronized(ApiManager::class) {
-                    if (apiManager == null) {
-                        apiManager = ApiManager()
-                    }
-                }
-            }
-        }
-
         fun getInstance(): ApiManager {
-            return apiManager ?: throw IllegalStateException("ApiManager not initialized")
+            return apiManager ?: synchronized(this) {
+                apiManager ?: ApiManager().also { apiManager = it }
+            }
         }
     }
 
@@ -132,14 +120,14 @@
         val mySubscriber = ProgressSubscriber<BaseResponse<T>>(context, hideLoading, listener);
 
         observable
-            ?.subscribeOn(Schedulers.io())
-            ?.map(mapResponse(tClass))
-            ?.unsubscribeOn(Schedulers.newThread())
-            ?.observeOn(AndroidSchedulers.mainThread())
-            ?.subscribe(mySubscriber)
+            .subscribeOn(Schedulers.io())
+            .map(mapResponse(context, tClass))
+            .unsubscribeOn(Schedulers.newThread())
+            .observeOn(AndroidSchedulers.mainThread())
+            .subscribe(mySubscriber)
     }
 
-    private fun <T> mapResponse(tClass: Class<T>): Function<Any, BaseResponse<T>> {
+    private fun <T> mapResponse(context: Context, tClass: Class<T>): Function<Any, BaseResponse<T>> {
         return Function { rawResponse ->
             when (rawResponse) {
                 is BaseResponse<*> -> {
@@ -149,12 +137,13 @@
                     val response = BaseResponse<T>().apply {
                         code = temp.code
                         msg = temp.msg ?: ""
+                        success = temp.success
                     }
 
                     // 澶勭悊token澶辨晥鐨勬儏鍐�
                     if (temp.code == NetConstans.TOKEN_INVALID) {
                         // 鍙互鍦ㄨ繖閲屾坊鍔犻噸瀹氬悜鍒扮櫥褰曢〉闈㈢殑閫昏緫
-                        // redirectToLogin()
+                        BusinessProvider.getBusinessProvider().startLoginNavigotor.navigateToLogin(context)
                         return@Function response
                     }
 

--
Gitblit v1.8.0