package edp.davinci.dao; import edp.davinci.dto.qualityAuditor.QualityTaskDto; import edp.davinci.model.QualityTask; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Component; import java.util.List; @Component public interface QualityTaskMapper { int insert(QualityTask qualityTask); @Delete({"delete from `quality_task` where id = #{id}"}) int deleteById(@Param("id") Long id); int update(QualityTask qualityTask); @Select({"select * from `quality_task`"}) List getQualityTaskList(); @Select({"select * from `quality_task` where p_id = #{pId}"}) List getQualityTaskListByPid(@Param("pId") Long pId); @Select({"select * from `quality_task` where id = #{id}"}) QualityTask getQualityTask(@Param("id") Long id); @Select({"select * from `quality_task` where cronJob_id = #{cronJobId}"}) QualityTask getQualityTaskByCronJobId(@Param("cronJobId") Long cronJobId); @Select({"select * from `quality_task` where view_id = #{viewId}"}) List getQualityTaskListByViewId(@Param("viewId") Long viewId); // @Select({"SELECT " + // "qt.*," + // "cj.start_date," + // "cj.end_date," + // "ac.`name` as type_name " + // "FROM " + // "`quality_task` qt " + // "LEFT JOIN audit_classification ac on qt.p_id = ac.id " + // "LEFT JOIN cron_job cj ON qt.cronJob_id = cj.id " + // "WHERE " + // "p_id = #{time} " + // "AND DATE_FORMAT(#{time}, '%Y%m%d' ) >= DATE_FORMAT( cj.start_date, '%Y%m%d' ) AND DATE_FORMAT(#{time}, '%Y%m%d' ) <= DATE_FORMAT(cj.end_date , '%Y%m%d' ) "}) List getQualityTaskListCondition(@Param("pId") Long pId, @Param("time") String time); }