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>? */ fun goNextPersonInfo(userBean: UserDetail): Class>? { 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>? */ fun goNextCarInfo(carDetail: CarDetail): Class>? { 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 } }