From a44c47bc7f37245612635866adaddf5c98d41747 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期五, 16 八月 2024 11:03:49 +0800 Subject: [PATCH] 添加补打逻辑 联调修复bug --- qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/ReadCardAcitivy.java | 136 +++++++++++++++++++------------------------- 1 files changed, 59 insertions(+), 77 deletions(-) diff --git a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/ReadCardAcitivy.java b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/ReadCardAcitivy.java index 1bc1a04..fb8b5e7 100644 --- a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/ReadCardAcitivy.java +++ b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/activity/ReadCardAcitivy.java @@ -11,6 +11,7 @@ import com.dayu.baselibrary.utils.MornyUtil; import com.dayu.baselibrary.utils.TipUtil; import com.dayu.baselibrary.view.ConfirmDialog; +import com.dayu.qiheonlinelibrary.bean.CardInfoResult; import com.dayu.qiheonlinelibrary.card.BlackCard; import com.dayu.qiheonlinelibrary.card.ConfigurationPowerCard; import com.dayu.qiheonlinelibrary.card.DomainCard; @@ -22,6 +23,9 @@ import com.dayu.qiheonlinelibrary.databinding.ActivityRedCardQhlBinding; import com.dayu.qiheonlinelibrary.dbBean.AdminDataBean; import com.dayu.qiheonlinelibrary.dbBean.UserCardBean; +import com.dayu.qiheonlinelibrary.net.ApiManager; +import com.dayu.qiheonlinelibrary.net.BaseResponse; +import com.dayu.qiheonlinelibrary.net.subscribers.SubscriberListener; import com.dayu.qiheonlinelibrary.tools.NFCWriteHelper; import com.dayu.qiheonlinelibrary.tools.NfcReadHelper; import com.dayu.qiheonlinelibrary.utils.CardCommon; @@ -29,7 +33,9 @@ import java.util.Calendar; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * Copyright (C), 2023, @@ -48,35 +54,12 @@ AdminDataBean adminData; String cardNumber; String userCardStr; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); redCardBinding = ActivityRedCardQhlBinding.inflate(LayoutInflater.from(this)); setContentView(redCardBinding.getRoot()); - } - - - private void setUserData(String userName, String statu, String cardNumber) { - viweGone(true); - redCardBinding.redName.setText("鐢ㄦ埛濮撳悕锛�" + userName); - redCardBinding.redStatu.setText("鍗$姸鎬侊細" + statu); - if (userCard != null) { - Calendar calendar = userCard.getRechargeDate(); - if (calendar != null) { - int year = calendar.get(Calendar.YEAR); - int month = calendar.get(Calendar.MONTH); // 鏈堜唤浠�0寮�濮嬶紝鎵�浠ラ渶瑕佸姞1 - int day = calendar.get(Calendar.DAY_OF_MONTH); - redCardBinding.redRechargeDate.setText("鏈崱鏈�鍚庤喘姘存棩鏈燂細" + year + "骞�" + month + "鏈�" + day + "鏃�"); - } else { - redCardBinding.redRechargeDate.setText("鏈崱鏈�鍚庤喘姘存棩鏈燂細鏃�"); - } - redCardBinding.redInitCode.setText(cardNumber); - redCardBinding.redRechargeNumber.setText("鏈崱鍏呭�兼鏁帮細" + userCard.getRechargeTimes() + " 娆�"); -// redCardBinding.redTotalWater.setText("鎬荤敤姘撮噺锛�" + MornyUtil.changeF2Y(userCard.getTotalWater()) + " 鍚�"); -// redCardBinding.redTotalPower.setText("鎬荤敤鐢甸噺锛�" + MornyUtil.changeF2Y(userCard.getTotalElectric()) + " 搴�"); - redCardBinding.redRemainderBlance.setText("鍓╀綑閲戦锛�" + MornyUtil.changeF2Y(userCard.getBalance()) + " 鍏�"); -// redCardBinding.redRemainderWater.setText("鍓╀綑姘撮噺锛�" + MornyUtil.changeF2Y(userCard.getSurplusWater()) + " 鍚�"); - } } @@ -102,8 +85,6 @@ String[] cardTypes = cardType.split(","); if (cardTypes != null && cardTypes.length == 2) { cardNumber = cardType.split(",")[0]; - cardNumber = HexUtil.spaceHex(cardNumber); - cardNumber = HexUtil.HighLowHex(cardNumber); cardType = cardType.split(",")[1]; } List<byte[]> data = NfcReadHelper.getInstence(intent, this).getOnesectorData(); @@ -123,13 +104,7 @@ if (!data.isEmpty()) { if (!TextUtils.isEmpty(cardNumber)) { userCard = UserCard.getBean(data); - List<UserCardBean> userCardBeans = baseDao.userCardDao().findUserName(cardNumber); - if (userCardBeans != null && !userCardBeans.isEmpty()) { - UserCardBean userName = userCardBeans.get(0); - setUserData(userName.getUserName(), state, cardNumber); - } else { - setUserData("鏈煡璇㈠埌鐢ㄦ埛鍚�", state, cardNumber); - } + getUserInfoAndCardInfo(cardNumber); } else { } @@ -140,48 +115,11 @@ break; case CardCommon.MANAGE_CRAD://绠$悊鍗� ManageCard manageCard = ManageCard.getBean(data); - viweGone(false); - userCardStr = manageCard.getUserCard().toUpperCase(); - userCardStr = HexUtil.spaceHex(userCardStr); - userCardStr = HexUtil.HighLowHex(userCardStr); - redCardBinding.readCardTypeTV.setText("褰撳墠涓虹鐞嗗崱" + "\n\n" - + "鍘熷鍗″彿锛�" + 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(); + if (manageCard != null) { + viweGone(false); + userCardStr = manageCard.getUserCard().toUpperCase(); + redCardBinding.readCardTypeTV.setText("褰撳墠涓虹鐞嗗崱" + "\n\n" + + "鍘熷鍗″彿锛�" + userCardStr); } break; case CardCommon.CLEAN_CARD_TYPE: @@ -237,8 +175,7 @@ if (!data.isEmpty()) { RegionCard regionCard = RegionCard.getBean(data); StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("鍖哄煙鍦板潃锛�").append(regionCard.getRegion()).append("\n"); - stringBuilder.append("鎺у埗鍣ㄧ紪鍙凤細").append(regionCard.getControllerCodel()).append("\n"); + stringBuilder.append("鍖哄煙鍙凤細").append(regionCard.getArerNumber()); redCardBinding.readCardDataTV.setText(stringBuilder.toString()); } else { TipUtil.show("鍗$墖璇嗗埆閿欒,璇烽噸璇曪紒"); @@ -285,5 +222,50 @@ // or avi.smoothToHide(); } + /** + * 鑾峰彇鍗′俊鎭拰鐢ㄦ埛淇℃伅 + * + * @param iccardCode + */ + public void getUserInfoAndCardInfo(String iccardCode) { + Map<String, Object> data = new HashMap<>(); + //ic鍗′俊鎭痠d + data.put("iccardNum", iccardCode); + ApiManager.getInstance().requestPostLoading(this, "iccard/peasant/getIccardInfoVoByCardCode", CardInfoResult.class, data, new SubscriberListener<BaseResponse<CardInfoResult>>() { + @Override + public void onNext(BaseResponse<CardInfoResult> t) { + String state = ""; + if (t.isSuccess() && t.getData() instanceof CardInfoResult) { + setUserData(t.getData()); + } else { + TipUtil.show(ReadCardAcitivy.this, "浠庤幏鍙栧钩鍙板崱淇℃伅澶辫触锛�"); + } + } + }); + } + + private void setUserData(CardInfoResult cardInfoResult) { + viweGone(true); + if (cardInfoResult != null) { + redCardBinding.redName.setText(cardInfoResult.getPeasantName()); + redCardBinding.redCardCode.setText(cardNumber); + redCardBinding.redUserCode.setText(cardInfoResult.getIccardCode()); + redCardBinding.redBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + "鍏�"); + redCardBinding.redElectric.setText(MornyUtil.changeF2Y(userCard.getSurplusElecticity()) + "搴�"); + redCardBinding.redTotalMorny.setText(cardInfoResult.getTotalRechargeMoney() + "鍏�"); + redCardBinding.redPhone.setText(cardInfoResult.getPeasantPhone()); + redCardBinding.redCodeId.setText(cardInfoResult.getPeasantIdNumber()); + if (cardInfoResult.getIccardStatus() == 0) { + redCardBinding.redStatu.setText("姝e父"); + } else if (cardInfoResult.getIccardStatus() == 1) { + redCardBinding.redStatu.setText("宸叉敞閿�"); + } else { + redCardBinding.redStatu.setText("宸叉寕澶�"); + } + + } + + + } } -- Gitblit v1.8.0