Browse Source

用户数据及网格数量sql修改

dev
Jackwang 6 years ago
parent
commit
e189690594
  1. 11
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/UserAnalysisCountDTO.java
  2. 9
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java
  3. 14
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml

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

@ -3,6 +3,7 @@ package com.elink.esua.epdc.dto.user.result;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @program: esua-epdc-cloud
@ -30,4 +31,14 @@ public class UserAnalysisCountDTO implements Serializable {
**/
private Integer userCount;
/**
* 党员认证率
**/
private BigDecimal partyMemberPercent;
/**
* 居民认证率
**/
private BigDecimal residentPercent;
}

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

@ -161,8 +161,13 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl<UserAnalysisDao, Us
*/
@Override
public Result getUserStatistics(UserCountDTO formDto) {
UserAnalysisCountDTO message = baseDao.getUserStatistics(formDto, SecurityUser.getUser().getDeptIdList());
return new Result<UserAnalysisCountDTO>().ok(message);
if(formDto.getDeptId()!=null && !"".equals(formDto.getDeptId())){
UserAnalysisCountDTO message = baseDao.getUserStatistics(formDto, SecurityUser.getUser().getDeptIdList());
return new Result<UserAnalysisCountDTO>().ok(message);
}else{
UserAnalysisCountDTO message = baseDao.getUserStatistics(formDto, null);
return new Result<UserAnalysisCountDTO>().ok(message);
}
}

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

@ -188,9 +188,11 @@
<select id="getUserStatistics" resultType="com.elink.esua.epdc.dto.user.result.UserAnalysisCountDTO"
parameterType="com.elink.esua.epdc.dto.user.form.UserCountDTO">
SELECT
t.userCount,
t.userCount as allUserCount,
t.partyMemberCount,
t.residentCount - t.partyMemberCount allUserCount
t.residentCount userCount,
round(t.partyMemberCount/t.userCount,2) as partyMemberPercent,
round(t.residentCount/t.userCount,2) as residentPercent
FROM
(
SELECT
@ -202,18 +204,16 @@
LEFT JOIN esua_epdc_admin.sys_dept ad ON u.DEPT_ID = ad.ID
AND ad.type_key = 'grid_party'
LEFT JOIN esua_epdc_admin.sys_dept ad1 ON ad.pid = ad1.id
LEFT JOIN esua_epdc_admin.sys_dept ad2 ON ad1.pid = ad2.id
WHERE
u.DEL_FLAG = '0'
AND ad.id IS NOT NULL
<if test="deptIdList != null and deptIdList.size() > 0">
and ad2.ID in
and ad.ID in
<foreach item="deptIdItem" collection="deptIdList" open="(" separator="," close=")">
#{deptIdItem}
</foreach>
</if>
<if test='formDto.deptId != null and formDto.deptId != ""'>
AND ad2.id = #{formDto.deptId}
AND ( ad1.id = #{formDto.deptId} or ad.id = #{formDto.deptId})
</if>
)t
@ -239,7 +239,7 @@
</if>
<if test='formDto.deptId != null and formDto.deptId != ""'>
AND ad2.id = #{formDto.deptId}
AND (ad.id = #{formDto.deptId} or ad1.id = #{formDto.deptId} or ad2.id = #{formDto.deptId})
</if>
ORDER BY
ad.create_date ASC

Loading…
Cancel
Save