From 520c4343a7121d610391c41cd090c480d65d13f2 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 22 三月 2024 09:37:40 +0800
Subject: [PATCH] 读取卡片界面添加地址码字段 参数设置添加密码校验

---
 app/src/main/java/com/dayu/recharge/MyApplication.java                                        |    8 +++++++-
 app/src/main/java/com/dayu/recharge/net/SocketNet.java                                        |   18 +++++++++---------
 easysocket/src/main/java/com/easysocket/connection/iowork/EasyReader.java                     |    3 ++-
 easysocket/src/main/java/com/easysocket/EasySocket.java                                       |    1 +
 app/src/main/java/com/dayu/recharge/activity/ReadCardAcitivy.java                             |    1 +
 easysocket/build.gradle                                                                       |    1 +
 easysocket/src/main/java/com/easysocket/connection/connect/TcpConnection.java                 |    3 +++
 app/src/main/java/com/dayu/recharge/activity/BaseActivity.java                                |    6 ++++++
 easysocket/src/main/java/com/easysocket/connection/dispatcher/CallbackResponseDispatcher.java |    1 +
 app/src/main/java/com/dayu/recharge/activity/HomeActivity.java                                |    4 ++--
 app/src/main/res/layout/activity_red_card.xml                                                 |    8 +++++++-
 11 files changed, 40 insertions(+), 14 deletions(-)

diff --git a/app/src/main/java/com/dayu/recharge/MyApplication.java b/app/src/main/java/com/dayu/recharge/MyApplication.java
index 298df2e..453b711 100644
--- a/app/src/main/java/com/dayu/recharge/MyApplication.java
+++ b/app/src/main/java/com/dayu/recharge/MyApplication.java
@@ -43,6 +43,9 @@
     public boolean isConncet = false;
     private final Timer timer = new Timer();
 
