Browse Source

修改添加好友时,不能添加自己;修改生成拼音首字母的方式

Alex 4 năm trước cách đây
mục cha
commit
e6be88f852

+ 3 - 0
ruoyi-app/src/main/java/com/ruoyi/app/controller/MyFriendController.java

@@ -94,6 +94,9 @@ public class MyFriendController extends AppBaseController {
         // 当前登录人
         AppMemberVo user = getLoginUser().getUser();
         friends.setAppUserId(user.getUserId());
+        if (user.getUserId().equals(friends.getFriendsUserId())) {
+            return AjaxResult.error("不能加自己为好友");
+        }
         // 查询是否已经存在
         TbMyFriends item = friendsService.getOne(new LambdaQueryWrapper<TbMyFriends>()
                 .nested(

+ 50 - 0
ruoyi-common/src/main/java/com/ruoyi/common/utils/CodeUtil.java

@@ -0,0 +1,50 @@
+package com.ruoyi.common.utils;
+
+import cn.hutool.extra.pinyin.PinyinUtil;
+
+/**
+ * 字母编码
+ */
+public class CodeUtil {
+
+    /**
+     * 获取字符串的第一个大写字母
+     * @param str
+     * @return
+     */
+    public static String getOneLetter(String str){
+        if (org.apache.commons.lang3.StringUtils.isBlank(str)) {
+            return str;
+        }
+        String code = PinyinUtil.getFirstLetter(str, "").toUpperCase();
+        String first = StringUtils.substring(code,0,1);
+        // 判断是否为字母
+        if (!test(first)) {
+            return "#";
+        }
+        return first;
+    }
+
+    public static String getFirstLetter(String str) {
+        if (org.apache.commons.lang3.StringUtils.isBlank(str)) {
+            return str;
+        }
+        String code = PinyinUtil.getFirstLetter(str, "").toUpperCase();
+        return code;
+    }
+
+    /**
+     * 判断是否为字母
+     * @param s
+     * @return
+     */
+    public static boolean test(String s) {
+        char c = s.charAt(0);
+        int i = (int)c;
+        if((i>=65&&i<=90)||(i>=97&&i<=122)) {
+            return   true;
+        } else {
+            return   false;
+        }
+    }
+}

+ 12 - 4
ruoyi-system/src/main/java/com/ruoyi/app/service/impl/TbAppUserServiceImpl.java

@@ -12,6 +12,7 @@ import com.ruoyi.app.mapper.TbAppUserMapper;
 import com.ruoyi.app.service.ITbAppUserService;
 import com.ruoyi.app.service.ITbFamilyMemberService;
 import com.ruoyi.app.service.ITbMemberMiddleService;
+import com.ruoyi.common.utils.CodeUtil;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
@@ -70,6 +71,13 @@ public class TbAppUserServiceImpl extends ServiceImpl<TbAppUserMapper, TbAppUser
         return null;
     }
 
+    public static void main(String[] args) {
+        String s = CodeUtil.getOneLetter(" ");
+        String s1 = CodeUtil.getOneLetter("大写");
+        String s2 = CodeUtil.getOneLetter("123456");
+        System.out.println(s+"   "+s1+"  "+s2);
+    }
+
     /**
      * 添加/修改会员
      * @param memberVo
@@ -92,14 +100,14 @@ public class TbAppUserServiceImpl extends ServiceImpl<TbAppUserMapper, TbAppUser
         member.setUpdateBy(memberVo.getUserUpdateBy());
         member.setUpdateTime(date);
         if (StringUtils.isNotBlank(memberVo.getNickName())) {
-            String py = PinyinUtil.getFirstLetter(memberVo.getNickName(), "").toUpperCase();
+            String py = CodeUtil.getFirstLetter(memberVo.getNickName());
             appUser.setPyCode(py);
-            appUser.setPyFirst(StringUtils.substring(py,0,1));
+            appUser.setPyFirst(CodeUtil.getOneLetter(memberVo.getNickName()));
         }
         if (StringUtils.isNotBlank(memberVo.getName())) {
-            String py = PinyinUtil.getFirstLetter(memberVo.getName(), "").toUpperCase();
+            String py = CodeUtil.getFirstLetter(memberVo.getName());
             member.setPyCode(py);
-            member.setPyFirst(StringUtils.substring(py,0,1));
+            member.setPyFirst(CodeUtil.getOneLetter(memberVo.getName()));
         }
         //新增用户
         if (memberVo.getUserId() == null) {