Browse Source

修改网格开通情况列表接口

dev
yujintao 6 years ago
parent
commit
6034e6e4d8
  1. 41
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/GridOpeningResultDTO.java
  2. 92
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java
  3. 109
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java
  4. 326
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml

41
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/GridOpeningResultDTO.java

@ -6,15 +6,17 @@ import lombok.Data;
import java.io.Serializable;
/**
* @author: qushutong
* @Date: 2020/2/11 13:09
* @Description: 开通网格情况
* @author: qushutong
* @Date: 2020/2/11 13:09
* @Description: 开通网格情况
*/
@Data
public class GridOpeningResultDTO implements Serializable {
private static final long serialVersionUID = -852226852590425991L;
private String gridId;
/**
* 街道社区网格
*/
@ -22,56 +24,65 @@ public class GridOpeningResultDTO implements Serializable {
/**
* 用户注册数
*/
private String registerCount;
private Integer registerCount;
/**
* 认证居民
*/
private Integer residentCount;
/**
* 党员注册数
* 认证党员数
*/
private String partyCount;
private Integer partyCount;
/**
* 居民扫码数
*/
private String ewmCount;
private Integer ewmCount;
/**
* 新闻数
*/
private String newsCount;
private Integer newsCount;
/**
* 通知数
*/
private String noticeCount;
private Integer noticeCount;
/**
* 议题数
*/
private String eventCount;
private Integer eventCount;
/**
* 项目数
*/
private String itemCount;
private Integer itemCount;
/**
* 项目结案数
*/
private String itemCloseCount;
private Integer itemCloseCount;
/**
* 社群数
*/
private String communityCount;
private Integer communityCount;
/**
* 社群成员数
*/
private String communityMemberCount;
private Integer communityMemberCount;
/**
* 社群话题数
*/
private String communityTopicCount;
private Integer communityTopicCount;
/**
* 网格长姓名
*/
private String gridLeader;
}

92
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java

@ -53,42 +53,42 @@ public interface UserAnalysisDao extends BaseMapper<UserAnalysisDTO> {
/***
* 新闻
* @param
* 根据网格统计新闻发布数
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListNewsCount();
List<GridOpeningResultDTO> selectListNewsCount(Map<String, Object> params);
/***
* 通知
* @param
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListNoticeCount();
List<GridOpeningResultDTO> selectListNoticeCount(Map<String, Object> params);
/***
* 议题数
* @param
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListEventCount();
List<GridOpeningResultDTO> selectListEventCount(Map<String, Object> params);
/***
* 项目数
* @param
* 项目数项目结案数
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListItemCount();
List<GridOpeningResultDTO> selectListItemCount(Map<String, Object> params);
/**
* 查询用户数据排行
@ -111,72 +111,62 @@ public interface UserAnalysisDao extends BaseMapper<UserAnalysisDTO> {
List<UserDataRankResultDTO> selectListPartyAuthFailureCountByStreetId(@Param("streetIdList") List<String> streetIdList);
/***
* 项目结案数
* @param
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListItemCloseCount();
/***
* 社群数
* @param
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListCommunityCount();
/***
* 社群成员数
* @param
* 社群数 社群成员数 社群话题数
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListCommunityMemberCount();
List<GridOpeningResultDTO> selectListCommunityCount(Map<String, Object> params);
/***
* 社群话题数
* @param
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author qushutong
* @date 2020/2/11 14:10
*/
List<GridOpeningResultDTO> selectListCommunityTopicCount();
/**
*用户数据统计
* 用户数据统计
*
* @author wangtong
* @date 2020/2/11 14:55
* @param [formDTO]
* @return com.elink.esua.epdc.dto.user.result.UserAnalysisCountDTO
* @author wangtong
* @date 2020/2/11 14:55
*/
UserAnalysisCountDTO getUserStatistics(UserCountDTO formDto);
/**
*网格数量统计
* 网格数量统计
*
* @author wangtong
* @date 2020/2/11 14:55
* @param [formDTO]
* @return com.elink.esua.epdc.dto.user.result.GriddingCountDTO
* @author wangtong
* @date 2020/2/11 14:55
*/
GriddingCountDTO getGridStatistics(UserCountDTO formDto);
/**
* @Description 注册用户数排名
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.user.result.UserSortRankResultDTO>>
* @Description 注册用户数排名
* @Author lpf
* @Date 2020/2/11
* @Date 2020/2/11
* @Param [formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.user.result.UserSortRankResultDTO>>
**/
List<UserSortRankResultDTO> userRegisterSort(UserSortRankFormDTO formDto, List<Long> deptIdList);
/**
* 开通网格列表查询字段网格的完整机构名称网格id网格长名称
*
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author work@yujt.net.cn
* @date 2020/2/12 13:27
*/
List<GridOpeningResultDTO> selectListGridHasMaCode(Map<String, Object> params);
/**
* 根据网格id查询网格内注册用户数认证党员数认证居民数
*
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO>
* @author work@yujt.net.cn
* @date 2020/2/12 14:06
*/
List<GridOpeningResultDTO> selectListReigistData(Map<String, Object> params);
}

109
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java

@ -42,46 +42,68 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
@Override
public PageData<GridOpeningResultDTO> listPageGridOpening(Map<String, Object> params) {
// 注册数
List<GridOpeningResultDTO> registerCountList = baseDao.selectListReigistCount();
// 党员数
List<GridOpeningResultDTO> partyCountList = baseDao.selectListPartyCount();
// 居民扫码数
List<GridOpeningResultDTO> ewmCountList = baseDao.selectListEwmCount();
IPage<GridOpeningResultDTO> iPage = this.getPage(params);
List<GridOpeningResultDTO> list = baseDao.selectListGridHasMaCode(params);
PageData<GridOpeningResultDTO> page = new PageData<>(list, iPage.getTotal());
if (CollUtil.isEmpty(list)) {
return page;
}
List<String> gridIdList = Lists.newArrayList();
for (GridOpeningResultDTO gridOpeningResult : list) {
gridIdList.add(gridOpeningResult.getGridId());
}
params.put("gridIdList", gridIdList);
// 注册数,认证党员数,认证居民数
List<GridOpeningResultDTO> registerDataList = baseDao.selectListReigistData(params);
// 新闻数
List<GridOpeningResultDTO> newsCountList = baseDao.selectListNewsCount();
List<GridOpeningResultDTO> newsCountList = baseDao.selectListNewsCount(params);
// 通知数
List<GridOpeningResultDTO> noticeCountList = baseDao.selectListNoticeCount();
List<GridOpeningResultDTO> noticeCountList = baseDao.selectListNoticeCount(params);
// 议题数
List<GridOpeningResultDTO> eventCountList = baseDao.selectListEventCount();
// 项目数
List<GridOpeningResultDTO> itemCountList = baseDao.selectListItemCount();
// 结案数
List<GridOpeningResultDTO> itemCloseCountList = baseDao.selectListItemCloseCount();
// 社群数
List<GridOpeningResultDTO> communityCountList = baseDao.selectListCommunityCount();
// 社群成员数
List<GridOpeningResultDTO> communityMemberCountList = baseDao.selectListCommunityMemberCount();
// 社群话题数
List<GridOpeningResultDTO> communityTopicCountList = baseDao.selectListCommunityTopicCount();
GridOpeningResultDTO openingResultDto;
for (int i = 0; i < registerCountList.size(); i++) {
openingResultDto = registerCountList.get(i);
openingResultDto.setRegisterCount(registerCountList.get(i).getRegisterCount());
openingResultDto.setPartyCount(partyCountList.get(i).getPartyCount());
openingResultDto.setNewsCount(newsCountList.get(i).getNewsCount());
openingResultDto.setNoticeCount(noticeCountList.get(i).getNoticeCount());
openingResultDto.setEwmCount(ewmCountList.get(i).getEwmCount());
openingResultDto.setEventCount(eventCountList.get(i).getEventCount());
openingResultDto.setItemCount(itemCountList.get(i).getItemCount());
openingResultDto.setItemCloseCount(itemCloseCountList.get(i).getItemCloseCount());
openingResultDto.setCommunityCount(communityCountList.get(i).getCommunityCount());
openingResultDto.setCommunityMemberCount(communityMemberCountList.get(i).getCommunityMemberCount());
openingResultDto.setCommunityTopicCount(communityTopicCountList.get(i).getCommunityTopicCount());
}
List<GridOpeningResultDTO> eventCountList = baseDao.selectListEventCount(params);
// 项目数,项目结案数
List<GridOpeningResultDTO> itemCountList = baseDao.selectListItemCount(params);
// 社群数 社群成员数 社群话题数
List<GridOpeningResultDTO> communityCountList = baseDao.selectListCommunityCount(params);
IPage<GridOpeningResultDTO> iPage = this.getPage(params);
return new PageData<>(registerCountList, iPage.getTotal());
for (GridOpeningResultDTO resultDto : list) {
for (GridOpeningResultDTO registerData : registerDataList) {
if(resultDto.getGridId().equals(registerData.getGridId())){
resultDto.setRegisterCount(registerData.getRegisterCount());
resultDto.setPartyCount(registerData.getPartyCount());
resultDto.setRegisterCount(registerData.getRegisterCount());
}
}
for (GridOpeningResultDTO newsCountData : newsCountList) {
if(resultDto.getGridId().equals(newsCountData.getGridId())){
resultDto.setNewsCount(newsCountData.getNewsCount());
}
}
for (GridOpeningResultDTO noticeCounData : noticeCountList) {
if(resultDto.getGridId().equals(noticeCounData.getGridId())){
resultDto.setNoticeCount(noticeCounData.getNoticeCount());
}
}
for (GridOpeningResultDTO eventCountData : eventCountList) {
if(resultDto.getGridId().equals(eventCountData.getGridId())){
resultDto.setEventCount(eventCountData.getEventCount());
}
}
for (GridOpeningResultDTO itemCountData : itemCountList) {
if(resultDto.getGridId().equals(itemCountData.getGridId())){
resultDto.setItemCloseCount(itemCountData.getItemCloseCount());
}
}
for (GridOpeningResultDTO communityCountData : communityCountList) {
if(resultDto.getGridId().equals(communityCountData.getGridId())){
resultDto.setCommunityCount(communityCountData.getCommunityCount());
resultDto.setCommunityTopicCount(communityCountData.getCommunityTopicCount());
resultDto.setCommunityMemberCount(communityCountData.getCommunityMemberCount());
}
}
}
return page;
}
@Override
@ -130,12 +152,12 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
}
/**
*用户数据统计
* 用户数据统计
*
* @author wangtong
* @date 2020/2/11 14:33
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author wangtong
* @date 2020/2/11 14:33
*/
@Override
public Result getUserStatistics(UserCountDTO formDto) {
@ -145,12 +167,12 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
/**
*网格开通状况
* 网格开通状况
*
* @author wangtong
* @date 2020/2/11 14:33
* @param formDto
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author wangtong
* @date 2020/2/11 14:33
*/
@Override
public Result getGridStatistics(UserCountDTO formDto) {
@ -163,5 +185,6 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize();
formDto.setPageIndex(pageIndex);
List<UserSortRankResultDTO> data = baseDao.userRegisterSort(formDto, SecurityUser.getUser().getDeptIdList());
return new Result<List<UserSortRankResultDTO>>().ok(data); }
return new Result<List<UserSortRankResultDTO>>().ok(data);
}
}

