Browse Source

后线人员管理增加领导人

haoyu 2 năm trước cách đây
mục cha
commit
e814de6b0c

+ 23 - 6
src/main/java/com/ydtech/modules/admin/controller/SysUserController.java

@@ -277,6 +277,13 @@ public class SysUserController extends BaseController {
         return HttpResult.ok(sysUserService.findByReferrerId(deptId));
     }
 
+    /**
+     * 根据部门id查询该部门的所有人信息
+     */
+    @PostMapping("/findListByDeptId")
+    public HttpResult findListByDeptId(@RequestBody SysUser sysUser) {
+        return HttpResult.ok(sysUserService.findListByDeptId(sysUser));
+    }
 
 
     /**
@@ -347,27 +354,37 @@ public class SysUserController extends BaseController {
         return HttpResult.ok(sysUserService.gainUserPage(pageDto));
     }
 
-    @ApiOperation(value = "分为后线、渠道和个代的用户查询分页")
+    @ApiOperation(value = "渠道和个代的用户查询分页")
     @PostMapping(value = "/findUserList")
     public HttpResult findUserList(@RequestBody PageDto<SysUserDto> pageDto) {
-        if (pageDto.getDto().getDeptId() == null){
+        if (pageDto.getDto().getDeptId() == null) {
             BaseController baseController = new BaseController();
             pageDto.getDto().setDeptId(baseController.getDeptId());
         }
         return HttpResult.ok(sysUserService.findUserList(pageDto));
     }
 
+    @ApiOperation(value = "后线用户查询分页")
+    @PostMapping(value = "/findBackUserList")
+    public HttpResult findBackUserList(@RequestBody PageDto<SysUserDto> pageDto) {
+        if (pageDto.getDto().getDeptId() == null) {
+            BaseController baseController = new BaseController();
+            pageDto.getDto().setDeptId(baseController.getDeptId());
+        }
+        return HttpResult.ok(sysUserService.findBackUserList(pageDto));
+    }
+
     @ApiOperation(value = "渠道数据统计")
     @PostMapping(value = "/quTeamNum")
     public HttpResult quTeamNum(@RequestBody QuTeamNumDto quTeamNumDto) {
 
-        return HttpResult.ok("",sysUserService.quTeamNum(quTeamNumDto));
+        return HttpResult.ok("", sysUserService.quTeamNum(quTeamNumDto));
     }
 
     @ApiOperation(value = "渠道数据统计详情")
     @PostMapping(value = "/quTeamNumDetail")
     public HttpResult quTeamNumDetail(@RequestBody QuTeamNumDto quTeamNumDto) {
-        return HttpResult.ok("",sysUserService.getQuTeamByCompany(quTeamNumDto));
+        return HttpResult.ok("", sysUserService.getQuTeamByCompany(quTeamNumDto));
     }
 
 
@@ -460,7 +477,7 @@ public class SysUserController extends BaseController {
         if (StringUtils.isNotEmpty(sysUser.getDeptId())) {
             SysDept sysDept = sysDeptService.getById(sysUser.getDeptId());
             sysUser.setDeptName(sysDept.getName());
-            sysUser.setIsHasAddUser(sysDept.getManagementSource()!=null?1:0);
+            sysUser.setIsHasAddUser(sysDept.getManagementSource() != null ? 1 : 0);
             sysUser.setManagementSource(sysDept.getManagementSource());
         }
 
@@ -623,7 +640,7 @@ public class SysUserController extends BaseController {
                 if (deptLevel != 6) {
                     throw new SystemException("团队长、代理人、出单员只能归属团队中");
                 }
-            }else if (RoleConstants.R18.getCode().equals(sysUser.getRoleId())) { // 42 门店长
+            } else if (RoleConstants.R18.getCode().equals(sysUser.getRoleId())) { // 42 门店长
                 if (deptLevel != 5) {
                     throw new SystemException("机构管理员只能归属机构中");
                 }

+ 3 - 1
src/main/java/com/ydtech/modules/admin/dao/SysUserMapper.java

@@ -120,12 +120,14 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
             "LEFT JOIN sys_role r ON r.id = sur.role_id WHERE r.id IN ('21') and u.status=1 and u.dept_id=#{deptId}")
     List<SysUserVO> findByReferrerId(@Param("deptId") String deptId);
 
+    List<SysUserVO> findListByDeptId(@Param("sysUser") SysUser sysUser);
 
     Page<SysUserBaseVO> gainUserBaseInfo(@Param("page") Page page,@Param("user") SysUserDto user);
 
-
     IPage<SysUserBaseVO> findUserList(@Param("page") Page page,@Param("user") SysUserDto user);
 
+    IPage<SysUserBaseVO> findBackUserList(@Param("page") Page page,@Param("user") SysUserDto user);
+
     /**
      * 获取用户列表
      * @param page 分页信息

+ 9 - 0
src/main/java/com/ydtech/modules/admin/model/SysUser.java

@@ -106,6 +106,14 @@ public class SysUser extends BaseEntity {
     @TableField(value = "identity")
     private String identity;
 
+    @ApiModelProperty(value = "领导人ID")
+    @TableField(value = "leader_id")
+    private String leaderId;
+
+    @ApiModelProperty(value = "领导人姓名")
+    @TableField(value = "leader_name")
+    private String leaderName;
+
     //------------------
 
 
@@ -157,6 +165,7 @@ public class SysUser extends BaseEntity {
     @Excel(name = "推荐人名称")
     private String referrerName;
 
+
     @TableField(exist = false)
     @ApiModelProperty("机构来源")
     private String managementSource;

+ 4 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserService.java

@@ -69,6 +69,8 @@ public interface SysUserService extends IService<SysUser> {
 
     List<SysUserVO> findByReferrerId(String deptId);
 
+    List<SysUserVO> findListByDeptId(SysUser sysUser);
+
     PageVo<SysUserBaseVO> gainUserPage(PageDto<SysUserDto> pageDto);
 
 
@@ -80,6 +82,8 @@ public interface SysUserService extends IService<SysUser> {
      */
     IPage<SysUserBaseVO> findUserList(PageDto<SysUserDto> pageDto);
 
