From 9437c74510c25be9d2413821c65fcf6ca4e6d21a Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Fri, 31 Aug 2018 08:35:26 +0800 Subject: [PATCH] 获取优良天数 --- src/main/java/com/moral/service/impl/OrganizationServiceImpl.java | 98 +++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 86 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java b/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java index c9b2192..29a321f 100644 --- a/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java +++ b/src/main/java/com/moral/service/impl/OrganizationServiceImpl.java @@ -1,22 +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.Map; -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.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,6 +27,8 @@ @Resource private OrganizationRelationMapper organizationRelationMapper; + + private static Class ENTITY_CLASS = Organization.class; @Override public Set<Integer> getChildOrganizationIds(Integer orgId){ @@ -37,7 +40,7 @@ if (IS_DELETE_FALSE.equals(organization.getIsDelete())) { List<OrganizationRelation> organizationRelations = organizationRelationMapper.select(relation); for (OrganizationRelation organizationRelation : organizationRelations) { - Set<Integer> organizationIds = getChildOrganizationIds(organizationRelation.getParentId()); + Set<Integer> organizationIds = getChildOrganizationIds(organizationRelation.getChildId()); orgIds.addAll(organizationIds); } } @@ -52,4 +55,75 @@ 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()); + } + if(example.getOrderByClause() == null || example.getOrderByClause().isEmpty()) { + example.setOrderByClause("create_time desc"); + } + 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; + } + + @Override + public Organization getOrganizationById(int id) { + Example example = new Example(ENTITY_CLASS); + example.or().andEqualTo("id",id); + List<Organization> organizationList = organizationMapper.selectWithAreaNameByExample(example); + return organizationList.size()>0?organizationList.get(0):null; + } } -- Gitblit v1.8.0