package com.manage.service;

import com.manage.entity.Power_Dept;
import com.manage.vo.Power_DeptVo;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * Author ly
 * Date 2019/4/15
 * Time 16:31
 * Description No Description
 */
public interface Power_DeptService {
    int deleteByPrimaryKey(Integer dept_id);

    int insert(Power_Dept record);

    int insertSelective(Power_Dept record);

    Power_Dept selectByPrimaryKey(Integer dept_id);

    int updateByPrimaryKeySelective(Power_Dept record,HttpServletRequest request);

    int updateByPrimaryKey(Power_Dept record);

    /**
     * @Date 2019-4-16
     * @Author ly
     *  @Description 根据条件查询科室信息
     * */
    List<Power_DeptVo> findSomeByMore(Power_Dept powerDept, HttpServletRequest request);

    /**
     * @Date 2019-4-16
     * @Author ly
     *  @Description 返回符合条件的科室总记录数
     * */
    int getTotal(Power_Dept powerDept);
    /**
     * @Date 2019-4-16
     * @Author ly
     *  @Description 查询所有科室
     * */
    List<Power_DeptVo> getDeptList();

    /**
     * @Date 2019-08-02
     * @Author zengwenhe
     *  @Description 验证同一医院科室名不能重复
     * */
    List<Power_Dept> checkDeptName(String deptName, Integer dictId);

    /**
     * @Date 2019-4-16
     * @Author ly
     *  @Description 根据一组科室id查询科室
     * */
    List<Power_Dept>selectByPrimaryKeys(String dept_ids);

    /**
     * @Date 2019-4-25
     * @Author ly
     *  @Description 根据科室名字查询科室
     * */
    List<Power_Dept> selectDeptByDeptName(String deptNames);

    /**
     * @Date 2019-4-25
     * @Author ly
     *  @Description 导出Excel表
     * */
    void export(Power_DeptVo powerDept,HttpServletRequest request,HttpServletResponse response)throws Exception;
    /**
     * @Date 2019-4-25
     * @Author ly
     *  @Description 导出Excel表
     * */
    void exportBlood(Power_DeptVo powerDept,HttpServletRequest request,HttpServletResponse response)throws Exception;

    /**
     * @Date 2019-07-31
     * @Author zengwenhe
     *  @Description 根据userId查询医院科室
     * */
    List<Power_DeptVo> selectDeptByUserId(HttpServletRequest request);
    /**
     * @Date 2019-08-06
     * @Author zengwenhe
     *  @Description 根据医院id查科室集合
     * */
    List<Power_DeptVo> selectDeptByDictId(Integer dictId,String sysFlag);
}
