左晓为主开发手持机充值管理机
zuoxiao
2023-11-30 8e3719a37a6be0c9e244a0160b5f2f3331ca3122
app/src/main/java/com/dayu/recharge/activity/NFCWreatActivity.java
@@ -1,6 +1,7 @@
package com.dayu.recharge.activity;
import android.content.Intent;
import android.nfc.Tag;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
@@ -80,8 +81,8 @@
    String userName;
    AdminDataBean adminData;
    RechargeBean rechargeBean;
    Intent intent;
    //    Intent intent;
    Tag mTag;
    RegisteredCard registeredCard;
    CleanUserCard cleanUserCard;
@@ -192,7 +193,7 @@
     */
    private void checkHasUser() {
        String cardType = NfcReadHelper.getInstence(intent).getCradType();
        String cardType = NfcReadHelper.getInstence(mTag).getCradType();
        Log.i("NFCWreatActivity", "cardType=" + cardType);
        if (cardType.equals(MyCommon.USER_CARD_TYPE_1) ||
                cardType.equals(MyCommon.USER_CARD_TYPE_2) ||
@@ -221,32 +222,32 @@
                    || configurationPowerCard != null) {
                if (userCard != null && TextUtils.isEmpty(morny)) {
                    userFlag = WriteCardUtils.setUser(intent, userCard);
                    userFlag = WriteCardUtils.setUser(mTag, userCard);
                }
                if (cleanCard != null) {
                    NFCWriteHelper.getInstence(intent).changePasword(1);
                    setClean(intent, cleanCard);
                    NFCWriteHelper.getInstence(mTag).changePasword(1);
                    setClean(mTag, cleanCard);
                }
                if (manageCard != null) {
                    setmanageCard(intent, manageCard);
                    setmanageCard(mTag, manageCard);
                }
                if (registeredCard != null) {
                    setRegisteredCard(intent, registeredCard);
                    setRegisteredCard(mTag, registeredCard);
                }
                if (cleanUserCard != null) {
                    setCleanUserCard(intent, cleanUserCard);
                    setCleanUserCard(mTag, cleanUserCard);
                }
                if (domainCard != null) {
                    setDomainCard(intent, domainCard);
                    setDomainCard(mTag, domainCard);
                }
                if (testCard != null) {
                    setTestCard(intent, testCard);
                    setTestCard(mTag, testCard);
                }
                if (configureDeviceRegistrationCrad != null) {
                    setConfigDeviceRegiest(intent, configureDeviceRegistrationCrad);
                    setConfigDeviceRegiest(mTag, configureDeviceRegistrationCrad);
                }
                if (configurationPowerCard != null) {
                    setConfigurationPower(intent, configurationPowerCard);
                    setConfigurationPower(mTag, configurationPowerCard);
                }
                if ((configPowerFlag || configDeviceRegiestFlag || testCardFlag || domainCrdFlag || userFlag || cleanFlag || manageCardFlag || registeredFlag || administrativeCardFlag || cleanUserCardFlag)) {
                    try {
@@ -290,11 +291,12 @@
        }
    }
    @Override
    public void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
    public void physicalCardDoing(Tag tag) {
        super.physicalCardDoing(tag);
        mTag = tag;
        try {
            this.intent = intent;
            startAnim();
            Log.i("NFCWreatActivity", "isUser:" + isUser);
            if (isUser) {
@@ -313,6 +315,12 @@
            e.printStackTrace();
            CrashReport.postCatchedException(e);
        }
    }
    @Override
    public void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
    }
@@ -408,7 +416,7 @@
                            userCard.setRechargeTimes(userCard.getRechargeTimes() + 1);
                        } else if ("01".equalsIgnoreCase(state)) {
                            userCard.setState("01");
                            userFlag = WriteCardUtils.setUser(intent, userCard);
                            userFlag = WriteCardUtils.setUser(mTag, userCard);
                            NFCWreatActivity.this.finish();
                            TipUtil.show("充值报文错误-禁用");
                        } else if ("02".equalsIgnoreCase(state)) {
@@ -444,12 +452,12 @@
    //往卡内写充值后的数据
    private void rechargeWrratCard() {
        UserCard userCardold = NfcReadHelper.getInstence(intent).getUserCardData();
        UserCard userCardold = NfcReadHelper.getInstence(mTag).getUserCardData();
        if (userCardold != null) {
            //判断是否充值的是一个卡
            if (userCard.getInitPeasantCode().equals(userCardold.getInitPeasantCode())) {
                userCard.setState("00");
                userFlag = WriteCardUtils.setUser(intent, userCard);
                userFlag = WriteCardUtils.setUser(mTag, userCard);
                //   打印相关
                if (userFlag) {
                    setPrinterData(rechargeBean);
@@ -465,7 +473,7 @@
        }
    }
    private void setmanageCard(Intent intent, final ManageCard manageCard) {
    private void setmanageCard(Tag intent, final ManageCard manageCard) {
        manageCardFlag = NFCWriteHelper.getInstence(intent).writeData(manageCard.toZeroByte(), 1, 0);
    }
@@ -475,7 +483,7 @@
     * @param intent
     * @param clearOrInitCard
     */
    private void setClean(Intent intent, final CleanCard clearOrInitCard) {
    private void setClean(Tag intent, final CleanCard clearOrInitCard) {
        cleanFlag = NFCWriteHelper.getInstence(intent).writeData(clearOrInitCard.toByte(), 1, 0);
    }
@@ -486,7 +494,7 @@
     * @param intent
     * @param registeredCard
     */
    private void setRegisteredCard(Intent intent, RegisteredCard registeredCard) {
    private void setRegisteredCard(Tag intent, RegisteredCard registeredCard) {
        registeredFlag = NFCWriteHelper.getInstence(intent).writeData(registeredCard.toByte(), 1, 0);
    }
@@ -496,7 +504,7 @@
     * @param intent
     * @param cleanUserCard
     */
    private void setCleanUserCard(Intent intent, CleanUserCard cleanUserCard) {
    private void setCleanUserCard(Tag intent, CleanUserCard cleanUserCard) {
        cleanUserCardFlag = NFCWriteHelper.getInstence(intent).writeData(cleanUserCard.toByte(), 1, 0);
    }
@@ -506,7 +514,7 @@
     * @param intent
     * @param domainCard
     */
    private void setDomainCard(Intent intent, DomainCard domainCard) {
    private void setDomainCard(Tag intent, DomainCard domainCard) {
        try {
            domainCrdFlag = NFCWriteHelper.getInstence(intent).writeData(domainCard.getZeroByte(), 1, 0);
            if (!domainCrdFlag) {
@@ -523,16 +531,16 @@
        }
    }
    private void setTestCard(Intent intent, TestCard testCard) {
    private void setTestCard(Tag intent, TestCard testCard) {
        testCardFlag = NFCWriteHelper.getInstence(intent).writeData(testCard.toByte(), 1, 0);
    }
    private void setConfigDeviceRegiest(Intent intent, ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad) {
    private void setConfigDeviceRegiest(Tag intent, ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad) {
        configDeviceRegiestFlag = NFCWriteHelper.getInstence(intent).writeData(configureDeviceRegistrationCrad.toByte(), 1, 0);
    }
    private void setConfigurationPower(Intent intent, ConfigurationPowerCard configurationPowerCard) {
    private void setConfigurationPower(Tag intent, ConfigurationPowerCard configurationPowerCard) {
        try {
            configPowerFlag = NFCWriteHelper.getInstence(intent).writeData(configurationPowerCard.toByte(), 1, 0);
        } catch (Exception e) {
@@ -611,7 +619,7 @@
                                userCard.setBalance(balance);
                                userCard.setState("00");
                                //补卡逻辑
                                userFlag = WriteCardUtils.setUser(intent, userCard);
                                userFlag = WriteCardUtils.setUser(mTag, userCard);
                                if (userFlag) {
                                    TipUtil.show(NFCWreatActivity.this, "补卡成功", new TipUtil.TipListener() {
                                        @Override
@@ -625,7 +633,7 @@
                                stateText.append("禁用");
                                userCard.setState("01");
                                userCard.setBalance(balance);
                                userFlag = WriteCardUtils.setUser(intent, userCard);
                                userFlag = WriteCardUtils.setUser(mTag, userCard);
                                startDetailActivity(name, stateText.toString());
                            } else if ("02".equals(state)) {
@@ -661,4 +669,8 @@
    }
    protected void onDestroy() {
        super.onDestroy();
        nfcWreatActivity = null;
    }
}