|  | @@ -87,14 +87,12 @@
 | 
	
		
			
				|  |  |          <result property="reserveNum" column="reserve_num_"/>
 | 
	
		
			
				|  |  |      </resultMap>
 | 
	
		
			
				|  |  |      <select id="queryChildrenStatistics" resultMap="ChildrenStatisticsDtoMap">
 | 
	
		
			
				|  |  | -        SELECT o.name_ organ_name_,co.name_ cooperation_organ_name_,mg.name_ music_group_name_,COUNT(sr.user_id_)
 | 
	
		
			
				|  |  | -        normal_num_,
 | 
	
		
			
				|  |  | -        COUNT(CASE WHEN cdr.is_reserve_ = 1 THEN 1 ELSE NULL END) 'reserve_num_',
 | 
	
		
			
				|  |  | -        COUNT(CASE WHEN cdr.is_reserve_ = 0 THEN 1 ELSE NULL END) 'no_reserve_num_'
 | 
	
		
			
				|  |  | +        SELECT o.name_ organ_name_,co.name_ cooperation_organ_name_,mg.name_ music_group_name_,COUNT(sr.user_id_) normal_num_,
 | 
	
		
			
				|  |  | +        COUNT(DISTINCT CASE WHEN cdr.is_reserve_ = 1 THEN 1 ELSE NULL END) 'reserve_num_',
 | 
	
		
			
				|  |  | +        COUNT(DISTINCT CASE WHEN cdr.is_reserve_ = 0 THEN 1 ELSE NULL END) 'no_reserve_num_'
 | 
	
		
			
				|  |  |          FROM children_day_reserve cdr
 | 
	
		
			
				|  |  |          LEFT JOIN music_group mg ON mg.id_ = cdr.music_group_id_
 | 
	
		
			
				|  |  | -        LEFT JOIN student_registration sr ON sr.music_group_id_ = cdr.music_group_id_ AND sr.music_group_status_ =
 | 
	
		
			
				|  |  | -        'NORMAL'
 | 
	
		
			
				|  |  | +        LEFT JOIN student_registration sr ON sr.music_group_id_ = cdr.music_group_id_ AND sr.music_group_status_ = 'NORMAL' AND cdr.user_id_ = sr.user_id_
 | 
	
		
			
				|  |  |          LEFT JOIN cooperation_organ co ON co.id_ = cdr.cooperation_organ_id_
 | 
	
		
			
				|  |  |          LEFT JOIN organization o ON o.id_ = cdr.organ_id_
 | 
	
		
			
				|  |  |          <include refid="queryChildrenStatisticsSql"/>
 | 
	
	
		
			
				|  | @@ -102,11 +100,11 @@
 | 
	
		
			
				|  |  |          ORDER BY cdr.id_ DESC
 | 
	
		
			
				|  |  |          <include refid="global.limit"/>
 | 
	
		
			
				|  |  |      </select>
 | 
	
		
			
				|  |  | -    <select id="countChildrenStatistics" resultType="java.lang.Integer">
 | 
	
		
			
				|  |  | -        SELECT COUNT(cdr.id_)
 | 
	
		
			
				|  |  | +    <select id="countChildrenStatistics" resultType="int">
 | 
	
		
			
				|  |  | +        SELECT COUNT(c.id_) FROM (SELECT COUNT(cdr.id_) id_
 | 
	
		
			
				|  |  |          FROM children_day_reserve cdr
 | 
	
		
			
				|  |  |          <include refid="queryChildrenStatisticsSql"/>
 | 
	
		
			
				|  |  | -        GROUP BY cdr.music_group_id_
 | 
	
		
			
				|  |  | +        GROUP BY cdr.music_group_id_) c
 | 
	
		
			
				|  |  |      </select>
 | 
	
		
			
				|  |  |      <sql id="queryChildrenStatisticsSql">
 | 
	
		
			
				|  |  |          <where>
 | 
	
	
		
			
				|  | @@ -134,7 +132,7 @@
 | 
	
		
			
				|  |  |          <result property="isReserve" column="is_reserve_"/>
 | 
	
		
			
				|  |  |          <result property="phone" column="phone_"/>
 | 
	
		
			
				|  |  |      </resultMap>
 | 
	
		
			
				|  |  | -    <select id="countChildrenStatisticsDetail" resultType="java.lang.Integer">
 | 
	
		
			
				|  |  | +    <select id="countChildrenStatisticsDetail" resultType="int">
 | 
	
		
			
				|  |  |          SELECT COUNT(cdr.id_) FROM children_day_reserve cdr
 | 
	
		
			
				|  |  |          LEFT JOIN sys_user su ON su.id_ = cdr.user_id_
 | 
	
		
			
				|  |  |          <include refid="queryChildrenStatisticsDetailSql"/>
 | 
	
	
		
			
				|  | @@ -155,6 +153,12 @@
 | 
	
		
			
				|  |  |              <if test="isReserve != null">
 | 
	
		
			
				|  |  |                  AND cdr.is_reserve_ = #{isReserve}
 | 
	
		
			
				|  |  |              </if>
 | 
	
		
			
				|  |  | +            <if test="musicGroupId != null and musicGroupId != ''">
 | 
	
		
			
				|  |  | +                AND cdr.music_group_id_ = #{musicGroupId}
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  | +            <if test="musicGroupId == null">
 | 
	
		
			
				|  |  | +                AND cdr.music_group_id_ IS NULL
 | 
	
		
			
				|  |  | +            </if>
 | 
	
		
			
				|  |  |          </where>
 | 
	
		
			
				|  |  |      </sql>
 | 
	
		
			
				|  |  |  </mapper>
 |