From d08a5a6d062f1568aaeb14d2d72357826291ef97 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期六, 13 七月 2024 18:14:28 +0800
Subject: [PATCH] 添加齐河管理卡相关逻辑 修复bug

---
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java |   52 +++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 11 deletions(-)

diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java
index 9820463..bfce39b 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java
@@ -1,5 +1,6 @@
 package com.dayu.qihealonelibrary.activity;
 
+import android.annotation.SuppressLint;
 import android.content.Intent;
 import android.os.Bundle;
 import android.text.Editable;
@@ -9,11 +10,14 @@
 import android.view.View;
 import android.widget.EditText;
 
+import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.baselibrary.utils.MornyUtil;
 import com.dayu.baselibrary.utils.TipUtil;
+import com.dayu.qihealonelibrary.R;
 import com.dayu.qihealonelibrary.card.UserCard;
 import com.dayu.qihealonelibrary.databinding.ActivityRechargeQhaBinding;
 import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
+import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean;
 import com.dayu.qihealonelibrary.dbBean.UserCardBean;
 import com.dayu.qihealonelibrary.tools.NfcReadHelper;
 import com.dayu.qihealonelibrary.utils.CardCommon;
@@ -42,6 +46,9 @@
     String userName;
     String cardNumber = null;
     UserCardBean userCardBean;
+    int waterPrice;
+    String rechageWater;//鍏呭�肩殑姘撮噺
+    ElectricPriceBean priceBean;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -51,6 +58,7 @@
             setContentView(binding.getRoot());
             setPricePoint(binding.rechargeWater);
             rechargeActivity = this;
+            waterPrice = baseDao.adminDao().findFirst().getWaterPrice();
             initView();
         } catch (Exception e) {
             e.printStackTrace();
@@ -76,6 +84,8 @@
         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];
         }
         List<byte[]> data = NfcReadHelper.getInstence(intent, this).getOnesectorData();
@@ -83,6 +93,9 @@
         if (!data.isEmpty()) {
             if (!TextUtils.isEmpty(cardNumber)) {
                 setUserData(cardType, cardNumber, data);
+                if(priceBean!=null){
+                    binding.redRechargeElectric.setText("鐢甸噺鍗曚环锛�"+priceBean.getPrice()+"鍏�/搴�");
+                }
             } else {
                 TipUtil.show(this, "璇诲彇鍗$墖澶辫触锛岃閲嶆柊璐村崱");
             }
@@ -92,28 +105,37 @@
     }
 
 
