package com.goldenwater.system.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.goldenwater.system.domain.SysCate;
import com.goldenwater.system.mapper.SysCateMapper;
import com.goldenwater.system.service.ISysCateService;

/**
 * 系统分类 服务层实现
 * 
 * @author goldenwater
 */
@Service
public class SysCateServiceImpl implements ISysCateService
{
    @Autowired
    private SysCateMapper cateMapper;

    /**
     * 查询系统分类列表
     * 
     * @param cate 系统分类信息
     * @return 系统分类集合
     */
    @Override
    public List<SysCate> selectSysCateList(SysCate cate)
    {
        return cateMapper.selectSysCateList(cate);
    }

    /**
     * 根据分类编码查询系统分类
     * 
     * @param cateCode 分类编码
     * @return 系统分类
     */
    @Override
    public SysCate selectSysCateById(String cateCode)
    {
        return cateMapper.selectSysCateById(cateCode);
    }

    /**
     * 新增系统分类
     * 
     * @param cate 系统分类信息
     * @return 结果
     */
    @Override
    public int insertSysCate(SysCate cate)
    {
        return cateMapper.insertSysCate(cate);
    }

    /**
     * 修改系统分类
     * 
     * @param cate 系统分类信息
     * @return 结果
     */
    @Override
    public int updateSysCate(SysCate cate)
    {
        return cateMapper.updateSysCate(cate);
    }

    /**
     * 删除系统分类
     * 
     * @param cateCode 分类编码
     * @return 结果
     */
    @Override
    public int deleteSysCateById(String cateCode)
    {
        return cateMapper.deleteSysCateById(cateCode);
    }

    /**
     * 批量删除系统分类
     * 
     * @param cateCodes 需要删除的分类编码
     * @return 结果
     */
    @Override
    public int deleteSysCateByIds(String[] cateCodes)
    {
        return cateMapper.deleteSysCateByIds(cateCodes);
    }

    /**
     * 查询父分类列表
     * 
     * @return 父分类集合
     */
    @Override
    public List<SysCate> findParent()
    {
        return cateMapper.findParent();
    }

    /**
     * 查询子分类列表
     * 
     * @param cate 系统分类信息
     * @return 子分类集合
     */
    @Override
    public List<SysCate> findChildren(SysCate cate)
    {
        return cateMapper.findChildren(cate);
    }

    /**
     * 修改系统分类状态
     * 
     * @param cate 系统分类信息
     * @return 结果
     */
    @Override
    public int updateStatus(SysCate cate)
    {
        return cateMapper.updateStatus(cate);
    }
}
