package com.gkhy.safePlatform.incidentManage.repository; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gkhy.safePlatform.incidentManage.entity.*; import com.gkhy.safePlatform.incidentManage.query.db.AccidentReportDBQuery; import com.gkhy.safePlatform.incidentManage.query.db.AccidentReportCountDBQuery; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; @Repository public interface AccidentReportInfoRepository extends BaseMapper { List selectAccidentReportList(Page page, @Param("query") AccidentReportDBQuery accidentReportDBQuery); void addAccidentReport(AccidentReportInfo accidentReportInfo); AccidentReportInfoDetailDO selectAccidentReportById(@Param("id") Long id); void updateAccidentReport(AccidentReportInfo accidentReportInfo); void deleteAccidentReportById(@Param("id") Long id); List selectByTimeAndType(@Param("query") AccidentReportCountDBQuery dbQuery); List getCountForRPCByDeptIdAndMonth(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("deptId")Long deptId); List getCountForRPCByDeptIdAndDay(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("deptId")Long deptId); List getAccidentCountByDeptIdsAndTime(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("deptIds")List deptIds); List getAccidentCountByDeptIdAndTime(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("deptId")Long deptId); List getCountByAccidentGrade(@Param("year")Integer year, @Param("month")Integer month); }