+    //姣忔鍚姩绋嬪簭鍙幓娉ㄥ唽涓�閬嶏紝涓嶅啀閲嶆柊娉ㄥ唽銆�
+    public static boolean isCreate = false;
+
 
     @Override
     public void onCreate() {
@@ -77,12 +80,14 @@
             try {
                 ipBean = BaseDaoSingleton.getInstance(MyApplication.myApplication).ipDao().findFirst();
             } catch (Exception e) {
-              e.printStackTrace();
+                e.printStackTrace();
             }
             if (ipBean == null) {
                 ipBean = new IpBean();
                 ipBean.setIp("newreceive.hnsjgg.com");
                 ipBean.setPort(9999);
+//                ipBean.setIp("dayuyanjiuyuan.top");
+//                ipBean.setPort(8888);
             }
             if (ipBean != null) {
                 try {
@@ -183,6 +188,7 @@
                                 @Override
                                 public void onSocketResponse(SocketData readData) {
                                     isDoInitMachine = false;
+                                    MyApplication.myApplication.isCreate = true;
                                     if (CRC8.isCRC8(readData.getOriginDataBytes())) {
                                         byte stateByte = readData.getBodyBytes()[2];
                                         String state = BcdUtil.bcdToStr(stateByte);
diff --git a/app/src/main/java/com/dayu/recharge/activity/BaseActivity.java b/app/src/main/java/com/dayu/recharge/activity/BaseActivity.java
index 6247fed..1078008 100644
--- a/app/src/main/java/com/dayu/recharge/activity/BaseActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/BaseActivity.java
@@ -16,6 +16,7 @@
 import com.dayu.recharge.dao.AppDatabase;
 import com.dayu.recharge.dao.BaseDaoSingleton;
 import com.dayu.recharge.view.TitleBar;
+import com.easysocket.EasySocket;
 
 /**
  * Created by zuoxiao on 2018/12/20.
@@ -45,6 +46,11 @@
 
 
     @Override
+    protected void onResume() {
+        super.onResume();
+    }
+
+    @Override
     public void setContentView(View layoutResID) {
         super.setContentView(layoutResID);
         try {
diff --git a/app/src/main/java/com/dayu/recharge/activity/HomeActivity.java b/app/src/main/java/com/dayu/recharge/activity/HomeActivity.java
index a517d7a..e990925 100644
--- a/app/src/main/java/com/dayu/recharge/activity/HomeActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/HomeActivity.java
@@ -91,8 +91,8 @@
         homeBinding.homeParameter.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                startActivity(new Intent(HomeActivity.this, ParameterActivity.class));
-
+                PassWordDialog passWordDialog = new PassWordDialog(HomeActivity.this, new Intent(HomeActivity.this, ParameterActivity.class));
+                passWordDialog.show();
             }
         });
         homeBinding.homeMy.setOnClickListener(new View.OnClickListener() {
diff --git a/app/src/main/java/com/dayu/recharge/activity/ReadCardAcitivy.java b/app/src/main/java/com/dayu/recharge/activity/ReadCardAcitivy.java
index b537a4d..5e55056 100644
--- a/app/src/main/java/com/dayu/recharge/activity/ReadCardAcitivy.java
+++ b/app/src/main/java/com/dayu/recharge/activity/ReadCardAcitivy.java
@@ -71,6 +71,7 @@
         redCardBinding.redName.setText("鐢ㄦ埛濮撳悕锛�" + userName);
         redCardBinding.redRemainderBlance.setText("鍓╀綑閲戦锛�" + MornyUtil.changeF2Y(blance) + "鍏�");
         redCardBinding.redStatu.setText("鍗$姸鎬侊細" + statu);
+        redCardBinding.redAddressCode.setText("鍦板潃鐮侊細" + userCard.getAddressCode());
         if (userCard != null) {
             redCardBinding.redInitCode.setText(userCard.getInitPeasantCode());
             Calendar calendar = userCard.getRechargeDate();
diff --git a/app/src/main/java/com/dayu/recharge/net/SocketNet.java b/app/src/main/java/com/dayu/recharge/net/SocketNet.java
index 2031a00..0573432 100644
--- a/app/src/main/java/com/dayu/recharge/net/SocketNet.java
+++ b/app/src/main/java/com/dayu/recharge/net/SocketNet.java
@@ -111,7 +111,7 @@
                 if (!MyApplication.myApplication.isDoInitMachine) {
                     Log.i("SocketActionListener1111", "isDoInitMachine");
                     if (MyApplication.myApplication.ipBean != null && adminData != null) {
-                        if (!TextUtils.isEmpty(adminData.getAddressCode())) {
+                        if (!TextUtils.isEmpty(adminData.getAddressCode()) && !MyApplication.myApplication.isCreate) {
                             Log.i("SocketActionListener1111", "initMachineRequestBean");
                             MyApplication.myApplication.initMachineRequestBean(MyApplication.myApplication.ipBean.getIp(), MyApplication.myApplication.ipBean.getPort(), adminData.getAddressCode());
 
@@ -135,13 +135,10 @@
             MyApplication.myApplication.isConncet = false;
             rushState();
             Log.i("SocketActionListener", "socket杩炴帴澶辫触");
-            if (isTest) {
-//                ToastUtil.show(mContext, "杩炴帴澶辫触,璇锋鏌ョ綉缁�");
-            } else {
-                if (myCallBack != null) {
-                    myCallBack.onSocketError(-1, "杩炴帴鏁版嵁涓績澶辫触,璇锋鏌ョ綉缁�");
-                }
+            if (myCallBack != null) {
+                myCallBack.onSocketError(-1, "杩炴帴鏁版嵁涓績澶辫触,璇锋鏌ョ綉缁�");
             }
+            myCallBack = null;
         }
 
         /**
@@ -154,8 +151,11 @@
             Log.i("SocketActionListener", "---> socket鏂紑杩炴帴锛屾槸鍚﹂渶瑕侀噸杩烇細" + isNeedReconnect);
             MyApplication.myApplication.isConncet = false;
             rushState();
+            if (myCallBack != null) {
+                myCallBack.onSocketError(-2, "涓庢湇鍔″櫒杩炴帴鏂紑锛岃閲嶈瘯");
+            }
+            myCallBack = null;
         }
-
 
 
         /**
@@ -174,7 +174,7 @@
             if (myCallBack != null) {
                 myCallBack.onSocketResponse(socketData);
             }
-
+            myCallBack = null;
         }
     };
 
diff --git a/app/src/main/res/layout/activity_red_card.xml b/app/src/main/res/layout/activity_red_card.xml
index 07f0256..cf603f9 100644
--- a/app/src/main/res/layout/activity_red_card.xml
+++ b/app/src/main/res/layout/activity_red_card.xml
@@ -88,7 +88,13 @@
                 android:layout_marginTop="15dp"
                 android:text="鍗$姸鎬侊細"
                 android:textSize="@dimen/text_size" />
-
+            <TextView
+                android:id="@+id/red_addressCode"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="15dp"
+                android:text="鍦板潃缂栫爜锛�"
+                android:textSize="@dimen/text_size" />
         </LinearLayout>
 
     </ScrollView>
diff --git a/easysocket/build.gradle b/easysocket/build.gradle
index 34c191c..bd5fdf8 100644
--- a/easysocket/build.gradle
+++ b/easysocket/build.gradle
@@ -23,6 +23,7 @@
 dependencies {
     implementation fileTree(dir: 'libs', include: ['*.jar'])
     compileOnly 'com.google.code.gson:gson:2.2.4'
+    compileOnly 'com.tencent.bugly:crashreport:4.1.9.3'
 }
 
 sourceCompatibility = "7"
diff --git a/easysocket/src/main/java/com/easysocket/EasySocket.java b/easysocket/src/main/java/com/easysocket/EasySocket.java
index 4aecbd3..56dba09 100644
--- a/easysocket/src/main/java/com/easysocket/EasySocket.java
+++ b/easysocket/src/main/java/com/easysocket/EasySocket.java
@@ -129,6 +129,7 @@
      */
     public EasySocket disconnect(boolean isNeedReconnect) {
         LogUtil.d("EasySocket--銆媎isconnect");
+        if (defConnection != null)
         getDefconnection().disconnect(isNeedReconnect);
         return this;
     }
diff --git a/easysocket/src/main/java/com/easysocket/connection/connect/TcpConnection.java b/easysocket/src/main/java/com/easysocket/connection/connect/TcpConnection.java
index c0228b7..b6e84c7 100644
--- a/easysocket/src/main/java/com/easysocket/connection/connect/TcpConnection.java
+++ b/easysocket/src/main/java/com/easysocket/connection/connect/TcpConnection.java
@@ -6,6 +6,7 @@
 import com.easysocket.entity.SocketAddress;
 import com.easysocket.utils.LogUtil;
 import com.easysocket.utils.Utils;
+import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -122,6 +123,7 @@
                 return socket.getInputStream();
             } catch (IOException e) {
                 e.printStackTrace();
+                CrashReport.postCatchedException(e);
             }
         }
         return null;
@@ -134,6 +136,7 @@
                 return socket.getOutputStream();
             } catch (IOException e) {
                 e.printStackTrace();
+                CrashReport.postCatchedException(e);
             }
         }
         return null;
diff --git a/easysocket/src/main/java/com/easysocket/connection/dispatcher/CallbackResponseDispatcher.java b/easysocket/src/main/java/com/easysocket/connection/dispatcher/CallbackResponseDispatcher.java
index dc0d4e6..5ce8190 100644
--- a/easysocket/src/main/java/com/easysocket/connection/dispatcher/CallbackResponseDispatcher.java
+++ b/easysocket/src/main/java/com/easysocket/connection/dispatcher/CallbackResponseDispatcher.java
@@ -71,6 +71,7 @@
     public void engineThread() {
         try {
             if (timeoutExecutor == null || timeoutExecutor.isShutdown()) {
+                //鍒涘缓涓�涓彧鏈変竴涓嚎绋嬬殑绾跨▼姹犮�傝繖涓嚎绋嬫睜浼氶『搴忔墽琛屾彁浜ょ殑浠诲姟锛屽苟淇濊瘉浠诲姟涔嬮棿鐨勯『搴忔�с��
                 timeoutExecutor = Executors.newSingleThreadExecutor();
                 timeoutExecutor.execute(new Runnable() {
                     @Override
diff --git a/easysocket/src/main/java/com/easysocket/connection/iowork/EasyReader.java b/easysocket/src/main/java/com/easysocket/connection/iowork/EasyReader.java
index d2bea0d..00677a8 100644
--- a/easysocket/src/main/java/com/easysocket/connection/iowork/EasyReader.java
+++ b/easysocket/src/main/java/com/easysocket/connection/iowork/EasyReader.java
@@ -12,6 +12,7 @@
 import com.easysocket.interfaces.io.IReader;
 import com.easysocket.utils.HexUtil;
 import com.easysocket.utils.LogUtil;
+import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -195,12 +196,12 @@
                 // 鍋滄绾跨▼
                 stopThread = true;
                 release();
+                CrashReport.postCatchedException(unrecoverableException);
             } catch (ReadRecoverableExeption readRecoverableExeption) {
                 readRecoverableExeption.printStackTrace();
                 // 閲嶈繛
                 LogUtil.d("--->閲嶈繛 ReadRecoverableExeption");
                 connectionManager.disconnect(true);
-
             } catch (IOException e) {
                 e.printStackTrace();
                 // 閲嶈繛

--
Gitblit v1.8.0