admin
2019-07-30 573c491b4a1ba60e12a5678a01c1546c0077c1ee
fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java
@@ -2,9 +2,13 @@
import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.beanutils.PropertyUtils;
import org.yeshi.utils.HttpUtil;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -64,7 +68,16 @@
      return String.format(Constant.systemCommonConfig.getBaseUserRankIconUrl() + "/rank_picture_%s.png", rank + "");
   }
   public static String getInviteShortLink (Long uid) {
      return HttpUtil.getShortLink("http://" + Constant.wxGZConfig.getLoginHost() + "/"
            + Constant.systemCommonConfig.getProjectName() +
            "/client/threeShareNew?uid=" + uid +"&_=" + java.lang.System.currentTimeMillis());
   }
   public static String getInviteCode(Long uid) {
      long num = 1000000000L + uid;
@@ -73,7 +86,7 @@
   }
   private static String convert10To36(Long num) {
      String numbers = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
      String numbers = "YE9VFA3N6KG7JZH4LD5IO2RBS0QTMPU1WC8X";
      BigDecimal numBig = new BigDecimal(num);
      int ge = numBig.divideAndRemainder(new BigDecimal(36))[1].intValue();
@@ -90,4 +103,78 @@
      return result;
   }
   /**
    * 过滤支付宝账号,中间用*代替
    *
    * @param bindingAccountList
    * @return
    */
   public static List<BindingAccount> filterBindingAccount(List<BindingAccount> bindingAccountList) {
      List<BindingAccount> accountList = new ArrayList<>();
      if (bindingAccountList != null)
         for (BindingAccount bindingAccount : bindingAccountList) {
            accountList.add(filterBindingAccount(bindingAccount));
         }
      return accountList;
   }
   public static BindingAccount filterBindingAccount(BindingAccount bindingAccount) {
      BindingAccount dest = new BindingAccount();
      try {
         PropertyUtils.copyProperties(dest, bindingAccount);
         if (!StringUtil.isNullOrEmpty(dest.getAccount()) && !StringUtil.isNullOrEmpty(dest.getName())) {
            String name = "";
            if ((dest.getName() + "").length() > 2)
               for (int i = 0; i < (dest.getName() + "").length(); i++) {
                  if (i == 0)
                     name += dest.getName().charAt(i);
                  else
                     name += "*";
               }
            else
               name = dest.getName().charAt(0) + "*";
            dest.setName(name);
            String account = "";
            if (dest.getAccount().indexOf("@") > -1) {// 邮箱
               int index = dest.getAccount().indexOf("@");
               for (int i = 0; i < dest.getAccount().length(); i++) {
                  if (i < 3 || i >= index)
                     account += dest.getAccount().charAt(i);
                  else
                     account += "*";
               }
            } else if (StringUtil.isMobile(dest.getAccount())) {// 电话
               account = dest.getAccount().substring(0, 3) + "*****"
                     + dest.getAccount().substring(dest.getAccount().length() - 2, dest.getAccount().length());
            } else {// 其他
               if (dest.getAccount().length() >= 6) {
                  for (int i = 0; i < dest.getAccount().length(); i++) {
                     if (i < 3 || i >= dest.getAccount().length() - 2)
                        account += dest.getAccount().charAt(i);
                     else
                        account += "*";
                  }
               } else {
                  for (int i = 0; i < dest.getAccount().length(); i++) {
                     if (i < 1 || i >= dest.getAccount().length() - 1)
                        account += dest.getAccount().charAt(i);
                     else
                        account += "*";
                  }
               }
            }
            dest.setAccount(account);
         }
      } catch (Exception e) {
      }
      return dest;
   }
}