[fix]
[添加登录日志]
This commit is contained in:
yangyakun
2024-10-29 17:33:01 +08:00
parent f2ab3af0f6
commit 3e41bb5fa0
10 changed files with 82 additions and 8 deletions

View File

@@ -1,6 +1,7 @@
package com.mogo.och.biz.login
import android.content.Context
import android.util.Log
import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
@@ -44,6 +45,7 @@ class LoginProvider : LoginService {
private var loginStatus: LoginStatusEnum = LoginStatusEnum.None
private var businessEnum: BusinessEnum = BusinessEnum.None
private var openOrderStatusEnum: OpenOrderStatusEnum = OpenOrderStatusEnum.None
private var carModel: Carmodel = Carmodel.B1
private var loginInfo: LoginInfo? = null
private val loginInfoKey = "LOGININFOKEY"
@@ -101,6 +103,7 @@ class LoginProvider : LoginService {
override fun queryLoginStatusByNet(readCatche:Boolean) {
CallerLogger.d(tag, "queryLoginStatusByNet")
Log.d("登录","设置源:queryLoginStatusByNet")
LoginModel.queryCarStatus(readCatche)
}
@@ -160,6 +163,7 @@ class LoginProvider : LoginService {
CallerLogger.d(tag, "setLoginInfo:${loginInfo}")
if(this.loginInfo!=loginInfo){
this.loginInfo = loginInfo
OchChainLogManager.writeChainLog("登录信息",loginInfo.toString())
}
CallerEagleBaseFunctionCall4OchManager.setOchLoginNo(loginInfo.phone)
@@ -168,6 +172,10 @@ class LoginProvider : LoginService {
CallerEagleBaseFunctionCall4OchManager.updateTenantId(loginInfo.tenantId)
val carModel = Carmodel.getCarModelFromServerName(LoginStatusManager.getLoginInfo()?.carModel)
if(this.carModel!=carModel){
this.carModel = carModel
LoginStatusManager.invokeCarModelChange(this.carModel)
}
HdMapBuildConfig.currentCarVrIconRes = carModel.rawValue
}
@@ -192,12 +200,18 @@ class LoginProvider : LoginService {
return loginStatus
}
override fun getCarModel(): Carmodel {
CallerLogger.d(tag, "getCarModel:${carModel}")
return carModel
}
override fun setLoginStatus(loginStatus: LoginStatusEnum) {
CallerLogger.d(tag, "setLoginStatus:${loginStatus}----old${this.loginStatus}")
if (loginStatus != this.loginStatus) {
OchChainLogManager.writeChainLog("登录状态变化","${this.loginStatus}-->${loginStatus}");
this.loginStatus = loginStatus
Log.d("登录","设置源:invokeLoginStatusChange")
LoginStatusManager.invokeLoginStatusChange(loginStatus)
}
}

View File

@@ -3,6 +3,7 @@ package com.mogo.och.biz.login.model
import android.annotation.SuppressLint
import android.content.Context
import android.net.ConnectivityManager
import android.util.Log
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.module.intent.IMogoIntentListener
import com.mogo.commons.module.intent.IntentManager
@@ -172,6 +173,7 @@ object LoginModel {
* 8、登录页面关闭后查下状态
*/
fun queryCarStatus(readCatche:Boolean = true) {
Log.d("登录","设置源:queryCarStatus")
mContext?.let {
if(readCatche){
val logingInfoJson = OchSPManager.getString(loginInfoKey)
@@ -220,6 +222,7 @@ object LoginModel {
@Synchronized
private fun go2LoginInfo(data: DriverStatusQueryRespBean?, source: String) {
CallerLogger.d(TAG,"设置源:${source}")
Log.d("登录","设置源:${source}")
data?.let {
LoginStatusManager.setLoginInfo(data.data)
}

View File

@@ -155,14 +155,14 @@ object OchCommonServiceManager {
SharedPrefsMgr.getInstance().token,
sn
).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus",false))
.subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
}else{
ochLoginServiceSaasEh.queryDriverServiceStatusAndLoginStatus(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
sn
).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus",false))
.subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
}
}

View File

@@ -1,9 +1,13 @@
package com.mogo.och.common.module.biz.login;
import com.mogo.eagle.core.data.enums.Carmodel;
public interface ILoginCallback {
default void onStatusChange(LoginStatusEnum currentStatus){}
default void onCarModelChange(Carmodel currentStatus){}
default void onBusinessChange(BusinessEnum businessEnum){}
default void onOpenOrderStatusEnumChange(OpenOrderStatusEnum businessEnum){}

View File

@@ -178,8 +178,8 @@ public class LoginInfo {
", brand='" + brand + '\'' +
", carModel='" + carModel + '\'' +
", photos='" + photos + '\'' +
", tenantId='" + tenantId + '\'' +
", driverId='" + driverId + '\'' +
", tenantId=" + tenantId +
", driverId=" + driverId +
'}';
}

View File

@@ -1,5 +1,6 @@
package com.mogo.och.common.module.biz.login
import com.mogo.eagle.core.data.enums.Carmodel
import com.mogo.och.common.module.biz.provider.CommonService
import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType
import com.mogo.och.common.module.manager.socket.lan.bean.EnvType
@@ -14,6 +15,7 @@ interface LoginService :CommonService {
fun isLogin():Boolean
fun getLoginStatus(): LoginStatusEnum
fun getCarModel(): Carmodel
fun setLoginStatus(loginStatus: LoginStatusEnum)
fun setLoginStatus(status: Int)
fun setBusinessType(type: Int)

View File

@@ -1,9 +1,11 @@
package com.mogo.och.common.module.biz.login
import android.util.Log
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.launcher.ARouter
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.enums.Carmodel
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.manager.loop.BizLoopManager
@@ -118,6 +120,15 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
return LoginStatusEnum.None
}
@JvmStatic
fun getCarModel(): Carmodel {
loginService?.let {
return it.getCarModel()
}
return Carmodel.B1
}
@JvmStatic
fun isLogin(): Boolean {
loginService?.let {
@@ -127,8 +138,10 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
}
fun invokeLoginStatusChange(currentStatus: LoginStatusEnum) {
Log.d("登录","设置源:invokeLoginStatusChange")
if(!FunctionBuildConfig.isOffLine){
if(currentStatus==LoginStatusEnum.Login){
Log.d("登录","设置源:queryLoginStatusByNet")
BizLoopManager.setLoopFunction(TAGLoopStatus, LoopInfo(60*2, ::queryLoginStatusByNet,immediately = true, scheduler = Schedulers.io()))
}else{
BizLoopManager.removeLoopFunction(TAGLoopStatus)
@@ -191,6 +204,7 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
listener.onStatusChange(getLoginStatus())
listener.onBusinessChange(getBusInessType())
listener.onOpenOrderStatusEnumChange(getOpenOrderType())
listener.onCarModelChange(getCarModel())
}
fun setLoginError(code: Int, msg: String) {
@@ -200,5 +214,12 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
}
}
fun invokeCarModelChange(carModel: Carmodel) {
M_LISTENERS.forEach {
val listener = it.value
listener.onCarModelChange(carModel)
}
}
}

View File

@@ -4,6 +4,7 @@ import android.os.Handler
import android.os.HandlerThread
import android.os.Looper
import android.os.Message
import android.util.Log
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
@@ -98,13 +99,13 @@ object BizLoopManager {
}catch (e:Throwable){
CallerLogger.e(TAG,"$tag:--$e")
}
CallerLogger.d(TAG, "${aLong}正在执行方法${tag}_${Thread.currentThread().name}")
Log.d(TAG, "${aLong}正在执行方法${tag}_${Thread.currentThread().name}")
}
override fun onNext(t: String) {}
})
}else{
loopInfo.function.invoke()
CallerLogger.d(TAG, "${aLong}正在执行方法${tag}_${Thread.currentThread().name}")
Log.d(TAG, "${aLong}正在执行方法${tag}_${Thread.currentThread().name}")
}
}catch (e:Throwable){
e.printStackTrace()

View File

@@ -3,11 +3,13 @@ package com.mogo.och.common.module.wigets
import android.animation.ObjectAnimator
import android.content.Context
import android.util.AttributeSet
import android.util.Log
import android.view.LayoutInflater
import android.view.animation.LinearInterpolator
import androidx.constraintlayout.widget.ConstraintLayout
import com.mogo.commons.module.status.MogoStatusManager
import com.mogo.eagle.core.data.config.HdMapBuildConfig
import com.mogo.eagle.core.data.enums.Carmodel
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
@@ -15,13 +17,16 @@ import com.mogo.map.listener.IMogoMapListener
import com.mogo.map.listener.MogoMapListenerHandler
import com.mogo.map.uicontroller.EnumMapUI
import com.mogo.och.common.module.R
import com.mogo.och.common.module.biz.login.ILoginCallback
import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import kotlinx.android.synthetic.main.common_loading_map.view.aciv_loading_map
class LoadingMapStatusView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
defStyleAttr: Int = 0
) : ConstraintLayout(context, attrs, defStyleAttr),IMogoMapListener {
) : ConstraintLayout(context, attrs, defStyleAttr),IMogoMapListener, ILoginCallback {
companion object {
const val TAG = "LoadingMapStatusView"
}
@@ -35,6 +40,7 @@ class LoadingMapStatusView @JvmOverloads constructor(
override fun onAttachedToWindow() {
super.onAttachedToWindow()
CallerLogger.d(TAG,"onAttachedToWindow")
LoginStatusManager.addListener(TAG,this)
visibility = VISIBLE
MogoMapListenerHandler.mogoMapListenerHandler.registerHostMapListener(TAG,this)
if (autopilotLoadingAnimator == null) {
@@ -58,6 +64,9 @@ class LoadingMapStatusView @JvmOverloads constructor(
MogoMapListenerHandler.mogoMapListenerHandler.onMapModeChanged(EnumMapUI.MAP_STYLE_DAY_VR)
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(HdMapBuildConfig.currentCarVrIconRes)
OchChainLogManager.writeChainLog("模型加载","加载地图成功、并切换模型,${LoginStatusManager.getLoginInfo()}")
UiThreadHandler.postDelayed({ visibility = GONE },2_000,UiThreadHandler.MODE.QUEUE)
}
@@ -65,8 +74,23 @@ class LoadingMapStatusView @JvmOverloads constructor(
super.onDetachedFromWindow()
CallerLogger.d(TAG,"onDetachedFromWindow")
MogoMapListenerHandler.mogoMapListenerHandler.unregisterHostMapListener(TAG)
LoginStatusManager.removeListener(TAG)
}
override fun onCarModelChange(currentStatus: Carmodel?) {
super.onCarModelChange(currentStatus)
Log.d(TAG,"onCarModelChange")
OchChainLogManager.writeChainLog("模型加载","模型修改${currentStatus}")
if(HdMapBuildConfig.isMapLoaded){
if (currentStatus==null) {
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(HdMapBuildConfig.currentCarVrIconRes)
}else{
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(currentStatus.resId)
}
}else{
HdMapBuildConfig.currentCarVrIconRes = currentStatus?.resId?:Carmodel.B1.resId
}
}
}

View File

@@ -48,4 +48,9 @@ enum class Carmodel(val serverName:String,@RawRes val rawValue: Int, val resId:
}
}
override fun toString(): String {
return "Carmodel(serverName='$serverName', rawValue=$rawValue, resId=$resId)"
}
}