package com.govmade.modules.system.service.impl;

import java.util.Map;
import java.util.Set;

import org.springframework.stereotype.Service;

import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.govmade.common.utils.Constant;
import com.govmade.common.utils.PageUtils;
import com.govmade.common.utils.Query;
import com.govmade.modules.system.dao.DepartDao;
import com.govmade.modules.system.entity.DepartEntity;
import com.govmade.modules.system.service.DepartService;

import cn.hutool.core.util.StrUtil;


/**
 * 系统管理 - 部门设置
 * 
 * @author 刘弈臻
 * @date 2018年8月8日
 */
@Service("DepartService")
public class DepartServiceImpl extends ServiceImpl<DepartDao,DepartEntity> implements DepartService{
      
	@Override
	public PageUtils queryPage(Map<String, Object> params) {
		
		String name = (String) params.get("name");
		Page<DepartEntity> page = this.selectPage(new Query<DepartEntity>(params).getPage(),
				new EntityWrapper<DepartEntity>()
				.like(StrUtil.isNotBlank(name), "name", name));
		return new PageUtils(page);
	}
	

    @Override
	public void save(DepartEntity depart) {
		super.insertOrUpdate(depart);
	}
    
    @Override
	public void deleteDepart(DepartEntity depart) {
    	depart.setState(Constant.STATE_DELETE);
		super.updateById(depart);
	}
    
    @Override
	public Integer checkDepart(String name) {
		return super.selectCount(new EntityWrapper<DepartEntity>().eq("name",name));
	}

}