左晓为主开发手持机充值管理机
zuoxiao
2024-09-27 feb7add1979c830e0d940286242a7c489f2f8f96
qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/card/UserCard.java
@@ -1,12 +1,13 @@
package com.dayu.qiheonlinelibrary.card;
import com.dayu.baselibrary.bean.BaseUserCardCard;
import com.dayu.baselibrary.tools.BcdUtil;
import com.dayu.baselibrary.tools.HexUtil;
import com.dayu.qiheonlinelibrary.utils.CardCommon;
import com.tencent.bugly.crashreport.CrashReport;
import java.io.Serializable;
import java.util.Arrays;
import java.util.Calendar;
import java.util.List;
@@ -16,7 +17,7 @@
 * Date: 2023-11-07 9:37
 * Description: 齐河项目用户卡结构
 */
public class UserCard implements Serializable {
public class UserCard extends BaseUserCardCard implements Serializable {
    public String cardType = CardCommon.USER_CARD_TYPE_1;//写卡标志 A1刷卡开泵前 A8刷卡开泵后  A2叠加充值
    public int arerNumber;//区域号(底位在前高位在后)
@@ -39,6 +40,27 @@
    public Float electricPrice;//电单价,保留三位小数
    /**
     * 写卡完成后校验是否写卡成功
     *
     * @param data
     * @return
     */
    public boolean equlsUserCard(List<byte[]> data) {
        // 参数验证
        if (data == null || data.size() < 3) {
            return false;
        }
        // 定义要比较的字节数组
        byte[][] expectedBytes = {getZeroBytes(), getOneBytes(), getTwoBytes()};
        // 逐个比较字节数组
        for (int i = 0; i < 3; i++) {
            if (!Arrays.equals(data.get(i), expectedBytes[i])) {
                return false;
            }
        }
        return true;
    }
    /**
     * 返回完整的用户编号
@@ -55,7 +77,8 @@
     *
     * @param data
     */
    public static UserCard getBean(List<byte[]> data) {
    @Override
    public UserCard getBean(List<byte[]> data) {
        try {
            UserCard userCard = new UserCard();
            //第0块解析
@@ -385,4 +408,6 @@
    public void setElectricPrice(Float electricPrice) {
        this.electricPrice = electricPrice;
    }
}