From 188f1303e5ede995ab18bbf9bf029a3c5077a4eb Mon Sep 17 00:00:00 2001 From: fengyarnom Date: Wed, 11 Jun 2025 15:46:44 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=AD=A3=E4=B8=80=E4=BA=9Bbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../beidou_ehm/simcard/TrafficCardService.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sec-beidou-ehm/src/main/java/com/imdroid/beidou_ehm/simcard/TrafficCardService.java b/sec-beidou-ehm/src/main/java/com/imdroid/beidou_ehm/simcard/TrafficCardService.java index 59005b3b..cc9bb967 100644 --- a/sec-beidou-ehm/src/main/java/com/imdroid/beidou_ehm/simcard/TrafficCardService.java +++ b/sec-beidou-ehm/src/main/java/com/imdroid/beidou_ehm/simcard/TrafficCardService.java @@ -37,6 +37,10 @@ public class TrafficCardService { // ICCID变更,关闭旧映射,创建新映射 closeExistingMapping(activeMapping); createNewMapping(device.getDeviceid(), currentIccid); + + // 重置MSISDN以强制更新SIM卡号 + // 换卡了必须重置这些内容,否则会显示旧卡号,后续的查询会出现问题 + resetCardMsisdn(currentIccid); return true; } @@ -101,4 +105,12 @@ public class TrafficCardService { private void closeExistingMapping(TrafficDeviceMapping mapping) { mappingMapper.endMapping(mapping.getId()); } + + public void resetCardMsisdn(String iccid) { + TrafficCard card = trafficCardMapper.findByIccid(iccid); + if (card != null && card.getMsisdn() != null && !card.getMsisdn().isEmpty()) { + card.setMsisdn(""); + trafficCardMapper.updateCardInfo(card); + } + } } \ No newline at end of file -- 2.39.5