From 5b9a5a629f8c31a8c05a918dcefc557b46651dfe Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 11 九月 2024 17:28:18 +0800
Subject: [PATCH] 修复bug不让外部应用访问

---
 qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/RechargeActivity.java |   77 ++++++++++++++++++++------------------
 1 files changed, 40 insertions(+), 37 deletions(-)

diff --git a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/RechargeActivity.java b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/RechargeActivity.java
index 122fc9c..967de28 100644
--- a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/RechargeActivity.java
+++ b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/RechargeActivity.java
@@ -1,7 +1,5 @@
 package com.dayu.qiheonlinelibrary.activity;
 
-import android.annotation.SuppressLint;
-import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.text.Editable;
@@ -11,37 +9,25 @@
 import android.view.View;
 import android.widget.EditText;
 
-import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.baselibrary.utils.DeviceUtils;
 import com.dayu.baselibrary.utils.MornyUtil;
 import com.dayu.baselibrary.utils.TipUtil;
-
-
-import com.dayu.baselibrary.utils.ToastUtil;
-import com.dayu.baselibrary.view.TipDialog;
 import com.dayu.qiheonlinelibrary.QHOnLineApplication;
 import com.dayu.qiheonlinelibrary.R;
 import com.dayu.qiheonlinelibrary.bean.CardInfoResult;
 import com.dayu.qiheonlinelibrary.bean.RechargeResult;
 import com.dayu.qiheonlinelibrary.card.UserCard;
 import com.dayu.qiheonlinelibrary.databinding.ActivityRechargeQhlBinding;
-import com.dayu.qiheonlinelibrary.dbBean.AdminDataBean;
-import com.dayu.qiheonlinelibrary.dbBean.ElectricPriceBean;
 import com.dayu.qiheonlinelibrary.dbBean.RechargeBean;
-import com.dayu.qiheonlinelibrary.dbBean.UserCardBean;
 import com.dayu.qiheonlinelibrary.net.ApiManager;
 import com.dayu.qiheonlinelibrary.net.BaseResponse;
-import com.dayu.qiheonlinelibrary.net.RSAUtile;
 import com.dayu.qiheonlinelibrary.net.subscribers.SubscriberListener;
 import com.dayu.qiheonlinelibrary.tools.NfcReadHelper;
 import com.dayu.qiheonlinelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
-import java.text.SimpleDateFormat;
 import java.util.Calendar;
-import java.util.Date;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 
 
@@ -68,7 +54,7 @@
 
     CardInfoResult cardInfoResult;
 
-    UserCard mOldUserCard;
+
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -106,13 +92,24 @@
             cardType = cardType.split(",")[1];
         }
         //鑾峰彇鍗″唴淇℃伅
-        mOldUserCard = NfcReadHelper.getInstence(intent, this).getUserCardData();
-        getUserInfoAndCardInfo(cardNumber,mOldUserCard.getMyUserCode());
+        userCard = NfcReadHelper.getInstence(intent, this).getUserCardData();
+        if (userCard != null) {
+            try {
+                getUserInfoAndCardInfo(cardNumber, userCard.getMyUserCode());
+            } catch (Exception e) {
+                e.printStackTrace();
+                CrashReport.postCatchedException(e);
+                TipUtil.show(this, "璇诲崱澶辫触锛岃鍒峰崱鍚庝笉瑕佺珛鍗崇Щ寮�");
+            }
+        } else {
+            TipUtil.show(this, "璇诲崱澶辫触锛岃鍒峰崱鍚庝笉瑕佺珛鍗崇Щ寮�");
+        }
+
 
     }
 
 
