Explorar o código

feat:处理黑名单/小黑屋列表电话展示和搜索

caoliqin hai 4 días
pai
achega
77ff83161c

+ 8 - 6
fs-admin/src/main/java/com/fs/his/controller/FsUserController.java

@@ -252,10 +252,11 @@ public class FsUserController extends BaseController
     public R darkRoomList(FsUserPageListParam param) {
 //        startPage();
 //        PageHelper.startPage(param.getPageNum(), param.getPageSize());
-        PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
-        for (FsUserPageListVO fsUserPageListVO : fsUserPageListVOPageInfo.getList()) {
-            fsUserPageListVO.setPhone(ParseUtils.parsePhone(fsUserPageListVO.getPhone()));
+        //判断是否是电话号码
+        if(StringUtils.isFullNumber(param.getKeyword()) && param.getKeyword().trim().length() == 11){
+            param.setKeyword(encryptPhone(param.getKeyword()));
         }
+        PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
         Map<String, Object> map = new HashMap<String, Object>();
         map.put("rows", fsUserPageListVOPageInfo.getList());
         map.put("total", fsUserPageListVOPageInfo.getTotal());
@@ -275,10 +276,11 @@ public class FsUserController extends BaseController
     @GetMapping("/blacklist")
     @ApiOperation("黑名单")
     public R blacklist(FsUserPageListParam param) {
-        PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
-        for (FsUserPageListVO fsUserPageListVO : fsUserPageListVOPageInfo.getList()) {
-            fsUserPageListVO.setPhone(ParseUtils.parsePhone(fsUserPageListVO.getPhone()));
+        //判断是否是电话号码
+        if(StringUtils.isFullNumber(param.getKeyword()) && param.getKeyword().trim().length() == 11){
+            param.setKeyword(encryptPhone(param.getKeyword()));
         }
+        PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
         Map<String, Object> map = new HashMap<String, Object>();
         map.put("rows", fsUserPageListVOPageInfo.getList());
         map.put("total", fsUserPageListVOPageInfo.getTotal());

+ 18 - 0
fs-common/src/main/java/com/fs/common/utils/StringUtils.java

@@ -532,4 +532,22 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils
     {
         return (T) obj;
     }
+
+    /**
+     * 判断字符串是否是纯数字,true-是;false-否
+     * @param str
+     * @return
+     */
+    public static boolean isFullNumber(String str) {
+        if (str == null) {
+            return false;
+        }
+        for (char s : str.toCharArray ()) {
+            if (!Character.isDigit(s)) {
+                return false;
+            }
+        }
+        return true;
+    }
+
 }

+ 7 - 2
fs-company/src/main/java/com/fs/company/controller/store/FsUserController.java

@@ -9,6 +9,7 @@ import com.fs.common.core.domain.ResponseResult;
 import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.enums.BusinessType;
 import com.fs.common.utils.ServletUtils;
+import com.fs.common.utils.StringUtils;
 import com.fs.common.utils.poi.ExcelUtil;
 import com.fs.course.service.IFsUserCompanyUserService;
 import com.fs.framework.security.LoginUser;
@@ -241,8 +242,9 @@ public class FsUserController extends BaseController
     public R darkRoomList(FsUserPageListParam param) {
         LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
         param.setUserId(loginUser.getUser().getUserId());
-//        startPage();
-//        PageHelper.startPage(param.getPageNum(), param.getPageSize());
+        if(StringUtils.isFullNumber(param.getKeyword()) && param.getKeyword().trim().length() == 11){
+            param.setKeyword(encryptPhone(param.getKeyword()));
+        }
         PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
         Map<String, Object> map = new HashMap<String, Object>();
         map.put("rows", fsUserPageListVOPageInfo.getList());
@@ -265,6 +267,9 @@ public class FsUserController extends BaseController
     public R blacklist(FsUserPageListParam param) {
         LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
         param.setUserId(loginUser.getUser().getUserId());
+        if(StringUtils.isFullNumber(param.getKeyword()) && param.getKeyword().trim().length() == 11){
+            param.setKeyword(encryptPhone(param.getKeyword()));
+        }
         PageInfo<FsUserPageListVO> fsUserPageListVOPageInfo = fsUserService.selectFsUserPageList(param);
         Map<String, Object> map = new HashMap<String, Object>();
         map.put("rows", fsUserPageListVOPageInfo.getList());

+ 9 - 0
fs-service/src/main/java/com/fs/his/service/impl/FsUserServiceImpl.java

@@ -558,6 +558,15 @@ public class FsUserServiceImpl implements IFsUserService
             if (StringUtils.isEmpty(fsUserPageListVO.getNickname())){
                 fsUserPageListVO.setNickname("用户暂未授权昵称");
             }
+
+            //解密
+            if(fsUserPageListVO.getPhone() != null && fsUserPageListVO.getPhone() != ""){
+                if (fsUserPageListVO.getPhone().length()>11){
+                    fsUserPageListVO.setPhone(decryptPhoneMk(fsUserPageListVO.getPhone()));
+                }else {
+                    fsUserPageListVO.setPhone(fsUserPageListVO.getPhone().replaceAll("(\\d{3})\\d*(\\d{4})", "$1****$2"));
+                }
+            }
         }
 
         return new PageInfo<>(fsUserPageListVOS);