Browse Source

修改:MaskProcessor对返参中有List的情况做适配

master
wangxianzhang 3 years ago
parent
commit
ac5da6a224
  1. 9
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java

9
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/processor/MaskProcessor.java

@ -83,6 +83,9 @@ public class MaskProcessor {
String maskResult = maskString((String) value, fieldsMaskType.get(index));
entry.setValue(maskResult);
}
} else if (value instanceof List) {
// 列表
((List)value).forEach(e -> mask(e));
}
}
}
@ -155,10 +158,12 @@ public class MaskProcessor {
// 2个字以上的,首位字母明文,中间*
// 中文不能用\\w,要用[\u4e00-\u9fa5]
if (length == 2) {
return originString.replaceAll("^([\\u4e00-\\u9fa5]).*$", "$1*");
// return originString.replaceAll("^([\\u4e00-\\u9fa5]).*$", "$1*");
return originString.substring(0).concat("*");
} else {
String maskStr = StrUtil.repeat("*", length - 2);
return originString.replaceAll("^([\\u4e00-\\u9fa5]).*([\\u4e00-\\u9fa5])$", "$1" + maskStr + "$2");
// return originString.replaceAll("^([\\u4e00-\\u9fa5]).*([\\u4e00-\\u9fa5])$", "$1" + maskStr + "$2");
return originString.charAt(0) + maskStr + originString.charAt(originString.length() - 1);
}
}

Loading…
Cancel
Save