-    private void setUserData(String cardNumber, String userName, String lastRechargeTime, List<byte[]> data) {
+    private void setUserData(String cardNumber, String userName, String lastRechargeTime) {
         if (cardType.equalsIgnoreCase(CardCommon.USER_CARD_TYPE_1)) {
             setCardState("缁堢鍐欏崱");
             binding.rechargeLL.setVisibility(View.VISIBLE);
@@ -127,25 +124,31 @@
             TipUtil.show(this, "闈炵敤鎴峰崱锛屼笉鑳藉厖鍊�");
             return;
         }
+        if (userCard != null) {
+            try {
+                if (Integer.valueOf(QHOnLineApplication.getInstance().arerNumber) == userCard.getArerNumber()) {
+                    binding.rechargeReadLL.setVisibility(View.GONE);
+                    binding.rechargeTextLL.setVisibility(View.VISIBLE);
+                    binding.userName.setText(userName);
+                    binding.redInitCode.setText(cardNumber);
+                    binding.redRechargeDate.setText("鏈崱鏈�鍚庤喘姘存棩鏈燂細\n\n" + lastRechargeTime);
+                    binding.redUserCode.setText(cardInfoResult.getIccardCode());
+                    if (userCard != null) {
+                        binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + " 鍏�");
+                        binding.redBalanceElectric.setText("鍏呭�煎悗鍓╀綑鐢甸噺锛�" + MornyUtil.changeF2Y(userCard.getSurplusElecticity()) + " 搴�");
+                    }
+                    binding.redRechargeElectric.setText("鐢甸噺鍗曚环锛�" + QHOnLineApplication.getInstance().electriclePriceStr + "鍏�/搴�");
 
-        userCard = UserCard.getBean(data);
-
-        if (Integer.valueOf(QHOnLineApplication.getInstance().arerNumber) == userCard.getArerNumber()) {
-
-            binding.rechargeReadLL.setVisibility(View.GONE);
-            binding.rechargeTextLL.setVisibility(View.VISIBLE);
-            binding.userName.setText(userName);
-            binding.redInitCode.setText(cardNumber);
-            binding.redRechargeDate.setText("鏈崱鏈�鍚庤喘姘存棩鏈燂細\n\n" + lastRechargeTime);
-            binding.redUserCode.setText(cardInfoResult.getIccardCode());
-            if (userCard != null) {
-                binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + " 鍏�");
-                binding.redBalanceElectric.setText("鍏呭�煎悗鍓╀綑鐢甸噺锛�" + MornyUtil.changeF2Y(userCard.getSurplusElecticity()) + " 搴�");
+                } else {
+                    TipUtil.show(this, "闈炴湰鍖哄煙鍗n涓嶈兘鍏呭�硷紒锛侊紒");
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+                CrashReport.postCatchedException(e);
+                TipUtil.show(this, "璇诲崱澶辫触锛岃鍒峰崱鍚庝笉瑕佺珛鍗崇Щ寮�");
             }
-            binding.redRechargeElectric.setText("鐢甸噺鍗曚环锛�" + QHOnLineApplication.getInstance().electriclePriceStr + "鍏�/搴�");
-
         } else {
-            TipUtil.show(this, "闈炴湰鍖哄煙鍗n涓嶈兘鍏呭�硷紒锛侊紒");
+            TipUtil.show(this, "璇诲崱澶辫触锛岃鍒峰崱鍚庝笉瑕佺珛鍗崇Щ寮�");
         }
 
 
@@ -225,7 +228,7 @@
     private void startNfcActivity(String morny, String balance, float rechargeElectric, float iccardBalanceElectric, float totalMorny, String iccardRechargeRecordId) {
         //鍏堝鐞嗚ˉ鎵�
         //鍏呭�艰ˉ鎵i噾棰�=鍏呭�奸噾棰�+鍏呭�煎墠璇诲彇鐨勫崱鍐呬綑棰�-鍏呭�煎洖璋冭繑鍥炲崱鍐呬綑棰�
-        int deductionMorny = MornyUtil.changeY2F(morny) + mOldUserCard.getBalance() - MornyUtil.changeY2F(balance);
+        int deductionMorny = MornyUtil.changeY2F(morny) + userCard.getBalance() - MornyUtil.changeY2F(balance);
 
         if (MornyUtil.changeY2F(morny) < deductionMorny) {
             TipUtil.show(RechargeActivity.this, "褰撳墠鍏呭�奸噾棰濆皬浜庤ˉ鎵i噾棰濓紝琛ユ墸閲戦涓�" + MornyUtil.changeF2Y(deductionMorny) + "鍏冿紝鍏呭�奸噾棰濆簲澶т簬琛ユ墸閲戦锛�");
@@ -341,11 +344,11 @@
                     if (t.getData() != null) {
                         //ic鍗$姸鎬� 0 姝e父 1 宸叉敞閿� 2 宸叉寕澶�
                         if (t.getData().getIccardStatus() == 0) {
-                            List<byte[]> data = NfcReadHelper.getInstence(intent, RechargeActivity.this).getOnesectorData();
+//                            List<byte[]> data = NfcReadHelper.getInstence(intent, RechargeActivity.this).getOnesectorData();
                             if (!data.isEmpty()) {
                                 if (!TextUtils.isEmpty(cardNumber)) {
                                     cardInfoResult = t.getData();
-                                    setUserData(cardNumber, cardInfoResult.getPeasantName(), cardInfoResult.getLastRechargeTime(), data);
+                                    setUserData(cardNumber, cardInfoResult.getPeasantName(), cardInfoResult.getLastRechargeTime());
                                 } else {
                                     TipUtil.show(RechargeActivity.this, "璇诲彇鍗$墖澶辫触锛岃閲嶆柊璐村崱");
                                 }

--
Gitblit v1.8.0