左晓为主开发手持机充值管理机
generallibrary/src/main/java/com/dayu/general/activity/CardReadActivity.kt
@@ -4,16 +4,16 @@
import android.content.Intent
import android.os.Bundle
import com.dayu.baselibrary.net.subscribers.SubscriberListener
import com.dayu.baselibrary.utils.ToastUtil
import com.dayu.baselibrary.utils.MornyUtil
import com.dayu.baselibrary.view.TipDialog
import com.dayu.baselibrary.view.TitleBar
import com.dayu.general.bean.card.UserCard
import com.dayu.general.bean.net.CardInfoResult
import com.dayu.general.databinding.ActivityCardReadBinding
import com.dayu.general.net.ApiManager
import com.dayu.general.net.BaseResponse
import com.dayu.general.tool.NfcReadHelper
import com.dayu.general.bean.card.UserCard
import com.dayu.general.tool.CardCommon
import com.dayu.general.tool.NfcReadHelper
/**
 * @author: zuo
@@ -275,19 +275,11 @@
        userCard.let { card ->
            // 余额转换为元(原始数据可能是分)
            val balanceInYuan = if (card.balance > 1000) {
                String.format("%.2f", card.balance / 100.0)
            } else {
                card.balance.toString()
            }
            binding.tvCardBalance.text = "${balanceInYuan}元"
            binding.tvCardBalance.text = MornyUtil.changeF2Y(card.balance.toInt()) + "元"
            // 使用完整的用户编号
            binding.tvUserNumber.text = cardInfo?.cardNum
            // 卡片状态(假设正常状态,因为UserCard中没有状态字段)
            binding.tvCardStatus.text = "正常"
            binding.tvCardStatus.setTextColor(android.graphics.Color.parseColor("#4CAF50"))
            // 充值时间作为最后使用时间
            if (card.rechargeDate != null) {
@@ -306,14 +298,16 @@
            binding.tvPhone.text = info.phone ?: "未绑定"
            binding.tvIdCard.text = info.userCode ?: "未录入"  // 使用userCode作为身份证号的替代
            // 根据status字段显示状态
            val statusText = when (info.state) {
                1 -> "正常"
                2 -> "挂失"
                3 -> "锁定"
                else -> "未知"
            // 根据state字段显示状态
            val (statusText, statusColor) = when (info.state) {
                1 -> Pair("正常", android.graphics.Color.parseColor("#4CAF50")) // 绿色
                2 -> Pair("已注销", android.graphics.Color.parseColor("#FF5722")) // 深橙色
                3 -> Pair("已挂失", android.graphics.Color.parseColor("#FF9800")) // 橙色
                4 -> Pair("无效卡片", android.graphics.Color.parseColor("#F44336")) // 红色
                else -> Pair("未知状态", android.graphics.Color.parseColor("#9E9E9E")) // 灰色
            }
            binding.tvCardStatus.text = statusText
            binding.tvCardStatus.setTextColor(statusColor)
        }
    }