+    IPage<SysUserBaseVO> findBackUserList(PageDto<SysUserDto> pageDto);
+
     IPage<QuTeamNum> quTeamNum(QuTeamNumDto quTeamNumDto);
 
     IPage<QuTeamNum> getQuTeamByCompany(QuTeamNumDto quTeamNumDto);

+ 23 - 2
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -78,9 +78,25 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         if (sysUserVO.getAgentFlag() == null) {
             throw new SystemException("必传标识未传递");
         }
-        return sysUserMapper.findUserList(page, sysUserVO);
+        IPage<SysUserBaseVO> userList = sysUserMapper.findUserList(page, sysUserVO);
+        return userList;
     }
 
+    @Override
+    public IPage<SysUserBaseVO> findBackUserList(PageDto<SysUserDto> pageDto) {
+        PageVo<SysUserBaseVO> pageVo = new PageVo();
+        Page page = new Page(pageDto.getPageNum(), pageDto.getPageSize());
+        pageVo.setPageNum(pageDto.getPageNum());
+        pageVo.setPageSize(pageDto.getPageSize());
+
+        SysUserDto sysUserVO = JSONObject.parseObject(JSONObject.toJSONString(pageDto.getDto()), SysUserDto.class);
+        if (sysUserVO.getAgentFlag() == null) {
+            throw new SystemException("必传标识未传递");
+        }
+        return sysUserMapper.findBackUserList(page, sysUserVO);
+    }
+
+
     @Override
     public IPage<QuTeamNum> quTeamNum(QuTeamNumDto quTeamNumDto) {
         //判断必传标识是否为空
@@ -182,7 +198,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         List<QuTeamNum> collect1 =
                 quTeamNums.stream().skip((quTeamNumDto.getPageNo() - 1) * quTeamNumDto.getPageSize()).limit(quTeamNumDto.getPageSize()).
-                collect(Collectors.toList());
+                        collect(Collectors.toList());
         IPage<QuTeamNum> page = new Page<>(quTeamNumDto.getPageNo(), quTeamNumDto.getPageSize());
         page.setRecords(collect1);
         page.setTotal(quTeamNums.size());
@@ -354,6 +370,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         return super.baseMapper.findByReferrerId(deptId);
     }
 
