fengxiang
2017-12-22 ee0e4c362e299f9be9a3859d0c142f26871cacf6
src/main/java/com/moral/service/impl/OrganizationServiceImpl.java
@@ -1,38 +1,41 @@
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 org.springframework.beans.factory.annotation.Autowired;
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.entity.OrganizationRelationExample;
import com.moral.mapper.OrganizationMapper;
import com.moral.mapper.OrganizationRelationMapper;
import com.moral.service.OrganizationService;
import com.moral.util.Constants;
@Service
public class OrganizationServiceImpl implements OrganizationService {
    @Autowired
    @Resource
    private OrganizationMapper organizationMapper;
    @Autowired
    @Resource
    private OrganizationRelationMapper organizationRelationMapper;
    @Override
    public Set<Integer> getChildOrganizationIds(Integer orgId){
       Set<Integer> orgIds = new HashSet<Integer>();
       orgIds.add(orgId);
       OrganizationRelationExample example = new OrganizationRelationExample();
       example.or().andParentIdEqualTo(orgId);
       OrganizationRelation relation = new OrganizationRelation();
       relation.setParentId(orgId);
       Organization organization = organizationMapper.selectByPrimaryKey(orgId);
       if (Constants.IS_DELETE_FALSE.equals(organization.getIsDelete())) {
          List<OrganizationRelation> organizationRelations = organizationRelationMapper.selectByExample(example);
       if (IS_DELETE_FALSE.equals(organization.getIsDelete())) {
          List<OrganizationRelation> organizationRelations = organizationRelationMapper.select(relation);
          for (OrganizationRelation organizationRelation : organizationRelations) {
             Set<Integer> organizationIds = getChildOrganizationIds(organizationRelation.getParentId());
             orgIds.addAll(organizationIds);
@@ -41,4 +44,12 @@
       return orgIds;
    }
   @Override
   public List<Organization> getOrganizationsByAreaName(Map<String, Object> parameters) {
      ValidateUtil.notNull(parameters.get("areaName"), "param.is.null");
      List<Organization> organizations = organizationMapper.getOrganizationsByAreaName(parameters);
      return organizations;
   }
}