lige
2023-12-15 a28c894d35b5ca697bfe455c2d584c7f28ec3722
优化项目列表
4个文件已修改
59 ■■■■ 已修改文件
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java
@@ -66,27 +66,34 @@
    public AjaxResult getlist(@RequestParam(required = false) @ApiParam(value = "项目名称") String proName,
                              @RequestParam(required = false) @ApiParam(value = "检查类别") String checkType,
                              @RequestParam(required = false) @ApiParam(value = "部门id") String deptId) {
        LambdaQueryWrapper<TjProject> wq0 = new LambdaQueryWrapper<>();
        wq0.eq(TjProject::getProParentId, 0);
        if(null !=proName){
            wq0.like(TjProject::getProName,proName);
        }
        if(null !=checkType){
            wq0.like(TjProject::getProCheckType,checkType);
        }
        if(null !=deptId){
            wq0.like(TjProject::getDeptId,deptId);
        }
//        LambdaQueryWrapper<TjProject> wq0 = new LambdaQueryWrapper<>();
//        wq0.eq(TjProject::getProParentId, 0);
//        if(null !=proName){
//            wq0.like(TjProject::getProName,proName);
//        }
//        if(null !=checkType){
//            wq0.like(TjProject::getProCheckType,checkType);
//        }
//        if(null !=deptId){
//            wq0.like(TjProject::getDeptId,deptId);
//        }
//
//        List<TjProject> tjProjects = tjProjectService.list(wq0);
        List<TjProject> tjProjects = tjProjectService.list(wq0);
        //上面的换sql
        final List<TjProject> tjProjects = tjProjectService.getProBySqlAndName(proName, checkType, deptId);
        if (tjProjects != null) {
            for (TjProject project : tjProjects) {
                LambdaQueryWrapper<TjProject> wq1 = new LambdaQueryWrapper<>();
                wq1.eq(TjProject::getProParentId, project.getProId());
                if(null !=proName) {
                    wq1.like(TjProject::getProName, proName);
                }
                List<TjProject> projectList = tjProjectService.list(wq1);
                project.setTjProjectList(projectList);
                //根据每个项目的deptId拿到name  2023/2/7
                SysDept sysDept = deptService.selectDeptById(project.getDeptId());
                if (sysDept!=null){
                    project.setDeptName(sysDept.getDeptName());
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java
@@ -103,4 +103,22 @@
    @Select("SELECT c.* FROM tj_package a LEFT JOIN tj_package_project b ON a.pac_id=b.pac_id LEFT JOIN " +
            "tj_project c ON b.pro_id=c.pro_id  WHERE a.pac_id=#{pacId} and c.deleted=0")
    List<TjProject> getTjParentProjectListByPacId(String pacId);
    @Select("SELECT DISTINCT d.* from (\n" +
            "\tSELECT  * FROM `tj_project` a\n" +
            "\twhere  a.pro_parent_id=0 \n" +
            "\tand (case WHEN #{proName} is NOt NULL THEN a.pro_name like concat('%',#{proName},'%') ELSE 1=1 END)\n" +
            "\tand (case WHEN #{checkType} is NOt NULL THEN a.pro_check_type=#{checkType} ELSE 1=1 END)\n" +
            "\tand (case WHEN #{deptId} is NOt NULL THEN a.dept_id=#{deptId} ELSE 1=1 END)\n" +
            "UNION  \n" +
            "\tSELECT b.* FROM `tj_project` b JOIN(\n" +
            "\tSELECT * FROM `tj_project` a\n" +
            "\twhere a.pro_parent_id!=0\n" +
            "\tand (case WHEN #{proName} is NOt NULL THEN a.pro_name like concat('%',#{proName},'%') ELSE 1=1 END)\n" +
            "\tand (case WHEN #{checkType} is NOt NULL THEN a.pro_check_type=#{checkType} ELSE 1=1 END)\n" +
            "\tand (case WHEN #{deptId} is NOt NULL THEN a.dept_id=#{deptId} ELSE 1=1 END)\n" +
            ") c\n" +
            "on c.pro_parent_id=b.pro_id\n" +
            ") d\n")
    List<TjProject> getProBySqlAndName(@Param("proName")String proName,@Param("checkType")String checkType,@Param("deptId")String deptId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java
@@ -100,4 +100,7 @@
     */
    public List<com.ltkj.hosp.treeUtil.TreeSelect> buildProjectTreeSelect(List<TjProject> projects);
    List<TjProject> getProBySqlAndName(String proName,String checkType,String deptId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java
@@ -186,6 +186,11 @@
        return deptTrees.stream().map(TreeSelect::new).collect(Collectors.toList());
    }
    @Override
    public List<TjProject> getProBySqlAndName(String proName, String checkType, String deptId) {
        return tjProjectMapper.getProBySqlAndName(proName,checkType,deptId);
    }
    /**
     * 递归列表
     */