You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.6 KiB

<?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.epmet.dao.group.GroupDataDao">
<!-- 查询网格下的小组总数,状态为 “approved” -->
<select id="selectGridGroupTotal" resultType="com.epmet.dto.group.result.GridGroupTotalResultDTO" parameterType="com.epmet.dto.group.form.GridGroupTotalFormDTO">
SELECT
grid_id AS gridId,
COUNT(*) AS gridGroupTotal
FROM
resi_group
WHERE
DEL_FLAG = 0
AND state = #{state}
AND customer_id = #{customerId}
GROUP BY
grid_id
</select>
<!-- 查询网格下的小组成员总数 , 人员状态不为 “removed” -->
<select id="selectGridGroupPeopleTotal" parameterType="com.epmet.dto.group.form.GridGroupPeopleTotalFormDTO" resultType="com.epmet.dto.group.result.GridGroupPeopleTotalResultDTO">
SELECT
rg.grid_id AS gridId,
COUNT(rgm.id) AS gridGroupPeopleTotal
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
WHERE
rg.DEL_FLAG = 0
AND rg.state = #{state}
AND rg.customer_id = #{customerId}
AND rgm.status != #{status}
GROUP BY rg.grid_id
</select>
<!-- 查询每个小组的人数 -->
<select id="selectEveryGroupPeopleCount" parameterType="com.epmet.dto.group.form.GridGroupPeopleFormDTO" resultType="com.epmet.dto.group.result.GridGroupPeopleResultDTO">
SELECT
rg.grid_id AS gridId,
rg.id AS groupId,
rg.group_name AS groupName,
COUNT( rgm.id ) AS groupCount
FROM
resi_group rg
LEFT JOIN resi_group_member rgm ON rgm.resi_group_id = rg.id
WHERE
rg.DEL_FLAG = 0
AND rg.state = #{state}
AND rg.customer_id = #{customerId}
AND rgm.STATUS != #{status}
GROUP BY
rgm.resi_group_id
</select>
<!-- 查询网格下的小组日增数 -->
<select id="selectGroupIncr" resultType="com.epmet.dto.group.result.GroupIncrResultDTO" parameterType="com.epmet.dto.group.form.GroupIncrFormDTO">
SELECT
COUNT(*) AS groupIncr,
grid_id AS gridId
FROM
resi_group
WHERE
state = #{state}
AND customer_id = #{customerId}
AND DATE_FORMAT( CREATED_TIME, '%Y-%m-%d' ) = #{yesterday}
GROUP BY
grid_id
</select>
</mapper>