fengjin
2022-10-21 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7
flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java
@@ -8,6 +8,7 @@
import com.dg.core.service.IOrganizationChartService;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
@@ -87,4 +88,64 @@
    public int countList(String organizationName) {
        return baseMapper.countList(organizationName);
    }
    @Override
    public List<OrganizationChartEntity> selectParentList(String parentId, String grade) {
        return baseMapper.selectConfigList(parentId,grade);
    }
    /**
     * 递归获取id  内部使用
     * @param id
     * @return
     */
    @Override
    public List<String> getIds(String id)
    {
        List<String> ids=new ArrayList<>();
        List<OrganizationChartEntity> lists = baseMapper.selectConfigList(id,"");
        if(lists.size()<1)
        {
            lists.add(baseMapper.selectConfigById(id));
        }
        ids=disposestreetId(lists);
        if(ids.size()<1)
        {
            return null;
        }
        ids.add(id);
        return ids;
    }
    //递归取id
    private List<String> disposestreetId(List<OrganizationChartEntity> lists)
    {
        List<String> ids=new ArrayList<>();
        if(lists==null || lists.size()<1)
        {
            return ids;
        }
        for (OrganizationChartEntity sysStreet:lists)
        {
            if(sysStreet!=null&&sysStreet.getId()!=null)
            {
                if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
                {
                    ids.addAll(disposestreetId(sysStreet.getChild()));
                }
                else
                {
                    ids.add(sysStreet.getId()+"");
                }
            }
        }
        return ids;
    }
}