Browse Source

居民信息大屏数据接口修改

feature/syp_points
songyunpeng 5 years ago
parent
commit
fe5fa4f935
  1. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiScreenPopulationController.java
  2. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  3. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java
  4. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java
  5. 5
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java
  6. 4
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcScreenGridRankingFormDTO.java
  7. 11
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcScreenPopulationInformationController.java
  8. 17
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PopulationInformationDao.java
  9. 4
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PopulationInformationService.java
  10. 12
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PopulationInformationServiceImpl.java
  11. 99
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PopulationInformationDao.xml

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiScreenPopulationController.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.annotation.ReportData;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.DeptOption;
@ -16,8 +17,6 @@ import com.elink.esua.epdc.service.CustomService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 用户模块
*
@ -44,7 +43,7 @@ public class ApiScreenPopulationController {
**/
@ReportData
@PostMapping("selectPeople")
public Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(@RequestBody EpdcScreenSelectPeopleFormDTO dto){
public Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(@RequestBody EpdcScreenSelectPeopleFormDTO dto){
ValidatorUtils.validateEntity(dto);
return appUserService.selectPeople(dto);
}
@ -98,7 +97,7 @@ public class ApiScreenPopulationController {
**/
@ReportData
@PostMapping("gridRanking")
public Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto){
public Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto){
ValidatorUtils.validateEntity(dto);
return appUserService.gridRanking(dto);
}

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java

@ -1,17 +1,19 @@
package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.*;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.form.v2.EpdcCompleteVolunteerInfoV2FormDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppUserRankingFormDTO;
import com.elink.esua.epdc.feign.fallback.UserFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -490,7 +492,7 @@ public interface UserFeignClient {
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>>
**/
@PostMapping(value = "app-user/screenPopulationInfo/selectPeople", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto);
Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto);
/**
@ -520,5 +522,5 @@ public interface UserFeignClient {
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
@PostMapping(value = "app-user/screenPopulationInfo/gridRanking", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto);
Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto);
}

6
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java

@ -1,13 +1,13 @@
package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.*;
import com.elink.esua.epdc.dto.epdc.form.*;
import com.elink.esua.epdc.dto.epdc.form.v2.EpdcCompleteVolunteerInfoV2FormDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppUserRankingFormDTO;
import com.elink.esua.epdc.feign.UserFeignClient;
import org.springframework.stereotype.Component;
@ -234,7 +234,7 @@ public class UserFeignClientFallback implements UserFeignClient {
}
@Override
public Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
public Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "selectPeople", dto);
}
@ -249,7 +249,7 @@ public class UserFeignClientFallback implements UserFeignClient {
}
@Override
public Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto) {
public Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "gridRanking", dto);
}
}

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.epdc.form.*;
@ -8,8 +9,8 @@ import com.elink.esua.epdc.dto.epdc.form.v2.EpdcCompleteVolunteerInfoV2FormDTO;
import com.elink.esua.epdc.dto.epdc.result.*;
import com.elink.esua.epdc.dto.form.*;
import com.elink.esua.epdc.dto.form.v2.EpdcCompleteUserInfoFormV2DTO;
import com.elink.esua.epdc.dto.result.EpdcAppRegisterCallbackDTO;
import com.elink.esua.epdc.dto.result.EpdcAppAuthorizationDTO;
import com.elink.esua.epdc.dto.result.EpdcAppRegisterCallbackDTO;
import com.elink.esua.epdc.dto.result.EpdcCompleteUserInfoDTO;
import java.util.List;
@ -326,7 +327,7 @@ public interface AppUserService {
* @Param [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>>
**/
Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto);
Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto);
/**
* @Description 大屏找人详情接口
* @Author songyunpeng
@ -358,5 +359,5 @@ public interface AppUserService {
* @Param [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto);
Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto);
}

5
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java

@ -15,6 +15,7 @@ import com.elink.esua.epdc.common.token.util.CpUserDetailRedis;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.enums.*;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import com.elink.esua.epdc.commons.tools.utils.*;
import com.elink.esua.epdc.dto.*;
@ -1587,7 +1588,7 @@ public class AppUserServiceImpl implements AppUserService {
}
@Override
public Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
public Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
return userFeignClient.selectPeople(dto);
}
@ -1607,7 +1608,7 @@ public class AppUserServiceImpl implements AppUserService {
}
@Override
public Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto) {
public Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto) {
return userFeignClient.gridRanking(dto);
}

4
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcScreenGridRankingFormDTO.java

@ -16,13 +16,13 @@ public class EpdcScreenGridRankingFormDTO {
/**
* 页码
*/
@Min(value = 1, message = "页码必须大于0")
@Min(value = 0, message = "页码必须大于0")
private Integer pageIndex;
/**
* 页容量
*/
@Min(value = 1, message = "页容量必须大于0")
@Min(value = 0, message = "页容量必须大于0")
private Integer pageSize;
/**

11
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcScreenPopulationInformationController.java

@ -17,6 +17,7 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcScreenGridRankingFormDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcScreenSelectPeopleDetailFormDTO;
@ -32,8 +33,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 大屏接口
@ -57,8 +56,8 @@ public class EpdcScreenPopulationInformationController {
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>>
**/
@PostMapping("selectPeople")
public Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(@RequestBody EpdcScreenSelectPeopleFormDTO dto){
return populationInformationService.selectPeople(dto);
public Result<PageData<EpdcScreenSelectPeopleResultDTO>> selectPeople(@RequestBody EpdcScreenSelectPeopleFormDTO dto){
return new Result<PageData<EpdcScreenSelectPeopleResultDTO>>().ok(populationInformationService.selectPeople(dto));
}
/**
* @Description 大屏找人详情接口
@ -90,8 +89,8 @@ public class EpdcScreenPopulationInformationController {
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
@PostMapping("gridRanking")
public Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto){
return populationInformationService.gridRanking(dto);
public Result<PageData<EpdcScreenGridRankingResultDTO>> gridRanking(@RequestBody EpdcScreenGridRankingFormDTO dto){
return new Result<PageData<EpdcScreenGridRankingResultDTO>>().ok(populationInformationService.gridRanking(dto));
}

17
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PopulationInformationDao.java

@ -112,7 +112,14 @@ public interface PopulationInformationDao extends BaseDao<PopulationInformationE
* @Param [dto]
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>
**/
List<EpdcScreenSelectPeopleResultDTO> selectListPeople(EpdcScreenSelectPeopleFormDTO dto);
List<EpdcScreenSelectPeopleResultDTO> selectListPeople(EpdcScreenSelectPeopleFormDTO dto);/**
* @Description 大屏找人接口 - count
* @Author songyunpeng
* @Date 2020/9/14
* @Param [dto]
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>
**/
Integer selectCountListPeople(EpdcScreenSelectPeopleFormDTO dto);
/**
* @Description 房屋用途数据接口
* @Author songyunpeng
@ -129,4 +136,12 @@ public interface PopulationInformationDao extends BaseDao<PopulationInformationE
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
List<EpdcScreenGridRankingResultDTO> selectListGridRanking(EpdcScreenGridRankingFormDTO dto);
/**
* @Description 网格排名 count
* @Author songyunpeng
* @Date 2020/9/15
* @Param [dto]
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
Integer selectCountListGridRanking(EpdcScreenGridRankingFormDTO dto);
}

4
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PopulationInformationService.java

@ -173,7 +173,7 @@ public interface PopulationInformationService extends BaseService<PopulationInfo
* @Param [epdcScreenSelectPeopleFormDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcScreenSelectPeopleResultDTO>>
**/
Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO epdcScreenSelectPeopleFormDTO);
PageData<EpdcScreenSelectPeopleResultDTO> selectPeople(EpdcScreenSelectPeopleFormDTO epdcScreenSelectPeopleFormDTO);
/**
* @Description 大屏找人详情接口
* @Author songyunpeng
@ -197,5 +197,5 @@ public interface PopulationInformationService extends BaseService<PopulationInfo
* @Param [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcScreenGridRankingResultDTO>
**/
Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto);
PageData<EpdcScreenGridRankingResultDTO> gridRanking(EpdcScreenGridRankingFormDTO dto);
}

