Administrator
2021-07-30 4c359ddf1ee2a9594ff80ee40fa4543be08b8836
新增app查询工作汇报接收人接口
6 files modified
1 files added
118 ■■■■■ changed files
src/main/java/org/springblade/modules/system/controller/DeptController.java 11 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml 56 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/IDeptService.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java 24 ●●●●● patch | view | raw | blame | history
src/main/resources/application.yml 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/controller/DeptController.java
@@ -135,6 +135,17 @@
        return R.data(tree);
    }
    /**
     * 懒加载获取部门树形结构(包含用户数据)app
     * @param type 1:保安对保安  2:保安向民警   3:民警向民警
     * @return
     */
    @GetMapping("/lazy-tree-user-app")
    public List<DeptVO> lazyTreeUser(Integer type) {
        return deptService.lazyTreeUserApp(type);
    }
    /**
     * 懒加载获取部门树形结构,不包含顶级管理员公安局
     */
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
@@ -100,4 +100,12 @@
     * 懒加载获取部门树形结构(按分类查询)
     */
    List<DeptVO> lazyTreeType(String tenantId, String deptCategory, Long parentId);
    /**
     * 懒加载获取部门树形结构(包含用户数据)app
     * @param type 1:保安对保安  2:保安向民警   3:民警向民警
     * @return
     */
    @SqlParser(filter=true)
    List<DeptVO> lazyTreeUserApp(Integer type);
}
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -157,6 +157,62 @@
        ORDER BY dept.sort
    </select>
    <!--懒加载获取部门树形结构(包含用户数据)app-->
    <select id="lazyTreeUserApp" resultType="org.springblade.modules.system.vo.DeptAndUserVO" >
        select DISTINCT  * from (
        (SELECT
        dept.id,
        dept.parent_id,
        dept.dept_name AS label,
        dept.id AS "key",
        dept.id AS "value",
        (
        SELECT
        CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
        FROM
        blade_dept
        WHERE
        parent_id = dept.id and is_deleted = 0
        ) AS "has_children"
        FROM
        blade_dept dept
        WHERE
        dept.is_deleted = 0
        <if test="type==1">
            and dept_category=1
            AND dept.parent_id = "1413470343230877697"
        </if>
        <if test="type==2 or type==3">
            and dept_category=2
            AND dept.parent_id = "1123598813738675201"
        </if>
        )
        union all
        (select
        bu.id,
        bu.dept_id  parent_id,
        bu.real_name AS label,
        bu.id AS "key",
        bu.id AS "value",
        0 as "has_children"
        from blade_user bu
        left join
        blade_dept bd
        on
        bd.id = bu.dept_id
        where 1=1
        <if test="type==1">
            and dept_category=1
        </if>
        <if test="type==2 or type==3">
            and dept_category=2
        </if>
        )
        )c
    </select>
    <!--懒加载获取部门树形结构(包含用户数据)-->
    <select id="lazyTreeUser" resultMap="treeNodeResultMap" >
        select DISTINCT  * from (
src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -143,4 +143,11 @@
     * 懒加载获取部门树形结构(按分类查询)
     */
    List<DeptVO> lazyTreeType(String deptCategory, Long parentId);
    /**
     * 懒加载获取部门树形结构(包含用户数据)app
     * @param type 1:保安对保安  2:保安向民警   3:民警向民警
     * @return
     */
    List<DeptVO> lazyTreeUserApp(Integer type);
}
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -224,4 +224,14 @@
    public List<DeptVO> lazyTreeType(String deptCategory, Long parentId) {
        return ForestNodeMerger.merge(baseMapper.lazyTreeType("000000",deptCategory,parentId));
    }
    /**
     * 懒加载获取部门树形结构(包含用户数据)app
     * @param type 1:保安对保安  2:保安向民警   3:民警向民警
     * @return
     */
    @Override
    public List<DeptVO> lazyTreeUserApp(Integer type) {
        return ForestNodeMerger.merge(baseMapper.lazyTreeUserApp(type));
    }
}
src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java
New file
@@ -0,0 +1,24 @@
package org.springblade.modules.system.vo;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import org.springblade.core.tool.node.BaseNode;
/**
 * @author zhongrj
 */
@Data
public class DeptAndUserVO extends BaseNode<DeptAndUserVO> {
    private static final long serialVersionUID = 1L;
    private String label;
    @JsonSerialize(
        using = ToStringSerializer.class
    )
    private Long key;
    @JsonSerialize(
        using = ToStringSerializer.class
    )
    private Long value;
}
src/main/resources/application.yml
@@ -209,6 +209,8 @@
      - /trainExam/**
      - /blade-desk/**
      - /directive/**
      - /blade-system/**
      - /blade-resource/**
    #授权认证配置
    auth:
      - method: ALL