From b6779014ad6b2627d0a7e4d170d918d001fc03db Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 08 五月 2024 10:44:01 +0800
Subject: [PATCH] 1.修复16进制低位在前高位在后转换成10进制时的bug 2.完成充值相关功能 3.优化导出记录相关信息

---
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java |   70 +++++++++++++++++++++-------------
 1 files changed, 43 insertions(+), 27 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
index 59d571b..2ca36b4 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
@@ -1,16 +1,15 @@
 package com.dayu.qihealonelibrary.activity;
 
 import android.content.Intent;
-import android.content.res.Resources;
 import android.os.Bundle;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
-import android.widget.Toast;
 
 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.qihealonelibrary.QHAloneApplication;
 import com.dayu.qihealonelibrary.card.CleanCard;
@@ -31,6 +30,8 @@
 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,
@@ -151,13 +152,13 @@
                 binding.cardData.setText("鍒朵綔閰嶇疆姘存车鍔熺巼鍗�");
             }
             if (this.getIntent().hasExtra("morny")) {
-                startAnim();
+                // 鍏呭�奸�昏緫
                 isRecharge = true;
                 morny = this.getIntent().getStringExtra("morny");
                 userName = this.getIntent().getStringExtra("userName");
+                cardNumber = this.getIntent().getStringExtra("cardNumber");
+                userCardBean = (UserCardBean) this.getIntent().getSerializableExtra("userCardBean");
                 binding.cardData.setText("鍏呭�奸噾棰濓細" + morny + "鍏�");
-                // 鍏呭�奸�昏緫
-//                recharge(userCard.getInitPeasantCode(), userName, "鍚敤");
             }
 
             try {
@@ -249,7 +250,7 @@
                     try {
                         if (userFlag && userCardBean != null) {
                             //鐢ㄦ埛鍗�
-                            startDetailActivity(userCardBean.getUserName(), "鍚敤");
+                            startDetailActivity(userCardBean.getUserName(), "缁堢鍐欏崱");
                         } else if (!TextUtils.isEmpty(morny)) {
                             TipUtil.show(NFCWreatActivity.this, "鍏呭�兼垚鍔�", () -> NFCWreatActivity.this.finish());
                         } else {
@@ -289,7 +290,7 @@
                 checkHasUser();
             } else if (isRecharge) {
                 //鍏呭�奸�昏緫
-                rechargeWrratCard();
+                rechargeWreatCard();
             } else {
                 //鍏朵粬绠$悊鍗¢�昏緫
                 saveData();
@@ -314,13 +315,12 @@
                 data.append(getResources().getString(com.dayu.baselibrary.R.string.login_title) + "\n");
                 data.append("璁惧搴忓垪鍙凤細" + rechargeBean.getSerial() + "\n");
                 data.append("鐢ㄦ埛鍚嶏細" + rechargeBean.getUserName() + "\n");
-                //            data.append("鎴�  鍙凤細" + rechargeBean.getUserNum() + "\n");
+                data.append("鍗�  鍙凤細" + rechargeBean.getCardNumber() + "\n");
                 data.append("鍏呭�奸噾棰濓細" + rechargeBean.getMorny() + "鍏�" + "\n");
                 data.append("鍗″唴浣欓锛�" + rechargeBean.getBalance() + "鍏�" + "\n");
                 data.append("鏃�  鏈燂細" + DateUtil.dateToStamp(rechargeBean.getDate(), DateUtil.type2) + "\n\n");
                 data.append("*****************************");
             }
-
             float size = 26;
 
             try {
@@ -348,25 +348,41 @@
 
 
     //寰�鍗″唴鍐欏厖鍊煎悗鐨勬暟鎹�
-    private void rechargeWrratCard() {
-        UserCard userCardold = NfcReadHelper.getInstence(intent, this).getUserCardData();
-        if (userCardold != null) {
-            //鍒ゆ柇鏄惁鍏呭�肩殑鏄竴涓崱
-//            if (userCard.getInitPeasantCode().equals(userCardold.getInitPeasantCode())) {
-//                userCard.setState("00");
-//                userFlag = WriteCardUtils.setUser(intent, userCard, this);
-//                //   鎵撳嵃鐩稿叧
-//                if (userFlag) {
-//                    setPrinterData(rechargeBean);
-//                    startDetailActivity(userName, "鍚敤");
-//                } else {
-//                    TipUtil.show(NFCWreatActivity.this, "鍐欏崱澶辫触锛岃閲嶆柊鍐嶈瘯");
-//                }
-//            } else {
-//                TipUtil.show(NFCWreatActivity.this, "璇诲彇鐨勫崱鍜屽厖鍊肩殑鍗′笉涓�鑷�");
-//            }
+    private void rechargeWreatCard() {
+        String cardNumberThis = NfcReadHelper.getInstence(intent, this).getCardNumber();
+        //鍒ゆ柇鏄惁鍏呭�肩殑鏄竴涓崱
+        if (cardNumberThis.equalsIgnoreCase(cardNumber)) {
+            int balance = userCard.getBalance() + MornyUtil.changeY2F(morny);
+            userCard.setBalance(balance);
+            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);
+                try {
+                    baseDao.rechargeDao().insert(rechargeBean);
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                //   鎵撳嵃鐩稿叧
+                setPrinterData(rechargeBean);
+                startDetailActivity(userName, "缁堢鍐欏崱");
+            } else {
+                TipUtil.show(NFCWreatActivity.this, "鍐欏崱澶辫触锛岃閲嶆柊鍐嶈瘯");
+            }
         } else {
-
+            TipUtil.show(NFCWreatActivity.this, "璇诲彇鐨勫崱鍜屽厖鍊肩殑鍗′笉涓�鑷�");
         }
     }
 

--
Gitblit v1.8.0