+    @SuppressLint("ResourceAsColor")
     private void setUserData(String cardType, String cardNumber, List<byte[]> data) {
 
 
         String state = "";
         if (cardType.equalsIgnoreCase(CardCommon.USER_CARD_TYPE_1)) {
             state = "缁堢鍐欏崱";
+            binding.rechargeLL.setVisibility(View.VISIBLE);
+            binding.rechargeRegistBtn.setVisibility(View.VISIBLE);
+            binding.redStatu.setTextColor(R.color.black);
         } else if (cardType.equalsIgnoreCase(CardCommon.USER_CARD_TYPE_2)) {
-            state = "鍒峰崱寮�娉靛悗,褰撳墠鐘舵�佷笉鑳藉厖鍊�";
+            state = "鏈埛鍗″叧娉�,褰撳墠涓嶅彲鍏呭��";
             binding.rechargeLL.setVisibility(View.GONE);
+            binding.rechargeRegistBtn.setVisibility(View.GONE);
+            binding.redStatu.setTextColor(com.dayu.baselibrary.R.color.red);
         } else if (cardType.equalsIgnoreCase(CardCommon.USER_CARD_TYPE_3)) {
             state = "鍙犲姞鍏呭��";
             binding.rechargeLL.setVisibility(View.GONE);
+            binding.rechargeRegistBtn.setVisibility(View.GONE);
         } else {
             TipUtil.show(this, "闈炵敤鎴峰崱锛屼笉鑳藉厖鍊�");
             return;
         }
+
+
         userCard = UserCard.getBean(data);
         List<UserCardBean> userCardBeans = baseDao.userCardDao().findUserName(cardNumber);
         AdminDataBean adminDataBean = baseDao.adminDao().findFirst();
 
 
-        if (adminDataBean.addressCode.equalsIgnoreCase(String.valueOf(userCard.getArerNumber()))) {
+        if (Integer.valueOf(adminDataBean.getAddressCode()) == userCard.getArerNumber()) {
             if (!userCardBeans.isEmpty()) {
                 userCardBean = userCardBeans.get(0);
                 this.userName = userCardBean.getUserName();
@@ -127,10 +149,8 @@
                 userCardBean.setSerial(String.valueOf(userCard.getArerNumber()));
                 this.userName = "鏈煡鐢ㄦ埛";
             }
-
             binding.rechargeReadLL.setVisibility(View.GONE);
             binding.rechargeTextLL.setVisibility(View.VISIBLE);
-            binding.rechargeRegistBtn.setVisibility(View.VISIBLE);
             binding.userName.setText(userName);
             binding.redStatu.setText(state);
             if (userCard != null) {
@@ -144,15 +164,16 @@
                     binding.redRechargeDate.setText("鏈崱鏈�鍚庤喘姘存棩鏈燂細鏃�");
                 }
                 binding.redInitCode.setText(cardNumber);
-                binding.redRechargeNumber.setText("鏈崱鍏呭�兼鏁帮細" + userCard.getRechargeTimes() + "");
-                binding.redTotalWater.setText("鎬荤敤姘撮噺锛�" + userCard.getTotalWater());
-                binding.redTotalPower.setText("鎬荤敤鐢甸噺锛�" + userCard.getTotalElectric());
-                binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + "鍏�");
-                binding.redRemainderWater.setText("鍓╀綑姘撮噺锛�" + userCard.getSurplusWater());
+//                binding.redRechargeNumber.setText("鏈崱鍏呭�兼鏁帮細" + userCard.getRechargeTimes() + " 娆�");
+//                binding.redTotalWater.setText("鎬荤敤姘撮噺锛�" + MornyUtil.changeF2Y(userCard.getTotalWater()) + " 鍚�");
+//                binding.redTotalPower.setText("鎬荤敤鐢甸噺锛�" + MornyUtil.changeF2Y(userCard.getTotalElectric()) + " 搴�");
+                binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + " 鍏�");
+                binding.redRemainderWater.setText("鍓╀綑姘撮噺锛�" + MornyUtil.changeF2Y(userCard.getSurplusWater()) + " 鍚�");
+//                binding.redWaterPrice.setText("姣忕珛鏂圭背姘翠环鏍硷細" + MornyUtil.changeF2Y(adminData.getWaterPrice()) + " 鍏�");
             }
 
         } else {
-            TipUtil.show(this, "涓嶆槸鏈尯鍩熷崱");
+            TipUtil.show(this, "闈炴湰鍖哄煙鍗n涓嶈兘鍏呭�硷紒锛侊紒");
         }
 
 
@@ -162,6 +183,7 @@
     private void initView() {
         try {
             adminData = baseDao.adminDao().findFirst();
+            priceBean = baseDao.electricPriceDao().findFirst();
         } catch (Exception e) {
             e.printStackTrace();
             CrashReport.postCatchedException(e);
@@ -176,6 +198,7 @@
                 intent.putExtra("cardNumber", cardNumber);
                 intent.putExtra("userCard", userCard);
                 intent.putExtra("userCardBean", userCardBean);
+//                intent.putExtra("rechageWater", rechageWater);
                 startActivity(intent);
             } else {
                 TipUtil.show(RechargeActivity.this, "璇疯緭鍏ュ厖鍊奸噾棰濓紙鍏冿級");
@@ -185,7 +208,7 @@
 
 
     //鏍¢獙閲戦
-    public static void setPricePoint(final EditText editText) {
+    public void setPricePoint(final EditText editText) {
         editText.addTextChangedListener(new TextWatcher() {
             @Override
             public void onTextChanged(CharSequence s, int start, int before,
@@ -211,6 +234,13 @@
                         editText.setSelection(1);
                     }
                 }
+                String morny = editText.getText().toString();
+                if (!TextUtils.isEmpty(morny)) {
+                    rechageWater = MornyUtil.intDiv(MornyUtil.changeY2F(editText.getText().toString()), waterPrice);
+//                    binding.redRechargeWater.setText("鍏呭�兼按閲忥細" + rechageWater + " 绔嬫柟绫�(鍚�)");
+                }
+
+
             }
 
             @Override

--
Gitblit v1.8.0