From 42411e4a26461229c6bca6e89ca55e98a80f5a4e Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 30 九月 2021 18:08:17 +0800
Subject: [PATCH] bug修改

---
 fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java |  401 +++++++++++++++++++++++++++++++-------------------------
 1 files changed, 220 insertions(+), 181 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java
index b14b280..e9accba 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/account/UserUtil.java
@@ -1,181 +1,220 @@
-package com.yeshi.fanli.util.account;
-
-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;
-
-public class UserUtil {
-
-	/**
-	 * 澶勭悊杈撳嚭缁欏鎴风鐨勭敤鎴蜂俊鎭�
-	 * 
-	 * @param user
-	 * @return
-	 */
-	public static UserInfo filterForClientUser(UserInfo user) {
-		if (user == null)
-			return user;
-
-		UserInfo newUser = new UserInfo();
-		try {
-			PropertyUtils.copyProperties(newUser, user);
-		} catch (IllegalAccessException e1) {
-			e1.printStackTrace();
-		} catch (InvocationTargetException e1) {
-			e1.printStackTrace();
-		} catch (NoSuchMethodException e1) {
-			e1.printStackTrace();
-		}
-
-		if (!StringUtil.isNullOrEmpty(user.getPhone())) {
-			if (user.getPhone().length() > 5) {
-				String phone = user.getPhone().substring(0, 3);
-				phone += "******";
-				phone += user.getPhone().substring(user.getPhone().length() - 2, user.getPhone().length());
-				newUser.setPhone(phone);
-			}
-		}
-
-		if (user != null) {
-			newUser.setRankIcon(UserUtil.getRankIcon(user.getRank()));
-			newUser.setRankNamePicture(UserUtil.getRankNamePicture(user.getRank()));
-		}
-
-		return newUser;
-	}
-
-	public static String getRankIcon(Integer rank) {
-		if (rank == null)
-			return "";
-		if (rank == 0)
-			return "";
-		else
-			return String.format(Constant.systemCommonConfig.getBaseUserRankIconUrl() + "/rank_icon_%s.png", rank + "");
-	}
-
-	public static String getRankNamePicture(Integer rank) {
-		if (rank == null)
-			rank = 0;
-
-		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() + "/"
-				+ java.lang.System.currentTimeMillis()+
-				"/client/threeShareNew?uid=" + uid);
-	}
-	
-	
-	
-	public static String getInviteCode(Long uid) {
-
-		long num = 1000000000L + uid;
-
-		return convert10To36(num);
-	}
-
-	private static String convert10To36(Long num) {
-		String numbers = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
-		BigDecimal numBig = new BigDecimal(num);
-
-		int ge = numBig.divideAndRemainder(new BigDecimal(36))[1].intValue();
-		int n = 1;
-		String result = "";
-		result += numbers.charAt(ge);
-
-		while (numBig.divideAndRemainder(new BigDecimal(36).pow(n))[0].compareTo(new BigDecimal(0)) > 0) {
-			int w = numBig.divideAndRemainder(new BigDecimal(36).pow(n))[0].divideAndRemainder(new BigDecimal(36))[1]
-					.intValue();
-			result = numbers.charAt(w) + result;
-			n++;
-		}
-		return result;
-	}
-
-	/**
-	 * 杩囨护鏀粯瀹濊处鍙凤紝涓棿鐢�*浠f浛
-	 * 
-	 * @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;
-	}
-
-}
+package com.yeshi.fanli.util.account;
+
+import java.lang.reflect.InvocationTargetException;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+
+import com.google.gson.Gson;
+import com.yeshi.fanli.vo.user.QQUserInfoVO;
+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;
+
+public class UserUtil {
+
+    /**
+     * 澶勭悊杈撳嚭缁欏鎴风鐨勭敤鎴蜂俊鎭�
+     *
+     * @param user
+     * @return
+     */
+    public static UserInfo filterForClientUser(UserInfo user) {
+        if (user == null)
+            return user;
+
+        UserInfo newUser = new UserInfo();
+        try {
+            PropertyUtils.copyProperties(newUser, user);
+        } catch (IllegalAccessException e1) {
+            e1.printStackTrace();
+        } catch (InvocationTargetException e1) {
+            e1.printStackTrace();
+        } catch (NoSuchMethodException e1) {
+            e1.printStackTrace();
+        }
+
+        if (!StringUtil.isNullOrEmpty(user.getPhone())) {
+            if (user.getPhone().length() > 5) {
+                String phone = user.getPhone().substring(0, 3);
+                phone += "******";
+                phone += user.getPhone().substring(user.getPhone().length() - 2, user.getPhone().length());
+                newUser.setPhone(phone);
+            }
+        }
+
+        if (user != null) {
+            newUser.setRankIcon(UserUtil.getRankIcon(user.getRank()));
+            newUser.setRankNamePicture(UserUtil.getRankNamePicture(user.getRank()));
+        }
+
+        return newUser;
+    }
+
+    public static String getRankIcon(Integer rank) {
+        if (rank == null)
+            return "";
+        if (rank == 0)
+            return "";
+        else
+            return String.format(Constant.systemCommonConfig.getBaseUserRankIconUrl() + "/rank_icon_%s.png", rank + "");
+    }
+
+    public static String getRankNamePicture(Integer rank) {
+        if (rank == null)
+            rank = 0;
+
+        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(int base, Long uid) {
+
+        long num = base * 100000000L + uid;
+
+        return convert10To36(num);
+    }
+
+    private static String convert10To36(Long num) {
+        String numbers = "YE9VFA3N6KG7JZH4LD5IO2RBS0QTMPU1WC8X";
+        BigDecimal numBig = new BigDecimal(num);
+
+        int ge = numBig.divideAndRemainder(new BigDecimal(36))[1].intValue();
+        int n = 1;
+        String result = "";
+        result += numbers.charAt(ge);
+
+        while (numBig.divideAndRemainder(new BigDecimal(36).pow(n))[0].compareTo(new BigDecimal(0)) > 0) {
+            int w = numBig.divideAndRemainder(new BigDecimal(36).pow(n))[0].divideAndRemainder(new BigDecimal(36))[1]
+                    .intValue();
+            result = numbers.charAt(w) + result;
+            n++;
+        }
+        return result;
+    }
+
+    /**
+     * 杩囨护鏀粯瀹濊处鍙凤紝涓棿鐢�*浠f浛
+     *
+     * @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 = filterAlipayAccount(dest.getAccount());
+
+                dest.setAccount(account);
+            }
+        } catch (Exception e) {
+        }
+
+        return dest;
+    }
+
+    public static String filterAlipayAccount(String alipayAccount) {
+        String account = "";
+        if (alipayAccount.indexOf("@") > -1) {// 閭
+            int index = alipayAccount.indexOf("@");
+
+            for (int i = 0; i < alipayAccount.length(); i++) {
+                if (i < 3 || i >= index)
+                    account += alipayAccount.charAt(i);
+                else
+                    account += "*";
+            }
+        } else if (StringUtil.isMobile(alipayAccount)) {// 鐢佃瘽
+            account = alipayAccount.substring(0, 3) + "*****"
+                    + alipayAccount.substring(alipayAccount.length() - 2, alipayAccount.length());
+
+        } else {// 鍏朵粬
+            if (alipayAccount.length() >= 6) {
+                for (int i = 0; i < alipayAccount.length(); i++) {
+                    if (i < 3 || i >= alipayAccount.length() - 2)
+                        account += alipayAccount.charAt(i);
+                    else
+                        account += "*";
+                }
+            } else {
+                for (int i = 0; i < alipayAccount.length(); i++) {
+                    if (i < 1 || i >= alipayAccount.length() - 1)
+                        account += alipayAccount.charAt(i);
+                    else
+                        account += "*";
+                }
+            }
+        }
+        return account;
+    }
+
+    public static String filterAlipayName(String name) {
+        String st = "";
+        for (int i = 0; i < name.length(); i++) {
+            if (i == 0)
+                st += name.charAt(i);
+            else
+                st += "*";
+        }
+        return st;
+    }
+
+    public static String filterOrderId(String orderId) {
+        if (orderId == null || orderId.length() <= 6)
+            return orderId;
+        if (orderId.length() <= 16) {// 闅愯棌2浣�
+            return orderId.substring(0, orderId.length() - 2) + "**";
+        } else {// 闅愯棌6浣�
+            return orderId.substring(0, orderId.length() - 6) + "******";
+        }
+    }
+
+    /**
+     * 瑙f瀽QQ鐢ㄦ埛淇℃伅
+     *
+     * @param qqUserBase64
+     * @return
+     */
+    public static QQUserInfoVO parseQQUser(String qqUserBase64) {
+        if (StringUtil.isNullOrEmpty(qqUserBase64))
+            return null;
+        String qqUserStr = StringUtil.getFromBase64(qqUserBase64);
+        if (StringUtil.isNullOrEmpty(qqUserStr))
+            return null;
+        QQUserInfoVO qqUserInfo = new Gson().fromJson(qqUserStr, QQUserInfoVO.class);
+        return qqUserInfo;
+    }
+}

--
Gitblit v1.8.0