From 1b4835badb3ca32402b6544c668a700c5334d90f Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期二, 26 三月 2024 16:48:31 +0800 Subject: [PATCH] 添加中安身份证识别模块 把IP设置移动到参数设置界面 --- app/src/main/java/com/dayu/recharge/card/ConfigurationPowerCard.java | 64 +++++++++++++++++++++++++------ 1 files changed, 51 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/dayu/recharge/card/ConfigurationPowerCard.java b/app/src/main/java/com/dayu/recharge/card/ConfigurationPowerCard.java index f378897..66b1ccd 100644 --- a/app/src/main/java/com/dayu/recharge/card/ConfigurationPowerCard.java +++ b/app/src/main/java/com/dayu/recharge/card/ConfigurationPowerCard.java @@ -1,38 +1,76 @@ package com.dayu.recharge.card; +import com.dayu.recharge.dao.AppDatabase; import com.dayu.recharge.tools.HexUtil; +import com.dayu.recharge.utils.MyCommon; +import com.tencent.bugly.crashreport.CrashReport; + +import java.io.Serializable; /** * Copyright (C), 2023, * Author: zuo * Date: 2023-11-08 13:26 - * Description: 閰嶇疆璁惧娉ㄥ唽淇℃伅鍗★細 + * Description: 閰嶇疆姘存车鍔熺巼鍗★細 * <p> * 涓烘柟渚跨幇鍦烘洿鎹㈣澶囨椂閲嶆柊娉ㄥ唽鐨勯棶棰橈紝閰嶇疆璁惧淇℃伅鍗★紝棣栧厛鍒峰崱锛屾妸鍘熻澶囩殑娉ㄥ唽鍙峰拰ID鍙疯鍒板崱鍐咃紝 * 鍚屾椂鍗$姸鎬佸垯00淇敼涓篎F锛屽啀鏂拌澶囦笂鍒锋鍗℃椂锛屾敞鍐屽彿鍜孖D鍙疯嚜鍔ㄥ啓鍒版帶鍒跺櫒鍐咃紝鍙互鐩存帴鍒峰崱浣跨敤 */ -public class ConfigurationPowerCard { +public class ConfigurationPowerCard extends BaseCard implements Serializable { - public String cardType = "BD";//鍗$被鍨� - public String cardData = "A0B1C289";//鏍囪瘑鐮� + public String cardType = MyCommon.CONFIGURATION_POWER_CARD_TYPE;//鍗$被鍨� + + public String getCardData() { + return cardData; + } public String power;//鍔熺巼 - public class Zero extends BaseCard { - public void toByte() { + public String getPower() { + return power; + } + + public void setPower(String power) { + this.power = power; + } + + + public static ConfigurationPowerCard toBean(byte[] data) { + try { + ConfigurationPowerCard powerCard = new ConfigurationPowerCard(); + int intPower = HexUtil.get16to10(HexUtil.byteToHex(data[5])); + powerCard.setPower(String.valueOf(intPower)); + return powerCard; + } catch (Exception e) { + e.printStackTrace(); + CrashReport.postCatchedException(e); + return null; + } + } + + public byte[] toByte(AppDatabase appDatabase) { + setCardData(appDatabase,cardType); + Zero zero = new Zero(); + return zero.toByte(); + } + + public class Zero { + public byte[] toByte() { byte[] data = new byte[16]; data[0] = HexUtil.hexToByte(cardType); byte[] cardDatas = HexUtil.hexToByteArray(cardData); - for (int i = 0; i < 4; i++) { - data[i + 1] = cardDatas[i]; + System.arraycopy(cardDatas, 0, data, 1, cardDatas.length); + if (power != null) { + float floatPower = Float.parseFloat(power); + int intPower = (int) Math.ceil(floatPower); // 灏嗘诞鐐规暟鍚戜笂鍙栨暣骞惰浆鎹负鏁存暟 + String hexPower = HexUtil.get10to16(intPower); + byte bytePower = HexUtil.hexToByte(hexPower); + data[5] = bytePower; } - float floatPower = Float.parseFloat(power); - int intPower = (int) Math.ceil(floatPower); // 灏嗘诞鐐规暟鍚戜笂鍙栨暣骞惰浆鎹负鏁存暟 - String hexPower = HexUtil.get10to16(intPower); - byte bytePower = HexUtil.hexToByte(hexPower); - data[5] = bytePower; + data[15] = getByteSum(data); + return data; } } -- Gitblit v1.8.0