|  |  |  | 
|---|
|  |  |  | import android.view.LayoutInflater; | 
|---|
|  |  |  | import android.view.View; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dayu.baselibrary.activity.BaseNfcActivity; | 
|---|
|  |  |  | import com.dayu.baselibrary.tools.BcdUtil; | 
|---|
|  |  |  | import com.dayu.baselibrary.tools.HexUtil; | 
|---|
|  |  |  | import com.dayu.baselibrary.tools.nfc.BaseNfcReadHelper; | 
|---|
|  |  |  | import com.dayu.baselibrary.tools.nfc.CardCommonState; | 
|---|
|  |  |  | import com.dayu.baselibrary.utils.CRC8; | 
|---|
|  |  |  | import com.dayu.baselibrary.utils.MornyUtil; | 
|---|
|  |  |  | import com.dayu.baselibrary.utils.TipUtil; | 
|---|
|  |  |  | import com.dayu.henanlibrary.card.ConfigurationPowerCard; | 
|---|
|  |  |  | import com.dayu.henanlibrary.card.ConfigurationPowerCardHN; | 
|---|
|  |  |  | import com.dayu.henanlibrary.card.DomainCard; | 
|---|
|  |  |  | import com.dayu.henanlibrary.card.UserCard; | 
|---|
|  |  |  | import com.dayu.henanlibrary.card.UserCardHN; | 
|---|
|  |  |  | import com.dayu.henanlibrary.databinding.ActivityRedCardHnBinding; | 
|---|
|  |  |  | import com.dayu.henanlibrary.net.SocketCallBack; | 
|---|
|  |  |  | import com.dayu.henanlibrary.net.SocketData; | 
|---|
|  |  |  | 
|---|
|  |  |  | * Date: 2023-11-10 19:52 | 
|---|
|  |  |  | * Description: 读卡界面 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public class ReadCardAcitivy extends BaseNfcActivity { | 
|---|
|  |  |  | public class ReadCardAcitivy extends HNBaseNfcActivity { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | volatile UserCard userCard; | 
|---|
|  |  |  | volatile UserCardHN userCard; | 
|---|
|  |  |  | ActivityRedCardHnBinding redCardBinding; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Intent intent; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void onNewIntent(Intent intent) { | 
|---|
|  |  |  | this.intent = intent; | 
|---|
|  |  |  | public void onNfcBack(Intent intent) { | 
|---|
|  |  |  | ProgressDialog.show(this); | 
|---|
|  |  |  | if (NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())) { | 
|---|
|  |  |  | readAllData(intent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | super.onNewIntent(intent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void readAllData(Intent intent) { | 
|---|
|  |  |  | NfcReadHelper.getInstence(intent, this) | 
|---|
|  |  |  | .getOneSectorData(new NfcReadHelper.NFCCallListback() { | 
|---|
|  |  |  | .getOneSectorData(new BaseNfcReadHelper.NFCCallListback() { | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void callBack(List<byte[]> data) { | 
|---|
|  |  |  | //获取1扇区数据 | 
|---|
|  |  |  | 
|---|
|  |  |  | case CardCommon.USER_CARD_TYPE_1: | 
|---|
|  |  |  | case CardCommon.USER_CARD_TYPE_2: | 
|---|
|  |  |  | case CardCommon.USER_CARD_TYPE_3: | 
|---|
|  |  |  | userCard = UserCard.getBean(data); | 
|---|
|  |  |  | userCard = new UserCardHN().getBean(data); | 
|---|
|  |  |  | selectBalance(userCard.getInitPeasantCode()); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case CardCommon.MANAGE_CRAD: | 
|---|
|  |  |  | 
|---|
|  |  |  | case CardCommon.DOMAIN_CARD_TYPE: | 
|---|
|  |  |  | viweGone(false); | 
|---|
|  |  |  | DomainCard domainXinXiangCard = DomainCard.toBean(data); | 
|---|
|  |  |  | if(domainXinXiangCard.getType()==0){ | 
|---|
|  |  |  | if (domainXinXiangCard.getType() == 0) { | 
|---|
|  |  |  | redCardBinding.readCardTypeTV.setText("当前为新乡域名卡"); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | redCardBinding.readCardTypeTV.setText("当前为鹿邑域名卡"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | StringBuilder builder = new StringBuilder(); | 
|---|
|  |  |  | 
|---|
|  |  |  | case CardCommon.CONFIGURATION_POWER_CARD_TYPE: | 
|---|
|  |  |  | viweGone(false); | 
|---|
|  |  |  | redCardBinding.readCardTypeTV.setText("当前配置水泵功率卡"); | 
|---|
|  |  |  | ConfigurationPowerCard powerCard = ConfigurationPowerCard.toBean(data.get(0)); | 
|---|
|  |  |  | ConfigurationPowerCardHN powerCard = ConfigurationPowerCardHN.toBean(data.get(0)); | 
|---|
|  |  |  | redCardBinding.readCardDataTV.setText(powerCard.getPower()); | 
|---|
|  |  |  | stopAnim(); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void error(int code) { | 
|---|
|  |  |  | switch (code) { | 
|---|
|  |  |  | case CardCommon.ERROR_MOVE: | 
|---|
|  |  |  | case CardCommonState.ERROR_MOVE: | 
|---|
|  |  |  | stopAnim(); | 
|---|
|  |  |  | TipUtil.show("连接中断,请重新贴合卡片"); | 
|---|
|  |  |  | break; | 
|---|