From 420562c180324d5cc22bb8bec0fe040c304eca03 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 12 七月 2024 15:29:13 +0800
Subject: [PATCH] 齐河单机版充值逻辑调整由水费计价改为电费计价

---
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java |  632 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 632 insertions(+), 0 deletions(-)

diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
new file mode 100644
index 0000000..ea81f0d
--- /dev/null
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
@@ -0,0 +1,632 @@
+package com.dayu.qihealonelibrary.activity;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.View;
+
+import com.dayu.baselibrary.tools.HexUtil;
+import com.dayu.baselibrary.utils.AidlUtil;
+import com.dayu.baselibrary.utils.BaseCommon;
+import com.dayu.baselibrary.utils.DateUtil;
+import com.dayu.baselibrary.utils.MornyUtil;
+import com.dayu.baselibrary.utils.TipUtil;
+import com.dayu.baselibrary.view.ConfirmDialog;
+import com.dayu.baselibrary.view.TitleBar;
+import com.dayu.qihealonelibrary.QHAloneApplication;
+import com.dayu.qihealonelibrary.card.CleanCard;
+import com.dayu.qihealonelibrary.card.CleanUserCard;
+import com.dayu.qihealonelibrary.card.ConfigurationPowerCard;
+import com.dayu.qihealonelibrary.card.ConfigureDeviceRegistrationCrad;
+import com.dayu.qihealonelibrary.card.DomainCard;
+import com.dayu.qihealonelibrary.card.ElectricPriceCard;
+import com.dayu.qihealonelibrary.card.ManageCard;
+import com.dayu.qihealonelibrary.card.PassWordCard;
+import com.dayu.qihealonelibrary.card.RegionCard;
+import com.dayu.qihealonelibrary.card.RegisteredCard;
+import com.dayu.qihealonelibrary.card.TestCard;
+import com.dayu.qihealonelibrary.card.UserCard;
+import com.dayu.qihealonelibrary.databinding.ActivityWriteTextQhaBinding;
+import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
+import com.dayu.qihealonelibrary.dbBean.RechargeBean;
+import com.dayu.qihealonelibrary.dbBean.UserCardBean;
+import com.dayu.qihealonelibrary.tools.NFCWriteHelper;
+import com.dayu.qihealonelibrary.tools.NfcReadHelper;
+import com.dayu.qihealonelibrary.tools.WriteCardUtils;
+import com.dayu.qihealonelibrary.utils.CardCommon;
+import com.tencent.bugly.crashreport.CrashReport;
+
+import java.util.Calendar;
+
+/**
+ * Copyright (C), 2023,
+ * Author: zuo
+ * Date: 2023-11-08 21:19
+ * Description: nfc鍐欏崱鐣岄潰
+ */
+public class NFCWreatActivity extends BaseNfcActivity {
+
+    RegisteredCard registeredCard;
+    CleanUserCard cleanUserCard;
+    ManageCard manageCard;
+    DomainCard domainCard;
+
+    CleanCard cleanCard;
+    ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad;
+    TestCard testCard;
+    //鍖哄煙琛ㄥ彿鍗�
+    RegionCard regionCard;
+    ConfigurationPowerCard configurationPowerCard;
+    //瀵嗙爜鍗�
+    PassWordCard passWordCard;
+    //鐢ㄦ埛鐢甸噺鍗曚环鍗�
+    ElectricPriceCard electricPriceCard;
+    UserCardBean userCardBeanByManager;
+    boolean electricPriceFlag = false;
+    boolean passwordFlag = false;
+    boolean cleanFlag = false;
+    boolean regionFlag = false;
+    boolean userFlag = false;
+    boolean manageCardFlag = false;
+    boolean registeredFlag = false;
+    boolean administrativeCardFlag = false;
+    boolean cleanUserCardFlag = false;
+
+    boolean domainCrdFlag = false;
+
+    boolean testCardFlag = false;
+
+    boolean configDeviceRegiestFlag = false;
+
+    boolean configPowerFlag = false;
+
+    UserCardBean userCardBean;
+    UserCard olduserCard;
+
+    String morny;
+    String rechageWater;//鍏呭�肩殑姘撮噺
+    String userName;
+    AdminDataBean adminData;
+    RechargeBean rechargeBean;
+    Intent intent;
+
+
+    //鎵撳嵃
+    QHAloneApplication baseApp;
+
+    public static NFCWreatActivity nfcWreatActivity;
+    /**
+     * 鏄惁鏄敤鎴峰崱锛屽亣濡傛槸鐢ㄦ埛鍗$殑璇濋渶瑕佹娴嬪崱鐗囨槸鍚﹀凡缁忓紑杩囨埛锛屽亣濡傚凡寮�鎴峰垯鎶ラ敊涓嶈兘鍐嶅啓鍗�
+     */
+    boolean isUser = false;//
+
+    //鏄惁鏄厖鍊艰繃绋�
+    boolean isRecharge = false;
+
+    ActivityWriteTextQhaBinding binding;
+
+    //褰撳墠鍗$殑鐗╃悊鍗″彿
+    String cardNumber;
+    ConfirmDialog confirmDialog;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        try {
+            binding = ActivityWriteTextQhaBinding.inflate(LayoutInflater.from(this));
+            setContentView(binding.getRoot());
+            nfcWreatActivity = this;
+            getData();
+            titleBack();
+            baseApp = QHAloneApplication.getInstance();
+        } catch (Exception e) {
+            e.printStackTrace();
+            CrashReport.postCatchedException(e);
+        }
+    }
+
+
+    private void getData() {
+        try {
+            if (this.getIntent().hasExtra("userCard")) {
+                userCard = (UserCard) this.getIntent().getSerializableExtra("userCard");
+            }
+            if (this.getIntent().hasExtra("electricPriceCard")) {
+                electricPriceCard = (ElectricPriceCard) this.getIntent().getSerializableExtra("electricPriceCard");
+
+                binding.cardData.setText("鍒朵綔鐢ㄦ埛鐢甸噺鍗曚环鍗n褰撳墠鍗曚环锛�" + electricPriceCard.getElectricPrice().toString() + " 鍏�");
+            }
+            if (this.getIntent().hasExtra("passWordCard")) {
+                passWordCard = (PassWordCard) this.getIntent().getSerializableExtra("passWordCard");
+                binding.cardData.setText("鍒朵綔瀵嗙爜鍗�");
+            }
+            if (this.getIntent().hasExtra("cleanCard")) {
+                cleanCard = (CleanCard) this.getIntent().getSerializableExtra("cleanCard");
+                binding.cardData.setText("鍒朵綔娓呴浂鍗�");
+            }
+            if (this.getIntent().hasExtra("manageCard")) {
+                cardNumber = this.getIntent().getStringExtra("cardNumber");
+                manageCard = (ManageCard) this.getIntent().getSerializableExtra("manageCard");
+                if (this.getIntent().hasExtra("userCardBean_manager")) {
+                    userCardBeanByManager = (UserCardBean) this.getIntent().getSerializableExtra("userCardBean_manager");
+                }
+                //鏄剧ず鐨勬椂鍊欒鍙嶈繃鏉�
+                String hex = HexUtil.spaceHex(manageCard.getUserCard());
+                hex = HexUtil.HighLowHex(hex);
+                binding.cardData.setText("鍒朵綔绠$悊鍗�(璇峰皢绠$悊鍗¤创鍦ㄨ澶囦笂)\n鐢ㄦ埛鍗″彿锛�" + hex);
+            }
+            if (this.getIntent().hasExtra("registeredCard")) {
+                registeredCard = (RegisteredCard) this.getIntent().getSerializableExtra("registeredCard");
+                binding.cardData.setText("鍒朵綔閲嶆柊娉ㄥ唽璁惧鍗�");
+            }
+            if (this.getIntent().hasExtra("dbUserCard")) {
+                userCardBean = (UserCardBean) this.getIntent().getSerializableExtra("dbUserCard");
+                isUser = true;
+            }
+            if (this.getIntent().hasExtra("cleanUserCard")) {
+                cleanUserCard = (CleanUserCard) this.getIntent().getSerializableExtra("cleanUserCard");
+                binding.cardData.setText("鍒朵綔鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�");
+            }
+            if (this.getIntent().hasExtra("domainCard")) {
+                domainCard = (DomainCard) this.getIntent().getSerializableExtra("domainCard");
+                binding.cardData.setText("鍒朵綔璁剧疆鍩熷悕鍗�");
+            }
+            if (this.getIntent().hasExtra("testCard")) {
+                testCard = (TestCard) this.getIntent().getSerializableExtra("testCard");
+                binding.cardData.setText("鍒朵綔娴嬭瘯鍗�");
+            }
+            if (this.getIntent().hasExtra("configureDeviceRegistrationCrad")) {
+                configureDeviceRegistrationCrad = (ConfigureDeviceRegistrationCrad) this.getIntent().getSerializableExtra("configureDeviceRegistrationCrad");
+                binding.cardData.setText("鍒朵綔閰嶇疆璁惧娉ㄥ唽淇℃伅鍗�");
+            }
+            if (this.getIntent().hasExtra("configurationPowerCard")) {
+                configurationPowerCard = (ConfigurationPowerCard) this.getIntent().getSerializableExtra("configurationPowerCard");
+                binding.cardData.setText("鍒朵綔閰嶇疆姘存车鍔熺巼鍗�");
+            }
+            if (this.getIntent().hasExtra("regionCard")) {
+                regionCard = (RegionCard) this.getIntent().getSerializableExtra("regionCard");
+                binding.cardData.setText("鍒朵綔鍖哄煙琛ㄥ彿鍗�");
+            }
+            if (this.getIntent().hasExtra("morny")) {
+                // 鍏呭�奸�昏緫
+                isRecharge = true;
+                morny = this.getIntent().getStringExtra("morny");
+                userName = this.getIntent().getStringExtra("userName");
+                cardNumber = this.getIntent().getStringExtra("cardNumber");
+                userCardBean = (UserCardBean) this.getIntent().getSerializableExtra("userCardBean");
+//                rechageWater = this.getIntent().getStringExtra("rechageWater");
+                binding.cardData.setText("鍏呭�奸噾棰濓細" + morny + " 鍏�");
+            }
+
+            try {
+                adminData = baseDao.adminDao().findFirst();
+            } catch (Exception e) {
+                e.printStackTrace();
+                CrashReport.postCatchedException(e);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            CrashReport.postCatchedException(e);
+        }
+    }
+
+    /**
+     * 妫�娴嬫槸鍚︽槸鐢ㄦ埛鍗★紝鍋囧鏄敤鎴峰崱鐨勮瘽闇�瑕佹娴嬪崱鐗囨槸鍚﹀凡缁忓紑杩囨埛锛屽亣濡傚凡寮�鎴峰垯鎶ラ敊涓嶈兘鍐嶅啓鍗″亣濡傛槸鐢ㄦ埛鍗¢渶瑕�
+     */
+    private void checkHasUser() {
+
+        try {
+            String cardType = NfcReadHelper.getInstence(intent, this).getCradTypeAndCardNumber();
+
+            String[] cardTypes = cardType.split(",");
+            if (cardTypes != null && cardTypes.length == 2) {
+                cardNumber = cardType.split(",")[0];
+                cardNumber = HexUtil.spaceHex(cardNumber);
+                cardNumber = HexUtil.HighLowHex(cardNumber);
+                cardType = cardType.split(",")[1];
+            }
+            Log.i("NFCWreatActivity", "cardType=" + cardType);
+            if (cardType.equals(CardCommon.USER_CARD_TYPE_1) ||
+                    cardType.equals(CardCommon.USER_CARD_TYPE_2) ||
+                    cardType.equals(CardCommon.USER_CARD_TYPE_3)
+            ) {
+                binding.textView.setText("璇ュ崱宸茬粡鍐欏叆鐢ㄦ埛淇℃伅锛岃鏇存崲鍗$墖");
+                binding.textView.setTextColor(getResources().getColor(com.dayu.baselibrary.R.color.red));
+            } else if (cardType.equals(BaseCommon.CARD_TYPE_ERROR1)) {
+                TipUtil.show(NFCWreatActivity.this, "璇峰嬁绉诲姩鍗$墖锛岃鍗″け璐ヨ閲嶈瘯锛侊紒");
+            } else if (cardType.equals(BaseCommon.CARD_TYPE_ERROR2)) {
+                TipUtil.show(NFCWreatActivity.this, "鍗$墖鏈兘璇嗗埆锛岃妫�鏌ュ崱鐗囨槸鍚︽槸鏈叕鍙稿崱鐗�");
+            } else {
+                Log.i("NFCWreatActivity", "olduserCard!=null  saveData");
+                userCardBean.setCardNumber(cardNumber);
+                baseDao.userCardDao().insert(userCardBean);
+                saveData();
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+
+        stopAnim();
+    }
+
+
+    private void saveData() {
+        try {
+            startAnim();
+            if (userCard != null || cleanCard != null || manageCard != null
+                    || registeredCard != null || cleanUserCard != null
+                    || domainCard != null || testCard != null
+                    || configureDeviceRegistrationCrad != null
+                    || configurationPowerCard != null || regionCard != null || passWordCard != null || electricPriceCard != null) {
+                if (userCard != null && TextUtils.isEmpty(morny)) {
+                    userFlag = WriteCardUtils.setUser(intent, userCard, this);
+                }
+                if (electricPriceCard != null) {
+                    setElectricPriceCard(intent, electricPriceCard);
+                }
+                if (passWordCard != null) {
+                    setPassWordCard(intent, passWordCard);
+                }
+                if (regionCard != null) {
+                    setRegionCard(intent, regionCard);
+                }
+                if (cleanCard != null) {
+                    setClean(intent, cleanCard);
+                }
+                if (manageCard != null) {
+                    setmanageCard(intent, manageCard);
+                    if (manageCardFlag && userCardBeanByManager != null) {
+                        //淇敼鐢ㄦ埛琛ㄤ俊鎭慨鏀规垚鏂板崱鍗″彿
+                        userCardBeanByManager.setCardNumber(cardNumber);
+                        baseDao.userCardDao().update(userCardBeanByManager);
+                    }
+                }
+                if (registeredCard != null) {
+                    setRegisteredCard(intent, registeredCard);
+                }
+                if (cleanUserCard != null) {
+                    setCleanUserCard(intent, cleanUserCard);
+                }
+                if (domainCard != null) {
+                    setDomainCard(intent, domainCard);
+                }
+                if (testCard != null) {
+                    setTestCard(intent, testCard);
+                }
+                if (configureDeviceRegistrationCrad != null) {
+                    setConfigDeviceRegiest(intent, configureDeviceRegistrationCrad);
+                }
+                if (configurationPowerCard != null) {
+                    setConfigurationPower(intent, configurationPowerCard);
+                }
+                if (electricPriceFlag || passwordFlag || regionFlag || configPowerFlag || configDeviceRegiestFlag || testCardFlag || domainCrdFlag || userFlag || cleanFlag || manageCardFlag || registeredFlag || administrativeCardFlag || cleanUserCardFlag) {
+                    try {
+                        if (userFlag && userCardBean != null) {
+                            //鐢ㄦ埛鍗�
+                            startDetailActivity(userCardBean.getUserName(), "缁堢鍐欏崱");
+                        } else if (!TextUtils.isEmpty(morny)) {
+                            TipUtil.show(NFCWreatActivity.this, "鍏呭�兼垚鍔�", () -> NFCWreatActivity.this.finish());
+                        } else {
+                            TipUtil.show(NFCWreatActivity.this, "鍐欏崱鎴愬姛", () -> NFCWreatActivity.this.finish());
+                        }
+
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                        CrashReport.postCatchedException(e);
+                    }
+                } else {
+                    TipUtil.show(NFCWreatActivity.this, "鍐欏崱澶辫触");
+                }
+                stopAnim();
+            } else if (userCard == null && userCardBean != null) {
+                //琛ュ崱閫昏緫
+
+            } else {
+                stopAnim();
+                TipUtil.show(this, "鍙傛暟閿欒");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            CrashReport.postCatchedException(e);
+        }
+    }
+
+    @Override
+    public void onNewIntent(Intent intent) {
+        super.onNewIntent(intent);
+        try {
+            this.intent = intent;
+//            startAnim();
+            Log.i("NFCWreatActivity", "isUser:" + isUser);
+            if (isUser) {
+                //鏂板崱娉ㄥ唽閫昏緫
+                checkHasUser();
+            } else if (isRecharge) {
+                //鍏呭�奸�昏緫
+                rechargeWreatCard();
+            } else {
+                //鍏朵粬绠$悊鍗¢�昏緫
+                saveData();
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            CrashReport.postCatchedException(e);
+        }
+    }
+
+
+    /**
+     * 鎵撳嵃鏈虹浉鍏充俊鎭�
+     *
+     * @param rechargeBean
+     */
+    private void setPrinterData(RechargeBean rechargeBean) {
+        try {
+            StringBuffer data = new StringBuffer();
+            if (rechargeBean != null) {
+                data.append("*****************************" + "\n");
+                data.append("璁惧搴忓垪鍙凤細" + rechargeBean.getSerial() + "\n");
+                data.append("鐢ㄦ埛鍚嶏細" + rechargeBean.getUserName() + "\n");
+                data.append("鍗�  鍙凤細" + rechargeBean.getCardNumber() + "\n");
+                data.append("鍏呭�奸噾棰濓細" + rechargeBean.getMorny() + " 鍏�" + "\n");
+//                data.append("鍗″唴浣欓锛�" + rechargeBean.getBalance() + " 鍏�" + "\n");
+                data.append("鍏呭�兼按閲忥細" + rechargeBean.getRechargeWater() + " 鍚�" + "\n");
+                data.append("鍓╀綑姘撮噺锛�" + rechargeBean.getSurplusWater() + " 鍚�" + "\n");
+                data.append("鏃�  鏈燂細" + DateUtil.dateToStamp(rechargeBean.getDate(), DateUtil.type2) + "\n\n");
+                data.append("*****************************");
+            }
+            float size = 26;
+
+            try {
+                AidlUtil.getInstance().printText(data.toString(), size, true, false);
+                AidlUtil.getInstance().print3Line();
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            CrashReport.postCatchedException(e);
+        }
+    }
+
+    void startAnim() {
+        binding.avi.show();
+        // or avi.smoothToShow();
+    }
+
+    void stopAnim() {
+        binding.avi.hide();
+        // or avi.smoothToHide();
+    }
+
+
+    //寰�鍗″唴鍐欏厖鍊煎悗鐨勬暟鎹�
+    private void rechargeWreatCard() {
+        try {
+            String cardNumberThis = NfcReadHelper.getInstence(intent, this).getCardNumber();
+            cardNumberThis = HexUtil.spaceHex(cardNumberThis);
+            cardNumberThis = HexUtil.HighLowHex(cardNumberThis);
+            //鍒ゆ柇鏄惁鍏呭�肩殑鏄竴涓崱
+            if (cardNumberThis.equalsIgnoreCase(cardNumber)) {
+                //浣欓
+                int balance = userCard.getBalance() + MornyUtil.changeY2F(morny);
+                userCard.setBalance(balance);
+                //鍓╀綑姘撮噺
+//                int surplusWater = userCard.getSurplusWater() + MornyUtil.changeY2F(rechageWater);
+//                userCard.setSurplusWater(surplusWater);
+
+                int rechageTims = userCard.getRechargeTimes() + 1;
+                if (rechageTims == 256) {
+                    rechageTims = 0;
+                }
+                userCard.setRechargeTimes((short) rechageTims);
+                userCard.setRechargeDate(Calendar.getInstance());
+                userFlag = WriteCardUtils.setUser(intent, userCard, this);
+                if (userFlag) {
+                    rechargeBean = new RechargeBean();
+                    rechargeBean.setUserName(userName);
+                    rechargeBean.setSerial(userCardBean.getSerial());
+                    rechargeBean.setUserId(userCardBean.getUserID());
+                    rechargeBean.setDate(System.currentTimeMillis());
+                    rechargeBean.setMorny(morny);
+                    rechargeBean.setBalance(MornyUtil.changeF2Y(balance));
+                    rechargeBean.setCardNumber(cardNumber);
+                    rechargeBean.setSurplusWater(MornyUtil.changeF2Y(0));
+                    rechargeBean.setRechargeWater(rechageWater);
+                    try {
+                        baseDao.rechargeDao().insert(rechargeBean);
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                    //   鎵撳嵃鐩稿叧
+                    setPrinterData(rechargeBean);
+                    startDetailActivity(userName, "缁堢鍐欏崱");
+                } else {
+                    TipUtil.show(NFCWreatActivity.this, "鍐欏崱澶辫触锛岃閲嶆柊鍐嶈瘯");
+                }
+            } else {
+                TipUtil.show(NFCWreatActivity.this, "璇诲彇鐨勫崱鍜屽厖鍊肩殑鍗′笉涓�鑷�");
+            }
+        } catch (Exception e) {
+            TipUtil.show(NFCWreatActivity.this, "璇诲彇閿欒锛岃閲嶈瘯");
+        }
+    }
+
+    private void setmanageCard(Intent intent, final ManageCard manageCard) {
+        manageCardFlag = NFCWriteHelper.getInstence(intent, this).writeData(manageCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 鍒朵綔娓呴浂鍗�
+     *
+     * @param intent
+     * @param clearOrInitCard
+     */
+    private void setClean(Intent intent, CleanCard clearOrInitCard) {
+        cleanFlag = NFCWriteHelper.getInstence(intent, this).writeData(clearOrInitCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 淇濆瓨鍖哄煙琛ㄥ彿鍗�
+     *
+     * @param intent
+     * @param regionCard
+     */
+    private void setRegionCard(Intent intent, RegionCard regionCard) {
+        regionFlag = NFCWriteHelper.getInstence(intent, this).writeData(regionCard.toByte(), 1, 0);
+    }
+
+    /**
+     * 瀵嗙爜鍗�
+     *
+     * @param intent
+     * @param passWordCard
+     */
+    private void setPassWordCard(Intent intent, PassWordCard passWordCard) {
+        passwordFlag = NFCWriteHelper.getInstence(intent, this).writeData(passWordCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 鐢ㄦ埛鐢甸噺鍗曚环
+     *
+     * @param intent
+     * @param electricPriceCard
+     */
+    private void setElectricPriceCard(Intent intent, ElectricPriceCard electricPriceCard) {
+        electricPriceFlag = NFCWriteHelper.getInstence(intent, this).writeData(electricPriceCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 閲嶆柊娉ㄥ唽璁惧鍗�
+     *
+     * @param intent
+     * @param registeredCard
+     */
+    private void setRegisteredCard(Intent intent, RegisteredCard registeredCard) {
+        registeredFlag = NFCWriteHelper.getInstence(intent, this).writeData(registeredCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�
+     *
+     * @param intent
+     * @param cleanUserCard
+     */
+    private void setCleanUserCard(Intent intent, CleanUserCard cleanUserCard) {
+        cleanUserCardFlag = NFCWriteHelper.getInstence(intent, this).writeData(cleanUserCard.toByte(baseDao), 1, 0);
+    }
+
+    /**
+     * 璁剧疆鍩熷悕鍗�
+     *
+     * @param intent
+     * @param domainCard
+     */
+    private void setDomainCard(Intent intent, DomainCard domainCard) {
+        try {
+            domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getZeroByte(), 1, 0);
+            if (!domainCrdFlag) {
+                return;
+            }
+            domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getOneByte(), 1, 1);
+            if (!domainCrdFlag) {
+                return;
+            }
+            domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getTwoByte(), 1, 2);
+        } catch (Exception e) {
+            domainCrdFlag = false;
+            throw new RuntimeException(e);
+        }
+    }
+
+    private void setTestCard(Intent intent, TestCard testCard) {
+        testCardFlag = NFCWriteHelper.getInstence(intent, this).writeData(testCard.toByte(baseDao), 1, 0);
+    }
+
+
+    private void setConfigDeviceRegiest(Intent intent, ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad) {
+        configDeviceRegiestFlag = NFCWriteHelper.getInstence(intent, this).writeData(configureDeviceRegistrationCrad.toByte(baseDao), 1, 0);
+    }
+
+    private void setConfigurationPower(Intent intent, ConfigurationPowerCard configurationPowerCard) {
+        try {
+            configPowerFlag = NFCWriteHelper.getInstence(intent, this).writeData(configurationPowerCard.toByte(baseDao), 1, 0);
+        } catch (Exception e) {
+            configPowerFlag = false;
+            throw new RuntimeException(e);
+        }
+    }
+
+
+    private void startDetailActivity(String userName, String statu) {
+        Intent detail = new Intent(this, RechargeDetailActivity.class);
+        detail.putExtra("userName", userName);
+        detail.putExtra("statu", statu);
+        detail.putExtra("userCard", userCard);
+        if (!TextUtils.isEmpty(morny)) {
+            detail.putExtra("morny", morny);
+            detail.putExtra("rechageWater", rechageWater);
+        }
+        if (!TextUtils.isEmpty(cardNumber)) {
+            detail.putExtra("cardNumber", cardNumber);
+        }
+
+        startActivity(detail);
+        if (NewCardActivity.newCardActivity != null) {
+            NewCardActivity.newCardActivity.finish();
+        }
+        if (RechargeActivity.rechargeActivity != null) {
+            RechargeActivity.rechargeActivity.finish();
+        }
+        NFCWreatActivity.nfcWreatActivity.finish();
+    }
+
+
+    protected void onDestroy() {
+        super.onDestroy();
+        nfcWreatActivity = null;
+    }
+
+    /**
+     * 鐐瑰嚮杩斿洖鏃舵彁绀虹敤鎴疯繕鏈啓鍗�
+     *
+     * @param keyCode
+     * @param event
+     * @return
+     */
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (keyCode == KeyEvent.KEYCODE_BACK) {
+            back();
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
+    private void back() {
+        confirmDialog = new ConfirmDialog(NFCWreatActivity.this, v -> {
+            confirmDialog.dismiss();
+            if (NewCardActivity.newCardActivity != null) {
+                NewCardActivity.newCardActivity.finish();
+            }
+            if (RechargeActivity.rechargeActivity != null) {
+                RechargeActivity.rechargeActivity.finish();
+            }
+            NFCWreatActivity.nfcWreatActivity.finish();
+        });
+        confirmDialog.show();
+    }
+
+    private void titleBack() {
+        titleBar.setOnItemclickListner(TitleBar.ClickType_LEFT_IMAGE, new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                back();
+            }
+        });
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0