| package com.matrix.system.hive.service.imp; | 
|   | 
| import java.util.List; | 
|   | 
| import com.matrix.core.pojo.PaginationVO; | 
| import com.matrix.system.hive.bean.SysDepartInfo; | 
| import com.matrix.system.hive.dao.SysDepartInfoDao; | 
| import com.matrix.system.hive.service.SysDepartInfoService; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.stereotype.Service; | 
|   | 
|   | 
|   | 
| /** | 
|  * | 
|  * @date 2016-07-03 20:53 | 
|  */ | 
| @Service("sysDepartInfoService") | 
| public class  SysDepartInfoServiceImpl implements SysDepartInfoService { | 
|   | 
|      | 
|     @Autowired | 
|     private SysDepartInfoDao sysDepartInfoDao; | 
|      | 
|      | 
|     @Override | 
|     public int add(SysDepartInfo sysDepartInfo){ | 
|          | 
|         return sysDepartInfoDao.insert(sysDepartInfo); | 
|          | 
|     } | 
|         | 
|     @Override | 
|     public int modify(SysDepartInfo sysDepartInfo){ | 
|      | 
|         return sysDepartInfoDao.update(sysDepartInfo); | 
|      | 
|     } | 
|      | 
|     @Override | 
|     public int remove(List<Long> list){ | 
|      | 
|         return sysDepartInfoDao.deleteByIds(list); | 
|      | 
|     } | 
|     /* | 
|      * 部门为树状结构,递归删除 | 
|      */ | 
|     @Override | 
|     public int removeById(Long id){ | 
|         rescuRemove(id); | 
|         return sysDepartInfoDao.deleteById(id); | 
|      | 
|     } | 
|     /** | 
|      * 递归删除子元素 | 
|     * @Title: remove  | 
|     * @author:jyy | 
|     * @param id     | 
|     * void    返回类型  | 
|     * @date 2016年8月5日 上午11:50:41  | 
|     * @throws | 
|      */ | 
|     private void rescuRemove(Long id){ | 
|         SysDepartInfo sysDepartInfo=new SysDepartInfo(); | 
|         sysDepartInfo.setParentId(id); | 
|         List<SysDepartInfo> departs= | 
|         sysDepartInfoDao.selectByModel(sysDepartInfo); | 
|         if(departs.size()>0){ | 
|             for (SysDepartInfo sysDepartInfo2 : departs) { | 
|                 rescuRemove(sysDepartInfo2.getId()); | 
|                 sysDepartInfoDao.deleteById(sysDepartInfo2.getId()); | 
|             } | 
|         } | 
|     } | 
|      | 
|     @Override | 
|     public List<SysDepartInfo> findInPage(SysDepartInfo sysDepartInfo,  PaginationVO pageVo){ | 
|      | 
|         return sysDepartInfoDao.selectInPage(sysDepartInfo , pageVo); | 
|      | 
|     } | 
|      | 
|     @Override | 
|     public List<SysDepartInfo> findByModel(SysDepartInfo sysDepartInfo){ | 
|      | 
|         return sysDepartInfoDao.selectByModel(sysDepartInfo); | 
|      | 
|     } | 
|      | 
|     @Override | 
|     public int  findTotal(SysDepartInfo sysDepartInfo){ | 
|      | 
|         return sysDepartInfoDao.selectTotalRecord(sysDepartInfo); | 
|      | 
|     } | 
|      | 
|     @Override | 
|     public SysDepartInfo  findById(Long id){ | 
|      | 
|         return sysDepartInfoDao.selectById(id); | 
|      | 
|     } | 
|   | 
|         | 
|      | 
|      | 
| } |