package com.sptg.gateway.util;

import com.sptg.estate.api.entity.User;
import org.apache.commons.lang.StringUtils;

import java.util.List;

public class DesensitizeUtils {

    private static final String SYMBOL = "*";

    public static void desensitize(User user) {
        //名称脱敏
        user.setName(StringUtils.rightPad(StringUtils.left(user.getName(), 1), StringUtils.length(user.getName()), SYMBOL));
        //手机号码脱敏
        if (StringUtils.isNotBlank(user.getTel())){
            user.setTel(StringUtils.left(user.getTel(), 3).concat(StringUtils.removeStart(StringUtils.leftPad(
                    StringUtils.right(user.getTel(), 4), StringUtils.length(user.getTel()), SYMBOL), SYMBOL + SYMBOL + SYMBOL)));
        }

        //身份证脱敏
        if (StringUtils.isNotBlank(user.getIdCard())){
            user.setIdCard(StringUtils.left(user.getIdCard(), 6).concat(StringUtils.removeStart(StringUtils.leftPad(
                    StringUtils.right(user.getIdCard(), 4), StringUtils.length(user.getIdCard()), SYMBOL),
                    SYMBOL + SYMBOL + SYMBOL + SYMBOL + SYMBOL + SYMBOL)));
        }

    }

    public static void desensitizeList(List<User> list) {
        list.forEach(DesensitizeUtils::desensitize);
    }
}
