Browse Source

【PC端】用户数据分析模块功能完善-王公峰-2020-07-15

feature/dangjian
wanggongfeng 5 years ago
parent
commit
b1b3c8ff33
  1. 5
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/GridOpeningResultDTO.java
  2. 16
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/GridOpiningExcel.java
  3. 9
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java
  4. 8
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java
  5. 29
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml

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

@ -95,5 +95,10 @@ public class GridOpeningResultDTO implements Serializable {
*/
private String gridLeader;
/**
* 企业数
*/
private int enterpriseCount = 0;
}

16
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/GridOpiningExcel.java

@ -22,12 +22,12 @@ public class GridOpiningExcel {
@Excel(name = "党员数")
private Integer partyCount;
@Excel(name = "未注册居民")
private Integer unAuthorizedCount;
@Excel(name = "已注册居民")
@Excel(name = "已认证居民")
private int residentCount;
@Excel(name = "未认证居民")
private Integer unAuthorizedCount;
@Excel(name = "新闻发布数")
private Integer newsCount;
@ -37,9 +37,12 @@ public class GridOpiningExcel {
@Excel(name = "群成员数")
private Integer communityMemberCount;
@Excel(name = "话题数")
@Excel(name = "话题数")
private Integer communityTopicCount;
@Excel(name = "议题总数")
private Integer eventCount;
@Excel(name = "项目数")
private Integer itemCount;
@ -49,7 +52,6 @@ public class GridOpiningExcel {
@Excel(name = "好评数")
private Integer itemPraiseCount;
@Excel(name = "议题数")
private Integer eventCount;
}

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

@ -261,5 +261,14 @@ public interface UserAnalysisDao extends BaseMapper<UserAnalysisDTO> {
*/
List<UserDataRankResultDTO> selectListUserDataRankByUser(Map<String, Object> params);
/**
* 查询企业代表数
* @param params
* @return
* @author wanggongfeng
* @date 2020/7/15 17:48
*/
List<GridOpeningResultDTO> selectExportEnterpriseCountByGridId(Map<String, Object> params);
}

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

@ -83,6 +83,8 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
List<GridOpeningResultDTO> registerDataList = baseDao.selectListReigistData(params);
// 未认证用户数
//List<GridOpeningResultDTO> unAuthCountList = baseDao.selectListUnAuthorizedCountByGridId(params);
// 企业代表数
List<GridOpeningResultDTO> enterpriseCountList = baseDao.selectExportEnterpriseCountByGridId(params);
// 新闻数 通知数 议题数
List<GridOpeningResultDTO> nneCountList = baseDao.selectListNewsNoticeEventCount(params);
// 项目数,项目结案数,项目好评数
@ -112,6 +114,12 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
break;
}
}
for (GridOpeningResultDTO enterpriseCountData : enterpriseCountList) {
if (resultDto.getGridId().equals(enterpriseCountData.getGridId())) {
resultDto.setEnterpriseCount(enterpriseCountData.getEnterpriseCount());
break;
}
}
for (GridOpeningResultDTO itemCountData : itemCountList) {
if (resultDto.getGridId().equals(itemCountData.getGridId())) {
resultDto.setItemCount(itemCountData.getItemCount());

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

@ -1297,4 +1297,33 @@
</choose>
</select>
<select id="selectExportEnterpriseCountByGridId" resultType="com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO">
SELECT
t0.`name` gridId,
count(uu.ID) enterpriseCount
FROM
(
SELECT
ad.id,
ad.`name`,
ad.pid
FROM
esua_epdc_admin.sys_dept ad
WHERE
ad.del_flag = 0
<if test="gridIdList != null and gridIdList.size() > 0">
AND ad.id in <include refid="foreachGridIdList"></include>
</if>
) t0
LEFT JOIN esua_epdc_custom.epdc_enterprise_info uu ON find_in_set(t0.id,uu.ALL_DEPT_IDS)
AND uu.DEL_FLAG = '0'
<if test="startTime != null and endTime != null and endTime != ''">
AND DATE_FORMAT(uu.CREATED_TIME,'%Y-%m-%d') BETWEEN #{startTime} AND #{endTime}
</if>
GROUP BY
t0.id
ORDER BY
t0.id ASC
</select>
</mapper>

Loading…
Cancel
Save