From 48bfa4e57cd2195b86bd8c0debe2e241db0ba80d Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Mon, 05 Feb 2018 14:49:44 +0800 Subject: [PATCH] 报表 --- src/main/java/com/moral/service/impl/OrganizationServiceImpl.java | 101 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 87 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java b/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java index c572a32..92e9a0c 100644 --- a/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java +++ b/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java @@ -1,21 +1,23 @@ 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.Set; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Service; - +import com.github.pagehelper.PageHelper; +import com.moral.common.bean.Constants; +import com.moral.common.bean.PageBean; +import com.moral.common.util.ExampleUtil; +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 org.springframework.stereotype.Service; +import tk.mybatis.mapper.entity.Example; +import tk.mybatis.mapper.entity.Example.Criteria; + +import javax.annotation.Resource; +import java.util.*; + +import static com.moral.common.bean.Constants.IS_DELETE_FALSE; @Service public class OrganizationServiceImpl implements OrganizationService { @@ -26,15 +28,17 @@ @Resource private OrganizationRelationMapper organizationRelationMapper; + private static Class ENTITY_CLASS = Organization.class; + @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 (IS_DELETE_FALSE.equals(organization.getIsDelete())) { - List<OrganizationRelation> organizationRelations = organizationRelationMapper.selectByExample(example); + List<OrganizationRelation> organizationRelations = organizationRelationMapper.select(relation); for (OrganizationRelation organizationRelation : organizationRelations) { Set<Integer> organizationIds = getChildOrganizationIds(organizationRelation.getParentId()); orgIds.addAll(organizationIds); @@ -43,4 +47,73 @@ 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; + } + + public PageBean queryByPageBean(PageBean pageBean){ + Example example = ExampleUtil.generateExample(ENTITY_CLASS,pageBean); + List<Example.Criteria> criteriaList = example.getOredCriteria(); + if(criteriaList!=null&&criteriaList.size()>0){ + for(Example.Criteria cri : criteriaList){ + cri.andNotEqualTo("isDelete",Constants.IS_DELETE_TRUE); + } + }else { + example.or().andNotEqualTo("isDelete",Constants.IS_DELETE_TRUE); + } + if(pageBean.getPageSize()>0){ + PageHelper.startPage(pageBean.getPageIndex(),pageBean.getPageSize()); + } + List<Organization> organizationList = organizationMapper.selectWithAreaNameByExample(example); + return new PageBean(organizationList); + } + public void addOrModify(Organization organization){ + try{ + if(organization.getId()==null){ + //��������������������������������������� + organization.setIsDelete(Constants.IS_DELETE_FALSE); + organizationMapper.insertSelective(organization); + }else{ + organizationMapper.updateByPrimaryKeySelective(organization); + } + } + catch (Exception ex){ + throw ex; + } + } + + @Override + public void deleteByIds(Integer... ids) { + Organization organization = new Organization(); + organization.setIsDelete(Constants.IS_DELETE_TRUE); + if(ids!=null&&ids.length>0){ + if(ids.length==1){ + organization.setId(ids[0]); + organizationMapper.updateByPrimaryKeySelective(organization); + }else{ + Example example = new Example(ENTITY_CLASS); + example.or().andIn("id", Arrays.asList(ids)); + organizationMapper.updateByExampleSelective(organization,example); + } + + } + } + + @Override + public List<Organization> getOrganizationsByName(String name) { + ValidateUtil.notEmpty(name, "param.is.null"); + Example example = new Example(Organization.class); + Criteria criteria = example.createCriteria(); + + criteria.andEqualTo("isDelete", Constants.IS_DELETE_FALSE).andLike("name", "%" + name + "%"); + example.or().andEqualTo("isDelete", Constants.IS_DELETE_FALSE).andCondition("getPY(name) like ", "%" + name + "%"); + + List<Organization> organizations = organizationMapper.selectByExample(example); + return organizations; + } + } -- Gitblit v1.8.0