|  |  | 
 |  |  | import com.dayu.baselibrary.tools.HexUtil; | 
 |  |  | import com.dayu.baselibrary.utils.MornyUtil; | 
 |  |  | import com.dayu.baselibrary.utils.TipUtil; | 
 |  |  | import com.dayu.baselibrary.view.ConfirmDialog; | 
 |  |  | import com.dayu.qihealonelibrary.card.BlackCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.ConfigurationPowerCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.DomainCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.ElectricPriceCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.ManageCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.ManagerToUserCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.RegionCard; | 
 |  |  | import com.dayu.qihealonelibrary.card.UserCard; | 
 |  |  | import com.dayu.qihealonelibrary.databinding.ActivityRedCardQhaBinding; | 
 |  |  | import com.dayu.qihealonelibrary.dbBean.AdminDataBean; | 
 |  |  | import com.dayu.qihealonelibrary.dbBean.UserCardBean; | 
 |  |  | import com.dayu.qihealonelibrary.tools.NFCWriteHelper; | 
 |  |  | import com.dayu.qihealonelibrary.tools.NfcReadHelper; | 
 |  |  | import com.dayu.qihealonelibrary.utils.CardCommon; | 
 |  |  | import com.dayu.qihealonelibrary.view.ProgressDialog; | 
 |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     Intent intent; | 
 |  |  |  | 
 |  |  |     ConfirmDialog confirmDialog; | 
 |  |  |     AdminDataBean adminData; | 
 |  |  |     String cardNumber; | 
 |  |  |     String userCardStr; | 
 |  |  |     @Override | 
 |  |  |     protected void onCreate(Bundle savedInstanceState) { | 
 |  |  |         super.onCreate(savedInstanceState); | 
 |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         String cardType = NfcReadHelper.getInstence(intent, this).getCradTypeAndCardNumber(); | 
 |  |  |         String cardNumber = null; | 
 |  |  |  | 
 |  |  |         String[] cardTypes = cardType.split(","); | 
 |  |  |         if (cardTypes != null && cardTypes.length == 2) { | 
 |  |  |             cardNumber = cardType.split(",")[0]; | 
 |  |  | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 break; | 
 |  |  |             case CardCommon.MANAGE_CRAD: | 
 |  |  |             case CardCommon.MANAGE_CRAD://管理卡 | 
 |  |  |                 ManageCard manageCard = ManageCard.getBean(data); | 
 |  |  |                 viweGone(false); | 
 |  |  |                 String hex = manageCard.getUserCard().toUpperCase(); | 
 |  |  |                 hex = HexUtil.spaceHex(hex); | 
 |  |  |                 hex = HexUtil.HighLowHex(hex); | 
 |  |  |                  userCardStr = manageCard.getUserCard().toUpperCase(); | 
 |  |  |                 userCardStr = HexUtil.spaceHex(userCardStr); | 
 |  |  |                 userCardStr = HexUtil.HighLowHex(userCardStr); | 
 |  |  |                 redCardBinding.readCardTypeTV.setText("当前为管理卡" + "\n\n" | 
 |  |  |                         + "原始卡号:" + hex); | 
 |  |  |                         + "原始卡号:" + userCardStr); | 
 |  |  |                 if (manageCard.getType()==(byte) 1){ | 
 |  |  |                     //当01时将1扇区0块原管理卡信息改成用户卡内容 | 
 |  |  |                      confirmDialog=new ConfirmDialog(this, "是否确认补卡,该卡将成为新用户卡?并且不要移动卡片", new View.OnClickListener() { | 
 |  |  |                         @Override | 
 |  |  |                         public void onClick(View v) { | 
 |  |  |                             ProgressDialog.show(ReadCardAcitivy.this); | 
 |  |  |                             try { | 
 |  |  |                                 confirmDialog.dismiss(); | 
 |  |  |  | 
 |  |  |                                 List<UserCardBean> userCardBeans = baseDao.userCardDao().findUserName(userCardStr); | 
 |  |  |                                 if (userCardBeans != null && !userCardBeans.isEmpty()) { | 
 |  |  |                                     UserCardBean userName = userCardBeans.get(0); | 
 |  |  |                                     userName.setCardNumber(cardNumber); | 
 |  |  |                                     baseDao.userCardDao().update(userName); | 
 |  |  |                                 } | 
 |  |  |  | 
 |  |  |                                 NFCWriteHelper nfcWriteHelper=   NFCWriteHelper.getInstence(intent,ReadCardAcitivy.this); | 
 |  |  |                                 adminData = baseDao.adminDao().findFirst(); | 
 |  |  |                                 ManagerToUserCard managerToUserCard=new ManagerToUserCard(); | 
 |  |  |                                 managerToUserCard.setArerNumber(Integer.valueOf(adminData.getSerial())); | 
 |  |  |                                 managerToUserCard.setDeviceNumberl(Integer.valueOf(adminData.getAddressCode())); | 
 |  |  |                                 managerToUserCard.setTotalElectric(manageCard.getTotalElectric()); | 
 |  |  |                                 if (nfcWriteHelper.writeData(managerToUserCard.getZeroBytes(),1,0)){ | 
 |  |  |                                     TipUtil.show(ReadCardAcitivy.this, "补卡成功", () -> ReadCardAcitivy.this.finish()); | 
 |  |  |                                 }else { | 
 |  |  |                                     TipUtil.show(ReadCardAcitivy.this, "补卡失败,请重新刷卡", () -> ReadCardAcitivy.this.finish()); | 
 |  |  |                                 } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |                             } catch (Exception e) { | 
 |  |  |                                e.printStackTrace(); | 
 |  |  |                             } | 
 |  |  |                             stopAnim(); | 
 |  |  |                         } | 
 |  |  |                     }); | 
 |  |  |                     confirmDialog.show(); | 
 |  |  |                 } | 
 |  |  |                 break; | 
 |  |  |             case CardCommon.CLEAN_CARD_TYPE: | 
 |  |  |                 viweGone(false); |