feat: auto login in dev

This commit is contained in:
2025-12-15 10:38:30 +08:00
parent 9129ccfb88
commit 2721e36dc1
5 changed files with 149 additions and 54 deletions

View File

@@ -37,6 +37,11 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import me.jessyan.autosize.internal.CustomAdapt
/**
* ========== 开发调试开关 ==========
* TODO: 正式发布前务必设置为 false
*/
private const val DEV_AUTO_LOGIN = true // 自动登录开关
@Route(path = ARouterConstants.ACTIVITY_URL_LOGIN)
class LoginActivity : BaseActivity(),
@@ -100,6 +105,15 @@ class LoginActivity : BaseActivity(),
spinner.setSelection(index)
}
}
// ========== 开发调试:角色信息获取成功后自动登录 ==========
// TODO: 正式发布前删除此代码块
if (DEV_AUTO_LOGIN && user.text.toString() == "ADMIN") {
loginButton.postDelayed({
val encodedPassword = "$2a$10$02ZpVb/bymrybmPE2Mu2C.O.JcMXTB..gkssaNn8q2EC.kUAfJP0S"
viewModel.login(user.text.toString(), encodedPassword)
}, 200) // 短暂延迟确保spinner更新完成
}
}
bindOnSelected(spinner, object : IOnSpinnerSelected {
override fun onSelected(position: Int) {
@@ -183,6 +197,28 @@ class LoginActivity : BaseActivity(),
bindAdapter(spinner, viewModel.roleList, "请选择角色", R.layout.item_spinner_list_18sp)
setEnable(spinner, false)
// ========== 开发调试:自动登录 ==========
// TODO: 正式发布前删除此行
autoLoginForDev()
}
/**
* 开发调试:自动登录
* TODO: 正式发布前删除此方法或将 DEV_AUTO_LOGIN 设置为 false
*/
private fun autoLoginForDev() {
if (!DEV_AUTO_LOGIN) return
// 延迟执行确保UI初始化完成
loginButton.postDelayed({
// 设置用户名
user.setText("ADMIN")
// 手动触发获取角色信息
// 角色信息获取成功后会在userRoleBean.observe中自动执行登录
viewModel.getUserRole("ADMIN")
}, 500) // 延迟500ms确保ViewModel已初始化
}

View File

@@ -45,7 +45,7 @@ class GjcExportLoad {
* 获取格式化的运单号prefix + no
*/
fun getFullWaybillNo(): String {
return if (prefix.isNotEmpty()) "$prefix-$no" else no
return if (prefix.isNotEmpty()) "$prefix$no" else no
}
/**