From 254be9a1d49d673a371970f7705c40d3bd2d9984 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Thu, 2 Jun 2022 11:04:17 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FactNeighborhoodUserHouseDailyDTO.java | 9 +- .../controller/FactUserHouseController.java | 4 +- .../java/com/epmet/dao/org/IcHouseDao.java | 4 + .../FactNeighborhoodUserHouseDailyDao.java | 15 ++- .../com/epmet/dao/user/IcResiUserDao.java | 2 + .../FactNeighborhoodUserHouseDailyEntity.java | 11 ++- .../com/epmet/service/org/HouseService.java | 20 ++++ .../service/org/impl/HouseServiceImpl.java | 10 ++ ...FactNeighborhoodUserHouseDailyService.java | 39 +++++++- .../service/stats/FactUserHouseService.java | 12 ++- .../FactGridUserHouseDailyServiceImpl.java | 24 +++-- ...NeighborhoodUserHouseDailyServiceImpl.java | 66 +++++++++++-- .../stats/impl/FactUserHouseServiceImpl.java | 89 ++++++++++++++++-- .../epmet/service/user/IcResiUserService.java | 10 ++ .../user/impl/IcResiUserServiceImpl.java | 5 + .../main/resources/mapper/org/IcHouseDao.xml | 61 ++++++++++++ .../FactNeighborhoodUserHouseDailyDao.xml | 94 ++++++++++++++++++- .../resources/mapper/user/IcResiUserDao.xml | 20 ++++ 18 files changed, 456 insertions(+), 39 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/FactNeighborhoodUserHouseDailyDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/FactNeighborhoodUserHouseDailyDTO.java index a491bbdd3d..9a2a6d7328 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/FactNeighborhoodUserHouseDailyDTO.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/FactNeighborhoodUserHouseDailyDTO.java @@ -27,7 +27,7 @@ public class FactNeighborhoodUserHouseDailyDTO implements Serializable { private String customerId; /** - * 数据更新至:yyyyMMdd; + * 数据更新至:yyyyMMdd; */ private String dateId; @@ -56,6 +56,11 @@ public class FactNeighborhoodUserHouseDailyDTO implements Serializable { */ private String neighborHoodName; + /** + * 小区总数 + */ + private Integer neighbourhoodsCount; + /** * 房屋总数 */ @@ -141,4 +146,4 @@ public class FactNeighborhoodUserHouseDailyDTO implements Serializable { */ private Date updatedTime; -} \ No newline at end of file +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactUserHouseController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactUserHouseController.java index 6dfe03236b..3ff1e7df16 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactUserHouseController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/FactUserHouseController.java @@ -77,12 +77,12 @@ public class FactUserHouseController { * * @param formDTO * @return com.epmet.commons.tools.utils.Result - * @author zhy + * @author wgf * @date 2022/5/31 9:48 */ @PostMapping("userHouseStatNeighborhood") public Result userHouseStatNeighborhood(@RequestBody FactUserHouseFormDTO formDTO) { -// factUserHouseService.statNeighborhood(formDTO); + factUserHouseService.statNeighborhood(formDTO); return new Result(); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/IcHouseDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/IcHouseDao.java index b6af5aa3b2..5e3d1e5477 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/IcHouseDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/IcHouseDao.java @@ -19,6 +19,10 @@ public interface IcHouseDao extends BaseDao { List houseStat(FactUserHouseFormDTO formDTO); + List houseStatNew(FactUserHouseFormDTO formDTO); + List neighborhoodStatStat(FactUserHouseFormDTO formDTO); + List neighborhoodStatStatNew(FactUserHouseFormDTO formDTO); + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactNeighborhoodUserHouseDailyDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactNeighborhoodUserHouseDailyDao.java index f5b26bc331..e83fb2dcc7 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactNeighborhoodUserHouseDailyDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactNeighborhoodUserHouseDailyDao.java @@ -1,9 +1,14 @@ package com.epmet.dao.stats; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.stats.form.FactUserHouseFormDTO; +import com.epmet.dto.stats.result.FactUserHouseResultDTO; import com.epmet.entity.stats.FactNeighborhoodUserHouseDailyEntity; import org.apache.ibatis.annotations.Mapper; +import java.util.List; +import java.util.Map; + /** * 网格的人房信息统计数,按天统计 * @@ -12,5 +17,11 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface FactNeighborhoodUserHouseDailyDao extends BaseDao { - -} \ No newline at end of file + + void deleteByDateId(FactUserHouseFormDTO formDTO); + + List listPage(Map params); + + List getTotal(Map params); + +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/user/IcResiUserDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/user/IcResiUserDao.java index 56b1cb5fd1..e879641504 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/user/IcResiUserDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/user/IcResiUserDao.java @@ -37,4 +37,6 @@ public interface IcResiUserDao extends BaseDao { List userStat(FactUserHouseFormDTO formDTO); + List userStatNew(FactUserHouseFormDTO formDTO); + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactNeighborhoodUserHouseDailyEntity.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactNeighborhoodUserHouseDailyEntity.java index 53b963b560..2c48798b2c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactNeighborhoodUserHouseDailyEntity.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactNeighborhoodUserHouseDailyEntity.java @@ -27,7 +27,7 @@ public class FactNeighborhoodUserHouseDailyEntity extends BaseEpmetEntity { private String customerId; /** - * 数据更新至:yyyyMMdd; + * 数据更新至:yyyyMMdd; */ private String dateId; @@ -56,10 +56,15 @@ public class FactNeighborhoodUserHouseDailyEntity extends BaseEpmetEntity { */ private String neighborHoodName; + /** + * 房屋总数 + */ + private Integer houseCount; + /** - * 房屋总数 + * 小区总数 */ - private Integer houseCount; + private Integer neighbourhoodsCount; /** * 自住房屋总数 diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/HouseService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/HouseService.java index a174b06c26..5eafd8cc88 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/HouseService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/HouseService.java @@ -40,6 +40,16 @@ public interface HouseService { */ List houseStat(FactUserHouseFormDTO formDTO); + /** + * 房屋统计(小区) + * + * @param formDTO + * @return java.util.List + * @author wgf + * @date 2022/5/30 13:33 + */ + List houseStatNew(FactUserHouseFormDTO formDTO); + /** * 小区统计 * @@ -50,4 +60,14 @@ public interface HouseService { */ List neighborhoodStat(FactUserHouseFormDTO formDTO); + /** + * 小区统计(小区) + * + * @param formDTO + * @return java.util.List + * @author wgf + * @date 2022/5/30 13:33 + */ + List neighborhoodStatNew(FactUserHouseFormDTO formDTO); + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/HouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/HouseServiceImpl.java index efcb8612ca..f6e74ac689 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/HouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/HouseServiceImpl.java @@ -24,9 +24,19 @@ public class HouseServiceImpl extends BaseServiceImpl return baseDao.houseStat(formDTO); } + @Override + public List houseStatNew(FactUserHouseFormDTO formDTO) { + return baseDao.houseStatNew(formDTO); + } + @Override public List neighborhoodStat(FactUserHouseFormDTO formDTO) { return baseDao.neighborhoodStatStat(formDTO); } + @Override + public List neighborhoodStatNew(FactUserHouseFormDTO formDTO) { + return baseDao.neighborhoodStatStatNew(formDTO); + } + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactNeighborhoodUserHouseDailyService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactNeighborhoodUserHouseDailyService.java index 2b8f79e32c..4c8905bae4 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactNeighborhoodUserHouseDailyService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactNeighborhoodUserHouseDailyService.java @@ -3,6 +3,8 @@ package com.epmet.service.stats; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.stats.FactNeighborhoodUserHouseDailyDTO; +import com.epmet.dto.stats.form.FactUserHouseFormDTO; +import com.epmet.dto.stats.result.FactUserHouseResultDTO; import com.epmet.entity.stats.FactNeighborhoodUserHouseDailyEntity; import java.util.List; @@ -24,7 +26,7 @@ public interface FactNeighborhoodUserHouseDailyService extends BaseService page(Map params); + PageData page(Map params); /** * 默认查询 @@ -75,4 +77,37 @@ public interface FactNeighborhoodUserHouseDailyService extends BaseService + * @author wgf + * @date 2022-05-27 + */ + List listExport(Map params); + + /** + * 页面合计 + * + * @param params + * @return PageData + * @author wgf + * @date 2022-05-27 + */ + FactUserHouseResultDTO getTotal(Map params); + + +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactUserHouseService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactUserHouseService.java index a962859465..9221627c48 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactUserHouseService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactUserHouseService.java @@ -56,6 +56,16 @@ public interface FactUserHouseService { */ void statGrid(FactUserHouseFormDTO formDTO); + /** + * 人房小区数据 + * + * @param formDTO + * @return void + * @author wgf + * @date 2022/5/30 13:31 + */ + void statNeighborhood(FactUserHouseFormDTO formDTO); + /** * 人房组织数据 * @@ -65,4 +75,4 @@ public interface FactUserHouseService { * @date 2022/5/30 13:31 */ void statAgency(FactUserHouseFormDTO formDTO); -} \ No newline at end of file +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGridUserHouseDailyServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGridUserHouseDailyServiceImpl.java index 0aaa1f0c2e..7aef227b16 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGridUserHouseDailyServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactGridUserHouseDailyServiceImpl.java @@ -54,13 +54,21 @@ public class FactGridUserHouseDailyServiceImpl extends BaseServiceImpl implements FactNeighborhoodUserHouseDailyService { + @Autowired + private LoginUserUtil loginUserUtil; + @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, FactNeighborhoodUserHouseDailyDTO.class); + public PageData page(Map params) { + params.put("customerId", loginUserUtil.getLoginUserCustomerId()); + IPage page = getPage(params); + List list = baseDao.listPage(params); + return new PageData<>(list, page.getTotal()); } @Override @@ -80,4 +86,44 @@ public class FactNeighborhoodUserHouseDailyServiceImpl extends BaseServiceImpl listExport(Map params) { + return baseDao.listPage(params); + } + + @Override + public FactUserHouseResultDTO getTotal(Map params) { + params.put("customerId", loginUserUtil.getLoginUserCustomerId()); + List list = baseDao.getTotal(params); + + // 只有当日数据直接展示,否则需要统计时间段内两天差值进行Incr和Modify数据计算 + if (list.size() == NumConstant.ZERO) { + return null; + } else if (list.size() == NumConstant.ONE) { + return list.get(0); + } else { + Integer houseIncr = 0; + Integer houseModify = 0; + Integer userIncr = 0; + Integer userModify = 0; + for(FactUserHouseResultDTO factUserHouseResultDTO : list){ + houseIncr = houseIncr + factUserHouseResultDTO.getHouseIncr(); + houseModify = houseModify + factUserHouseResultDTO.getHouseModify(); + userIncr = userIncr + factUserHouseResultDTO.getUserIncr(); + userModify = userModify + factUserHouseResultDTO.getUserModify(); + } + FactUserHouseResultDTO dto = list.get(list.size() - 1); + dto.setHouseIncr(houseIncr); + dto.setHouseModify(houseModify); + dto.setUserIncr(userIncr); + dto.setUserModify(userModify); + return dto; + } + } + +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 218524d9a6..171329f027 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -10,11 +10,9 @@ import com.epmet.dto.stats.form.FactUserHouseFormDTO; import com.epmet.dto.stats.result.FactUserHouseResultDTO; import com.epmet.entity.stats.FactAgencyUserHouseDailyEntity; import com.epmet.entity.stats.FactGridUserHouseDailyEntity; +import com.epmet.entity.stats.FactNeighborhoodUserHouseDailyEntity; import com.epmet.service.org.HouseService; -import com.epmet.service.stats.DimGridService; -import com.epmet.service.stats.FactAgencyUserHouseDailyService; -import com.epmet.service.stats.FactGridUserHouseDailyService; -import com.epmet.service.stats.FactUserHouseService; +import com.epmet.service.stats.*; import com.epmet.service.user.IcResiUserService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -37,6 +35,9 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { @Autowired private FactGridUserHouseDailyService factGridUserHouseDailyService; + @Autowired + private FactNeighborhoodUserHouseDailyService factNeighborhoodUserHouseDailyService; + @Autowired private HouseService houseService; @@ -59,7 +60,10 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); } if (params.containsKey("level")) { - if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString()) || OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { + if("neighborhoodCode".equals(params.get("level").toString())){ + page = factNeighborhoodUserHouseDailyService.page(params); + + }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { page = factGridUserHouseDailyService.page(params); } else { page = factAgencyUserHouseDailyService.page(params); @@ -83,7 +87,9 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { } // 网格纬度查询网格统计表,其余纬度查询组织统计表 if (params.containsKey("level")) { - if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())) { + if("neighborhoodCode".equals(params.get("level").toString())){ + dto = factNeighborhoodUserHouseDailyService.getTotal(params); + }else if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())) { dto = factGridUserHouseDailyService.getTotal(params); } else { dto = factAgencyUserHouseDailyService.getTotal(params); @@ -96,7 +102,9 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { public List list(Map params) { List list = new ArrayList<>(); if (params.containsKey("level")) { - if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString()) || OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { + if("neighborhoodCode".equals(params.get("level").toString())){ + list = factNeighborhoodUserHouseDailyService.listExport(params); + }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { list = factGridUserHouseDailyService.listExport(params); } else { list = factAgencyUserHouseDailyService.listExport(params); @@ -168,6 +176,71 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { factGridUserHouseDailyService.insertBatch(entityList); } + + /** + * 小区 + * @author wgf + * @param formDTO + */ + @Override + public void statNeighborhood(FactUserHouseFormDTO formDTO) { + if (StringUtils.isBlank(formDTO.getDateId())) { + formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); + } + String dateId = formDTO.getDateId(); + String customerId = formDTO.getCustomerId(); + + // 先删除历史 + factNeighborhoodUserHouseDailyService.deleteByDateId(formDTO); + + // 保证小区是全部网格后,其余数据进行循环匹配 + List neiList = houseService.neighborhoodStatNew(formDTO); + List houseList = houseService.houseStatNew(formDTO); + List userList = icResiUserService.userStatNew(formDTO); + + List addList = new ArrayList<>(); + + neiList.forEach(item -> { + String gridId = item.getGridId(); + String neighborHoodsId = item.getNeighbourhoodsId(); + FactUserHouseResultDTO dto = new FactUserHouseResultDTO(); + dto.setCustomerId(formDTO.getCustomerId()); + dto.setDateId(dateId); + dto.setGridId(gridId); + dto.setPid(item.getPid()); + dto.setPids(item.getPids()); + dto.setNeighbourhoodsCount(item.getNeighbourhoodsCount()); + + Optional houseOptional = houseList.stream().filter(house -> neighborHoodsId.equals(house.getNeighbourhoodsId()) && customerId.equals(house.getCustomerId())).findFirst(); + if (houseOptional.isPresent()) { + dto.setHouseCount(houseOptional.get().getHouseCount()); + dto.setHouseSelfCount(houseOptional.get().getHouseSelfCount()); + dto.setHouseLeaseCount(houseOptional.get().getHouseLeaseCount()); + dto.setHouseIdleCount(houseOptional.get().getHouseIdleCount()); + } else { + dto.setHouseCount(NumConstant.ZERO); + dto.setHouseSelfCount(NumConstant.ZERO); + dto.setHouseLeaseCount(NumConstant.ZERO); + dto.setHouseIdleCount(NumConstant.ZERO); + } + + Optional userOptional = userList.stream().filter(user -> neighborHoodsId.equals(user.getNeighbourhoodsId()) && customerId.equals(user.getCustomerId())).findFirst(); + if (userOptional.isPresent()) { + dto.setUserCount(userOptional.get().getUserCount()); + dto.setUserResiCount(userOptional.get().getUserResiCount()); + dto.setUserFloatCount(userOptional.get().getUserFloatCount()); + } else { + dto.setUserCount(NumConstant.ZERO); + dto.setUserResiCount(NumConstant.ZERO); + dto.setUserFloatCount(NumConstant.ZERO); + } + addList.add(dto); + }); + + List entityList = ConvertUtils.sourceToTarget(addList, FactNeighborhoodUserHouseDailyEntity.class); + factNeighborhoodUserHouseDailyService.insertBatch(entityList); + } + @Override public void statAgency(FactUserHouseFormDTO formDTO) { if (StringUtils.isBlank(formDTO.getDateId())) { @@ -218,4 +291,4 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { } } -} \ No newline at end of file +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/IcResiUserService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/IcResiUserService.java index 3f2289edef..a3c689b8a8 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/IcResiUserService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/IcResiUserService.java @@ -42,4 +42,14 @@ public interface IcResiUserService extends BaseService { */ List userStat(FactUserHouseFormDTO formDTO); + /** + * 居民统计(小区) + * + * @param formDTO + * @return java.util.List + * @author wgf + * @date 2022/5/30 13:33 + */ + List userStatNew(FactUserHouseFormDTO formDTO); + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/IcResiUserServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/IcResiUserServiceImpl.java index b48086d053..e1f1e9ef1e 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/IcResiUserServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/user/impl/IcResiUserServiceImpl.java @@ -47,4 +47,9 @@ public class IcResiUserServiceImpl extends BaseServiceImpl userStatNew(FactUserHouseFormDTO formDTO) { + return baseDao.userStatNew(formDTO); + } + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index 99aa5aa4e9..07d51e974e 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -41,6 +41,44 @@ g.id + + + + diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml index 41e6a25a05..94a5b3af01 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml @@ -31,5 +31,97 @@ + + DELETE + FROM + fact_neighborhood_user_house_daily + WHERE + DATE_ID = #{dateId} + AND CUSTOMER_ID = #{customerId} + - \ No newline at end of file + + + + + + diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml index ab80642698..b3a62ea928 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml @@ -22,4 +22,24 @@ AGENCY_ID + + From 3c4fb17f60bc1ea417c2fab20b95f89a67f8e369 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Thu, 2 Jun 2022 15:23:11 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/org/IcHouseDao.xml | 4 ++-- .../src/main/resources/mapper/user/IcResiUserDao.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index 76312ce72c..dd14c8aee2 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -14,7 +14,7 @@ sum( CASE WHEN t.RENT_FLAG = '2' THEN 1 ELSE 0 END ) AS houseIdleCount, sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, - sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify + sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify FROM customer_grid g LEFT JOIN ( @@ -53,7 +53,7 @@ sum( CASE WHEN t.RENT_FLAG = '2' THEN 1 ELSE 0 END ) AS houseIdleCount, sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, - sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify + sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify FROM fact_neighborhood_user_house_daily nd left join customer_grid g on g.id = nd.GRID_ID and g.DEL_FLAG = '0' LEFT JOIN ( diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml index 9b1a30f4ed..e39d8f23e9 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml @@ -11,7 +11,7 @@ sum( CASE WHEN IS_FLOATING = '1' THEN 1 ELSE 0 END ) AS userFloatCount, sum( CASE WHEN id IS NOT NULL THEN 1 ELSE 0 END ) AS userCount, sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userIncr, - sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify + sum( CASE WHEN (id IS NOT NULL and CREATED_TIME != UPDATED_TIME and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify FROM ic_resi_user WHERE @@ -31,7 +31,7 @@ sum( CASE WHEN IS_FLOATING = '1' THEN 1 ELSE 0 END ) AS userFloatCount, sum( CASE WHEN id IS NOT NULL THEN 1 ELSE 0 END ) AS userCount, sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userIncr, - sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify + sum( CASE WHEN (id IS NOT NULL and CREATED_TIME != UPDATED_TIME and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify FROM ic_resi_user WHERE From 1440688d2704127255f9eee5b5ca8a13b386ac21 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Thu, 2 Jun 2022 15:25:27 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9=EF=BC=88=E5=9B=9E=E6=BB=9A?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/org/IcHouseDao.xml | 4 ++-- .../src/main/resources/mapper/user/IcResiUserDao.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index dd14c8aee2..76312ce72c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -14,7 +14,7 @@ sum( CASE WHEN t.RENT_FLAG = '2' THEN 1 ELSE 0 END ) AS houseIdleCount, sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, - sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify + sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify FROM customer_grid g LEFT JOIN ( @@ -53,7 +53,7 @@ sum( CASE WHEN t.RENT_FLAG = '2' THEN 1 ELSE 0 END ) AS houseIdleCount, sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, - sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify + sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify FROM fact_neighborhood_user_house_daily nd left join customer_grid g on g.id = nd.GRID_ID and g.DEL_FLAG = '0' LEFT JOIN ( diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml index e39d8f23e9..9b1a30f4ed 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml @@ -11,7 +11,7 @@ sum( CASE WHEN IS_FLOATING = '1' THEN 1 ELSE 0 END ) AS userFloatCount, sum( CASE WHEN id IS NOT NULL THEN 1 ELSE 0 END ) AS userCount, sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userIncr, - sum( CASE WHEN (id IS NOT NULL and CREATED_TIME != UPDATED_TIME and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify + sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify FROM ic_resi_user WHERE @@ -31,7 +31,7 @@ sum( CASE WHEN IS_FLOATING = '1' THEN 1 ELSE 0 END ) AS userFloatCount, sum( CASE WHEN id IS NOT NULL THEN 1 ELSE 0 END ) AS userCount, sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userIncr, - sum( CASE WHEN (id IS NOT NULL and CREATED_TIME != UPDATED_TIME and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify + sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify FROM ic_resi_user WHERE From 5a0151cb62b1f8743a3f47bbd85e5bc4081a3cfd Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Thu, 2 Jun 2022 15:35:28 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/org/IcHouseDao.xml | 2 +- .../src/main/resources/mapper/user/IcResiUserDao.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index 76312ce72c..07d7cdaaee 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -53,7 +53,7 @@ sum( CASE WHEN t.RENT_FLAG = '2' THEN 1 ELSE 0 END ) AS houseIdleCount, sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, - sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify + sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify FROM fact_neighborhood_user_house_daily nd left join customer_grid g on g.id = nd.GRID_ID and g.DEL_FLAG = '0' LEFT JOIN ( diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml index 9b1a30f4ed..7a74cf712b 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml @@ -31,7 +31,7 @@ sum( CASE WHEN IS_FLOATING = '1' THEN 1 ELSE 0 END ) AS userFloatCount, sum( CASE WHEN id IS NOT NULL THEN 1 ELSE 0 END ) AS userCount, sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userIncr, - sum( CASE WHEN (id IS NOT NULL and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify + sum( CASE WHEN (id IS NOT NULL and CREATED_TIME != UPDATED_TIME and DATE_FORMAT(UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS userModify FROM ic_resi_user WHERE From 85492a25efe489636f8712d1ac871472d2acdc48 Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Mon, 6 Jun 2022 14:55:20 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AE=9A=E6=97=B6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/feign/DataStatisticalOpenFeignClient.java | 3 +++ .../impl/DataStatisticalOpenFeignClientFallBack.java | 5 +++++ .../java/com/epmet/service/StatsUserHouseService.java | 10 ++++++++++ .../epmet/service/impl/StatsUserHouseServiceImpl.java | 5 +++++ .../main/java/com/epmet/task/StatsUserHouseTask.java | 7 +++++++ 5 files changed, 30 insertions(+) diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java index 0aedb1d83e..67f56957dc 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java @@ -375,4 +375,7 @@ public interface DataStatisticalOpenFeignClient { @PostMapping("/data/stats/factAgencyUserHouseDaily/userHouseStatAgency") Result userHouseStatAgency(@RequestBody FactUserHouseFormDTO formDTO); + + @PostMapping("/data/stats/factAgencyUserHouseDaily/userHouseStatNeighborhood") + Result userHouseStatNeighborhood(@RequestBody FactUserHouseFormDTO formDTO); } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java index 6ebe9d5004..b5bb0013c4 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java @@ -362,4 +362,9 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp public Result userHouseStatAgency(FactUserHouseFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "userHouseStatAgency", formDTO); } + + @Override + public Result userHouseStatNeighborhood(FactUserHouseFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "userHouseStatNeighborhood", formDTO); + } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserHouseService.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserHouseService.java index 58c930e1a1..7a1537bdd1 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserHouseService.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/StatsUserHouseService.java @@ -24,4 +24,14 @@ public interface StatsUserHouseService { * @date 2022/5/30 10:25 */ Result execUserHouseAgencyStatistical(FactUserHouseFormDTO formDTO); + + /** + * 人房信息统计 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author zhy + * @date 2022/5/30 10:25 + */ + Result execUserHouseNeighborhoodStatistical(FactUserHouseFormDTO formDTO); } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserHouseServiceImpl.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserHouseServiceImpl.java index 30875e947b..653c0ae7e8 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserHouseServiceImpl.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/StatsUserHouseServiceImpl.java @@ -27,4 +27,9 @@ public class StatsUserHouseServiceImpl implements StatsUserHouseService { public Result execUserHouseAgencyStatistical(FactUserHouseFormDTO formDTO) { return dataStatisticalOpenFeignClient.userHouseStatAgency(formDTO); } + + @Override + public Result execUserHouseNeighborhoodStatistical(FactUserHouseFormDTO formDTO) { + return dataStatisticalOpenFeignClient.userHouseStatNeighborhood(formDTO); + } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserHouseTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserHouseTask.java index 1a32b7c1c7..9925ed4391 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserHouseTask.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/StatsUserHouseTask.java @@ -44,5 +44,12 @@ public class StatsUserHouseTask implements ITask { } else { logger.error("StatsUserHouseTask-agency定时任务执行失败:" + result.getMsg()); } + + result = statsUserHouseService.execUserHouseNeighborhoodStatistical(formDTO); + if (result.success()) { + logger.info("StatsUserHouseTask-neighborhood定时任务执行成功"); + } else { + logger.error("StatsUserHouseTask-neighborhood定时任务执行失败:" + result.getMsg()); + } } } From b9c87a502884ee1ac53332da683a4b32a15886e5 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Mon, 6 Jun 2022 15:13:33 +0800 Subject: [PATCH 06/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/stats/impl/FactUserHouseServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 3cb2f98d7b..933e891774 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -60,7 +60,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); } if (params.containsKey("level")) { - if("neighborhoodCode".equals(params.get("level").toString())){ + if("neighborhood".equals(params.get("level").toString())){ page = factNeighborhoodUserHouseDailyService.page(params); }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { @@ -87,7 +87,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { } // 网格纬度查询网格统计表,其余纬度查询组织统计表 if (params.containsKey("level")) { - if("neighborhoodCode".equals(params.get("level").toString())){ + if("neighborhood".equals(params.get("level").toString())){ dto = factNeighborhoodUserHouseDailyService.getTotal(params); }else if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())) { dto = factGridUserHouseDailyService.getTotal(params); @@ -102,7 +102,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { public List list(Map params) { List list = new ArrayList<>(); if (params.containsKey("level")) { - if("neighborhoodCode".equals(params.get("level").toString())){ + if("neighborhood".equals(params.get("level").toString())){ list = factNeighborhoodUserHouseDailyService.listExport(params); }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { list = factGridUserHouseDailyService.listExport(params); From 6489abb63b2b6798661d3e36c9ae97d0ff2d1e7c Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Mon, 6 Jun 2022 16:28:18 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/org/IcHouseDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index dd14c8aee2..9656f876b6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -103,7 +103,7 @@ SELECT - nd.NEIGHBOURHOODS_ID, + t.NEIGHBOR_HOOD_ID as NEIGHBOURHOODS_ID, g.CUSTOMER_ID, g.id AS GRID_ID, g.PID, @@ -54,24 +54,23 @@ sum( CASE WHEN t.id IS NOT NULL THEN 1 ELSE 0 END ) AS houseCount, sum( CASE WHEN (t.id IS NOT NULL and DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseIncr, sum( CASE WHEN (t.id IS NOT NULL and t.CREATED_TIME != t.UPDATED_TIME and DATE_FORMAT(t.UPDATED_TIME,'%Y-%m-%d') = DATE_FORMAT(now(),'%Y-%m-%d')) THEN 1 ELSE 0 END ) AS houseModify - FROM fact_neighborhood_user_house_daily nd - left join customer_grid g on g.id = nd.GRID_ID and g.DEL_FLAG = '0' - LEFT JOIN ( + FROM ( SELECT h.id, h.RENT_FLAG, n.GRID_ID, h.CREATED_TIME, - h.UPDATED_TIME + h.UPDATED_TIME, + h.NEIGHBOR_HOOD_ID FROM ic_house h LEFT JOIN ic_neighbor_hood n ON h.NEIGHBOR_HOOD_ID = n.id WHERE h.CREATED_TIME < DATE_ADD( DATE_FORMAT(#{dateId},'%Y-%m-%d'), INTERVAL 1 DAY ) AND n.DEL_FLAG = '0' AND h.DEL_FLAG = '0' - ) t ON t.GRID_ID = g.ID - WHERE - nd.DEL_FLAG = '0' + ) t + left join customer_grid g on g.id = t.GRID_ID and g.DEL_FLAG = '0' + WHERE 1=1 AND g.CUSTOMER_ID = #{customerId} From 4c2a676557c78d12f12f68fbc87936dd00879f0a Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Mon, 6 Jun 2022 17:27:38 +0800 Subject: [PATCH 09/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/stats/impl/FactUserHouseServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 933e891774..3551554b67 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -218,6 +218,8 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { dto.setPid(item.getPid()); dto.setPids(item.getPids()); dto.setNeighbourhoodsCount(item.getNeighbourhoodsCount()); + dto.setNeighbourhoodsId(item.getNeighbourhoodsId()); + dto.setNeighborHoodName(item.getNeighborHoodName()); Optional houseOptional = houseList.stream().filter(house -> neighborHoodsId.equals(house.getNeighbourhoodsId()) && customerId.equals(house.getCustomerId())).findFirst(); if (houseOptional.isPresent()) { From 7d1e02a3b41a83375ddc01713d1f1905da5a7fbe Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 7 Jun 2022 10:29:15 +0800 Subject: [PATCH 10/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/stats/impl/FactUserHouseServiceImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 3551554b67..57d2bb1817 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -14,6 +14,7 @@ import com.epmet.entity.stats.FactNeighborhoodUserHouseDailyEntity; import com.epmet.service.org.HouseService; import com.epmet.service.stats.*; import com.epmet.service.user.IcResiUserService; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,6 +28,7 @@ import java.util.*; * @since v1.0.0 2022-05-27 */ @Service +@Slf4j public class FactUserHouseServiceImpl implements FactUserHouseService { @Autowired @@ -192,6 +194,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { */ @Override public void statNeighborhood(FactUserHouseFormDTO formDTO) { + log.info("$$$进入业务逻辑"); if (StringUtils.isBlank(formDTO.getDateId())) { formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); } @@ -200,7 +203,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { // 先删除历史 factNeighborhoodUserHouseDailyService.deleteByDateId(formDTO); - + log.info("$$$删除历史完成"); // 保证小区是全部网格后,其余数据进行循环匹配 List neiList = houseService.neighborhoodStatNew(formDTO); List houseList = houseService.houseStatNew(formDTO); @@ -246,7 +249,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { } addList.add(dto); }); - + log.info("$$$addList:::::" + addList); List entityList = ConvertUtils.sourceToTarget(addList, FactNeighborhoodUserHouseDailyEntity.class); factNeighborhoodUserHouseDailyService.insertBatch(entityList); } From 7289344d5fb52030d660d845c20186cb930ec906 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 7 Jun 2022 15:51:31 +0800 Subject: [PATCH 11/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/stats/impl/FactUserHouseServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 57d2bb1817..36f990d5f4 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -62,7 +62,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); } if (params.containsKey("level")) { - if("neighborhood".equals(params.get("level").toString())){ + if("neighborhood".equals(params.get("level").toString()) || OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())){ page = factNeighborhoodUserHouseDailyService.page(params); }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { @@ -104,7 +104,7 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { public List list(Map params) { List list = new ArrayList<>(); if (params.containsKey("level")) { - if("neighborhood".equals(params.get("level").toString())){ + if("neighborhood".equals(params.get("level").toString()) || OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())){ list = factNeighborhoodUserHouseDailyService.listExport(params); }else if (OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { list = factGridUserHouseDailyService.listExport(params); From 2749506ba07f3a15aa76cd8c1c65529e6898a8c2 Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 7 Jun 2022 16:13:06 +0800 Subject: [PATCH 12/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/stats/FactNeighborhoodUserHouseDailyDao.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml index 94a5b3af01..08a72a2197 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml @@ -66,6 +66,9 @@ AND g.CUSTOMER_ID = #{customerId} AND d.CUSTOMER_ID = #{customerId} + + AND d.NEIGHBOURHOODS_ID = #{agencyId} + AND d.GRID_ID = #{agencyId} @@ -106,7 +109,7 @@ AND d.CUSTOMER_ID = #{customerId} - AND d.GRID_ID = #{agencyId} + AND d.NEIGHBOURHOODS_ID = #{agencyId} AND d.DATE_ID = #{dateId} From 32f014afe2d7b27a77ce767cd70cf052014c008f Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 7 Jun 2022 16:39:14 +0800 Subject: [PATCH 13/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/org/IcHouseDao.xml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml index de4b58c7f7..297d15dbd3 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/IcHouseDao.xml @@ -104,23 +104,21 @@ SELECT n.ID as NEIGHBOURHOODS_ID, n.NEIGHBOR_HOOD_NAME, - g.CUSTOMER_ID, + n.CUSTOMER_ID, g.id AS GRID_ID, g.PID, g.PIDS, 1 AS neighbourhoodsCount FROM ic_neighbor_hood n - LEFT JOIN customer_grid g ON n.GRID_ID = g.id + LEFT JOIN customer_grid g ON n.GRID_ID = g.id and g.DEL_FLAG = '0' AND n.CREATED_TIME < DATE_ADD( DATE_FORMAT(#{dateId},'%Y-%m-%d'), INTERVAL 1 DAY ) - AND n.DEL_FLAG = '0' - WHERE - g.DEL_FLAG = '0' + WHERE n.DEL_FLAG = '0' - AND g.CUSTOMER_ID = #{customerId} + AND n.CUSTOMER_ID = #{customerId} GROUP BY - g.CUSTOMER_ID; + n.CUSTOMER_ID,n.ID; From 1c39a3ee5b3dded3795097a2ff4272970f493dbb Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Tue, 7 Jun 2022 16:54:41 +0800 Subject: [PATCH 14/16] =?UTF-8?q?=E5=B0=8F=E5=8C=BA=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/service/stats/impl/FactUserHouseServiceImpl.java | 6 +++--- .../mapper/stats/FactNeighborhoodUserHouseDailyDao.xml | 3 --- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java index 36f990d5f4..db20e4ccc6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactUserHouseServiceImpl.java @@ -212,14 +212,14 @@ public class FactUserHouseServiceImpl implements FactUserHouseService { List addList = new ArrayList<>(); neiList.forEach(item -> { - String gridId = item.getGridId(); + String gridId = item.getGridId() == null ? "" : item.getGridId(); String neighborHoodsId = item.getNeighbourhoodsId(); FactUserHouseResultDTO dto = new FactUserHouseResultDTO(); dto.setCustomerId(formDTO.getCustomerId()); dto.setDateId(dateId); dto.setGridId(gridId); - dto.setPid(item.getPid()); - dto.setPids(item.getPids()); + dto.setPid(item.getPid() == null ? "" : item.getPid()); + dto.setPids(item.getPids() == null ? "" : item.getPids()); dto.setNeighbourhoodsCount(item.getNeighbourhoodsCount()); dto.setNeighbourhoodsId(item.getNeighbourhoodsId()); dto.setNeighborHoodName(item.getNeighborHoodName()); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml index 08a72a2197..4ff079453d 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactNeighborhoodUserHouseDailyDao.xml @@ -72,9 +72,6 @@ AND d.GRID_ID = #{agencyId} - - AND d.PID = #{agencyId} - AND d.DATE_ID = #{dateId} From 689ec0151252e3285109957c8ab0d343ce291bbd Mon Sep 17 00:00:00 2001 From: wanggongfeng <1305282856@qq.com> Date: Wed, 8 Jun 2022 13:54:13 +0800 Subject: [PATCH 15/16] =?UTF-8?q?=E4=BA=BA=E6=88=BF=E7=BB=9F=E8=AE=A1bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/user/IcResiUserDao.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml index f2c3aa595c..7493d2d979 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/user/IcResiUserDao.xml @@ -37,6 +37,7 @@ ic_resi_user WHERE del_flag = '0' + AND STATUS = '0' AND CREATED_TIME <= DATE_ADD( DATE_FORMAT(#{dateId},'%Y-%m-%d'), INTERVAL 1 DAY ) GROUP BY CUSTOMER_ID, From b4fb28d1e0e51e62ebdb013798fb51133a9a0a7e Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Wed, 8 Jun 2022 16:25:21 +0800 Subject: [PATCH 16/16] =?UTF-8?q?=E5=8D=95=E7=8B=AC=E5=88=86=E5=87=BA?= =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=9F=A5=E8=AF=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/result/UserHouseScopeResultDTO.java | 20 +++++ .../controller/UserHouseScopeController.java | 32 ++++++++ .../epmet/service/UserHouseScopeService.java | 7 ++ .../impl/UserHouseScopeServiceImpl.java | 79 +++++++++++++++++++ 4 files changed, 138 insertions(+) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/UserHouseScopeResultDTO.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/UserHouseScopeResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/UserHouseScopeResultDTO.java new file mode 100644 index 0000000000..b36cace1e1 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/UserHouseScopeResultDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto.result; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class UserHouseScopeResultDTO { + + private String objectId; + private String objectName; + private String objectType; + + private List children; + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java new file mode 100644 index 0000000000..3a5e67704f --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java @@ -0,0 +1,32 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.UserHouseScopeResultDTO; +import com.epmet.service.UserHouseScopeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 服务项目 + */ +@RestController +@RequestMapping("userhouse") +public class UserHouseScopeController { + + @Autowired + public UserHouseScopeService userHouseScopeService; + + + /** + * 服务范围树查询 + * @return + */ + @RequestMapping("service/serviceScopeTree") + public Result getServiceScopeTree(@LoginUser TokenDto loginInfo) { + UserHouseScopeResultDTO r = userHouseScopeService.getServiceScopeTree(loginInfo.getUserId()); + return new Result().ok(r); + } +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java new file mode 100644 index 0000000000..31fb3be5b8 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java @@ -0,0 +1,7 @@ +package com.epmet.service; + +import com.epmet.dto.result.UserHouseScopeResultDTO; + +public interface UserHouseScopeService { + UserHouseScopeResultDTO getServiceScopeTree(String staffId); +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java new file mode 100644 index 0000000000..8ccaa5a32a --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java @@ -0,0 +1,79 @@ +package com.epmet.service.impl; + +import com.epmet.dao.IcNeighborHoodDao; +import com.epmet.dto.IcNeighborHoodDTO; +import com.epmet.dto.result.AgencyTreeResultDTO; +import com.epmet.dto.result.UserHouseScopeResultDTO; +import com.epmet.service.CustomerAgencyService; +import com.epmet.service.UserHouseScopeService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +@Slf4j +@Service +public class UserHouseScopeServiceImpl implements UserHouseScopeService { + + @Autowired + private IcNeighborHoodDao neighborHoodDao; + + @Autowired + private CustomerAgencyService customerAgencyService; + + public UserHouseScopeServiceImpl() { + System.out.println(6); + } + + @Override + public UserHouseScopeResultDTO getServiceScopeTree(String staffId) { + AgencyTreeResultDTO orgTreeData = customerAgencyService.getOrgTreeData(staffId); + + UserHouseScopeResultDTO rootScope = new UserHouseScopeResultDTO(); + rootScope.setObjectId(orgTreeData.getAgencyId()); + rootScope.setObjectType(orgTreeData.getLevel()); + rootScope.setObjectName(orgTreeData.getAgencyName()); + rootScope.setChildren(convert2ServiceProjectScope(orgTreeData.getSubAgencyList())); + + return rootScope; + } + + private List convert2ServiceProjectScope(List oldChildren) { + + ArrayList scopes = new ArrayList<>(); + + for (AgencyTreeResultDTO oldChild : oldChildren) { + UserHouseScopeResultDTO scope = new UserHouseScopeResultDTO(); + scope.setObjectId(oldChild.getAgencyId()); + scope.setObjectType(oldChild.getLevel()); + scope.setObjectName(oldChild.getAgencyName()); + if ("grid".equals(oldChild.getLevel())) { + // 如果是网格,那么还要查询网格下的小区 + List neighborhoods = neighborHoodDao.selectNeighborList(oldChild.getAgencyId()); + + List neighborhoodScopes = neighborhoods.stream().map(n -> new UserHouseScopeResultDTO(n.getId(), + n.getNeighborHoodName(), + "neighborhood", + null)).collect(Collectors.toList()); + + scope.setChildren(neighborhoodScopes); + } else { + // 递归处理子级 + List subAgencyList = oldChild.getSubAgencyList(); + if (subAgencyList != null && !CollectionUtils.isEmpty(subAgencyList)) { + List subOrgScope = convert2ServiceProjectScope(subAgencyList); + scope.setChildren(subOrgScope); + } + } + + scopes.add(scope); + } + + return scopes; + } + +}