From 0bf7ddf03d457908a4ff2f2373f4fd8ee00275e3 Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期一, 31 三月 2025 15:46:56 +0800 Subject: [PATCH] fix 我的 --- app/src/main/java/com/example/firstapp/ui/notifications/NotificationsFragment.kt | 56 ++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 40 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/example/firstapp/ui/notifications/NotificationsFragment.kt b/app/src/main/java/com/example/firstapp/ui/notifications/NotificationsFragment.kt index 4f3ba17..f87eb83 100644 --- a/app/src/main/java/com/example/firstapp/ui/notifications/NotificationsFragment.kt +++ b/app/src/main/java/com/example/firstapp/ui/notifications/NotificationsFragment.kt @@ -13,7 +13,9 @@ import android.widget.Toast import androidx.activity.result.contract.ActivityResultContracts import androidx.appcompat.app.AppCompatActivity +import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment +import androidx.lifecycle.Observer import androidx.lifecycle.lifecycleScope import androidx.navigation.fragment.findNavController import com.google.android.material.dialog.MaterialAlertDialogBuilder @@ -21,12 +23,17 @@ import com.example.firstapp.activity.ContentDetailActivity import com.example.firstapp.database.service.RetrofitClient import com.example.firstapp.databinding.FragmentNotificationsBinding +import com.example.firstapp.pay.PayAbility import com.example.firstapp.ui.reminderOther.ReminderOtherAddActivity2 import com.example.firstapp.ui.reminderOther.ReminderSettingsFragmentOther import com.example.firstapp.ui.profile.EditProfileActivity +import com.example.firstapp.utils.Log +import com.google.android.material.snackbar.Snackbar import kotlinx.coroutines.launch import com.bumptech.glide.Glide +import com.example.firstapp.activity.VipActivity import com.example.firstapp.database.response.UserInfo +import com.example.firstapp.utils.PreferencesManager class NotificationsFragment : Fragment() { @@ -123,6 +130,8 @@ } private fun setupClickListeners() { + + // 设置提醒 binding.layoutReminder.setOnClickListener { findNavController().navigate(R.id.action_navigation_notifications_to_reminderSettingsFragment) @@ -178,14 +187,6 @@ } // 头像点击老的处理逻辑 -// binding.layoutUserInfo.setOnClickListener { -// val intent = Intent(requireContext(), EditProfileActivity::class.java).apply { -// putExtra("nickname", binding.tvNickname.text.toString()) -// putExtra("avatar_url", binding.ivAvatar.toString()) -// } -// editProfileLauncher.launch(intent) -// } - binding.layoutUserInfo.setOnClickListener { currentUserInfo?.let { user -> val intent = Intent(requireContext(), EditProfileActivity::class.java).apply { @@ -200,8 +201,20 @@ // VIP续费 binding.btnRenew.setOnClickListener { - Toast.makeText(context, "VIP续费功能开发中", Toast.LENGTH_SHORT).show() +// Toast.makeText(context, "VIP续费功能开发中", Toast.LENGTH_SHORT).show() + // 跳转到vipActivity + val intent = Intent(requireContext(), VipActivity::class.java) + startActivity(intent) } + + binding.cardVip.setOnClickListener { +// Toast.makeText(context, "VIP续费功能开发中", Toast.LENGTH_SHORT).show() + // 跳转到vipActivity + val intent = Intent(requireContext(), VipActivity::class.java) + startActivity(intent) + } + + } private fun showEmailDialog() { @@ -266,7 +279,14 @@ private suspend fun loadUserInfo() { try { - val response = RetrofitClient.apiService.getUserInfo("17586582287") + // 从本地获取保存的手机号 + val savedPhone = PreferencesManager.getPhone() + if (savedPhone.isNullOrEmpty()) { + Toast.makeText(context, "用户未登录", Toast.LENGTH_SHORT).show() + return + } + + val response = RetrofitClient.apiService.getUserInfo(savedPhone) if (response.code == "0" && response.data != null) { // 保存用户信息 currentUserInfo = response.data @@ -277,18 +297,22 @@ .load(userInfo.cover) .placeholder(R.drawable.default_avatar) .into(binding.ivAvatar) - + // 设置昵称和账号 binding.tvNickname.text = userInfo.name binding.tvUserId.text = "个人账号:${userInfo.contactTel}" - + // 设置VIP信息 - if (userInfo.showed) { + if (userInfo.isMember) { binding.ivVip.visibility = View.VISIBLE binding.cardVip.visibility = View.VISIBLE - binding.tvVipExpire.text = "${userInfo.passTime} 到期" + binding.tvVipExpire.text = "${userInfo.memberOverDate} 到期" } else { - binding.cardVip.visibility = View.GONE + //非会员信息 + binding.ivVip.visibility = View.GONE + binding.cardVip.visibility = View.VISIBLE + binding.btnRenew.text = "立即开通" + binding.linearVipContainer.setBackgroundColor(ContextCompat.getColor(requireContext(), R.color.gray)) } } } catch (e: Exception) { @@ -299,7 +323,7 @@ override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - + // 加载用户信息 lifecycleScope.launch { loadUserInfo() -- Gitblit v1.9.3