huanghongfa
2021-06-05 62ef4ba5d19e489e8cb0a87f0e95fbb945dd7fde
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridMemberRelationMapper.xml
@@ -69,5 +69,251 @@
      WHERE
         grid_member_id = #{userId}
   </select>
   <select id="gridMemberStatistics" resultType="com.panzhihua.common.model.vos.grid.EventStatisticsMemberAdminVO"
         parameterType="com.panzhihua.common.model.dtos.grid.MemberStatisticsAdminDTO">
      SELECT DISTINCT
         su.nick_name,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 5
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addTFTotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 5
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
            ) AS handleTFTotal,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 3
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addMDTotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 3
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
            ) AS handleMDTotal,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 1
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addZATotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 1
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
            ) AS handleZATotal,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 4
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addBWDTotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 4
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
            ) AS handleBWDTotal,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 2
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addGGTotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 2
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
            ) AS handleGGTotal,(
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 6
            AND event_status = 2
            AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS addTSTotal,
         (
         SELECT
            count( id )
         FROM
            `event`
         WHERE
            event_category = 1
            AND event_type = 6
            AND event_status = 2
            AND event_process_status = 2
            AND process_user_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS handleTSTotal,
         ( SELECT count( id ) FROM event_visiting_tasks WHERE dell_user_id = su.user_id AND event_status = 2
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(dell_date,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(dell_date,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS handleZFTotal,
         ( SELECT count( id ) FROM com_act_easy_photo WHERE handle_status = 2 AND handler_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(feedback_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(feedback_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
          ) AS easyPhotoTotal,
         ( SELECT count( id ) FROM `event` WHERE event_category = 2 AND event_status = 2 AND grid_member_id = su.user_id
            <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
            </if>
            <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
               AND DATE_FORMAT(create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{statisticsAdminDTO.endTime}
            </if>
         ) AS propagandaEducationTotal
      FROM
         sys_user AS su
         LEFT JOIN `event` AS e ON su.user_id = e.grid_member_id
      WHERE
         su.type = 6
         <if test="statisticsAdminDTO.communityId!=null">
            AND su.community_id = #{statisticsAdminDTO.communityId}
         </if>
         <if test="statisticsAdminDTO.nickName!=null and statisticsAdminDTO.nickName != &quot;&quot;">
            AND su.nick_name like concat (#{statisticsAdminDTO.nickName},'%')
         </if>
      ORDER BY su.create_at desc
   </select>
</mapper>