package com.dayu.qiheonlinelibrary.utils; 
 | 
  
 | 
import android.app.Activity; 
 | 
import android.content.Intent; 
 | 
  
 | 
import com.dayu.qiheonlinelibrary.card.CleanCard; 
 | 
import com.dayu.qiheonlinelibrary.card.CleanUserCard; 
 | 
import com.dayu.qiheonlinelibrary.card.ConfigurationPowerCard; 
 | 
import com.dayu.qiheonlinelibrary.card.ConfigureDeviceRegistrationCrad; 
 | 
import com.dayu.qiheonlinelibrary.card.DomainCard; 
 | 
import com.dayu.qiheonlinelibrary.card.ElectricPriceCard; 
 | 
import com.dayu.qiheonlinelibrary.card.ManageCard; 
 | 
import com.dayu.qiheonlinelibrary.card.PassWordCard; 
 | 
import com.dayu.qiheonlinelibrary.card.RegionCard; 
 | 
import com.dayu.qiheonlinelibrary.card.RegisteredCard; 
 | 
import com.dayu.qiheonlinelibrary.dao.QHOnLineAppDatabase; 
 | 
import com.dayu.qiheonlinelibrary.tools.NFCWriteHelper; 
 | 
  
 | 
/** 
 | 
 * author: zuo 
 | 
 * Date: 2024-08-02 
 | 
 * Time: 18:01 
 | 
 * 备注: 
 | 
 */ 
 | 
public class NFCWreatUtils { 
 | 
    Activity activity; 
 | 
    QHOnLineAppDatabase baseDao; 
 | 
    static NFCWreatUtils nfcWreatUtils; 
 | 
  
 | 
    public static NFCWreatUtils getInstance(Activity activity, QHOnLineAppDatabase baseDao) { 
 | 
        if (nfcWreatUtils == null) { 
 | 
            nfcWreatUtils = new NFCWreatUtils(); 
 | 
            nfcWreatUtils.activity = activity; 
 | 
            nfcWreatUtils.baseDao = baseDao; 
 | 
        } 
 | 
        return nfcWreatUtils; 
 | 
    } 
 | 
  
 | 
  
 | 
    public boolean setmanageCard( Intent intent, final ManageCard manageCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(manageCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 制作清零卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param clearOrInitCard 
 | 
     */ 
 | 
    public boolean setClean( Intent intent, CleanCard clearOrInitCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(clearOrInitCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 保存区域表号卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param regionCard 
 | 
     */ 
 | 
    public boolean setRegionCard(Intent intent, RegionCard regionCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(regionCard.toByte(), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 密码卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param passWordCard 
 | 
     */ 
 | 
    public boolean setPassWordCard(Intent intent, PassWordCard passWordCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(passWordCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 用户电量单价 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param electricPriceCard 
 | 
     */ 
 | 
    public boolean setElectricPriceCard(Intent intent, ElectricPriceCard electricPriceCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(electricPriceCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 重新注册设备卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param registeredCard 
 | 
     */ 
 | 
    public boolean setRegisteredCard(Intent intent, RegisteredCard registeredCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(registeredCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 删除全部用户卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param cleanUserCard 
 | 
     */ 
 | 
    public boolean setCleanUserCard(Intent intent, CleanUserCard cleanUserCard) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(cleanUserCard.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 设置域名卡 
 | 
     * 
 | 
     * @param intent 
 | 
     * @param domainCard 
 | 
     */ 
 | 
    public boolean setDomainCard(Intent intent, DomainCard domainCard) { 
 | 
        boolean domainCrdFlag; 
 | 
        try { 
 | 
            domainCrdFlag = NFCWriteHelper.getInstence(intent, activity).writeData(domainCard.getZeroByte(), 1, 0); 
 | 
            if (!domainCrdFlag) { 
 | 
                return false; 
 | 
            } 
 | 
            domainCrdFlag = NFCWriteHelper.getInstence(intent, activity).writeData(domainCard.getOneByte(), 1, 1); 
 | 
            if (!domainCrdFlag) { 
 | 
                return false; 
 | 
            } 
 | 
            domainCrdFlag = NFCWriteHelper.getInstence(intent, activity).writeData(domainCard.getTwoByte(), 1, 2); 
 | 
        } catch (Exception e) { 
 | 
            domainCrdFlag = false; 
 | 
            throw new RuntimeException(e); 
 | 
        } 
 | 
        return false; 
 | 
    } 
 | 
  
 | 
  
 | 
    public boolean setConfigDeviceRegiest(Intent intent, ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad) { 
 | 
        return NFCWriteHelper.getInstence(intent, activity).writeData(configureDeviceRegistrationCrad.toByte(baseDao), 1, 0); 
 | 
    } 
 | 
  
 | 
    public boolean setConfigurationPower(Intent intent, ConfigurationPowerCard configurationPowerCard) { 
 | 
        try { 
 | 
            return NFCWriteHelper.getInstence(intent, activity).writeData(configurationPowerCard.toByte(baseDao), 1, 0); 
 | 
        } catch (Exception e) { 
 | 
            return false; 
 | 
        } 
 | 
    } 
 | 
} 
 |