package com.gz.service.system;

import com.github.pagehelper.PageInfo;
import com.gz.dto.system.AdminDTO;
import com.gz.rvo.system.AdminRVO;
import com.gz.vo.system.AdminVO;

import java.util.List;

public interface AdminService {

    /**
     * @description 增
     * @author LiuChangLan
     * @since 2020/9/4 14:46
     */
    Integer insert(AdminDTO adminDTO);

    /**
     * @description 删
     * @author LiuChangLan
     * @since 2020/9/4 14:46
     */
    Integer delete(Integer id);

    /**
     * @description 改
     * @author LiuChangLan
     * @since 2020/9/4 14:46
     */
    Integer update(AdminDTO adminDTO);

    /**
     * @description 查(给分页参数查分页 没给查全部)
     * @author LiuChangLan
     * @since 2020/9/4 14:46
     */
    PageInfo<AdminDTO> select(AdminVO adminVO);

    /**
     * @description
     * @author LiuChangLan
     * @since 2020/9/4 15:05
     */
    AdminDTO selectByPrimaryKey(String id);

    /**
     * @description 修改状态
     * @author LiuChangLan
     * @since 2020/9/22 11:38
     */
    Integer updateStatus(String id);

    /**
     * @description 重置密码
     * @author LiuChangLan
     * @since 2021/2/19 17:13
     */
    Integer resetPassword(String id);

    /**
     * @description 查询所有用户
     * @author LiuChangLan
     * @since 2021/3/4 16:33
     */
    List<AdminDTO> selectAll();

    /**
     * @description 根据主键查询信息（带部门）
     * @author LiuChangLan
     * @since 2021/3/12 13:28
     */
    AdminRVO selectByPrimaryKeyDept(String id);

}
