<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- 中期考核表 --> <mapper namespace="com.yiboshi.science.dao.ComProjectCheckDAO"> <sql id="allColumns"> t.id as id, t.check_year as checkYear, t.proj_id as projId, t.other_results as otherResults, t.work_progress as workProgress, t.apply_money as applyMoney, t.using_money as usingMoney, t.surplus_money as surplusMoney, t.money_instructions as moneyInstructions, t.check_state as checkState, t.created as created, t.updated as updated </sql> <select id="getListByPage" resultType="com.yiboshi.science.param.dto.ComProjectCheckDTO"> select b.id, b.check_year, b.check_state, c.id as proj_id, c.proj_name,c.proj_no,c.report_year,c.version_no,c.proj_class,c.start_date,c.end_date,c.proj_state,d.unit_name app_unit_name,e.person_name app_person_name from com_project c left join com_project_check b on b.proj_id=c.id left join com_unit d on c.app_unit_id=d.id left join com_person e on c.app_person_id=e.id left join com_project_test f on f.proj_id=c.id <where> ${ew.sqlSegment} </where> </select> <select id="getCount" resultType="com.yiboshi.science.param.dto.DataStatisticsDTO"> SELECT ifnull(sum(case when f.test_state=10 and b.check_state=1 then 1 else 0 end),0) count1, ifnull(sum(case when f.test_state=10 and b.check_state > 1 then 1 else 0 end),0) count2 from com_project_check b left join com_project c on b.proj_id=c.id left join com_project_test f on f.proj_id=c.id <where> ${ew.sqlSegment} </where> </select> </mapper>