package com.younike.common.utils.deliver.hide;


import com.younike.common.utils.string.StringUtils;

/**
 * 隐藏数据 工具类
 * 2021-8-7 Another
 */
public class HideUtils {

    /**
     * 获取 隐藏后的姓名和手机号，组合显示
     * @param name 姓名
     * @param phone 手机号
     * @return 隐藏姓名（隐藏手机号）
     */
    public static String getEncryptionNameAndPhone(String name, String phone) {
        String hideName = "";
        String userPhone = "";
        if (StringUtils.isNotBlank(name)) {
            hideName = desensitizedName(name);
        }
        if (StringUtils.isNotBlank(phone)) {
            userPhone = phone.replaceAll("(\\d{3})\\d{6}(\\d{2})", "$1****$2");
        }
        return hideName + "(" + userPhone + ")";
    }

    /**
     * 隐藏姓名第二个字
     * @param fullName 姓名
     * @return
     */
    public static String desensitizedName(String fullName){
        if (StringUtils.isNotBlank(fullName) && fullName.length() > 1) {
            StringBuffer stringBuffer = new StringBuffer(fullName);
            stringBuffer.replace(1, 2, "*");
            return stringBuffer.toString();
        }
        return fullName;
    }

}
