From d1573513f0eada6a915c2163ce6c84451c8c1070 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期四, 13 六月 2024 15:06:05 +0800
Subject: [PATCH] 1.修复河南版本域名卡结构不同问题 2.修复齐河版本最终购水日期的bug
---
henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java | 197 ++++++++++++++----
henanlibrary/src/main/java/com/dayu/henanlibrary/dbBean/DomainBean.java | 4
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java | 20 +
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java | 4
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java | 12
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java | 17 +
henanlibrary/src/main/java/com/dayu/henanlibrary/view/DomaindDialog.java | 108 ++++++++++
henanlibrary/src/main/res/layout/domain_dialog.xml | 104 ++++++++++
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java | 51 ++--
app/build.gradle | 4
baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java | 23 ++
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java | 19 -
12 files changed, 450 insertions(+), 113 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 9e070ee..94d0b6d 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -16,8 +16,8 @@
applicationId "com.dayu.recharge"
minSdk 23
targetSdk 26
- versionCode 22
- versionName "2.2"
+ versionCode 24
+ versionName "2.4"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
// ndk {
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java b/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java
index 19f3ca7..0cde97f 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java
@@ -58,6 +58,29 @@
return ((data & 0xF0) >> 4) * 10 + ((data & 0x0F));
}
+
+ public static byte[] getIntToBCD(int number) {
+ // 鑾峰彇鏁存暟鐨勫瓧绗︿覆琛ㄧず褰㈠紡
+ String numberStr = Integer.toString(number);
+
+ // 鍒涘缓涓�涓瓧鑺傛暟缁勪互瀛樺偍BCD琛ㄧず
+ int len = numberStr.length();
+ byte[] bcd = new byte[(len + 1) / 2];
+
+ int j = 0;
+ // 濡傛灉鏁板瓧鐨勯暱搴︽槸濂囨暟锛岄渶瑕佸湪鍓嶉潰娣诲姞涓�涓�0
+ if (len % 2 != 0) {
+ numberStr = "0" + numberStr; // 鍏堟坊鍔犲墠瀵奸浂
+ len++;
+ }
+
+ // 灏嗘瘡涓�瀵规暟瀛楄浆鎹负涓�涓瓧鑺�
+ for (int i = 0; i < len; i += 2) {
+ bcd[j++] = (byte) (((numberStr.charAt(i) - '0') << 4) | (numberStr.charAt(i + 1) - '0'));
+ }
+
+ return bcd;
+ }
/**
* short10杩涘埗杞�16杩涘埗 浣庝綅鍦ㄥ墠楂樹綅鍦ㄥ悗
*
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
index f098f97..5f11fca 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
@@ -204,9 +204,13 @@
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("domainCard_xinxiang")) {
+ domainCard = (DomainCard) this.getIntent().getSerializableExtra("domainCard_xinxiang");
+ binding.cardData.setText("鍒朵綔璁剧疆鏂颁埂鍩熷悕鍗�");
+ }
+ if (this.getIntent().hasExtra("domainCard_luyi")) {
+ domainCard = (DomainCard) this.getIntent().getSerializableExtra("domainCard_luyi");
+ binding.cardData.setText("鍒朵綔璁剧疆鏂颁埂鍩熷悕鍗�");
}
if (this.getIntent().hasExtra("testCard")) {
testCard = (TestCard) this.getIntent().getSerializableExtra("testCard");
@@ -558,19 +562,19 @@
* 璁剧疆鍩熷悕鍗�
*
* @param intent
- * @param domainCard
+ * @param domainXinXiangCard
*/
- private void setDomainCard(Intent intent, DomainCard domainCard) {
+ private void setDomainCard(Intent intent, DomainCard domainXinXiangCard) {
try {
- domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getZeroByte(), 1, 0);
+ domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainXinXiangCard.getZeroByte(), 1, 0);
if (!domainCrdFlag) {
return;
}
- domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getOneByte(), 1, 1);
+ domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainXinXiangCard.getOneByte(), 1, 1);
if (!domainCrdFlag) {
return;
}
- domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainCard.getTwoByte(), 1, 2);
+ domainCrdFlag = NFCWriteHelper.getInstence(intent, this).writeData(domainXinXiangCard.getTwoByte(), 1, 2);
} catch (Exception e) {
domainCrdFlag = false;
throw new RuntimeException(e);
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java
index b19c539..2fb1d5b 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java
@@ -32,8 +32,8 @@
if (!TextUtils.isEmpty(pswBinding.pswNew.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswOld.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswNewAgin.getText().toString())) {
if ((passWordBean != null
- && (passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(pswBinding.pswOld.getText().toString())))
- || (WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()).equals("8af357996269a1b52b182a839150097d"))&& passWordBean == null)) {
+ && (passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()))))
+ || (WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()).equals("e10adc3949ba59abbe56e057f20f883e") && passWordBean == null)) {
if (passWordBean == null) {
passWordBean = new PassWordBean();
}
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
index ed57dca..ee8176a 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
@@ -131,9 +131,20 @@
break;
case CardCommon.DOMAIN_CARD_TYPE:
viweGone(false);
- redCardBinding.readCardTypeTV.setText("褰撳墠涓鸿缃煙鍚嶅崱");
- DomainCard domainCard = DomainCard.toBean(data);
- redCardBinding.readCardDataTV.setText("搴忓彿锛�" + domainCard.getDomainNumber() + "\n" + "鍩熷悕锛�" + domainCard.getDomainName() + "\n" + "绔彛鍙凤細" + domainCard.getPort());
+ DomainCard domainXinXiangCard = DomainCard.toBean(data);
+ if(domainXinXiangCard.getType()==0){
+ redCardBinding.readCardTypeTV.setText("褰撳墠涓烘柊涔″煙鍚嶅崱");
+ }else {
+ redCardBinding.readCardTypeTV.setText("褰撳墠涓洪箍閭戝煙鍚嶅崱");
+ }
+ StringBuilder builder = new StringBuilder();
+ if (domainXinXiangCard.getType() == 0) {
+ builder.append("搴忓彿锛�" + domainXinXiangCard.getDomainNumber() + "\n");
+ }
+ builder.append("鍩熷悕锛�" + domainXinXiangCard.getDomainName());
+ builder.append("\n" + "绔彛鍙凤細" + domainXinXiangCard.getPort());
+
+ redCardBinding.readCardDataTV.setText(builder.toString());
stopAnim();
break;
case CardCommon.TEST_CARD_TYPE:
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java
index c0d5b04..91198cd 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java
@@ -9,13 +9,12 @@
import com.dayu.henanlibrary.card.CleanUserCard;
import com.dayu.henanlibrary.card.ConfigurationPowerCard;
import com.dayu.henanlibrary.card.ConfigureDeviceRegistrationCrad;
-import com.dayu.henanlibrary.card.DomainCard;
import com.dayu.henanlibrary.card.ManageCard;
import com.dayu.henanlibrary.card.RegisteredCard;
import com.dayu.henanlibrary.card.TestCard;
import com.dayu.henanlibrary.databinding.ActivityAdminHnBinding;
-import com.dayu.henanlibrary.dbBean.DomainBean;
import com.dayu.henanlibrary.dbBean.PowerBean;
+import com.dayu.henanlibrary.view.DomaindDialog;
/**
* Copyright (C), 2023,
@@ -69,20 +68,8 @@
});
// 璁剧疆鍩熷悕鍗�
adminBinding.adminDomain.setOnClickListener(v -> {
- Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
- DomainBean domainBean = baseDao.domainPortDao().findFirst();
- DomainCard domainCard = new DomainCard();
- if (domainBean != null) {
- domainCard.setDomainNumber(domainBean.getDomainNumber());
- domainCard.setDomainName(domainBean.getDomain());
- domainCard.setPort(domainBean.getPort());
- } else {
- domainCard.setDomainNumber("1");
- domainCard.setDomainName("newreceive.hnsjgg.com");
- domainCard.setPort(9999);
- }
- intent.putExtra("domainCard", domainCard);
- startActivity(intent);
+ DomaindDialog domaindDialog=new DomaindDialog(SysActivity.this);
+ domaindDialog.show();
});
adminBinding.adminTest.setOnClickListener(v -> {
Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
index b686627..977ad1b 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
@@ -1,5 +1,7 @@
package com.dayu.henanlibrary.card;
+import android.text.TextUtils;
+
import com.dayu.baselibrary.tools.BcdUtil;
import com.dayu.baselibrary.tools.HexUtil;
import com.dayu.henanlibrary.utils.CardCommon;
@@ -26,6 +28,16 @@
//绔彛鍙蜂负5涓瓧鑺傦紝涓嶈冻5浣嶉珮浣嶈ˉ0銆傜鍙e彿涓庡煙鍚嶄箣闂寸敤鈥�,鈥濋殧寮�銆傜鍙e彿鏈�鍚庝互鈥�#鈥濈粨鏉�
public String domainName;//鍩熷悕
public int port;//绔彛
+
+ public int type;//鍩熷悕鍗℃柊涔1鍚庢湁01==0锛岄箍閭戞病鏈�01==1
+
+ public int getType() {
+ return type;
+ }
+
+ public void setType(int type) {
+ this.type = type;
+ }
public String getDomainName() {
return domainName;
@@ -71,34 +83,80 @@
public static DomainCard toBean(List<byte[]> data) {
try {
- DomainCard domainCard = new DomainCard();
+ DomainCard domainXinXiangCard = new DomainCard();
String domainNumber = BcdUtil.bcdToStr(data.get(0)[1]);
- domainCard.domainNumber = domainNumber;
- int domainLength = HexUtil.get16to10(HexUtil.byteToHex(data.get(0)[2]));
- byte[] domainData = new byte[domainLength + 7];
- int index = 0;
- for (int i = 0; i < 3; i++) {
- int jIndex;
- if (i == 0) {
- jIndex = 3;
- } else {
- jIndex = 0;
- }
- for (int j = jIndex; j < 15; j++) {
- if (index < domainData.length) {
- domainData[index] = data.get(i)[j];
- index++;
+ if ("00".equals(domainNumber)||"01".equals(domainNumber)||"02".equals(domainNumber)){//鍋囧搴忓彿灏忎簬绛変簬2灏辫涓烘槸鏂颁埂鐨�
+ domainXinXiangCard.setType(0);
+ domainXinXiangCard.domainNumber = domainNumber;
+ int domainLength = HexUtil.get16to10(HexUtil.byteToHex(data.get(0)[2]));
+ byte[] domainData = new byte[domainLength + 7];
+ int index = 0;
+ for (int i = 0; i < 3; i++) {
+ int jIndex;
+ if (i == 0) {
+ jIndex = 3;
+ } else {
+ jIndex = 0;
}
+ for (int j = jIndex; j < 15; j++) {
+ if (index < domainData.length) {
+ domainData[index] = data.get(i)[j];
+ index++;
+ }
+ }
+ }
+ String domainStr = new String(domainData, StandardCharsets.US_ASCII);
+ if (!TextUtils.isEmpty(domainStr)){
+ try {
+ String[] parts = domainStr.split("#")[0].split(",");
+ if (parts.length >= 2) {
+ String domainName = parts[0];
+ String port = parts[1].replace("#", "");
+ domainXinXiangCard.setDomainName(domainName);
+ domainXinXiangCard.setPort(Integer.valueOf(port));
+ }
+ } catch (NumberFormatException e) {
+ e.printStackTrace();
+ }
+ }
+ }else {
+ domainXinXiangCard.setType(1);
+ int domainLength = HexUtil.get16to10(HexUtil.byteToHex(data.get(0)[1]));
+ byte[] domainData = new byte[domainLength + 7];
+ int index = 0;
+ for (int i = 0; i < 3; i++) {
+ int jIndex;
+ if (i == 0) {
+ jIndex = 2;
+ } else {
+ jIndex = 0;
+ }
+ for (int j = jIndex; j < 15; j++) {
+ if (index < domainData.length) {
+ domainData[index] = data.get(i)[j];
+ index++;
+ }
+ }
+ }
+ String domainStr = new String(domainData, StandardCharsets.US_ASCII);
+
+ if (!TextUtils.isEmpty(domainStr)){
+ try {
+ String[] parts = domainStr.split("#")[0].split(",");
+ if (parts.length >= 2) {
+ String domainName = parts[0];
+ String port = parts[1].replace("#", "");
+ domainXinXiangCard.setDomainName(domainName);
+ domainXinXiangCard.setPort(Integer.valueOf(port));
+ }
+ } catch (NumberFormatException e) {
+ e.printStackTrace();
+ }
}
}
- String domainStr = new String(domainData, StandardCharsets.US_ASCII);
- String domainName = domainStr.split(",")[0];
- String port = domainStr.split(",")[1].replace("#", "");
- domainCard.setDomainName(domainName);
- domainCard.setPort(Integer.valueOf(port));
- return domainCard;
+ return domainXinXiangCard;
} catch (Exception e) {
e.printStackTrace();
CrashReport.postCatchedException(e);
@@ -114,24 +172,45 @@
public byte[] toByte() {
byte[] data = new byte[16];
data[0] = HexUtil.hexToByte(cardType);
- if (domainNumber != null) {
- byte[] domainNumbers = BcdUtil.strToBcd(domainNumber);
- data[1] = domainNumbers[0];
- }
- domainLength = domainName.length();
- data[2] = HexUtil.hexToByte(HexUtil.get10to16(domainLength));
- String portStr = String.valueOf(port);
- int lenght = portStr.length();
- for (int i = 0; i < 5 - lenght; i++) {
- portStr = "0" + portStr;
- }
- String ascii = IDN.toASCII(domainName + "," + portStr + "#");
- asciiByte = ascii.getBytes();
- if (asciiByte.length < 12) {
- System.arraycopy(asciiByte, 0, data, 3, asciiByte.length);
+// 鍩熷悕鍗℃柊涔1鍚庢湁01==0锛岄箍閭戞病鏈�01==1
+ if (type == 0) {
+ if (domainNumber != null) {
+ byte[] domainNumbers = BcdUtil.strToBcd(domainNumber);
+ data[1] = domainNumbers[0];
+ }
+ domainLength = domainName.length();
+ data[2] = HexUtil.hexToByte(HexUtil.get10to16(domainLength));
+ String portStr = String.valueOf(port);
+ int lenght = portStr.length();
+ for (int i = 0; i < 5 - lenght; i++) {
+ portStr = "0" + portStr;
+ }
+ String ascii = IDN.toASCII(domainName + "," + portStr + "#");
+ asciiByte = ascii.getBytes();
+ if (asciiByte.length < 12) {
+ System.arraycopy(asciiByte, 0, data, 3, asciiByte.length);
+ } else {
+ System.arraycopy(asciiByte, 0, data, 3, 12);
+ }
} else {
- System.arraycopy(asciiByte, 0, data, 3, 12);
+ data[1] = HexUtil.hexToByte(HexUtil.get10to16(domainLength));
+ String portStr = String.valueOf(port);
+ int lenght = portStr.length();
+ for (int i = 0; i < 5 - lenght; i++) {
+ portStr = "0" + portStr;
+ }
+ String ascii = IDN.toASCII(domainName + "," + portStr + "#");
+ asciiByte = ascii.getBytes();
+ if (asciiByte.length < 13) {
+ System.arraycopy(asciiByte, 0, data, 1, asciiByte.length);
+ } else {
+ System.arraycopy(asciiByte, 0, data, 1, 13);
+ }
+
+
+
}
+
data[15] = getByteSum(data);
return data;
}
@@ -145,13 +224,24 @@
public byte[] toBytes() {
byte[] data = new byte[16];
- if (asciiByte.length > 12) {
- if (asciiByte.length - 12 < 15) {
- System.arraycopy(asciiByte, 12, data, 0, asciiByte.length - 12);
- } else {
- System.arraycopy(asciiByte, 12, data, 0, 15);
+ if (type==0){
+ if (asciiByte.length > 12) {
+ if (asciiByte.length - 12 < 15) {
+ System.arraycopy(asciiByte, 12, data, 0, asciiByte.length - 12);
+ } else {
+ System.arraycopy(asciiByte, 12, data, 0, 15);
+ }
+ }
+ }else {
+ if (asciiByte.length > 13) {
+ if (asciiByte.length - 13 < 15) {
+ System.arraycopy(asciiByte, 13, data, 0, asciiByte.length - 12);
+ } else {
+ System.arraycopy(asciiByte, 13, data, 0, 15);
+ }
}
}
+
data[15] = getByteSum(data);
return data;
}
@@ -165,13 +255,24 @@
public class Two extends BaseCard {
public byte[] toBytes() {
byte[] data = new byte[16];
- if (asciiByte.length > (12 + 15)) {
- if (asciiByte.length - (12 + 15) < 15) {
- System.arraycopy(asciiByte, 12, data, 0, asciiByte.length - (12 + 15));
- } else {
- System.arraycopy(asciiByte, 12, data, 0, 15);
+ if (type==0){
+ if (asciiByte.length > (12 + 15)) {
+ if (asciiByte.length - (12 + 15) < 15) {
+ System.arraycopy(asciiByte, 12 + 15, data, 0, asciiByte.length - (12 + 15));
+ } else {
+ System.arraycopy(asciiByte, 12 + 15, data, 0, 15);
+ }
+ }
+ }else {
+ if (asciiByte.length > (13 + 15)) {
+ if (asciiByte.length - (13 + 15) < 15) {
+ System.arraycopy(asciiByte, 13 + 15, data, 0, asciiByte.length - (12 + 15));
+ } else {
+ System.arraycopy(asciiByte, 13 + 15, data, 0, 15);
+ }
}
}
+
data[15] = getByteSum(data);
return data;
}
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/dbBean/DomainBean.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/dbBean/DomainBean.java
index dc9073b..85829b9 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/dbBean/DomainBean.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/dbBean/DomainBean.java
@@ -3,6 +3,8 @@
import androidx.room.Entity;
import androidx.room.PrimaryKey;
+import java.io.Serializable;
+
/**
* Created by Android Studio.
* author: zuo
@@ -11,7 +13,7 @@
* 澶囨敞锛� 鍩熷悕鍜岀鍙e彿鐩稿叧
*/
@Entity
-public class DomainBean {
+public class DomainBean implements Serializable {
@PrimaryKey(autoGenerate = true)
public long id;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/view/DomaindDialog.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/view/DomaindDialog.java
new file mode 100644
index 0000000..6e33bb1
--- /dev/null
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/view/DomaindDialog.java
@@ -0,0 +1,108 @@
+package com.dayu.henanlibrary.view;
+
+import static android.view.Gravity.CENTER;
+
+import android.app.Dialog;
+import android.content.Intent;
+import android.view.ViewGroup;
+import android.view.WindowManager;
+import android.widget.RadioGroup;
+import android.widget.TextView;
+
+import com.dayu.baselibrary.utils.ToastUtil;
+import com.dayu.henanlibrary.R;
+import com.dayu.henanlibrary.activity.HNBaseActivity;
+import com.dayu.henanlibrary.activity.NFCWreatActivity;
+import com.dayu.henanlibrary.card.DomainCard;
+import com.dayu.henanlibrary.dbBean.DomainBean;
+
+/**
+ * author: zuo
+ * Date: 2024-06-07
+ * Time: 10:44
+ * 澶囨敞锛氶�夋嫨鍩熷悕鍗$被鍨� 鍩熷悕鍗℃柊涔1鍚庢湁01锛岄箍閭戞病鏈�01锛屽崱缁撴瀯涓嶅悓
+ */
+public class DomaindDialog extends Dialog {
+
+ HNBaseActivity mContext;
+
+ boolean ischose = false;
+
+
+ int type;
+
+
+ public DomaindDialog(HNBaseActivity context) {
+ super(context, com.dayu.baselibrary.R.style.ws_pay_showSelfDialog);
+ mContext = context;
+ initView();
+ }
+
+ private void initView() {
+ getWindow().setGravity(CENTER);
+ setContentView(R.layout.domain_dialog);
+ setCanceledOnTouchOutside(false);
+ RadioGroup radioGroup = findViewById(R.id.radioLibrary);
+
+ radioGroup.setOnCheckedChangeListener((group, checkedId) -> {
+ ischose = true;
+ // 褰撻�変腑鐨凴adioButton鍙戠敓鍙樺寲鏃惰皟鐢�
+ if (checkedId == R.id.xinxiang) {
+ type = 0;
+ } else if (checkedId == R.id.luyi) {// 澶勭悊閫変腑Option 2鐨勯�昏緫
+ type = 1;
+ }
+ });
+ TextView okBtn = findViewById(R.id.ok);
+ okBtn.setOnClickListener(v -> {
+ if (ischose) {
+ Intent intent = new Intent(mContext, NFCWreatActivity.class);
+ DomainBean domainBean = mContext.baseDao.domainPortDao().findFirst();
+ DomainCard domainCard = new DomainCard();
+ if (domainBean != null) {
+ domainCard.setDomainNumber(domainBean.getDomainNumber());
+ domainCard.setDomainName(domainBean.getDomain());
+ domainCard.setPort(domainBean.getPort());
+ } else {
+ ToastUtil.showLong("褰撳墠鏈缃煙鍚嶄俊鎭紝宸蹭娇鐢ㄦ渤鍗楃渷骞冲彴榛樿鍩熷悕涓庣鍙e彿");
+ domainCard.setDomainNumber("1");
+ domainCard.setDomainName("newreceive.hnsjgg.com");
+ domainCard.setPort(9999);
+ }
+ //鍩熷悕鍗℃柊涔1鍚庢湁01锛岄箍閭戞病鏈�01
+ if (type == 0) {
+ domainCard.setType(0);
+ intent.putExtra("domainCard_xinxiang", domainCard);
+ } else {
+ domainCard.setType(1);
+ intent.putExtra("domainCard_luyi", domainCard);
+ }
+
+ mContext.startActivity(intent);
+ DomaindDialog.this.dismiss();
+ }
+ });
+
+
+ }
+
+ @Override
+ public void show() {
+
+ super.show();
+ /**
+ * 璁剧疆瀹藉害鍏ㄥ睆锛岃璁剧疆鍦╯how鐨勫悗闈�
+ */
+ WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
+ layoutParams.gravity = CENTER;
+ layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
+ layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT;
+ getWindow().getDecorView().setPadding(0, 0, 0, 0);
+ getWindow().setAttributes(layoutParams);
+ }
+
+
+ public interface libraryBack {
+ void listener(int type);
+ }
+}
\ No newline at end of file
diff --git a/henanlibrary/src/main/res/layout/domain_dialog.xml b/henanlibrary/src/main/res/layout/domain_dialog.xml
new file mode 100644
index 0000000..e478dd7
--- /dev/null
+++ b/henanlibrary/src/main/res/layout/domain_dialog.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="#40000000"
+ android:gravity="center"
+ android:orientation="vertical">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_margin="@dimen/dialog_bg_margin"
+ android:background="@drawable/base_bg_dialog_top_stroke"
+ android:gravity="center"
+ android:orientation="vertical">
+
+ <TextView
+ android:layout_width="300dp"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="20dp"
+ android:gravity="center"
+ android:text="閫夋嫨鍩熷悕鍗$被鍨�"
+ android:textColor="@color/dialog_btn"
+ android:textSize="23sp"
+ android:textStyle="bold" />
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="2px"
+ android:layout_marginTop="20dp"
+ android:background="@color/line_bg" />
+
+ <RadioGroup
+ android:id="@+id/radioLibrary"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content">
+
+
+ <RadioButton
+ android:id="@+id/xinxiang"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="50dp"
+ android:layout_marginTop="25dp"
+ android:layout_marginRight="50dp"
+ android:background="@drawable/radio_select"
+ android:button="@null"
+ android:gravity="center"
+ android:padding="6dp"
+ android:text="鏂颁埂鍩熷悕鍗�"
+ android:textColor="@drawable/radio_text_select"
+ android:textSize="20sp" />
+
+ <RadioButton
+ android:id="@+id/luyi"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="50dp"
+ android:layout_marginTop="25dp"
+ android:layout_marginRight="50dp"
+ android:background="@drawable/radio_select"
+ android:button="@null"
+ android:gravity="center"
+ android:padding="6dp"
+ android:text="楣块倯鍩熷悕鍗�"
+ android:textColor="@drawable/radio_text_select"
+ android:textSize="20sp" />
+ </RadioGroup>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="2px"
+ android:layout_marginTop="35dp"
+ android:background="@color/line_bg" />
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_horizontal"
+ android:padding="5dp"
+ android:orientation="horizontal">
+
+ <TextView
+ android:id="@+id/ok"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/dialog_btn_height"
+ android:background="@drawable/textview_select_bg"
+ android:gravity="center"
+ android:paddingLeft="15dp"
+ android:paddingTop="5dp"
+ android:paddingRight="15dp"
+ android:paddingBottom="5dp"
+ android:text="纭� 璁�"
+ android:textColor="@color/dialog_btn"
+ android:textSize="20sp" />
+
+
+ </LinearLayout>
+
+
+ </LinearLayout>
+
+</LinearLayout>
+
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java
index 35f4e50..fce5729 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java
@@ -28,40 +28,37 @@
super.onCreate(savedInstanceState);
pswBinding = ActivityPswQhaBinding.inflate(LayoutInflater.from(this));
setContentView(pswBinding.getRoot());
- pswBinding.waterOk.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- try {
- passWordBean = baseBaseDao.loginPsDao().findFirst();
+ pswBinding.waterOk.setOnClickListener(v -> {
+ try {
+ passWordBean = baseBaseDao.loginPsDao().findFirst();
- if (!TextUtils.isEmpty(pswBinding.pswNew.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswOld.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswNewAgin.getText().toString())) {
- if ((passWordBean != null
- && (passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(pswBinding.pswOld.getText().toString())))
- || (WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()).equals("8af357996269a1b52b182a839150097d"))&& passWordBean == null)) {
- if (passWordBean == null) {
- passWordBean = new PassWordBean();
- }
- if (pswBinding.pswNew.getText().toString().equals(pswBinding.pswNewAgin.getText().toString())) {
- passWordBean.setPassWord(pswBinding.pswNewAgin.getText().toString());
- baseBaseDao.loginPsDao().insert(passWordBean);
- TipUtil.show(PassWordActivity.this, "瀵嗙爜淇敼瀹屾垚", () -> {
- PassWordActivity.this.finish();
- });
+ if (!TextUtils.isEmpty(pswBinding.pswNew.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswOld.getText().toString()) && !TextUtils.isEmpty(pswBinding.pswNewAgin.getText().toString())) {
+ if ((passWordBean != null
+ && (passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()))))
+ || (WSMD5.getMD5Str(pswBinding.pswOld.getText().toString()).equals("e10adc3949ba59abbe56e057f20f883e") && passWordBean == null)) {
+ if (passWordBean == null) {
+ passWordBean = new PassWordBean();
+ }
+ if (pswBinding.pswNew.getText().toString().equals(pswBinding.pswNewAgin.getText().toString())) {
+ passWordBean.setPassWord(pswBinding.pswNewAgin.getText().toString());
+ baseBaseDao.loginPsDao().insert(passWordBean);
+ TipUtil.show(PassWordActivity.this, "瀵嗙爜淇敼瀹屾垚", () -> {
+ PassWordActivity.this.finish();
+ });
- } else {
- TipUtil.show(PassWordActivity.this, "涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�");
- }
} else {
- TipUtil.show(PassWordActivity.this, "鏃у瘑鐮佽緭鍏ラ敊璇�");
+ TipUtil.show(PassWordActivity.this, "涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�");
}
} else {
- TipUtil.show(PassWordActivity.this, "璇疯緭瀹屽唴瀹�");
+ TipUtil.show(PassWordActivity.this, "鏃у瘑鐮佽緭鍏ラ敊璇�");
}
-
-
- } catch (Exception e) {
- e.printStackTrace();
+ } else {
+ TipUtil.show(PassWordActivity.this, "璇疯緭瀹屽唴瀹�");
}
+
+
+ } catch (Exception e) {
+ e.printStackTrace();
}
});
}
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
index a38497e..7ceea50 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
@@ -175,9 +175,9 @@
int year = (rechargeDate.get(Calendar.YEAR)) % 1000;
int month = rechargeDate.get(Calendar.MONTH) + 1; // 鏈堜唤浠�0寮�濮嬶紝鎵�浠ラ渶瑕佸姞1
int day = rechargeDate.get(Calendar.DAY_OF_MONTH);
- byte bcdYear = (byte) ((year / 10) << 4 | ((year % 10) / 100));
- byte bcdMonth = (byte) ((month / 10) << 4 | (month % 10));
- byte bcdDay = (byte) ((day / 10) << 4 | (day % 10));
+ byte bcdYear = HexUtil.getIntToBCD(year)[0];
+ byte bcdMonth = HexUtil.getIntToBCD(month)[0];
+ byte bcdDay = HexUtil.getIntToBCD(day)[0];
data[12] = bcdYear;
data[13] = bcdMonth;
data[14] = bcdDay;
@@ -221,9 +221,9 @@
int year = (rechargeDate.get(Calendar.YEAR)) % 1000;
int month = rechargeDate.get(Calendar.MONTH) + 1; // 鏈堜唤浠�0寮�濮嬶紝鎵�浠ラ渶瑕佸姞1
int day = rechargeDate.get(Calendar.DAY_OF_MONTH);
- byte bcdYear = (byte) ((year / 10) << 4 | ((year % 10) / 100));
- byte bcdMonth = (byte) ((month / 10) << 4 | (month % 10));
- byte bcdDay = (byte) ((day / 10) << 4 | (day % 10));
+ byte bcdYear = HexUtil.getIntToBCD(year)[0];
+ byte bcdMonth = HexUtil.getIntToBCD(month)[0];
+ byte bcdDay = HexUtil.getIntToBCD(day)[0];
data[12] = bcdYear;
data[13] = bcdMonth;
data[14] = bcdDay;
--
Gitblit v1.8.0