package com.ruoyi.project.production.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.framework.aspectj.lang.annotation.DataScope;
import com.ruoyi.project.common.domain.DataEntity;
import com.ruoyi.project.production.domain.TAccident;

/**
 * 隐患排查Mapper接口
 *
 * @author ruoyi
 * @date 2020-11-24
 */
public interface TAccidentMapper
{
    /**
     * 查询隐患排查
     *
     * @param id 隐患排查ID
     * @return 隐患排查
     */
    public TAccident selectTAccidentById(Long id);

    /**
     * 查询隐患排查列表
     *
     * @param tAccident 隐患排查
     * @return 隐患排查集合
     */
    @DataScope(deptAlias = "d")
    public List<TAccident> selectTAccidentList(TAccident tAccident);

    /**
     * 新增隐患排查
     *
     * @param tAccident 隐患排查
     * @return 结果
     */
    public int insertTAccident(TAccident tAccident);

    /**
     * 修改隐患排查
     *
     * @param tAccident 隐患排查
     * @return 结果
     */
    public int updateTAccident(TAccident tAccident);

    /**
     * 删除隐患排查
     *
     * @param id 隐患排查ID
     * @return 结果
     */
    public int deleteTAccidentById(Long id);

    /**
     * 批量删除隐患排查
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteTAccidentByIds(Long[] ids);

    /**
     * 首页查询隐患排查s数量
     *
     * @param month 需要查询的月份
     * @return 结果
     */
    @DataScope(deptAlias = "d")
    public int selectHomeData(String month);

    List<DataEntity> selectYearData(Map param);

    List<DataEntity> selectStatusData(Map param);

    List<DataEntity> selectTeamData(Map param);

    List<DataEntity> selectAccidentTypeData(Map param);

    List<DataEntity> selectConfirmData(Map param);
}
