package com.moral.service.impl; import static com.moral.common.bean.Constants.IS_DELETE_FALSE; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.moral.common.util.ValidateUtil; import com.moral.entity.Organization; import com.moral.entity.OrganizationRelation; import com.moral.mapper.OrganizationMapper; import com.moral.mapper.OrganizationRelationMapper; import com.moral.service.OrganizationService; @Service public class OrganizationServiceImpl implements OrganizationService { @Resource private OrganizationMapper organizationMapper; @Resource private OrganizationRelationMapper organizationRelationMapper; @Override public Set getChildOrganizationIds(Integer orgId){ Set orgIds = new HashSet(); orgIds.add(orgId); OrganizationRelation relation = new OrganizationRelation(); relation.setParentId(orgId); Organization organization = organizationMapper.selectByPrimaryKey(orgId); if (IS_DELETE_FALSE.equals(organization.getIsDelete())) { List organizationRelations = organizationRelationMapper.select(relation); for (OrganizationRelation organizationRelation : organizationRelations) { Set organizationIds = getChildOrganizationIds(organizationRelation.getParentId()); orgIds.addAll(organizationIds); } } return orgIds; } @Override public List getOrganizationsByAreaName(Map parameters) { ValidateUtil.notNull(parameters.get("areaName"), "param.is.null"); List organizations = organizationMapper.getOrganizationsByAreaName(parameters); return organizations; } }