+    @Override
+    public List<SysUserVO> findListByDeptId(SysUser sysUser) {
+        return super.baseMapper.findListByDeptId(sysUser);
+    }
+
     @Override
     public PageVo gainUserPage(PageDto pageDto) {
 

+ 70 - 0
src/main/resources/mapper/modules/admin/SysUserMapper.xml

@@ -172,6 +172,60 @@
     </select>
 
 
+    <select id="findBackUserList" resultType="com.ydtech.modules.admin.model.vo.SysUserBaseVO">
+        SELECT
+        su.id as userId,
+        su.name,
+        info.sex,
+        su.mobile,
+        su.status,
+        sd.id as deptId,
+        sd.name as deptName,
+        t4.id as roleId,
+        t4.name as roleName,
+        sd.management_source,
+        psd.id as pDeptId,
+        psd.name as pDeptName
+        FROM
+        sys_user su
+        LEFT JOIN sys_user_info info ON info.id = su.id
+        LEFT JOIN sys_dept sd ON su.dept_id = sd.id
+        left join sys_dept psd on psd.id = sd.parent_id
+        LEFT JOIN sys_user_role t3 ON su.id = t3.user_id
+        LEFT JOIN sys_role t4 ON t3.role_id = t4.id
+        AND sd.del_flag = '0'
+        WHERE
+        1=1
+        <if test='user !=null  '>
+            <if test='user.status !=null and user.status!="" '>
+                and su.status = #{user.status}
+            </if>
+            <if test='user.name !=null and user.name!="" '>
+                and su.name like concat('%',#{user.name},'%')
+            </if>
+            <if test='user.userId !=null and user.userId!="" '>
+                and su.id = #{user.userId}
+            </if>
+            <if test='user.mobile !=null and user.mobile!=""  '>
+                and su.mobile = #{user.mobile}
+            </if>
+            <if test='user.deptId !=null and user.deptId!=""  '>
+                and su.dept_id like concat('%',#{user.deptId},'%')
+            </if>
+            <if test='user.roleId !=null and user.roleId!=""  '>
+                and t3.role_id in (${user.roleId})
+            </if>
+            <if test="user.agentFlag !=null and user.agentFlag != 0 ">
+                and sd.management_source = #{user.agentFlag}
+            </if>
+            <if test="user.agentFlag != null and user.agentFlag == 0">
+                and sd.management_source is null
+            </if>
+            and su.id NOT LIKE '%M%'
+        </if>
+    </select>
+
+
 
     <resultMap id="QuTeamNumMap" type="com.ydtech.modules.admin.model.QuTeamNum">
         <id column="id" javaType="String" jdbcType="VARCHAR"  property="deptId"/>
@@ -315,4 +369,20 @@
             and su.name like concat(#{quTeamNumDto.userName},'%')
         </if>
     </select>
+
+    <select id="findListByDeptId" resultType="com.ydtech.modules.admin.model.vo.SysUserVO">
+        SELECT
+        su.id,
+        su.name
+        FROM
+        sys_user su
+        WHERE
+        su.status = 1
+        <if test="sysUser.deptId != null and sysUser.deptId != ''">
+            and su.dept_id = #{sysUser.deptId}
+        </if>
+        <if test="sysUser.id != null and sysUser.id != ''">
+            and su.id != #{sysUser.id}
+        </if>
+    </select>
 </mapper>