125 lines
4.6 KiB
Kotlin
125 lines
4.6 KiB
Kotlin
package com.arpa.hndahesudintocctmsdriver.utils
|
||
|
||
import android.content.Context
|
||
import android.content.Intent
|
||
import androidx.viewbinding.ViewBinding
|
||
import com.arpa.hndahesudintocctmsdriver.bean.CarDetail
|
||
import com.arpa.hndahesudintocctmsdriver.push.PushHelper
|
||
import com.arpa.hndahesudintocctmsdriver.ui.HomeActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.LauncherActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.LoginActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.SelectRoleActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.AuthFaceActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditBankCardActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditDriverActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditDrivingActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditPersonActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditQualificationActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditRoadActivity
|
||
import com.arpa.hndahesudintocctmsdriver.ui.account.authperson.EditTrailerActivity
|
||
import com.arpa.glex.bean.UserBean
|
||
import com.arpa.glex.bean.UserDetail
|
||
import com.arpa.mylibrary.base.BaseActivity
|
||
import com.arpa.mylibrary.utils.ActivityUtils
|
||
import com.arpa.mylibrary.utils.BaseSPUtils
|
||
import com.google.gson.Gson
|
||
|
||
class UserUtils private constructor() {
|
||
|
||
companion object {
|
||
val instance = Holder.holder
|
||
}
|
||
|
||
private object Holder {
|
||
val holder = UserUtils()
|
||
}
|
||
|
||
fun loginOut(context: Context) {
|
||
SPUtils.instance.removeUserToken(context)
|
||
if (null == SPUtils.instance.getUserInfo(context))
|
||
return
|
||
//删除推送别名
|
||
PushHelper.delete(context)
|
||
BaseSPUtils.cleanUserInfo(context)
|
||
val intent = Intent(context, LauncherActivity::class.java)
|
||
intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TASK or Intent.FLAG_ACTIVITY_NEW_TASK
|
||
context.startActivity(intent)
|
||
// ToastUtils.showToast(context, "您的账号再异地登录,请重新登录")
|
||
}
|
||
|
||
fun loginIn(context: Context, userBean: UserBean) {
|
||
SPUtils.instance.setUserInfo(context, Gson().toJson(userBean))
|
||
//设置推送别名
|
||
// PushHelper.setAlias(context, userBean)
|
||
|
||
// ActivityUtils.startActivity(
|
||
// context,
|
||
// SelectRoleActivity::class.java
|
||
// )
|
||
|
||
if (userBean.isCarCaptain == "9") {//是否是车队长(0=否,1=是,9=未选择)
|
||
ActivityUtils.startActivity(
|
||
context,
|
||
SelectRoleActivity::class.java
|
||
)
|
||
} else {
|
||
ActivityUtils.startActivity(
|
||
context,
|
||
HomeActivity::class.java
|
||
)
|
||
}
|
||
// ActivityUtils.finishToActivity(LoginActivity::class.java, true)
|
||
}
|
||
|
||
|
||
/**
|
||
* 更新当前用户
|
||
* @param context Context
|
||
* @param userBean UserBean
|
||
*/
|
||
fun updateUser(context: Context, userBean: UserBean) {
|
||
SPUtils.instance.setUserInfo(context, Gson().toJson(userBean))
|
||
//设置推送别名
|
||
PushHelper.setAlias(context, userBean)
|
||
}
|
||
|
||
|
||
/**
|
||
* 司机证件跳转
|
||
* @param userBean UserDetail
|
||
* @return Class<out BaseActivity<out ViewBinding>>?
|
||
*/
|
||
fun goNextPersonInfo(userBean: UserDetail): Class<out BaseActivity<out ViewBinding>>? {
|
||
|
||
if (userBean.idcardNo.isNullOrBlank()) {
|
||
return EditPersonActivity::class.java
|
||
} else if (userBean.licenseNo.isNullOrEmpty()) {
|
||
return EditDriverActivity::class.java
|
||
} else if (userBean.qualificationCertificateEffectiveEnd.isNullOrEmpty()) {
|
||
return EditQualificationActivity::class.java
|
||
} else if (userBean.driverBankcardNumber.isNullOrEmpty()) {
|
||
return EditBankCardActivity::class.java
|
||
} else if (userBean.isRealName == "0") {
|
||
return AuthFaceActivity::class.java
|
||
} else {
|
||
return null
|
||
}
|
||
|
||
}
|
||
|
||
/**
|
||
* 车辆证件跳转
|
||
* @param carDetail CarDetail
|
||
* @return Class<out BaseActivity<out ViewBinding>>?
|
||
*/
|
||
fun goNextCarInfo(carDetail: CarDetail): Class<out BaseActivity<out ViewBinding>>? {
|
||
if (carDetail.vehicleNum.isNullOrEmpty()) {
|
||
return EditDrivingActivity::class.java
|
||
} else if (carDetail.isTrailer == "1" && carDetail.trailerVehicleNum.isNullOrEmpty()) {
|
||
return EditTrailerActivity::class.java
|
||
}else if (carDetail.roadLicense.isNullOrEmpty()){
|
||
return EditRoadActivity::class.java
|
||
}else
|
||
return null
|
||
}
|
||
} |