lidongdong
2022-10-10 3e3d5f69ab4eb77ab5e09a814c33ffb8237a54f7
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,59 @@
    public int countList(String organizationName) {
        return baseMapper.countList(organizationName);
    }
    /**
     * 递归获取id  内部使用
     * @param departmentId
     * @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;
    }
    @Override
    public List<OrganizationChartEntity> selectParentList(String parentId, String grade) {
        return baseMapper.selectConfigList(parentId,grade);
    }
    //递归取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)
        {
            ids.add(sysStreet.getId()+"");
            if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
            {
                ids.addAll(disposestreetId(sysStreet.getChild()));
            }
            else
            {
                ids.add(sysStreet.getId()+"");
            }
        }
        return ids;
    }
}