12
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PopulationInformationServiceImpl.java

@ -311,11 +311,11 @@ public class PopulationInformationServiceImpl extends BaseServiceImpl<Population
}
@Override
public Result<List<EpdcScreenSelectPeopleResultDTO>> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
public PageData<EpdcScreenSelectPeopleResultDTO> selectPeople(EpdcScreenSelectPeopleFormDTO dto) {
int pageIndex = (dto.getPageIndex() - NumConstant.ONE) * dto.getPageSize();
dto.setPageIndex(pageIndex);
List<EpdcScreenSelectPeopleResultDTO> data = baseDao.selectListPeople(dto);
return new Result().ok(data);
List<EpdcScreenSelectPeopleResultDTO> list = baseDao.selectListPeople(dto);
return new PageData<>(list,baseDao.selectCountListPeople(dto));
}
@Override
@ -417,11 +417,11 @@ public class PopulationInformationServiceImpl extends BaseServiceImpl<Population
}
@Override
public Result<List<EpdcScreenGridRankingResultDTO>> gridRanking(EpdcScreenGridRankingFormDTO dto) {
public PageData<EpdcScreenGridRankingResultDTO> gridRanking(EpdcScreenGridRankingFormDTO dto) {
int pageIndex = (dto.getPageIndex() - NumConstant.ONE) * dto.getPageSize();
dto.setPageIndex(pageIndex);
List<EpdcScreenGridRankingResultDTO> data = baseDao.selectListGridRanking(dto);
return new Result<List<EpdcScreenGridRankingResultDTO>>().ok(data);
List<EpdcScreenGridRankingResultDTO> list = baseDao.selectListGridRanking(dto);
return new PageData<>(list, baseDao.selectCountListGridRanking(dto));
}
private void setHouseUse(String houseUse,HousingInfo housingInfo){

99
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PopulationInformationDao.xml

@ -241,6 +241,73 @@
order by CREATED_TIME desc
LIMIT #{pageIndex},#{pageSize}
</select>
<select id="selectCountListPeople"
resultType="java.lang.Integer">
select count(1) from(
select data.name,data.gridName,data.identityFlag,data.houseId,data.populationId,data.identity,data.CREATED_TIME,data.identity as identityName from (
select
t.RESIDENTS_NAME as name,
group_concat(DISTINCT substring_index(t2.ALL_DEPT_NAMES,'-',-1)) as gridName,
1 as identityFlag,
'户主' as identity,
'' as houseId,
t.ID as populationId,
t.CREATED_TIME
from epdc_population_information t
left join epdc_house_resident t1 on t.ID = t1.RESIDENT_ID and t1.DEL_FLAG = '0'
left join epdc_housing_information t2 on t2.ID = t1.HOUSE_ID and t2.DEL_FLAG = '0'
where t.DEL_FLAG = '0' and t.RESIDENTS_IDENTITY_NO is not null and t.RESIDENTS_IDENTITY_NO != '' and t1.IS_HOUSE_HEAD ='1'
<if test="name != null and name != ''">
and t.RESIDENTS_NAME like concat('%', #{name}, '%')
</if>
<if test="phone != null and phone != ''">
and t.RESIDENTS_PHONE like concat('%', #{phone}, '%')
</if>
<if test="communityId != null and communityId != ''">
and find_in_set(#{communityId},t2.ALL_DEPT_IDS)
</if>
<if test="gridId != null and gridId != ''">
and find_in_set(#{gridId},t2.ALL_DEPT_IDS)
</if>
group by t.ID
union all
select
t.RESIDENTS_NAME as name,
t2.gridName,
2 as identityFlag,
'居住人' as identity,
'' as houseId,
t.ID as populationId,
t.CREATED_TIME
from epdc_population_information t
left join epdc_house_resident t1 on t.ID = t1.RESIDENT_ID
left join
(select
t.ID,group_concat(DISTINCT substring_index(t2.ALL_DEPT_NAMES,'-',-1)) as gridName
from epdc_population_information t
left join epdc_house_resident t1 on t.ID = t1.RESIDENT_ID and t1.DEL_FLAG ='0'
left join epdc_housing_information t2 on t2.ID = t1.HOUSE_ID and t2.DEL_FLAG = '0'
where t.DEL_FLAG = '0' and t.RESIDENTS_IDENTITY_NO is not null and t.RESIDENTS_IDENTITY_NO != '' and t1.IS_HOUSE_HEAD ='1'
<if test="communityId != null and communityId != ''">
and find_in_set(#{communityId},t2.ALL_DEPT_IDS)
</if>
<if test="gridId != null and gridId != ''">
and find_in_set(#{gridId},t2.ALL_DEPT_IDS)
</if>
group by t.ID
)t2 on t2.ID = t1.HOUSE_HEAD_ID
where t.DEL_FLAG = '0' and t1.DEL_FLAG ='0' and t2.gridName is not null
and (t.RESIDENTS_IDENTITY_NO is null or t.RESIDENTS_IDENTITY_NO = '') and t1.IS_HOUSE_HEAD = '0'
<if test="name != null and name != ''">
and t.RESIDENTS_NAME like concat('%', #{name}, '%')
</if>
<if test="phone != null and phone != ''">
and t.RESIDENTS_PHONE like concat('%', #{phone}, '%')
</if>
group by t.ID)data
order by CREATED_TIME desc
)a
</select>
<select id="selectHouseUseDataForScreen"
resultType="com.elink.esua.epdc.dto.epdc.result.EpdcScreenHouseUseResultDTO">
select
@ -286,6 +353,38 @@
LIMIT #{pageIndex},#{pageSize}
</if>
</select>
<select id="selectCountListGridRanking" resultType="java.lang.Integer">
<if test="rankCategory!=null and rankCategory == 0">
select count(1) from (
select ifnull(houseHead.houseHeadNum,0)+IFNULL(resident.residentNum,0) as total,houseHead.gridName from(
select count(1) as houseHeadNum,GRID_ID,gridName from(
select t2.GRID_ID,substring_index(t2.ALL_DEPT_NAMES,'-',-1) as gridName
from epdc_population_information t
left join epdc_house_resident t1 on t1.RESIDENT_ID = t.ID
left join epdc_housing_information t2 on t2.ID = t1.HOUSE_ID
where t.DEL_FLAG = '0'
and t1.DEL_FLAG = '0' and t2.DEL_FLAG='0'
and t1.IS_HOUSE_HEAD ='1'
group by t2.GRID_ID,t.ID)end
group by end.GRID_ID)houseHead
left join
(select count(1) as residentNum,GRID_ID,gridName from(
select count(1),t3.GRID_ID,substring_index(t3.ALL_DEPT_NAMES,'-',-1) as gridName from epdc_population_information t
left join epdc_house_resident t1 on t.ID = t1.RESIDENT_ID
left join epdc_house_resident t2 on t1.HOUSE_HEAD_ID = t2.RESIDENT_ID
left join epdc_housing_information t3 on t3.Id =t2.HOUSE_ID
where t.DEL_FLAG ='0' and t1.IS_HOUSE_HEAD='0' and t2.DEL_FLAG ='0' and t3.DEL_FLAG ='0'
group by t3.GRID_ID,t.ID)end
group by end.GRID_ID)resident on houseHead.GRID_ID = resident.GRID_ID
order by total desc)a
</if>
<if test="rankCategory!=null and rankCategory == 1">
select count(1) from (
select substring_index(ALL_DEPT_NAMES,'-',-1)gridName,count(1) as total from epdc_housing_information where DEL_FLAG ='0'
group by GRID_ID
order by total desc)a
</if>
</select>
</mapper>
Loading…
Cancel
Save