326
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml

@ -152,269 +152,84 @@
<!--新闻数-->
<select id="selectListNewsCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(ad2.`name`,ad1.`name`,t0.`name`) AS allDeptName,
count(un.ID) AS newsCount
COUNT(nn.ID) newsCount,nn.DEPT_ID gridId
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_news.epdc_news un ON un.dept_id = t0.id
AND un.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
esua_epdc_news.epdc_news nn
WHERE
nn.DEL_FLAG = '0'
<if test="gridIdList != null and gridIdList.size() > 0">
AND nn.DEPT_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
GROUP BY nn.DEPT_ID
</select>
<!--通知数-->
<select id="selectListNoticeCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(un.ID) AS noticeCount
SELECT
COUNT(nn.ID) newsCount,nn.DEPT_ID gridId
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_news.epdc_notice un ON un.dept_id = t0.id
AND un.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
esua_epdc_news.epdc_notice nn
WHERE
nn.DEL_FLAG = '0'
<if test="gridIdList != null and gridIdList.size() > 0">
AND nn.DEPT_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
GROUP BY nn.DEPT_ID
</select>
<!--议题数-->
<select id="selectListEventCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(epen.ID) AS eventCount
epen.GRID_ID gridId, COUNT( epen.ID ) eventCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_events.epdc_events epen ON epen.GRID_ID = t0.id
AND epen.DEL_FLAG = '0'
AND epen.EVENT_STATE = '4'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
esua_epdc_events.epdc_events epen
WHERE
epen.DEL_FLAG = '0' AND epen.EVENT_STATE = '4'
<if test="gridIdList != null and gridIdList.size() > 0">
AND epen.GRID_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
GROUP BY epen.GRID_ID
</select>
<!--项目数-->
<select id="selectListItemCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(epen.ID) AS itemCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_events.epdc_item epen ON epen.GRID_ID = t0.id
AND epen.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
</select>
<!--结案数-->
<select id="selectListItemCloseCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(epen.ID) AS itemCloseCount
epen.GRID_ID gridId,
COUNT( epen.ID ) itemCount,
count(epen.EVENT_STATE = '10' or null) itemCloseCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_events.epdc_item epen ON epen.GRID_ID = t0.id
AND epen.DEL_FLAG = '0'
AND epen.ITEM_STATE = '10'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
esua_epdc_events.epdc_item epen
WHERE
epen.DEL_FLAG = '0'
<if test="gridIdList != null and gridIdList.size() > 0">
AND epen.GRID_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
GROUP BY epen.GRID_ID
</select>
<!--社群数-->
<select id="selectListCommunityCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(epgr.ID) AS communityCount
epgr.GRID_ID gridId,
COUNT( DISTINCT epgr.ID ) communityCount,
COUNT( DISTINCT ug.user_id ) communityMemberCount,
COUNT( DISTINCT ut.ID ) communityTopicCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_group.epdc_group epgr ON epgr.GRID_ID = t0.id
AND epgr.DEL_FLAG = '0'
AND (
epgr.STATE = '10'
OR epgr.STATE = '15'
)
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
esua_epdc_group.epdc_group epgr
LEFT JOIN esua_epdc_group.epdc_user_group ug ON epgr.id = ug.group_id AND ug.DEL_FLAG = '0'
LEFT JOIN esua_epdc_group.epdc_topic ut ON epgr.id = ut.group_id AND ut.DEL_FLAG = '0'
WHERE
epgr.DEL_FLAG = '0' AND ( epgr.STATE = '10' OR epgr.STATE = '15' )
<if test="gridIdList != null and gridIdList.size() > 0">
AND epgr.GRID_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
GROUP BY epgr.GRID_ID
</select>
<!--社区成员数-->
<select id="selectListCommunityMemberCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(ug.ID) AS communityMemberCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_group.epdc_group epgr ON epgr.GRID_ID = t0.id
AND epgr.DEL_FLAG = '0'
AND (
epgr.STATE = '10'
OR epgr.STATE = '15'
)
LEFT JOIN esua_epdc_group.epdc_user_group ug ON epgr.id = ug.group_id
AND ug.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
</select>
<!--社群话题数-->
<select id="selectListCommunityTopicCount" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
CONCAT(
ad2.`name`,
ad1.`name`,
t0.`name`
) AS allDeptName,
count(ug.ID) AS communityTopicCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
) t0
LEFT JOIN esua_epdc_group.epdc_group epgr ON epgr.GRID_ID = t0.id
AND epgr.DEL_FLAG = '0'
AND (
epgr.STATE = '10'
OR epgr.STATE = '15'
)
LEFT JOIN esua_epdc_group.epdc_topic ug ON epgr.id = ug.group_id
AND ug.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = t0.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
GROUP BY
t0.id
ORDER BY
t0.id ASC
</select>
<select id="getUserStatistics" resultType="com.elink.esua.epdc.dto.user.result.UserAnalysisCountDTO" parameterType="com.elink.esua.epdc.dto.user.form.UserCountDTO">
SELECT
t.userCount,
@ -501,4 +316,49 @@
</if>
LIMIT #{formDto.pageIndex},#{formDto.pageSize}
</select>
<select id="selectListGridHasMaCode" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
ad.id gridId,
CONCAT( ad2.`name`, '-', ad1.`name`, '-', ad.`name` ) AS allDeptName,
GROUP_CONCAT( DISTINCT u.real_name ) gridLeader
FROM
esua_epdc_admin.sys_dept ad
LEFT JOIN esua_epdc_admin.epdc_dept_ma_code ama ON ad.id = ama.GRID_ID
AND ama.DEL_FLAG = '0'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad1.id = ad.pid
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad2.id = ad1.pid
LEFT JOIN esua_epdc_admin.sys_role_data_scope ards ON ards.dept_id = ad.id
LEFT JOIN esua_epdc_admin.sys_role r ON ards.role_id = r.id AND r.DEL_FLAG = 0
LEFT JOIN esua_epdc_admin.sys_role_user ru ON r.id = ru.role_id
LEFT JOIN esua_epdc_admin.sys_user u ON ru.user_id = u.id AND u.del_flag = 0
WHERE
ad.type_key = 'grid_party'
AND ad.del_flag = 0
AND ama.ID IS NOT NULL
GROUP BY
ad.id
ORDER BY
ama.CREATED_TIME DESC,
ad.create_date DESC
</select>
<select id="selectListReigistData" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
t.DEPT_ID, COUNT( t.ID ) registerCount,
COUNT(t.PARTY_FLAG = '0' OR NULL) residentCount,
COUNT(t.PARTY_FLAG = '1' OR NULL) partyCount
FROM (
SELECT
uu.ID, uu.DEPT_ID, uu.STATE, uu.PARTY_FLAG
FROM
esua_epdc_user.epdc_user uu
WHERE
uu.DEL_FLAG = '0'
<if test="gridIdList != null and gridIdList.size() > 0">
AND uu.DEPT_ID in <foreach item="item" collection="gridIdList" open="(" separator="," close=")"> #{item} </foreach>
</if>
AND uu.DEPT_ID IS NOT NULL
) t
GROUP BY t.DEPT_ID
</select>
</mapper>

Loading…
Cancel
Save