huanghongfa
2021-07-30 b200b681bc401bb11c133a79273ba78cb6ebedf8
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridMemberRelationMapper.xml
@@ -384,4 +384,250 @@
      </if>
   </select>
   <select id="gridMemberStatisticsAll" 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 grid_member = su.user_id AND event_status = 2
      <if test="statisticsAdminDTO.startTime!=null and statisticsAdminDTO.startTime != &quot;&quot;">
         AND DATE_FORMAT(submit_date,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{statisticsAdminDTO.startTime}
      </if>
      <if test="statisticsAdminDTO.endTime!=null and statisticsAdminDTO.endTime != &quot;&quot;">
         AND DATE_FORMAT(submit_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>