From 6e9c3733135fa96360c8c76e76b431efa5d7f52d Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Sat, 09 Jun 2018 11:28:32 +0800
Subject: [PATCH] test

---
 src/main/java/com/moral/service/impl/OrganizationServiceImpl.java |  110 ++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 96 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 a262729..f38fe9e 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.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 {
@@ -27,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);
-    	Example example = new Example(OrganizationRelation.class);
-    	example.or().andEqualTo("parentId",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);
@@ -44,4 +47,83 @@
     	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());
+		}
+		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 getOrganizationsById(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