فهرست منبع

用户编辑时自动根据公司名称匹配区域、将用户管理-运营的接口合并进system里

huangxuechao 4 سال پیش
والد
کامیت
96c0796d4f

+ 3 - 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/system/entity/SysUser.java

@@ -221,4 +221,7 @@ public class SysUser implements Serializable {
     private String leaderName;
 
     private String departId;
+
+    @TableField(exist = false)
+    private String departId2;
 }

+ 2 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/service/ISysUserService.java

@@ -292,4 +292,6 @@ public interface ISysUserService extends IService<SysUser> {
 
     /** userId转为username */
     List<String> userIdToUsername(Collection<String> userIdList);
+
+    List<SysUser> queryAdminPageList(SysUser user);
 }

+ 5 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/service/impl/SysUserServiceImpl.java

@@ -650,4 +650,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         List<SysUser> userList = super.list(queryWrapper);
         return userList.stream().map(SysUser::getUsername).collect(Collectors.toList());
     }
+
+    @Override
+    public List<SysUser> queryAdminPageList(SysUser user) {
+        return userMapper.queryPageList(user);
+    }
 }

+ 21 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/service/impl/UserCompanyServiceImpl.java

@@ -58,6 +58,27 @@ public class UserCompanyServiceImpl extends ServiceImpl<UserCompanyMapper, UserC
                     userCompany.setUserName(user.getRealname());
                     userCompany.setCompanyId(depart.getId());
                     userCompany.setCompanyName(depart.getDepartName());
+                    String departName = depart.getDepartName();
+                    if(!Check.isNull(departName)){
+                        if(departName.trim().contains("北京汇创思拓数字科技有限公司")){
+                            userCompany.setNickName("华北、石家庄");
+                        }
+                        if(departName.trim().contains("上海汇创思拓数字科技有限公司")){
+                            userCompany.setNickName("华东");
+                        }
+                        if(departName.trim().contains("北京骄阳")){
+                            userCompany.setNickName("骄阳");
+                        }
+                        if(departName.trim().contains("广州汇创思拓数字科技有限公司")){
+                            userCompany.setNickName("华南");
+                        }
+                        if(departName.trim().contains("北京次元像素")){
+                            userCompany.setNickName("华北,石家庄");
+                        }
+                        if(departName.trim().contains("杭州妙构思数字科技有限公司")){
+                            userCompany.setNickName("杭州");
+                        }
+                    }
                     QueryWrapper<UserCompany> userCompanyQueryWrapper = new QueryWrapper();
                     userCompanyQueryWrapper.eq("user_id", user.getId());
                     userCompanyQueryWrapper.last("limit 1");

+ 111 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -25,6 +25,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
 import org.apache.shiro.SecurityUtils;
@@ -1629,4 +1630,114 @@ public class SysUserController {
         return result;
     }
 
+
+
+    /**
+     * 获取用户列表数据
+     *
+     * @param user
+     * @param pageNo
+     * @param pageSize
+     * @param
+     * @return
+     */
+    @ApiOperation(value="用户管理(运营)", notes="用户管理(运营)")
+    @RequestMapping(value = "/listV2", method = RequestMethod.GET)
+    public Result<Object> queryPageListV2(SysUser user, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                          @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
+        try {
+
+            String userId = user.getId();
+            String roleCode = roleService.getRoleCodeByUserId(userId);
+            if (Check.isNull(roleCode)){
+                return Result.errorMsg("请输入正确的用户id。");
+            }
+            //角色为 管理员并且projectId是空表示:全量查询
+
+            if (!"admin".equals(roleCode)) {
+                List<SysUser> list = sysUserService.queryPageList(user);
+                //1.根据搜索框过滤数据
+                if(!Check.isNull(user.getUsername())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getUsername().contains(user.getUsername())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getRealname())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getRealname().contains(user.getRealname())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getLeaderName())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getLeaderName().contains(user.getLeaderName())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getRoleName())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getRoleName().contains(user.getRoleName())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getDepartId())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        SysUser user2 = it.next();
+                        if(Check.isNull(user2.getDepartId2()) || !user2.getDepartId2().equals(user.getDepartId())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getEmail())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getEmail().contains(user.getEmail())) {
+                            it.remove();
+                        }
+                    }
+                }
+                if(!Check.isNull(user.getStatus())){
+                    Iterator<SysUser> it = list.iterator();
+                    while(it.hasNext()){
+                        if(!it.next().getStatus().equals(user.getStatus())) {
+                            it.remove();
+                        }
+                    }
+                }
+                //2.根据分页页数和条数来筛选数据
+                int total = list.size();
+                int beginIndex = (pageNo - 1) * pageSize + 1;
+                int endIndex = beginIndex + pageSize;
+                if(list.size() > beginIndex){
+                    list = list.subList(beginIndex-1,list.size() > endIndex ? endIndex : list.size());
+                }
+
+                PageInfo<SysUser> pageInfo = new PageInfo<>(list);
+                pageInfo.setTotal(total);
+                return Result.ok(pageInfo);
+            }else{
+                user.setId(null);
+                PageHelper.startPage(pageNo, pageSize);
+                List<SysUser> list = sysUserService.queryAdminPageList(user);
+                PageInfo<SysUser> pageInfo = new PageInfo<>(list);
+                return Result.ok(pageInfo);
+            }
+
+
+        } catch (Exception e) {
+            log.error("获取用户列表数据-分页列表查询异常", e);
+        }
+        return Result.error("查询失败");
+    }
+
 }