SensitiveStrategy.java 723 B

1234567891011121314151617181920212223242526272829303132
  1. package com.ruoyi.common.enums;
  2. import cn.hutool.core.util.DesensitizedUtil;
  3. import java.util.function.Function;
  4. /**
  5. * 脱敏策略
  6. * @author Yjoioooo
  7. */
  8. public enum SensitiveStrategy {
  9. /** 身份证脱敏 */
  10. ID_CARD(s -> DesensitizedUtil.idCardNum(s, 3, 4)),
  11. /** 手机号脱敏 */
  12. PHONE(DesensitizedUtil::mobilePhone),
  13. /** 地址脱敏 */
  14. ADDRESS(s -> DesensitizedUtil.address(s, 8));
  15. //可自行添加其他脱敏策略
  16. private final Function<String, String> desensitizer;
  17. SensitiveStrategy(Function<String, String> desensitizer) {
  18. this.desensitizer = desensitizer;
  19. }
  20. public Function<String, String> desensitizer() {
  21. return desensitizer;
  22. }
  23. }