String idCard = userInfo.getCard(); if (idCard.equals(verifyUser.getCard())) { // 如果用户输入的身份证与原始身份证相同,则更新身份证信息 userInfo.setCard(verifyUser.getCard()); }这怎么修改,前端传的是脱敏的数据,怎么解决
时间: 2024-04-19 10:24:02 浏览: 77
如果前端传递的是脱敏的身份证数据,而不是完整的身份证号码,你可以将比较逻辑修改如下:
```java
String idCard = userInfo.getCard();
String verifyCard = verifyUser.getCard(); // 前端传递的脱敏身份证数据
// 将脱敏的身份证数据与原始身份证数据进行比较
if (isIdCardMatch(idCard, verifyCard)) {
userInfo.setCard(verifyUser.getCard());
}
```
然后,你可以实现一个名为`isIdCardMatch`的方法,用于比较脱敏的身份证数据和原始身份证数据是否匹配。以下是一个示例的实现:
```java
private boolean isIdCardMatch(String idCard, String verifyCard) {
// 实现你的逻辑判断,比如去除脱敏标记后进行比较
String idCardProcessed = idCard.replaceAll("\\*", ""); // 去除idCard中的脱敏标记
return idCardProcessed.equals(verifyCard);
}
```
在`isIdCardMatch`方法中,你可以根据实际情况实现逻辑判断。示例代码中使用`replaceAll("\\*", "")`将`idCard`中的脱敏标记(`*`)替换为空字符串,然后将去除脱敏标记后的身份证数据与原始身份证数据进行比较。
请根据具体需求和逻辑进行相应的调整和修改。
阅读全文