修改登录密码

This commit is contained in:
2026-05-21 11:52:59 +08:00
parent c31be55fe6
commit 888382f7ce
12 changed files with 345 additions and 7 deletions

View File

@@ -1,18 +1,24 @@
package com.example.defenseapplication.personal
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import bean.LoginRequest
import com.example.defenseapplication.R
import com.example.defenseapplication.bean.UpdatePassword
import com.example.defenseapplication.bean.UserInfoBean
import com.example.defenseapplication.databinding.LoginPasswordActivityBinding
import com.example.defenseapplication.databinding.PasswordManagementActivityBinding
import com.example.defenseapplication.utils.RetrofitNetwork
import com.gyf.immersionbar.ImmersionBar
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
//登录密码
//登录密码修改
class LoginPasswordActivity : AppCompatActivity() {
private lateinit var binding: LoginPasswordActivityBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = LoginPasswordActivityBinding.inflate(layoutInflater)
@@ -26,5 +32,45 @@ class LoginPasswordActivity : AppCompatActivity() {
binding.ivBack.setOnClickListener {
finish()
}
binding.btnConfirm.setOnClickListener {
val oldPassword = binding.etOldPassword.text.toString().trim()
val newPassword = binding.etNewPassword.text.toString().trim()
val confirmPassword = binding.etConfirmPassword.text.toString().trim()
if (oldPassword.isEmpty()) {
Toast.makeText(this, getString(R.string.enter_old_password), Toast.LENGTH_SHORT).show()
return@setOnClickListener
}
if (newPassword.isEmpty()) {
Toast.makeText(this, getString(R.string.enter_new_password), Toast.LENGTH_SHORT).show()
return@setOnClickListener
}
if (newPassword != confirmPassword) {
Toast.makeText(this, getString(R.string.password_not_match), Toast.LENGTH_SHORT).show()
return@setOnClickListener
}
CoroutineScope(Dispatchers.IO).launch {
try {
val result = RetrofitNetwork.getNetworkService().updatePassword(UpdatePassword(oldPassword, newPassword))
withContext(Dispatchers.Main) {
if (result.code == 200) {
Toast.makeText(this@LoginPasswordActivity, getString(R.string.password_reset_success), Toast.LENGTH_SHORT).show()
finish()
} else {
Toast.makeText(this@LoginPasswordActivity, result.msg ?: getString(R.string.password_reset_failed), Toast.LENGTH_SHORT).show()
}
}
} catch (e: Exception) {
withContext(Dispatchers.Main) {
Toast.makeText(this@LoginPasswordActivity, getString(R.string.network_error), Toast.LENGTH_SHORT).show()
}
}
}
}
}
}
}