diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt index 7ea43aa64b..10393d6dc3 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt @@ -99,9 +99,9 @@ class LoginProvider : LoginService { } } - override fun queryLoginStatusByNet() { + override fun queryLoginStatusByNet(readCatche:Boolean) { CallerLogger.d(tag, "queryLoginStatusByNet") - LoginModel.queryCarStatus() + LoginModel.queryCarStatus(readCatche) } override fun loginOut() { diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt index 2d54e7329b..417221c65b 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt @@ -52,7 +52,7 @@ import java.util.concurrent.TimeUnit @SuppressLint("StaticFieldLeak") object LoginModel { - private const val TAG = "TaxiLoginModel" + private const val TAG = "LoginModel" private var mContext: Context? = null var iTaxiLoginCallback: ITaxiLoginCallback? = null private var subscribe: Disposable? = null @@ -63,6 +63,7 @@ object LoginModel { d(TAG, "onIntentReceived = %s", intentStr) if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) { if (NetworkUtils.isConnected(mContext)) { + // 网络链接成功可以先读取本地再获取服务器 queryCarStatus() } } @@ -139,7 +140,8 @@ object LoginModel { if (null != data && 0 == data.code) { // 获取验证码成功 ToastCharterUtils.showToastShort(mContext?.getString(R.string.module_och_taxi_login_login_success)) - queryCarStatus() + // 登录成功需要新的值 + queryCarStatus(false) } else { if (data != null) { ToastCharterUtils.showToastShort(data.code.toString()) @@ -173,8 +175,9 @@ object LoginModel { * 7、网络状态变更后查询 * 8、登录页面关闭后查下状态 */ - fun queryCarStatus() { + fun queryCarStatus(readCatche:Boolean = true) { mContext?.let { + if(readCatche){ val logingInfoJson = OchSPManager.getString(loginInfoKey) val timeText = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd) logingInfoJson?.let {logininfo-> @@ -184,6 +187,7 @@ object LoginModel { go2LoginInfo(oldLoginInfo,"缓存获取") } } + } OchCommonServiceManager.queryDriverServiceStatus(it, object : OchCommonServiceCallback { override fun onSuccess(data: DriverStatusQueryRespBean?) { go2LoginInfo(data,"接口获取") @@ -204,15 +208,17 @@ object LoginModel { ToastCharterUtils.showToastShort(mContext!!.getString(R.string.request_error_tip)) } LoginStatusManager.setLoginError(-10012,"网络错误") + // 依赖参数 subscribe = Observable.timer(5, TimeUnit.SECONDS) - .subscribe { _: Long? -> queryCarStatus() } + .subscribe { _: Long? -> queryCarStatus(readCatche) } } override fun onFail(code: Int, msg: String) { LoginStatusManager.setLoginError(code,"msg:${msg}") ToastUtilsOch.showWithCodeMessage(code, msg) + // 依赖参数 subscribe = Observable.timer(3, TimeUnit.SECONDS) - .subscribe { _: Long? -> queryCarStatus() } + .subscribe { _: Long? -> queryCarStatus(readCatche) } // if (code == OchCommonConst.WAIT_TAKEN) { // // } else { @@ -223,9 +229,10 @@ object LoginModel { } } + @Synchronized private fun go2LoginInfo(data: DriverStatusQueryRespBean?, source: String) { + CallerLogger.d(TAG,"设置源:${source}") data?.let { - CallerLogger.d(TAG,"设置源:${source}") LoginStatusManager.setLoginInfo(data.data) } if (FunctionBuildConfig.ochdebug) { @@ -271,7 +278,8 @@ object LoginModel { if (null != data && 0 == data.code) { loginFail(false) OchSPManager.remove(loginInfoKey) - queryCarStatus() + // 退出登录成功需要查询新的 + queryCarStatus(false) } } diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt index 61ef3c31f6..ed54218c96 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt @@ -112,7 +112,8 @@ class LoginPresenter(view: LoginFragment?) : Presenter(view), IT gotoOfflineMode() return } - LoginModel.queryCarStatus() + // 需要实时查询新的 + LoginModel.queryCarStatus(false) mView?.closeSoftInput() this.phone = phone this.code = code diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt index ab10bd835c..f0bd4ae005 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt @@ -20,7 +20,7 @@ interface LoginService :CommonService { fun getBusinessType():BusinessEnum - fun queryLoginStatusByNet() + fun queryLoginStatusByNet(readCatche:Boolean=false) /** * 登出 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt index c3af1361b0..dae3228544 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt @@ -43,8 +43,8 @@ object LoginStatusManager : CallerBase() { } @JvmStatic - fun queryLoginStatusByNet() { - loginService?.queryLoginStatusByNet() + fun queryLoginStatusByNet(readCatche:Boolean=false) { + loginService?.queryLoginStatusByNet(readCatche) } @JvmStatic fun getPurpose(): RoleEnum { diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt index be14092795..eda61eeabd 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt @@ -34,7 +34,8 @@ class FacadeDriverProvider : FacadeProvider() { sweeperFacadeProvider.init(context) }else { super.init(context) - LoginStatusManager.queryLoginStatusByNet() + // 初始化先读取客户端 让客户尽快进入 + LoginStatusManager.queryLoginStatusByNet(true) LanSocketManager.load() LoginLanDriverSocket.load() CheckVinManager.load() diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt index 65811c0562..95c8e12642 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/EventModel.kt @@ -13,6 +13,7 @@ import com.mogo.och.weaknet.repository.net.weaknet.dali.shuttle.DaliShuttleServi import com.mogo.och.weaknet.repository.db.bean.EventDataBean import com.mogo.och.weaknet.repository.db.repository.EventDb import com.mogo.och.weaknet.repository.RepositoryManager +import com.mogo.och.weaknet.repository.db.repository.SiteDb import io.reactivex.Observable import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.schedulers.Schedulers @@ -43,6 +44,11 @@ object EventModel : EventDb.EventCallback { override fun notifySyn() { BizLoopManager.removeCallback(loopUpdateInfo) updateEvent() + checkDbData() + } + + private fun checkDbData() { + SiteDb.checkData() } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/dao/SiteDataDao.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/dao/SiteDataDao.kt index 4860806608..736aea9fdb 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/dao/SiteDataDao.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/dao/SiteDataDao.kt @@ -1,6 +1,7 @@ package com.mogo.och.weaknet.repository.db.dao import androidx.room.Dao +import androidx.room.Delete import androidx.room.Insert import androidx.room.OnConflictStrategy import androidx.room.Query @@ -12,6 +13,10 @@ interface SiteDataDao { @Insert(onConflict = OnConflictStrategy.REPLACE) fun insert(vararg lineDataBean: SiteDataBean) + @Delete() + fun deleteById(vararg siteDataBean: SiteDataBean) + + // 线路删除时同步删除所属站点 @Query("DELETE FROM ${SiteDataBean.siteDataTable} WHERE line_id = :lineId") fun deleteByLineId(lineId: Long) @@ -26,6 +31,9 @@ interface SiteDataDao { @Query("SELECT * FROM ${SiteDataBean.siteDataTable} WHERE line_id = :lineId") fun querySitesByLineId(lineId: Long):List? + @Query("SELECT * FROM ${SiteDataBean.siteDataTable} GROUP by md5 HAVING count(1) > 1") + fun checkData():List? + fun querySiteByLineIdAndSiteId(lineId: Long,siteId:Long): SiteDataBean?{ val queryContrailByLineId = querySitesByLineIdAndSiteId(lineId,siteId) return if(queryContrailByLineId.isNullOrEmpty()){ diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/SiteDb.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/SiteDb.kt index 8dd6856a00..9a335dad7e 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/SiteDb.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/SiteDb.kt @@ -1,6 +1,9 @@ package com.mogo.och.weaknet.repository.db.repository import com.mogo.eagle.core.network.utils.digest.DigestUtils +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.util.TAG +import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager import com.mogo.och.common.module.manager.loop.BizLoopManager import com.mogo.och.weaknet.repository.db.MyDataBase import com.mogo.och.weaknet.repository.db.bean.SiteDataBean @@ -31,11 +34,25 @@ object SiteDb { siteDataDao.insert(it) } } + checkData() } } BizLoopManager.runInIoThread(runnable) } + fun checkData() { + CallerLogger.d(TAG,"检测站点数据") + siteDataDao?.checkData()?.let { list -> + list.forEach { + siteDataDao?.deleteById(it) + } + if (list.isNotEmpty()) { + OchChainLogManager.writeChainLogDb("数据检测", "有重复数据${list}") + checkData() + } + } + } + fun deleteByLineId(lineId: Long) { siteDataDao?.deleteByLineId(lineId) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/TaskSiteDb.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/TaskSiteDb.kt index d7b5f784fa..4c1fb09a55 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/TaskSiteDb.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/db/repository/TaskSiteDb.kt @@ -25,7 +25,7 @@ object TaskSiteDb { fun startTask(taskId: Long, linId: Long,lineName:String):Int? { // 获取线路的站点 var startTime = System.currentTimeMillis() - val querySites = SiteDb.querySiteByLineId(linId) + val querySites = SiteDb.querySiteByLineId(linId)?.distinctBy { it.siteId } if(querySites.isNullOrEmpty()){ throw DbException("没有站点数据") } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/dali/bus/DaliBusServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/dali/bus/DaliBusServiceManager.kt index 278207fcff..c05b0445dd 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/dali/bus/DaliBusServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/dali/bus/DaliBusServiceManager.kt @@ -42,7 +42,7 @@ class DaliBusServiceManager: NormalNetInterface { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("saas bus queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/bus/MogoBusServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/bus/MogoBusServiceManager.kt index 219a7d8e70..13d5a6bf49 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/bus/MogoBusServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/bus/MogoBusServiceManager.kt @@ -40,7 +40,7 @@ class MogoBusServiceManager: NormalNetInterface { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("mogo/dali bus queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/shuttle/MogoShuttleServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/shuttle/MogoShuttleServiceManager.kt index 8181ddcc91..7b0cad8c1d 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/shuttle/MogoShuttleServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/normal/mogo/shuttle/MogoShuttleServiceManager.kt @@ -41,7 +41,7 @@ class MogoShuttleServiceManager: NormalNetInterface { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("mogo/dali shuttle queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/weaknet/dali/shuttle/DaliShuttleServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/weaknet/dali/shuttle/DaliShuttleServiceManager.kt index 1bc744d880..ff67892532 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/weaknet/dali/shuttle/DaliShuttleServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/weaknet/dali/shuttle/DaliShuttleServiceManager.kt @@ -41,7 +41,7 @@ object DaliShuttleServiceManager: WeakNetInterface { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformIoTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("saas shuttle queryBusRoutes",false)) .flatMap { Observable.just(it.data?:BusRoutesResult()) } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt index 77a49ee323..3cf42d5370 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt @@ -107,13 +107,17 @@ class BoneTabLayout @JvmOverloads constructor( faultReasonView.setClickListener(object: FaultReasonView.ClickListener{ override fun closeFaultReasonView() { - updateTabType(TabType.REPORT_INFO) + if(tabType == TabType.REPORT_INFO){ + updateTabType(TabType.REPORT_INFO) + } } }) workOrderView.setClickListener(object: WorkOrderView.ClickListener{ override fun closeWorkOrderView() { - updateTabType(TabType.REPORT_INFO) + if(tabType == TabType.REPORT_INFO){ + updateTabType(TabType.REPORT_INFO) + } } }) } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/FaultReasonView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/FaultReasonView.kt index 1b17a56554..48d414a11d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/FaultReasonView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/FaultReasonView.kt @@ -99,7 +99,7 @@ class FaultReasonView @JvmOverloads constructor( private var reportNote: String = "" //上报描述 private val reportType: Int = 1 //上报方式:0:小程序 1:司机屏 2:云端上报 - private var source: Int = 0 //操作源,0:默认,一级分类 1:类型,二级分类;2:原因,三级分类 + private var source: Int = 0 //操作源,0:默认,一级分类 ; 1:类型,二级分类; 2:原因,三级分类 private var hasLevel2: Boolean = false //是否有二级分类 private var hasLevel3: Boolean = false //是否有三级分类 @@ -506,7 +506,6 @@ class FaultReasonView @JvmOverloads constructor( if (source == 0) { level1Id = list[0].id level1Name = list[0].name - source = 1 //获取故障二级分类即故障类型 CallerDevaToolsManager.getCategories( @@ -573,6 +572,7 @@ class FaultReasonView @JvmOverloads constructor( ) ) setAudio(false) + source = 0 level1Id = 0 //一级分类ID level2Id = 0 //二级分类ID level3Id = 0 //三级分类ID @@ -580,6 +580,8 @@ class FaultReasonView @JvmOverloads constructor( level2Name = "" level3Name = "" reportNote = "" //上报描述 + tvUploadSuccess.visibility = View.GONE + faultReasonGroup.visibility = View.VISIBLE } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/preferences/PreferenceWithSpeedSetting.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/preferences/PreferenceWithSpeedSetting.kt index b1d0353080..c5bd5d3df5 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/preferences/PreferenceWithSpeedSetting.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/preferences/PreferenceWithSpeedSetting.kt @@ -6,6 +6,7 @@ import android.text.Editable import android.util.AttributeSet import android.widget.EditText import android.widget.TextView +import androidx.core.widget.doAfterTextChanged import androidx.core.widget.doBeforeTextChanged import androidx.core.widget.doOnTextChanged import androidx.preference.Preference @@ -13,6 +14,7 @@ import androidx.preference.PreferenceViewHolder import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.kotlin.onClickWidthDuration +import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.util.ToastUtils import java.math.BigDecimal import java.util.concurrent.ConcurrentHashMap @@ -70,20 +72,32 @@ class PreferenceWithSpeedSetting : Preference { speedUnit?.text = unit val speedLimit = holder.findViewById(R.id.tv_speed_limit) as? TextView if (cache.containsKey(key)) { - cur = max(cur, cache[key] ?: 0.0) + cur = cache[key] ?: cur } + cur = BigDecimal.valueOf(cur).setScale(1).toDouble() if (speedLimit is EditText) { speedLimit.setText(cur.toString()) - speedLimit.doOnTextChanged { text, _, _, _ -> + speedLimit.doAfterTextChanged { text -> val current = text?.let { runCatching { it.toString().toDouble() }.getOrNull() } if (current == null) { - return@doOnTextChanged + btnOk.isEnabled = false + holder.itemView.isEnabled = false + ll.isSelected = false + return@doAfterTextChanged } if (current > max) { + btnOk.isEnabled = false + holder.itemView.isEnabled = false + ll.isSelected = false ToastUtils.showShort("阈值最大为${BigDecimal.valueOf(max).setScale(1)}$unit") - return@doOnTextChanged + return@doAfterTextChanged } - cur = current + val temp = BigDecimal.valueOf(current).setScale(1).toDouble() + if (cur == temp) { + return@doAfterTextChanged + } + Logger.d("RWJ", "--- cache ---- 2 ---: $cur, $temp") + cur = temp btnOk.isEnabled = true ll.isSelected = true cache[key] = cur @@ -131,7 +145,6 @@ class PreferenceWithSpeedSetting : Preference { btnOk.isEnabled = true enabled[key] = true if (speedLimit is EditText) { - speedLimit.setText("") speedLimit.setText(addAfter.toString()) } else { speedLimit?.text = addAfter.toString() @@ -141,7 +154,6 @@ class PreferenceWithSpeedSetting : Preference { btnOk.onClick { onPreferenceClickListener?.also { enabled[key] = false - cache.remove(key) extras.putDouble(KEY_BUNDLE_CURRENT_VALUE, cur) it.onPreferenceClick(this) } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_fault_reason.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_fault_reason.xml index 6e8e28b552..8a70f38525 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_fault_reason.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_fault_reason.xml @@ -38,7 +38,8 @@ android:textSize="@dimen/sp_32" app:layout_constraintTop_toTopOf="@id/tvFaultTitle" app:layout_constraintBottom_toBottomOf="@id/tvFaultTitle" - app:layout_constraintRight_toRightOf="@id/tvFaultType" + app:layout_constraintRight_toRightOf="@id/viewTitleBg" + android:layout_marginEnd="@dimen/dp_40" /> \ No newline at end of file