左晓为主开发手持机充值管理机
zuoxiao
3 天以前 167eea1eeb0d02be0e4372ba787ddde11219de1e
generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt
@@ -28,7 +28,6 @@
class NfcWreatActivity : BaseNfcActivity() {
    var binding: ActivityNfcWriteGeBinding? = null
    var cardType = ""
    var orderId = ""
    var cardAddr = ""
    var cardFee = 0
@@ -50,9 +49,9 @@
     */
    private fun getInitData() {
        cardType = intent?.getStringExtra("cardType") ?: ""
        orderId = intent?.getStringExtra("orderId") ?: ""
        cardAddr = intent?.getStringExtra("cardAddr") ?: ""
        operationTypeCode = intent?.getIntExtra("operationTypeCode", -1) ?: -1
        orderNumber = intent?.getStringExtra("orderNumber") ?: ""
        operationType = CardOperationType.fromCode(operationTypeCode)
        if (intent?.hasExtra("cardFee") == true) {
            cardFee = intent?.getIntExtra("cardFee", 0) ?: 0
@@ -111,10 +110,7 @@
                        runOnUiThread {
                            if (success) {
                                postCardData(cardType, cardAddr)
                                // 写卡成功后更新数据库中的isCardWritten状态
                                updateCardWrittenStatus(cardAddr)
                                ToastUtil.show("写卡成功!")
                                // 处理写卡成功的情况
                            } else {
                                // 处理写卡失败的情况
                                ToastUtil.show(message)
@@ -129,9 +125,8 @@
                            // 确保Toast在主线程中调用
                            runOnUiThread {
                                if (flag) {
                                    // 写卡成功后更新数据库中的isCardWritten状态
                                    updateCardWrittenStatus(cardAddr)
                                    ToastUtil.show("写卡成功!")
                                    postCardData(cardType, cardAddr)
                                } else {
                                    ToastUtil.show("写卡失败: ${msg ?: "未知错误"}")
                                }
@@ -169,11 +164,23 @@
                    val updatedCardRegistration = cardRegistration.copy(isCardWritten = true)
                    // 更新数据库记录
                    cardRegistrationDao.update(updatedCardRegistration)
                    // 在主线程中关闭Activity
                    runOnUiThread {
                        setResult(RESULT_OK)
                        finish()
                        Intent(this@NfcWreatActivity, CardWriteSuccessActivity::class.java).apply {
                            putExtra("cardNumber", cardNumber)
                            startActivity(this)
                        }
                    }
                }
            } catch (e: Exception) {
                CrashReport.postCatchedException(e)
                e.printStackTrace()
                ToastUtil.show("更新写卡状态失败: ${e.message}")
                runOnUiThread {
                    ToastUtil.show("更新写卡状态失败: ${e.message}")
                }
            }
        }
    }
@@ -203,8 +210,9 @@
            object : SubscriberListener<BaseResponse<String>>() {
                override fun onNext(t: BaseResponse<String>) {
                    if (t.success) {
                        ToastUtil.show("写卡成功")
                        this@NfcWreatActivity.finish()
                        updateCardWrittenStatus(cardAddr)
                    } else {
                        // 处理搜索失败的情况