DangerLevelManageMapper.java 2.0 KB
package com.skua.modules.safe.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import com.skua.modules.safe.entity.DangerLevelManage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Select;

/**
 * 风险分级管控清单
 */
public interface DangerLevelManageMapper extends BaseMapper<DangerLevelManage> {

    /***
     * 根据id获取风险分级对象
     * @param id
     * @return
     */
    public  DangerLevelManage queryById(@Param("id") String id);

    //List<DangerLevelManage> queryByList(Page page, @Param("param") DangerLevelManage dangerLevelManage);
    @Select("SELECT t.*,ifnull(aaa.inspect_content,'') inspect_content, ifnull(bbb.inspection_num,0) inspection_num, ifnull(ccc.rectification_num,0) 'rectification_num' " +
            " FROM danger_level_manage t" +
            " left join (select danger_id ,GROUP_CONCAT(inspect_name SEPARATOR '@') 'inspect_content' from  danger_inspect_info group by danger_id)aaa on aaa.danger_id = t.id " +
            " left join (select danger_id, count(id) 'inspection_num' from danger_inspection_record " +
            "  where DATE_FORMAT(report_date,'%Y-%m-%d')  >= #{startTime} and  DATE_FORMAT(report_date,'%Y-%m-%d')  <= #{endTime} "+
            " group by danger_id)bbb on bbb.danger_id = t.id  " +
            " left join (select danger_id, count(id) 'rectification_num' from ajh_rectification_info" +
            "  where DATE_FORMAT(rec_ord_report_date,'%Y-%m-%d')  >= #{startTime} and  DATE_FORMAT(rec_ord_report_date,'%Y-%m-%d')  <= #{endTime} "+
            "  group by danger_id)ccc  on ccc.danger_id = t.id ${ew.customSqlSegment}")
    List<DangerLevelManage> getListByWrapper(Page page,@Param("ew") QueryWrapper<DangerLevelManage> queryWrapper,@Param("startTime") String startTime,@Param("endTime") String endTime);
}