fix: VIp 返回 null 时的处理

This commit is contained in:
eggmanQQQ
2024-10-25 10:32:31 +08:00
parent e48bc137b8
commit ef38916fa1

View File

@@ -69,12 +69,10 @@ class VipSetActivity : BaseViewBindingActivity<VipSetActivityBinding>(), ILog, V
UserModel.get().getUserInfoFromServerUpdate(AuthModel.get().currentUid)
.compose(bindToLifecycle())
.doOnSuccess {
it.userVipInfoVO?.let { vInfo ->
setSwitchView(binding.vipSetSwitch1, vInfo.preventFollow)//不被关注
setSwitchView(binding.vipSetSwitch2, vInfo.preventTrace)//防跟随
setSwitchView(binding.vipSetSwitch3, vInfo.enterHide)//开关隐身进房状态
setSwitchView(binding.vipSetSwitch4, vInfo.preventKick)//防踢
}
setSwitchView(binding.vipSetSwitch1, it?.userVipInfoVO?.preventFollow?:false)//不被关注
setSwitchView(binding.vipSetSwitch2, it?.userVipInfoVO?.preventTrace?:false)//防跟随
setSwitchView(binding.vipSetSwitch3, it?.userVipInfoVO?.enterHide?:false)//开关隐身进房状态
setSwitchView(binding.vipSetSwitch4, it?.userVipInfoVO?.preventKick?:false)//防踢
}
.doOnError {
@@ -106,7 +104,7 @@ class VipSetActivity : BaseViewBindingActivity<VipSetActivityBinding>(), ILog, V
private fun switchClick(view: View) {
val value = view.tag
if (value is Boolean && view is ImageView) {
if (value != null && value is Boolean && view is ImageView) {
switchApi(view,!value)
.doOnSuccess {
view.tag = !value
@@ -123,11 +121,11 @@ class VipSetActivity : BaseViewBindingActivity<VipSetActivityBinding>(), ILog, V
}
private fun switchApi(view : ImageView,value:Boolean) : Single<String> {
when (view) {
binding.vipSetSwitch1 -> return api.notFollowed(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch2 -> return api.notTrace(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch3 -> return api.invisible(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch4 -> return api.notKick(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
when (view.id) {
binding.vipSetSwitch1.id -> return api.notFollowed(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch2.id -> return api.notTrace(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch3.id -> return api.invisible(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
binding.vipSetSwitch4.id -> return api.notKick(value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
else -> return api.notFollowed(!value).compose(RxHelper.handleIgnoreData()).compose(RxHelper.handleSchedulers())
}
}