lidongdong
2022-10-08 43bf83f004149bf7bb92ba343c539dff5c335af8
flower_city/src/main/java/com/dg/core/controller/OrganizationController.java
@@ -18,6 +18,7 @@
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@@ -127,4 +128,52 @@
    }
    /**
     * 通过父级id查询对应机构下的全部部门id
     * @param departmentId
     * @return
     */
    @ApiOperation(value = "根据id查取消组织机构",response = OrganizationChartEntity.class)
    @GetMapping("/getdepartment")
    public TableDataInfo getIds(@RequestParam(value = "department",required = false) String departmentId)
    {
        List<OrganizationChartEntity> ids=new ArrayList<>();
        List<OrganizationChartEntity> lists = iOrganizationChartService.selectConfigList(departmentId,"");
        if(lists.size()<1)
        {
            lists.add(iOrganizationChartService.selectConfigById(departmentId));
        }
        ids=disposestreetId(lists);
        if(ids.size()<1)
        {
            return null;
        }
//        ids.add(streetId);
        ids.add(iOrganizationChartService.selectConfigById(departmentId));
        return getDataTable(ids);
    }
    //递归取id
    private List<OrganizationChartEntity> disposestreetId(List<OrganizationChartEntity> lists)
    {
        List<OrganizationChartEntity> ids=new ArrayList<>();
        for (OrganizationChartEntity sysStreet:lists)
        {
            ids.add(sysStreet);
            if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
            {
                ids.addAll(disposestreetId(sysStreet.getChild()));
            }
            else
            {
                ids.add(sysStreet);
            }
        }
        return ids;
    }
}