35 changed files with 3214 additions and 0 deletions
@ -0,0 +1,148 @@ |
|||
package com.epmet.dto.stats; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
public class FactAgencyUserHouseDailyDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 主键,customer_id+AGENCY_ID+date_id只有一条记录 |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* 组织id |
|||
*/ |
|||
private String agencyId; |
|||
|
|||
/** |
|||
* agency_id所属的机关级别(社区级:community, |
|||
乡(镇、街道)级:street, |
|||
区县级: district, |
|||
市级: city |
|||
省级:province) |
|||
*/ |
|||
private String level; |
|||
|
|||
/** |
|||
* 组织i所属的组织id |
|||
*/ |
|||
private String pid; |
|||
|
|||
/** |
|||
* 组织i所有上级id |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 小区总数 |
|||
*/ |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
/** |
|||
* 房屋总数 |
|||
*/ |
|||
private Integer houseCount; |
|||
|
|||
/** |
|||
* 自住房屋总数 |
|||
*/ |
|||
private Integer houseSelfCount; |
|||
|
|||
/** |
|||
* 出租房屋总数 |
|||
*/ |
|||
private Integer houseLeaseCount; |
|||
|
|||
/** |
|||
* 闲置房屋总数 |
|||
*/ |
|||
private Integer houseIdleCount; |
|||
|
|||
/** |
|||
* 居民总数 |
|||
*/ |
|||
private Integer userCount; |
|||
|
|||
/** |
|||
* 常住居民总数 |
|||
*/ |
|||
private Integer userResiCount; |
|||
|
|||
/** |
|||
* 流动居民总数 |
|||
*/ |
|||
private Integer userFloatCount; |
|||
|
|||
/** |
|||
* 当日新增房屋数 |
|||
*/ |
|||
private Integer houseIncr; |
|||
|
|||
/** |
|||
* 当日修改房屋数 |
|||
*/ |
|||
private Integer houseModify; |
|||
|
|||
/** |
|||
* 当日新增居民数 |
|||
*/ |
|||
private Integer userIncr; |
|||
|
|||
/** |
|||
* 当日修改居民数 |
|||
*/ |
|||
private Integer userModify; |
|||
|
|||
/** |
|||
* 删除标识 0未删除、1已删除 |
|||
*/ |
|||
private String delFlag; |
|||
|
|||
/** |
|||
* 乐观锁 |
|||
*/ |
|||
private Integer revision; |
|||
|
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
private String createdBy; |
|||
|
|||
/** |
|||
* 创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致 |
|||
*/ |
|||
private Date createdTime; |
|||
|
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
private String updatedBy; |
|||
|
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
private Date updatedTime; |
|||
|
|||
} |
@ -0,0 +1,139 @@ |
|||
package com.epmet.dto.stats; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
|
|||
/** |
|||
* 网格的人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
public class FactGridUserHouseDailyDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 主键,customer_id+grid_id+date_id只有一条记录 |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* 网格id |
|||
*/ |
|||
private String gridId; |
|||
|
|||
/** |
|||
* 网格所属的组织id |
|||
*/ |
|||
private String pid; |
|||
|
|||
/** |
|||
* 网格所有上级id |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 小区总数 |
|||
*/ |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
/** |
|||
* 房屋总数 |
|||
*/ |
|||
private Integer houseCount; |
|||
|
|||
/** |
|||
* 自住房屋总数 |
|||
*/ |
|||
private Integer houseSelfCount; |
|||
|
|||
/** |
|||
* 出租房屋总数 |
|||
*/ |
|||
private Integer houseLeaseCount; |
|||
|
|||
/** |
|||
* 闲置房屋总数 |
|||
*/ |
|||
private Integer houseIdleCount; |
|||
|
|||
/** |
|||
* 居民总数 |
|||
*/ |
|||
private Integer userCount; |
|||
|
|||
/** |
|||
* 常住居民总数 |
|||
*/ |
|||
private Integer userResiCount; |
|||
|
|||
/** |
|||
* 流动居民总数 |
|||
*/ |
|||
private Integer userFloatCount; |
|||
|
|||
/** |
|||
* 当日新增房屋数 |
|||
*/ |
|||
private Integer houseIncr; |
|||
|
|||
/** |
|||
* 当日修改房屋数 |
|||
*/ |
|||
private Integer houseModify; |
|||
|
|||
/** |
|||
* 当日新增居民数 |
|||
*/ |
|||
private Integer userIncr; |
|||
|
|||
/** |
|||
* 当日修改居民数 |
|||
*/ |
|||
private Integer userModify; |
|||
|
|||
/** |
|||
* 删除标识 0未删除、1已删除 |
|||
*/ |
|||
private String delFlag; |
|||
|
|||
/** |
|||
* 乐观锁 |
|||
*/ |
|||
private Integer revision; |
|||
|
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
private String createdBy; |
|||
|
|||
/** |
|||
* 创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致 |
|||
*/ |
|||
private Date createdTime; |
|||
|
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
private String updatedBy; |
|||
|
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
private Date updatedTime; |
|||
|
|||
} |
@ -0,0 +1,35 @@ |
|||
package com.epmet.dto.stats.form; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
public class FactUserHouseFormDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* level |
|||
*/ |
|||
private String level; |
|||
|
|||
} |
@ -0,0 +1,159 @@ |
|||
package com.epmet.dto.stats.result; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
public class FactUserHouseResultDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 主键,customer_id+AGENCY_ID+date_id只有一条记录 |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* 网格id |
|||
*/ |
|||
private String gridId; |
|||
|
|||
/** |
|||
* 组织id |
|||
*/ |
|||
private String agencyId; |
|||
|
|||
/** |
|||
* 组织id |
|||
*/ |
|||
private String agencyName; |
|||
|
|||
/** |
|||
* agency_id所属的机关级别(社区级:community, |
|||
乡(镇、街道)级:street, |
|||
区县级: district, |
|||
市级: city |
|||
省级:province) |
|||
*/ |
|||
private String level; |
|||
|
|||
/** |
|||
* 组织i所属的组织id |
|||
*/ |
|||
private String pid; |
|||
|
|||
/** |
|||
* 组织i所有上级id |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 小区总数 |
|||
*/ |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
/** |
|||
* 房屋总数 |
|||
*/ |
|||
private Integer houseCount; |
|||
|
|||
/** |
|||
* 自住房屋总数 |
|||
*/ |
|||
private Integer houseSelfCount; |
|||
|
|||
/** |
|||
* 出租房屋总数 |
|||
*/ |
|||
private Integer houseLeaseCount; |
|||
|
|||
/** |
|||
* 闲置房屋总数 |
|||
*/ |
|||
private Integer houseIdleCount; |
|||
|
|||
/** |
|||
* 居民总数 |
|||
*/ |
|||
private Integer userCount; |
|||
|
|||
/** |
|||
* 常住居民总数 |
|||
*/ |
|||
private Integer userResiCount; |
|||
|
|||
/** |
|||
* 流动居民总数 |
|||
*/ |
|||
private Integer userFloatCount; |
|||
|
|||
/** |
|||
* 当日新增房屋数 |
|||
*/ |
|||
private Integer houseIncr; |
|||
|
|||
/** |
|||
* 当日修改房屋数 |
|||
*/ |
|||
private Integer houseModify; |
|||
|
|||
/** |
|||
* 当日新增居民数 |
|||
*/ |
|||
private Integer userIncr; |
|||
|
|||
/** |
|||
* 当日修改居民数 |
|||
*/ |
|||
private Integer userModify; |
|||
|
|||
/** |
|||
* 删除标识 0未删除、1已删除 |
|||
*/ |
|||
private String delFlag; |
|||
|
|||
/** |
|||
* 乐观锁 |
|||
*/ |
|||
private Integer revision; |
|||
|
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
private String createdBy; |
|||
|
|||
/** |
|||
* 创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致 |
|||
*/ |
|||
private Date createdTime; |
|||
|
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
private String updatedBy; |
|||
|
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
private Date updatedTime; |
|||
|
|||
} |
@ -0,0 +1,89 @@ |
|||
package com.epmet.controller; |
|||
|
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.utils.ExcelUtils; |
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.excel.FactUserHouseExcel; |
|||
import com.epmet.service.stats.FactUserHouseService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("factAgencyUserHouseDaily") |
|||
public class FactUserHouseController { |
|||
|
|||
@Autowired |
|||
private FactUserHouseService factUserHouseService; |
|||
|
|||
@RequestMapping("page") |
|||
public Result<PageData<FactUserHouseResultDTO>> page(@RequestParam Map<String, Object> params) { |
|||
PageData<FactUserHouseResultDTO> page = factUserHouseService.page(params); |
|||
return new Result<PageData<FactUserHouseResultDTO>>().ok(page); |
|||
} |
|||
|
|||
/** |
|||
* 合计 |
|||
* |
|||
* @param params |
|||
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.stats.result.FactUserHouseResultDTO> |
|||
* @author zhy |
|||
* @date 2022/5/31 9:48 |
|||
*/ |
|||
@RequestMapping("total") |
|||
public Result<FactUserHouseResultDTO> total(@RequestParam Map<String, Object> params) { |
|||
FactUserHouseResultDTO dto = factUserHouseService.total(params); |
|||
return new Result<FactUserHouseResultDTO>().ok(dto); |
|||
} |
|||
|
|||
@GetMapping("export") |
|||
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception { |
|||
List<FactUserHouseResultDTO> list = factUserHouseService.list(params); |
|||
if (list.isEmpty()) { |
|||
FactUserHouseResultDTO dto = new FactUserHouseResultDTO(); |
|||
list.add(dto); |
|||
} |
|||
ExcelUtils.exportExcelToTarget(response, null, list, FactUserHouseExcel.class); |
|||
} |
|||
|
|||
/** |
|||
* 统计网格纬度 |
|||
* |
|||
* @param formDTO |
|||
* @return com.epmet.commons.tools.utils.Result |
|||
* @author zhy |
|||
* @date 2022/5/31 9:48 |
|||
*/ |
|||
@PostMapping("userHouseStatGrid") |
|||
public Result userHouseStatGrid(@RequestBody FactUserHouseFormDTO formDTO) { |
|||
factUserHouseService.statGrid(formDTO); |
|||
return new Result(); |
|||
} |
|||
|
|||
/** |
|||
* 统计组织纬度 |
|||
* |
|||
* @param formDTO |
|||
* @return com.epmet.commons.tools.utils.Result |
|||
* @author zhy |
|||
* @date 2022/5/31 9:48 |
|||
*/ |
|||
@PostMapping("userHouseStatAgency") |
|||
public Result userHouseStatAgency(@RequestBody FactUserHouseFormDTO formDTO) { |
|||
factUserHouseService.statAgency(formDTO); |
|||
return new Result(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,24 @@ |
|||
package com.epmet.dao.org; |
|||
|
|||
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.org.IcHouseEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 房屋信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-25 |
|||
*/ |
|||
@Mapper |
|||
public interface IcHouseDao extends BaseDao<IcHouseEntity> { |
|||
|
|||
List<FactUserHouseResultDTO> houseStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
List<FactUserHouseResultDTO> neighborhoodStatStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
} |
@ -0,0 +1,26 @@ |
|||
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.FactAgencyUserHouseDailyEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Mapper |
|||
public interface FactAgencyUserHouseDailyDao extends BaseDao<FactAgencyUserHouseDailyEntity> { |
|||
|
|||
List<FactUserHouseResultDTO> listPage(Map<String, Object> params); |
|||
|
|||
List<FactUserHouseResultDTO> getTotal(Map<String, Object> params); |
|||
|
|||
void deleteByDateId(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,28 @@ |
|||
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.FactGridUserHouseDailyEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 网格的人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Mapper |
|||
public interface FactGridUserHouseDailyDao extends BaseDao<FactGridUserHouseDailyEntity> { |
|||
|
|||
List<FactUserHouseResultDTO> listPage(Map<String, Object> params); |
|||
|
|||
List<FactUserHouseResultDTO> getTotal(Map<String, Object> params); |
|||
|
|||
List<FactUserHouseResultDTO> statAgency(FactUserHouseFormDTO formDTO); |
|||
|
|||
void deleteByDateId(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,40 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.dao.user; |
|||
|
|||
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.user.IcResiUserEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 用户基础信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-26 |
|||
*/ |
|||
@Mapper |
|||
public interface IcResiUserDao extends BaseDao<IcResiUserEntity> { |
|||
|
|||
List<FactUserHouseResultDTO> userStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
} |
@ -0,0 +1,110 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.entity.org; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.math.BigDecimal; |
|||
|
|||
/** |
|||
* 房屋信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-25 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("ic_house") |
|||
public class IcHouseEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 小区id |
|||
*/ |
|||
private String neighborHoodId; |
|||
|
|||
/** |
|||
* 片区id,neighbor_hood_part.id,可为空。 |
|||
*/ |
|||
private String partId; |
|||
|
|||
/** |
|||
* 所属楼栋id |
|||
*/ |
|||
private String buildingId; |
|||
|
|||
/** |
|||
* 所属单元id |
|||
*/ |
|||
private String buildingUnitId; |
|||
|
|||
/** |
|||
* 房屋名字后台插入时生成 |
|||
*/ |
|||
private String houseName; |
|||
|
|||
/** |
|||
* 门牌号 |
|||
*/ |
|||
private String doorName; |
|||
|
|||
/** |
|||
* 房屋类型,这里存储字典value就可以 |
|||
*/ |
|||
private String houseType; |
|||
|
|||
/** |
|||
* 存储字典value |
|||
*/ |
|||
private String purpose; |
|||
|
|||
/** |
|||
* 1出租;0未出租 |
|||
*/ |
|||
private Integer rentFlag; |
|||
|
|||
/** |
|||
* 房主姓名 |
|||
*/ |
|||
private String ownerName; |
|||
|
|||
/** |
|||
* 房主电话 |
|||
*/ |
|||
private String ownerPhone; |
|||
|
|||
/** |
|||
* 房主身份证号 |
|||
*/ |
|||
private String ownerIdCard; |
|||
|
|||
/** |
|||
* 排序 |
|||
*/ |
|||
private BigDecimal sort; |
|||
|
|||
} |
@ -0,0 +1,118 @@ |
|||
package com.epmet.entity.stats; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("fact_agency_user_house_daily") |
|||
public class FactAgencyUserHouseDailyEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* 组织id |
|||
*/ |
|||
private String agencyId; |
|||
|
|||
/** |
|||
* agency_id所属的机关级别(社区级:community, |
|||
乡(镇、街道)级:street, |
|||
区县级: district, |
|||
市级: city |
|||
省级:province) |
|||
*/ |
|||
private String level; |
|||
|
|||
/** |
|||
* 组织i所属的组织id |
|||
*/ |
|||
private String pid; |
|||
|
|||
/** |
|||
* 组织i所有上级id |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 小区总数 |
|||
*/ |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
/** |
|||
* 房屋总数 |
|||
*/ |
|||
private Integer houseCount; |
|||
|
|||
/** |
|||
* 自住房屋总数 |
|||
*/ |
|||
private Integer houseSelfCount; |
|||
|
|||
/** |
|||
* 出租房屋总数 |
|||
*/ |
|||
private Integer houseLeaseCount; |
|||
|
|||
/** |
|||
* 闲置房屋总数 |
|||
*/ |
|||
private Integer houseIdleCount; |
|||
|
|||
/** |
|||
* 居民总数 |
|||
*/ |
|||
private Integer userCount; |
|||
|
|||
/** |
|||
* 常住居民总数 |
|||
*/ |
|||
private Integer userResiCount; |
|||
|
|||
/** |
|||
* 流动居民总数 |
|||
*/ |
|||
private Integer userFloatCount; |
|||
|
|||
/** |
|||
* 当日新增房屋数 |
|||
*/ |
|||
private Integer houseIncr; |
|||
|
|||
/** |
|||
* 当日修改房屋数 |
|||
*/ |
|||
private Integer houseModify; |
|||
|
|||
/** |
|||
* 当日新增居民数 |
|||
*/ |
|||
private Integer userIncr; |
|||
|
|||
/** |
|||
* 当日修改居民数 |
|||
*/ |
|||
private Integer userModify; |
|||
|
|||
} |
@ -0,0 +1,109 @@ |
|||
package com.epmet.entity.stats; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 网格的人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("fact_grid_user_house_daily") |
|||
public class FactGridUserHouseDailyEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 数据更新至:yyyyMMdd; |
|||
*/ |
|||
private String dateId; |
|||
|
|||
/** |
|||
* 网格id |
|||
*/ |
|||
private String gridId; |
|||
|
|||
/** |
|||
* 网格所属的组织id |
|||
*/ |
|||
private String pid; |
|||
|
|||
/** |
|||
* 网格所有上级id |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 小区总数 |
|||
*/ |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
/** |
|||
* 房屋总数 |
|||
*/ |
|||
private Integer houseCount; |
|||
|
|||
/** |
|||
* 自住房屋总数 |
|||
*/ |
|||
private Integer houseSelfCount; |
|||
|
|||
/** |
|||
* 出租房屋总数 |
|||
*/ |
|||
private Integer houseLeaseCount; |
|||
|
|||
/** |
|||
* 闲置房屋总数 |
|||
*/ |
|||
private Integer houseIdleCount; |
|||
|
|||
/** |
|||
* 居民总数 |
|||
*/ |
|||
private Integer userCount; |
|||
|
|||
/** |
|||
* 常住居民总数 |
|||
*/ |
|||
private Integer userResiCount; |
|||
|
|||
/** |
|||
* 流动居民总数 |
|||
*/ |
|||
private Integer userFloatCount; |
|||
|
|||
/** |
|||
* 当日新增房屋数 |
|||
*/ |
|||
private Integer houseIncr; |
|||
|
|||
/** |
|||
* 当日修改房屋数 |
|||
*/ |
|||
private Integer houseModify; |
|||
|
|||
/** |
|||
* 当日新增居民数 |
|||
*/ |
|||
private Integer userIncr; |
|||
|
|||
/** |
|||
* 当日修改居民数 |
|||
*/ |
|||
private Integer userModify; |
|||
|
|||
} |
@ -0,0 +1,513 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.entity.user; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
/** |
|||
* 用户基础信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-26 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("ic_resi_user") |
|||
public class IcResiUserEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户Id customer.id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* |
|||
*/ |
|||
private String agencyId; |
|||
|
|||
/** |
|||
* |
|||
*/ |
|||
private String pids; |
|||
|
|||
/** |
|||
* 网格ID |
|||
*/ |
|||
private String gridId; |
|||
|
|||
/** |
|||
* 所属小区ID |
|||
*/ |
|||
private String villageId; |
|||
|
|||
/** |
|||
* 所属楼宇Id |
|||
*/ |
|||
private String buildId; |
|||
|
|||
/** |
|||
* 单元id |
|||
*/ |
|||
private String unitId; |
|||
|
|||
/** |
|||
* 所属家庭Id |
|||
*/ |
|||
private String homeId; |
|||
|
|||
/** |
|||
* 是否本地户籍 |
|||
*/ |
|||
private String isBdhj; |
|||
|
|||
/** |
|||
* 姓名 |
|||
*/ |
|||
private String name; |
|||
|
|||
/** |
|||
* 手机号 |
|||
*/ |
|||
private String mobile; |
|||
|
|||
/** |
|||
* 性别 |
|||
*/ |
|||
private String gender; |
|||
|
|||
/** |
|||
* 身份证号 |
|||
*/ |
|||
private String idCard; |
|||
|
|||
/** |
|||
* 出生日期 |
|||
*/ |
|||
private String birthday; |
|||
|
|||
/** |
|||
* 备注 |
|||
*/ |
|||
private String remarks; |
|||
|
|||
/** |
|||
* 联系人 |
|||
*/ |
|||
private String contacts; |
|||
|
|||
/** |
|||
* 联系人电话 |
|||
*/ |
|||
private String contactsMobile; |
|||
|
|||
/** |
|||
* 九小场所url |
|||
*/ |
|||
private String ninePlace; |
|||
|
|||
/** |
|||
* 是否党员 |
|||
*/ |
|||
private String isParty; |
|||
|
|||
/** |
|||
* 是否低保户 |
|||
*/ |
|||
private String isDbh; |
|||
|
|||
/** |
|||
* 是否保障房 |
|||
*/ |
|||
private String isEnsureHouse; |
|||
|
|||
/** |
|||
* 是否失业 |
|||
*/ |
|||
private String isUnemployed; |
|||
|
|||
/** |
|||
* 是否育龄妇女 |
|||
*/ |
|||
private String isYlfn; |
|||
|
|||
/** |
|||
* 是否退役军人 |
|||
*/ |
|||
private String isVeterans; |
|||
|
|||
/** |
|||
* 是否统战人员 |
|||
*/ |
|||
private String isUnitedFront; |
|||
|
|||
/** |
|||
* 是否信访人员 |
|||
*/ |
|||
private String isXfry; |
|||
|
|||
/** |
|||
* 是否志愿者 |
|||
*/ |
|||
private String isVolunteer; |
|||
|
|||
/** |
|||
* 是否老年人 |
|||
*/ |
|||
private String isOldPeople; |
|||
|
|||
/** |
|||
* 是否空巢 |
|||
*/ |
|||
private String isKc; |
|||
|
|||
/** |
|||
* 是否失独 |
|||
*/ |
|||
private String isSd; |
|||
|
|||
/** |
|||
* 是否失能 |
|||
*/ |
|||
private String isSn; |
|||
|
|||
/** |
|||
* 是否失智 |
|||
*/ |
|||
private String isSz; |
|||
|
|||
/** |
|||
* 是否残疾 |
|||
*/ |
|||
private String isCj; |
|||
|
|||
/** |
|||
* 是否大病 |
|||
*/ |
|||
private String isDb; |
|||
|
|||
/** |
|||
* 是否慢病 |
|||
*/ |
|||
private String isMb; |
|||
|
|||
/** |
|||
* 是否特殊人群 |
|||
*/ |
|||
private String isSpecial; |
|||
|
|||
/** |
|||
* 是否租户【是:1 否:0】 |
|||
*/ |
|||
private String isTenant; |
|||
|
|||
/** |
|||
* 是否流动人口【是:1 否:0】 |
|||
*/ |
|||
private String isFloating; |
|||
|
|||
/** |
|||
* 文化程度【字典表】 |
|||
*/ |
|||
private String culture; |
|||
|
|||
/** |
|||
* 文化程度备注 |
|||
*/ |
|||
private String cultureRemakes; |
|||
|
|||
/** |
|||
* 特长【字典表】 |
|||
*/ |
|||
private String specialSkill; |
|||
|
|||
/** |
|||
* 兴趣爱好 |
|||
*/ |
|||
private String hobby; |
|||
|
|||
/** |
|||
* 兴趣爱好备注 |
|||
*/ |
|||
private String hobbyRemakes; |
|||
|
|||
/** |
|||
* 宗教信仰 |
|||
*/ |
|||
private String faith; |
|||
|
|||
/** |
|||
* 宗教信仰备注 |
|||
*/ |
|||
private String faithRemakes; |
|||
|
|||
/** |
|||
* 残疾类别【字典表】 |
|||
*/ |
|||
private String cjlb; |
|||
|
|||
/** |
|||
* 残疾登记(状况)【字典表】 |
|||
*/ |
|||
private String cjzk; |
|||
|
|||
/** |
|||
* 残疾证号 |
|||
*/ |
|||
private String cjzh; |
|||
|
|||
/** |
|||
* 残疾说明 |
|||
*/ |
|||
private String cjsm; |
|||
|
|||
/** |
|||
* 有无监护人【yes no】 |
|||
*/ |
|||
private String ynJdr; |
|||
|
|||
/** |
|||
* 有无技能特长【yes no】 |
|||
*/ |
|||
private String ynJntc; |
|||
|
|||
/** |
|||
* 有无劳动能力 |
|||
*/ |
|||
private String ynLdnl; |
|||
|
|||
/** |
|||
* 有无非义务教育阶段助学【yes no】 |
|||
*/ |
|||
private String ynFywjyjdzx; |
|||
|
|||
/** |
|||
* 所患大病 |
|||
*/ |
|||
private String shdb; |
|||
|
|||
/** |
|||
* 患大病时间 |
|||
*/ |
|||
private String dbsj; |
|||
|
|||
/** |
|||
* 所患慢性病 |
|||
*/ |
|||
private String shmxb; |
|||
|
|||
/** |
|||
* 患慢性病时间 |
|||
*/ |
|||
private String mxbsj; |
|||
|
|||
/** |
|||
* 是否参保 |
|||
*/ |
|||
private String isCb; |
|||
|
|||
/** |
|||
* 自付金额 |
|||
*/ |
|||
private String zfje; |
|||
|
|||
/** |
|||
* 救助金额 |
|||
*/ |
|||
private String jzje; |
|||
|
|||
/** |
|||
* 救助时间[yyyy-MM-dd] |
|||
*/ |
|||
private String jzsj; |
|||
|
|||
/** |
|||
* 享受救助明细序号 |
|||
*/ |
|||
private String jzmxxh; |
|||
|
|||
/** |
|||
* 健康信息备注 |
|||
*/ |
|||
private String healthRemakes; |
|||
|
|||
/** |
|||
* 工作单位 |
|||
*/ |
|||
private String gzdw; |
|||
|
|||
/** |
|||
* 职业 |
|||
*/ |
|||
private String zy; |
|||
|
|||
/** |
|||
* 离退休时间 |
|||
*/ |
|||
private String ltxsj; |
|||
|
|||
/** |
|||
* 工作信息备注 |
|||
*/ |
|||
private String workRemake; |
|||
|
|||
/** |
|||
* 退休金额 |
|||
*/ |
|||
private String txje; |
|||
|
|||
/** |
|||
* 月收入 |
|||
*/ |
|||
private String ysr; |
|||
|
|||
/** |
|||
* 籍贯 |
|||
*/ |
|||
private String jg; |
|||
|
|||
/** |
|||
* 户籍所在地 |
|||
*/ |
|||
private String hjszd; |
|||
|
|||
/** |
|||
* 现居住地 |
|||
*/ |
|||
private String xjzd; |
|||
|
|||
/** |
|||
* 人户情况 |
|||
*/ |
|||
private String rhzk; |
|||
|
|||
/** |
|||
* 居住信息备注 |
|||
*/ |
|||
private String jzxxRemakes; |
|||
|
|||
/** |
|||
* 民族【字典表】 |
|||
*/ |
|||
private String mz; |
|||
|
|||
/** |
|||
* 与户主关系【字典表】 |
|||
*/ |
|||
private String yhzgx; |
|||
|
|||
/** |
|||
* 居住情况【字典表】 |
|||
*/ |
|||
private String jzqk; |
|||
|
|||
/** |
|||
* 婚姻状况【字典表】 |
|||
*/ |
|||
private String hyzk; |
|||
|
|||
/** |
|||
* 配偶情况【字典表】 |
|||
*/ |
|||
private String poqk; |
|||
|
|||
/** |
|||
* 有无赡养人 |
|||
*/ |
|||
private String ynSyr; |
|||
|
|||
/** |
|||
* 与赡养人关系【字典表】 |
|||
*/ |
|||
private String ysyrgx; |
|||
|
|||
/** |
|||
* 赡养人电话 |
|||
*/ |
|||
private String syrMobile; |
|||
|
|||
/** |
|||
* 家庭信息备注 |
|||
*/ |
|||
private String jtxxRemakes; |
|||
|
|||
/** |
|||
* 用户状态【0:正常;1:迁出;2:注销】 |
|||
*/ |
|||
private String status; |
|||
|
|||
/** |
|||
* 用户详细状态:01:新增、02:导入、03:迁入、04:新生、11:迁出、21死亡 |
|||
*/ |
|||
private String subStatus; |
|||
|
|||
/** |
|||
* 预留字段1 |
|||
*/ |
|||
private String field1; |
|||
|
|||
/** |
|||
* 预留字段2 |
|||
*/ |
|||
private String field2; |
|||
|
|||
/** |
|||
* 预留字段3 |
|||
*/ |
|||
private String field3; |
|||
|
|||
/** |
|||
* 预留字段4 |
|||
*/ |
|||
private String field4; |
|||
|
|||
/** |
|||
* 预留字段5 |
|||
*/ |
|||
private String field5; |
|||
|
|||
/** |
|||
* 预留字段6 |
|||
*/ |
|||
private String field6; |
|||
|
|||
/** |
|||
* 预留字段7 |
|||
*/ |
|||
private String field7; |
|||
|
|||
/** |
|||
* 预留字段8 |
|||
*/ |
|||
private String field8; |
|||
|
|||
/** |
|||
* 预留字段9 |
|||
*/ |
|||
private String field9; |
|||
|
|||
/** |
|||
* 预留字段10 |
|||
*/ |
|||
private String field10; |
|||
|
|||
} |
@ -0,0 +1,56 @@ |
|||
package com.epmet.excel; |
|||
|
|||
import cn.afterturn.easypoi.excel.annotation.Excel; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Data |
|||
public class FactUserHouseExcel { |
|||
|
|||
@Excel(name = "组织结构") |
|||
private String agencyName; |
|||
|
|||
@Excel(name = "小区数") |
|||
private Integer neighbourhoodsCount; |
|||
|
|||
@Excel(name = "房屋数") |
|||
private Integer houseCount; |
|||
|
|||
@Excel(name = "自住房屋数") |
|||
private Integer houseSelfCount; |
|||
|
|||
@Excel(name = "出租房屋数") |
|||
private Integer houseLeaseCount; |
|||
|
|||
@Excel(name = "闲置房屋数") |
|||
private Integer houseIdleCount; |
|||
|
|||
@Excel(name = "居民总数") |
|||
private Integer userCount; |
|||
|
|||
@Excel(name = "常住人口数") |
|||
private Integer userResiCount; |
|||
|
|||
@Excel(name = "流动人口数") |
|||
private Integer userFloatCount; |
|||
|
|||
@Excel(name = "新增房屋数") |
|||
private Integer houseIncr; |
|||
|
|||
@Excel(name = "新增人口数") |
|||
private Integer userIncr; |
|||
|
|||
@Excel(name = "修改房屋数") |
|||
private Integer houseModify; |
|||
|
|||
@Excel(name = "修改人口数") |
|||
private Integer userModify; |
|||
|
|||
} |
@ -0,0 +1,53 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.service.org; |
|||
|
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 小区表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-25 |
|||
*/ |
|||
public interface HouseService { |
|||
|
|||
/** |
|||
* 房屋统计 |
|||
* |
|||
* @param formDTO |
|||
* @return java.util.List<com.epmet.dto.stats.result.FactUserHouseResultDTO> |
|||
* @author zhy |
|||
* @date 2022/5/30 13:33 |
|||
*/ |
|||
List<FactUserHouseResultDTO> houseStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
/** |
|||
* 小区统计 |
|||
* |
|||
* @param formDTO |
|||
* @return java.util.List<com.epmet.dto.stats.result.FactUserHouseResultDTO> |
|||
* @author zhy |
|||
* @date 2022/5/30 13:33 |
|||
*/ |
|||
List<FactUserHouseResultDTO> neighborhoodStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
} |
@ -0,0 +1,32 @@ |
|||
package com.epmet.service.org.impl; |
|||
|
|||
import com.epmet.commons.dynamic.datasource.annotation.DataSource; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.feign.ResultDataResolver; |
|||
import com.epmet.constant.DataSourceConstant; |
|||
import com.epmet.dao.org.IcHouseDao; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.org.IcHouseEntity; |
|||
import com.epmet.service.org.HouseService; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
@Slf4j |
|||
@DataSource(DataSourceConstant.GOV_ORG) |
|||
@Service |
|||
public class HouseServiceImpl extends BaseServiceImpl<IcHouseDao, IcHouseEntity> implements HouseService, ResultDataResolver { |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> houseStat(FactUserHouseFormDTO formDTO) { |
|||
return baseDao.houseStat(formDTO); |
|||
} |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> neighborhoodStat(FactUserHouseFormDTO formDTO) { |
|||
return baseDao.neighborhoodStatStat(formDTO); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,111 @@ |
|||
package com.epmet.service.stats; |
|||
|
|||
import com.epmet.commons.mybatis.service.BaseService; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.dto.stats.FactAgencyUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.FactGridUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.stats.FactAgencyUserHouseDailyEntity; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
public interface FactAgencyUserHouseDailyService extends BaseService<FactAgencyUserHouseDailyEntity> { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
PageData<FactUserHouseResultDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 分页合计 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
FactUserHouseResultDTO getTotal(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
List<FactAgencyUserHouseDailyDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 查询导出数据 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<FactUserHouseResultDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
List<FactUserHouseResultDTO> listExport(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 单条查询 |
|||
* |
|||
* @param id |
|||
* @return FactAgencyUserHouseDailyDTO |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
FactAgencyUserHouseDailyDTO get(String id); |
|||
|
|||
/** |
|||
* 默认保存 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void save(FactAgencyUserHouseDailyDTO dto); |
|||
|
|||
/** |
|||
* 默认更新 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void update(FactAgencyUserHouseDailyDTO dto); |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void delete(String[] ids); |
|||
|
|||
/** |
|||
* 物理删除历史数据 |
|||
* |
|||
* @param formDTO |
|||
* @return void |
|||
* @author zhy |
|||
* @date 2022/5/30 13:32 |
|||
*/ |
|||
void deleteByDateId(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,120 @@ |
|||
package com.epmet.service.stats; |
|||
|
|||
import com.epmet.commons.mybatis.service.BaseService; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.dto.stats.FactGridUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.stats.FactGridUserHouseDailyEntity; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 网格的人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
public interface FactGridUserHouseDailyService extends BaseService<FactGridUserHouseDailyEntity> { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactGridUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
PageData<FactUserHouseResultDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 页面合计 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactGridUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
FactUserHouseResultDTO getTotal(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<FactGridUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
List<FactGridUserHouseDailyDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 查询导出数据 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<FactUserHouseResultDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
List<FactUserHouseResultDTO> listExport(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 单条查询 |
|||
* |
|||
* @param id |
|||
* @return FactGridUserHouseDailyDTO |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
FactGridUserHouseDailyDTO get(String id); |
|||
|
|||
/** |
|||
* 默认保存 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void save(FactGridUserHouseDailyDTO dto); |
|||
|
|||
/** |
|||
* 默认更新 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void update(FactGridUserHouseDailyDTO dto); |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return void |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
void delete(String[] ids); |
|||
|
|||
/** |
|||
* 物理删除历史数据 |
|||
* |
|||
* @param formDTO |
|||
* @return void |
|||
* @author zhy |
|||
* @date 2022/5/30 13:32 |
|||
*/ |
|||
void deleteByDateId(FactUserHouseFormDTO formDTO); |
|||
|
|||
/** |
|||
* 根据网格统计组织数据 |
|||
* |
|||
* @param formDTO |
|||
* @return java.util.List<com.epmet.dto.stats.result.FactUserHouseResultDTO> |
|||
* @author zhy |
|||
* @date 2022/5/30 13:32 |
|||
*/ |
|||
List<FactUserHouseResultDTO> statAgency(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,68 @@ |
|||
package com.epmet.service.stats; |
|||
|
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.dto.stats.FactAgencyUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
public interface FactUserHouseService { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
PageData<FactUserHouseResultDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 页面合计 |
|||
* |
|||
* @param params |
|||
* @return PageData<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
FactUserHouseResultDTO total(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<FactAgencyUserHouseDailyDTO> |
|||
* @author generator |
|||
* @date 2022-05-27 |
|||
*/ |
|||
List<FactUserHouseResultDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 人房网格数据 |
|||
* |
|||
* @param formDTO |
|||
* @return void |
|||
* @author zhy |
|||
* @date 2022/5/30 13:31 |
|||
*/ |
|||
void statGrid(FactUserHouseFormDTO formDTO); |
|||
|
|||
/** |
|||
* 人房组织数据 |
|||
* |
|||
* @param formDTO |
|||
* @return void |
|||
* @author zhy |
|||
* @date 2022/5/30 13:31 |
|||
*/ |
|||
void statAgency(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,121 @@ |
|||
package com.epmet.service.stats.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.constant.FieldConstant; |
|||
import com.epmet.commons.tools.constant.NumConstant; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.security.user.LoginUserUtil; |
|||
import com.epmet.commons.tools.utils.ConvertUtils; |
|||
import com.epmet.dao.stats.FactAgencyUserHouseDailyDao; |
|||
import com.epmet.dto.stats.FactAgencyUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.stats.FactAgencyUserHouseDailyEntity; |
|||
import com.epmet.service.stats.FactAgencyUserHouseDailyService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Service |
|||
public class FactAgencyUserHouseDailyServiceImpl extends BaseServiceImpl<FactAgencyUserHouseDailyDao, FactAgencyUserHouseDailyEntity> implements FactAgencyUserHouseDailyService { |
|||
|
|||
@Autowired |
|||
private LoginUserUtil loginUserUtil; |
|||
|
|||
@Override |
|||
public PageData<FactUserHouseResultDTO> page(Map<String, Object> params) { |
|||
params.put("customerId", loginUserUtil.getLoginUserCustomerId()); |
|||
IPage<FactUserHouseResultDTO> page = getPage(params); |
|||
List<FactUserHouseResultDTO> list = baseDao.listPage(params); |
|||
return new PageData<>(list, page.getTotal()); |
|||
} |
|||
|
|||
@Override |
|||
public FactUserHouseResultDTO getTotal(Map<String, Object> params) { |
|||
params.put("customerId", loginUserUtil.getLoginUserCustomerId()); |
|||
List<FactUserHouseResultDTO> list = baseDao.getTotal(params); |
|||
|
|||
// 只有当日数据直接展示,否则需要统计时间段内两天差值进行Incr和Modify数据计算
|
|||
if (list.size() == NumConstant.ZERO) { |
|||
return null; |
|||
} else if (list.size() == NumConstant.ONE) { |
|||
return list.get(0); |
|||
} else { |
|||
FactUserHouseResultDTO first = list.get(0); |
|||
FactUserHouseResultDTO last = list.get(list.size() - 1); |
|||
FactUserHouseResultDTO dto = last; |
|||
dto.setHouseIncr(last.getHouseIncr() - first.getHouseIncr()); |
|||
dto.setHouseModify(last.getHouseModify() - first.getHouseModify()); |
|||
dto.setUserIncr(last.getUserIncr() - first.getUserIncr()); |
|||
dto.setUserModify(last.getUserModify() - first.getUserModify()); |
|||
return dto; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public List<FactAgencyUserHouseDailyDTO> list(Map<String, Object> params) { |
|||
List<FactAgencyUserHouseDailyEntity> entityList = baseDao.selectList(getWrapper(params)); |
|||
|
|||
return ConvertUtils.sourceToTarget(entityList, FactAgencyUserHouseDailyDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> listExport(Map<String, Object> params) { |
|||
return baseDao.listPage(params); |
|||
} |
|||
|
|||
private QueryWrapper<FactAgencyUserHouseDailyEntity> getWrapper(Map<String, Object> params) { |
|||
String id = (String) params.get(FieldConstant.ID_HUMP); |
|||
|
|||
QueryWrapper<FactAgencyUserHouseDailyEntity> wrapper = new QueryWrapper<>(); |
|||
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|||
|
|||
return wrapper; |
|||
} |
|||
|
|||
@Override |
|||
public FactAgencyUserHouseDailyDTO get(String id) { |
|||
FactAgencyUserHouseDailyEntity entity = baseDao.selectById(id); |
|||
return ConvertUtils.sourceToTarget(entity, FactAgencyUserHouseDailyDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void save(FactAgencyUserHouseDailyDTO dto) { |
|||
FactAgencyUserHouseDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactAgencyUserHouseDailyEntity.class); |
|||
insert(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void update(FactAgencyUserHouseDailyDTO dto) { |
|||
FactAgencyUserHouseDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactAgencyUserHouseDailyEntity.class); |
|||
updateById(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void delete(String[] ids) { |
|||
// 逻辑删除(@TableLogic 注解)
|
|||
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|||
} |
|||
|
|||
@Override |
|||
public void deleteByDateId(FactUserHouseFormDTO formDTO) { |
|||
baseDao.deleteByDateId(formDTO); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,130 @@ |
|||
package com.epmet.service.stats.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.constant.FieldConstant; |
|||
import com.epmet.commons.tools.constant.NumConstant; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.security.user.LoginUserUtil; |
|||
import com.epmet.commons.tools.utils.ConvertUtils; |
|||
import com.epmet.dao.stats.FactGridUserHouseDailyDao; |
|||
import com.epmet.dto.stats.FactGridUserHouseDailyDTO; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.stats.FactGridUserHouseDailyEntity; |
|||
import com.epmet.service.stats.FactGridUserHouseDailyService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 网格的人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Service |
|||
public class FactGridUserHouseDailyServiceImpl extends BaseServiceImpl<FactGridUserHouseDailyDao, FactGridUserHouseDailyEntity> implements FactGridUserHouseDailyService { |
|||
|
|||
@Autowired |
|||
private LoginUserUtil loginUserUtil; |
|||
|
|||
@Override |
|||
public PageData<FactUserHouseResultDTO> page(Map<String, Object> params) { |
|||
params.put("customerId", loginUserUtil.getLoginUserCustomerId()); |
|||
IPage<FactUserHouseResultDTO> page = getPage(params); |
|||
List<FactUserHouseResultDTO> list = baseDao.listPage(params); |
|||
return new PageData<>(list, page.getTotal()); |
|||
} |
|||
|
|||
@Override |
|||
public FactUserHouseResultDTO getTotal(Map<String, Object> params) { |
|||
params.put("customerId", loginUserUtil.getLoginUserCustomerId()); |
|||
List<FactUserHouseResultDTO> list = baseDao.getTotal(params); |
|||
|
|||
// 只有当日数据直接展示,否则需要统计时间段内两天差值进行Incr和Modify数据计算
|
|||
if (list.size() == NumConstant.ZERO) { |
|||
return null; |
|||
} else if (list.size() == NumConstant.ONE) { |
|||
return list.get(0); |
|||
} else { |
|||
FactUserHouseResultDTO first = list.get(0); |
|||
FactUserHouseResultDTO last = list.get(list.size() - 1); |
|||
FactUserHouseResultDTO dto = last; |
|||
dto.setHouseIncr(last.getHouseIncr() - first.getHouseIncr()); |
|||
dto.setHouseModify(last.getHouseModify() - first.getHouseModify()); |
|||
dto.setUserIncr(last.getUserIncr() - first.getUserIncr()); |
|||
dto.setUserModify(last.getUserModify() - first.getUserModify()); |
|||
return dto; |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public List<FactGridUserHouseDailyDTO> list(Map<String, Object> params) { |
|||
List<FactGridUserHouseDailyEntity> entityList = baseDao.selectList(getWrapper(params)); |
|||
|
|||
return ConvertUtils.sourceToTarget(entityList, FactGridUserHouseDailyDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> listExport(Map<String, Object> params) { |
|||
return baseDao.listPage(params); |
|||
} |
|||
|
|||
private QueryWrapper<FactGridUserHouseDailyEntity> getWrapper(Map<String, Object> params) { |
|||
String id = (String) params.get(FieldConstant.ID_HUMP); |
|||
String dateId = (String) params.get("dateId"); |
|||
String customerId = (String) params.get("customerId"); |
|||
|
|||
QueryWrapper<FactGridUserHouseDailyEntity> wrapper = new QueryWrapper<>(); |
|||
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|||
wrapper.eq(StringUtils.isNotBlank(dateId), "DATE_ID", dateId); |
|||
wrapper.eq(StringUtils.isNotBlank(customerId), "CUSTOMER_ID", customerId); |
|||
|
|||
return wrapper; |
|||
} |
|||
|
|||
@Override |
|||
public FactGridUserHouseDailyDTO get(String id) { |
|||
FactGridUserHouseDailyEntity entity = baseDao.selectById(id); |
|||
return ConvertUtils.sourceToTarget(entity, FactGridUserHouseDailyDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void save(FactGridUserHouseDailyDTO dto) { |
|||
FactGridUserHouseDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactGridUserHouseDailyEntity.class); |
|||
insert(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void update(FactGridUserHouseDailyDTO dto) { |
|||
FactGridUserHouseDailyEntity entity = ConvertUtils.sourceToTarget(dto, FactGridUserHouseDailyEntity.class); |
|||
updateById(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void delete(String[] ids) { |
|||
// 逻辑删除(@TableLogic 注解)
|
|||
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|||
} |
|||
|
|||
@Override |
|||
public void deleteByDateId(FactUserHouseFormDTO formDTO) { |
|||
baseDao.deleteByDateId(formDTO); |
|||
} |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> statAgency(FactUserHouseFormDTO formDTO) { |
|||
return baseDao.statAgency(formDTO); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,219 @@ |
|||
package com.epmet.service.stats.impl; |
|||
|
|||
import com.epmet.commons.tools.constant.NumConstant; |
|||
import com.epmet.commons.tools.enums.OrgLevelEnum; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.utils.ConvertUtils; |
|||
import com.epmet.commons.tools.utils.DateUtils; |
|||
import com.epmet.dto.stats.FactGridUserHouseDailyDTO; |
|||
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.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.user.IcResiUserService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.*; |
|||
|
|||
/** |
|||
* 人房信息统计数,按天统计 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2022-05-27 |
|||
*/ |
|||
@Service |
|||
public class FactUserHouseServiceImpl implements FactUserHouseService { |
|||
|
|||
@Autowired |
|||
private FactAgencyUserHouseDailyService factAgencyUserHouseDailyService; |
|||
|
|||
@Autowired |
|||
private FactGridUserHouseDailyService factGridUserHouseDailyService; |
|||
|
|||
@Autowired |
|||
private HouseService houseService; |
|||
|
|||
@Autowired |
|||
private IcResiUserService icResiUserService; |
|||
|
|||
@Autowired |
|||
private DimGridService dimGridService; |
|||
|
|||
@Override |
|||
public PageData<FactUserHouseResultDTO> page(Map<String, Object> params) { |
|||
PageData<FactUserHouseResultDTO> page = null; |
|||
if (params.containsKey("startTime") && params.containsKey("endTime")) { |
|||
if (StringUtils.isNotBlank(params.get("startTime").toString()) && StringUtils.isNotBlank(params.get("endTime").toString())) { |
|||
params.put("dateId", StringUtils.EMPTY); |
|||
} else { |
|||
params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); |
|||
} |
|||
} else { |
|||
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())) { |
|||
page = factGridUserHouseDailyService.page(params); |
|||
} else { |
|||
page = factAgencyUserHouseDailyService.page(params); |
|||
} |
|||
} |
|||
return page; |
|||
} |
|||
|
|||
@Override |
|||
public FactUserHouseResultDTO total(Map<String, Object> params) { |
|||
FactUserHouseResultDTO dto = null; |
|||
// 不查询时间段默认查询当天
|
|||
if (params.containsKey("startTime") && params.containsKey("endTime")) { |
|||
if (StringUtils.isNotBlank(params.get("startTime").toString()) && StringUtils.isNotBlank(params.get("endTime").toString())) { |
|||
params.put("dateId", StringUtils.EMPTY); |
|||
} else { |
|||
params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); |
|||
} |
|||
} else { |
|||
params.put("dateId", DateUtils.getBeforeNDay(NumConstant.ONE)); |
|||
} |
|||
// 网格纬度查询网格统计表,其余纬度查询组织统计表
|
|||
if (params.containsKey("level")) { |
|||
if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString())) { |
|||
dto = factGridUserHouseDailyService.getTotal(params); |
|||
} else { |
|||
dto = factAgencyUserHouseDailyService.getTotal(params); |
|||
} |
|||
} |
|||
return dto; |
|||
} |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> list(Map<String, Object> params) { |
|||
List<FactUserHouseResultDTO> list = new ArrayList<>(); |
|||
if (params.containsKey("level")) { |
|||
if (OrgLevelEnum.GRID.getCode().equals(params.get("level").toString()) || OrgLevelEnum.COMMUNITY.getCode().equals(params.get("level").toString())) { |
|||
list = factGridUserHouseDailyService.listExport(params); |
|||
} else { |
|||
list = factAgencyUserHouseDailyService.listExport(params); |
|||
} |
|||
} |
|||
FactUserHouseResultDTO dto = total(params); |
|||
dto.setAgencyName("合计"); |
|||
list.add(dto); |
|||
return list; |
|||
} |
|||
|
|||
@Override |
|||
public void statGrid(FactUserHouseFormDTO formDTO) { |
|||
if (StringUtils.isBlank(formDTO.getDateId())) { |
|||
formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); |
|||
} |
|||
String dateId = formDTO.getDateId(); |
|||
String customerId = formDTO.getCustomerId(); |
|||
|
|||
// 先删除历史
|
|||
factGridUserHouseDailyService.deleteByDateId(formDTO); |
|||
|
|||
// 保证小区是全部网格后,其余数据进行循环匹配
|
|||
List<FactUserHouseResultDTO> neiList = houseService.neighborhoodStat(formDTO); |
|||
List<FactUserHouseResultDTO> houseList = houseService.houseStat(formDTO); |
|||
List<FactUserHouseResultDTO> userList = icResiUserService.userStat(formDTO); |
|||
|
|||
List<FactUserHouseResultDTO> addList = new ArrayList<>(); |
|||
|
|||
neiList.forEach(item -> { |
|||
String gridId = item.getGridId(); |
|||
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<FactUserHouseResultDTO> houseOptional = houseList.stream().filter(house -> gridId.equals(house.getGridId()) && 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<FactUserHouseResultDTO> userOptional = userList.stream().filter(user -> gridId.equals(user.getGridId()) && 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<FactGridUserHouseDailyEntity> entityList = ConvertUtils.sourceToTarget(addList, FactGridUserHouseDailyEntity.class); |
|||
factGridUserHouseDailyService.insertBatch(entityList); |
|||
} |
|||
|
|||
@Override |
|||
public void statAgency(FactUserHouseFormDTO formDTO) { |
|||
if (StringUtils.isBlank(formDTO.getDateId())) { |
|||
formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); |
|||
} |
|||
|
|||
Map<String, Object> params = new HashMap<>(); |
|||
params.put("dateId", formDTO.getDateId()); |
|||
params.put("customerId", formDTO.getCustomerId()); |
|||
List<FactGridUserHouseDailyDTO> list = factGridUserHouseDailyService.list(params); |
|||
if (list.isEmpty()) { |
|||
return; |
|||
} |
|||
|
|||
// 先删除历史
|
|||
factAgencyUserHouseDailyService.deleteByDateId(formDTO); |
|||
|
|||
// 使用机构表左关联,对不同纬度的机构进行分组统计
|
|||
formDTO.setLevel("community"); |
|||
List<FactUserHouseResultDTO> commList = factGridUserHouseDailyService.statAgency(formDTO); |
|||
if (!commList.isEmpty()) { |
|||
commList.forEach(item -> item.setDateId(formDTO.getDateId())); |
|||
factAgencyUserHouseDailyService.insertBatch(ConvertUtils.sourceToTarget(commList, FactAgencyUserHouseDailyEntity.class)); |
|||
} |
|||
formDTO.setLevel("street"); |
|||
List<FactUserHouseResultDTO> streetList = factGridUserHouseDailyService.statAgency(formDTO); |
|||
if (!streetList.isEmpty()) { |
|||
streetList.forEach(item -> item.setDateId(formDTO.getDateId())); |
|||
factAgencyUserHouseDailyService.insertBatch(ConvertUtils.sourceToTarget(streetList, FactAgencyUserHouseDailyEntity.class)); |
|||
} |
|||
formDTO.setLevel("district"); |
|||
List<FactUserHouseResultDTO> districtList = factGridUserHouseDailyService.statAgency(formDTO); |
|||
if (!districtList.isEmpty()) { |
|||
districtList.forEach(item -> item.setDateId(formDTO.getDateId())); |
|||
factAgencyUserHouseDailyService.insertBatch(ConvertUtils.sourceToTarget(districtList, FactAgencyUserHouseDailyEntity.class)); |
|||
} |
|||
formDTO.setLevel("city"); |
|||
List<FactUserHouseResultDTO> cityList = factGridUserHouseDailyService.statAgency(formDTO); |
|||
if (!cityList.isEmpty()) { |
|||
cityList.forEach(item -> item.setDateId(formDTO.getDateId())); |
|||
factAgencyUserHouseDailyService.insertBatch(ConvertUtils.sourceToTarget(cityList, FactAgencyUserHouseDailyEntity.class)); |
|||
} |
|||
formDTO.setLevel("province"); |
|||
List<FactUserHouseResultDTO> provinceList = factGridUserHouseDailyService.statAgency(formDTO); |
|||
if (!provinceList.isEmpty()) { |
|||
provinceList.forEach(item -> item.setDateId(formDTO.getDateId())); |
|||
factAgencyUserHouseDailyService.insertBatch(ConvertUtils.sourceToTarget(provinceList, FactAgencyUserHouseDailyEntity.class)); |
|||
} |
|||
|
|||
} |
|||
} |
@ -0,0 +1,45 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.service.user; |
|||
|
|||
import com.epmet.commons.mybatis.service.BaseService; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.user.IcResiUserEntity; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 用户基础信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-26 |
|||
*/ |
|||
public interface IcResiUserService extends BaseService<IcResiUserEntity> { |
|||
|
|||
/** |
|||
* 居民统计 |
|||
* |
|||
* @param formDTO |
|||
* @return java.util.List<com.epmet.dto.stats.result.FactUserHouseResultDTO> |
|||
* @author zhy |
|||
* @date 2022/5/30 13:33 |
|||
*/ |
|||
List<FactUserHouseResultDTO> userStat(FactUserHouseFormDTO formDTO); |
|||
|
|||
} |
@ -0,0 +1,50 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.service.user.impl; |
|||
|
|||
import com.epmet.commons.dynamic.datasource.annotation.DataSource; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.feign.ResultDataResolver; |
|||
import com.epmet.constant.DataSourceConstant; |
|||
import com.epmet.dao.user.IcResiUserDao; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.dto.stats.result.FactUserHouseResultDTO; |
|||
import com.epmet.entity.user.IcResiUserEntity; |
|||
import com.epmet.service.user.IcResiUserService; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 用户基础信息 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-10-26 |
|||
*/ |
|||
@Slf4j |
|||
@DataSource(DataSourceConstant.EPMET_USER) |
|||
@Service |
|||
public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResiUserEntity> implements IcResiUserService, ResultDataResolver { |
|||
|
|||
@Override |
|||
public List<FactUserHouseResultDTO> userStat(FactUserHouseFormDTO formDTO) { |
|||
return baseDao.userStat(formDTO); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,85 @@ |
|||
/* |
|||
Navicat Premium Data Transfer |
|||
|
|||
Source Server : epmet_cloud_dev_statistical |
|||
Source Server Type : MySQL |
|||
Source Server Version : 50726 |
|||
Source Host : 192.168.1.140:3306 |
|||
Source Schema : epmet_data_statistical |
|||
|
|||
Target Server Type : MySQL |
|||
Target Server Version : 50726 |
|||
File Encoding : 65001 |
|||
|
|||
Date: 31/05/2022 13:29:46 |
|||
*/ |
|||
|
|||
SET NAMES utf8mb4; |
|||
SET FOREIGN_KEY_CHECKS = 0; |
|||
|
|||
-- ---------------------------- |
|||
-- Table structure for fact_grid_user_house_daily |
|||
-- ---------------------------- |
|||
DROP TABLE IF EXISTS `fact_grid_user_house_daily`; |
|||
CREATE TABLE `fact_grid_user_house_daily` ( |
|||
`ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键,customer_id+grid_id+date_id只有一条记录', |
|||
`CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户id', |
|||
`DATE_ID` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '数据更新至:yyyyMMdd; ', |
|||
`GRID_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '网格id', |
|||
`PID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '网格所属的组织id', |
|||
`PIDS` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '网格所有上级id', |
|||
`NEIGHBOURHOODS_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '小区总数', |
|||
`HOUSE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '房屋总数', |
|||
`HOUSE_SELF_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '自住房屋总数', |
|||
`HOUSE_LEASE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '出租房屋总数', |
|||
`HOUSE_IDLE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '闲置房屋总数', |
|||
`USER_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '居民总数', |
|||
`USER_RESI_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '常住居民总数', |
|||
`USER_FLOAT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '流动居民总数', |
|||
`HOUSE_INCR` int(11) NOT NULL DEFAULT 0 COMMENT '当日新增房屋数', |
|||
`HOUSE_MODIFY` int(11) NOT NULL DEFAULT 0 COMMENT '当日修改房屋数', |
|||
`USER_INCR` int(11) NOT NULL DEFAULT 0 COMMENT '当日新增居民数', |
|||
`USER_MODIFY` int(11) NOT NULL DEFAULT 0 COMMENT '当日修改居民数', |
|||
`DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', |
|||
`REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', |
|||
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', |
|||
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致', |
|||
`UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', |
|||
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', |
|||
PRIMARY KEY (`ID`) USING BTREE |
|||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '网格的人房信息统计数,按天统计' ROW_FORMAT = DYNAMIC; |
|||
|
|||
-- ---------------------------- |
|||
-- Table structure for fact_agency_user_house_daily |
|||
-- ---------------------------- |
|||
DROP TABLE IF EXISTS `fact_agency_user_house_daily`; |
|||
CREATE TABLE `fact_agency_user_house_daily` ( |
|||
`ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键,customer_id+AGENCY_ID+date_id只有一条记录', |
|||
`CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户id', |
|||
`DATE_ID` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '数据更新至:yyyyMMdd; ', |
|||
`AGENCY_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织id', |
|||
`LEVEL` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'agency_id所属的机关级别(社区级:community,\r\n乡(镇、街道)级:street,\r\n区县级: district,\r\n市级: city\r\n省级:province)', |
|||
`PID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织i所属的组织id', |
|||
`PIDS` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '组织i所有上级id', |
|||
`NEIGHBOURHOODS_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '小区总数', |
|||
`HOUSE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '房屋总数', |
|||
`HOUSE_SELF_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '自住房屋总数', |
|||
`HOUSE_LEASE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '出租房屋总数', |
|||
`HOUSE_IDLE_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '闲置房屋总数', |
|||
`USER_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '居民总数', |
|||
`USER_RESI_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '常住居民总数', |
|||
`USER_FLOAT_COUNT` int(11) NOT NULL DEFAULT 0 COMMENT '流动居民总数', |
|||
`HOUSE_INCR` int(11) NOT NULL DEFAULT 0 COMMENT '当日新增房屋数', |
|||
`HOUSE_MODIFY` int(11) NOT NULL DEFAULT 0 COMMENT '当日修改房屋数', |
|||
`USER_INCR` int(11) NOT NULL DEFAULT 0 COMMENT '当日新增居民数', |
|||
`USER_MODIFY` int(11) NOT NULL DEFAULT 0 COMMENT '当日修改居民数', |
|||
`DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除', |
|||
`REVISION` int(11) NOT NULL DEFAULT 0 COMMENT '乐观锁', |
|||
`CREATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', |
|||
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致', |
|||
`UPDATED_BY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '更新人', |
|||
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', |
|||
PRIMARY KEY (`ID`) USING BTREE |
|||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '人房信息统计数,按天统计' ROW_FORMAT = DYNAMIC; |
|||
|
|||
SET FOREIGN_KEY_CHECKS = 1; |
@ -0,0 +1,63 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.epmet.dao.org.IcHouseDao"> |
|||
|
|||
<select id="houseStat" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
g.CUSTOMER_ID, |
|||
g.id AS GRID_ID, |
|||
g.PID, |
|||
g.PIDS, |
|||
sum( CASE WHEN t.RENT_FLAG = '0' THEN 1 ELSE 0 END ) AS houseSelfCount, |
|||
sum( CASE WHEN t.RENT_FLAG = '1' THEN 1 ELSE 0 END ) AS houseLeaseCount, |
|||
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 |
|||
FROM |
|||
customer_grid g |
|||
LEFT JOIN ( |
|||
SELECT |
|||
h.id, |
|||
h.RENT_FLAG, |
|||
n.GRID_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 |
|||
g.DEL_FLAG = '0' |
|||
<if test='customerId != "" and customerId != null '> |
|||
AND g.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
GROUP BY |
|||
g.CUSTOMER_ID, |
|||
g.id |
|||
</select> |
|||
|
|||
<select id="neighborhoodStatStat" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
g.CUSTOMER_ID, |
|||
g.id AS GRID_ID, |
|||
g.PID, |
|||
g.PIDS, |
|||
count( n.id ) AS neighbourhoodsCount |
|||
FROM |
|||
customer_grid g |
|||
LEFT JOIN ic_neighbor_hood n ON n.GRID_ID = g.id |
|||
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' |
|||
<if test='customerId != "" and customerId != null '> |
|||
AND g.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
GROUP BY |
|||
g.CUSTOMER_ID, |
|||
g.id; |
|||
</select> |
|||
|
|||
</mapper> |
@ -0,0 +1,138 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.epmet.dao.stats.FactAgencyUserHouseDailyDao"> |
|||
|
|||
<resultMap type="com.epmet.entity.stats.FactAgencyUserHouseDailyEntity" id="factAgencyUserHouseDailyMap"> |
|||
<result property="id" column="ID"/> |
|||
<result property="customerId" column="CUSTOMER_ID"/> |
|||
<result property="dateId" column="DATE_ID"/> |
|||
<result property="agencyId" column="AGENCY_ID"/> |
|||
<result property="level" column="LEVEL"/> |
|||
<result property="pid" column="PID"/> |
|||
<result property="pids" column="PIDS"/> |
|||
<result property="neighbourhoodsCount" column="NEIGHBOURHOODS_COUNT"/> |
|||
<result property="houseCount" column="HOUSE_COUNT"/> |
|||
<result property="houseSelfCount" column="HOUSE_SELF_COUNT"/> |
|||
<result property="houseLeaseCount" column="HOUSE_LEASE_COUNT"/> |
|||
<result property="houseIdleCount" column="HOUSE_IDLE_COUNT"/> |
|||
<result property="userCount" column="USER_COUNT"/> |
|||
<result property="userResiCount" column="USER_RESI_COUNT"/> |
|||
<result property="userFloatCount" column="USER_FLOAT_COUNT"/> |
|||
<result property="houseIncr" column="HOUSE_INCR"/> |
|||
<result property="houseModify" column="HOUSE_MODIFY"/> |
|||
<result property="userIncr" column="USER_INCR"/> |
|||
<result property="userModify" column="USER_MODIFY"/> |
|||
<result property="delFlag" column="DEL_FLAG"/> |
|||
<result property="revision" column="REVISION"/> |
|||
<result property="createdBy" column="CREATED_BY"/> |
|||
<result property="createdTime" column="CREATED_TIME"/> |
|||
<result property="updatedBy" column="UPDATED_BY"/> |
|||
<result property="updatedTime" column="UPDATED_TIME"/> |
|||
</resultMap> |
|||
|
|||
<select id="listPage" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
d.AGENCY_NAME AS AGENCY_NAME, |
|||
max( NEIGHBOURHOODS_COUNT ) AS NEIGHBOURHOODS_COUNT, |
|||
max( HOUSE_COUNT ) AS HOUSE_COUNT, |
|||
max( HOUSE_SELF_COUNT ) AS HOUSE_SELF_COUNT, |
|||
max( HOUSE_LEASE_COUNT ) AS HOUSE_LEASE_COUNT, |
|||
max( HOUSE_IDLE_COUNT ) AS HOUSE_IDLE_COUNT, |
|||
max( USER_COUNT ) AS USER_COUNT, |
|||
max( USER_RESI_COUNT ) AS USER_RESI_COUNT, |
|||
max( USER_FLOAT_COUNT ) AS USER_FLOAT_COUNT, |
|||
max( HOUSE_INCR ) AS HOUSE_INCR, |
|||
max( HOUSE_MODIFY ) AS HOUSE_MODIFY, |
|||
max( USER_INCR ) AS USER_INCR, |
|||
max( USER_MODIFY ) AS USER_MODIFY |
|||
FROM |
|||
fact_agency_user_house_daily a |
|||
LEFT JOIN dim_agency d ON d.id = a.AGENCY_ID |
|||
WHERE |
|||
d.DEL_FLAG = '0' |
|||
<if test="customerId != null and customerId != ''"> |
|||
AND a.CUSTOMER_ID = #{customerId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
<if test="dateId != null and dateId != ''"> |
|||
AND a.DATE_ID = #{dateId} |
|||
</if> |
|||
<if test="level == 'street'"> |
|||
AND a.LEVEL = 'community' |
|||
AND a.PID = #{agencyId} |
|||
</if> |
|||
<if test="level == 'district'"> |
|||
AND a.LEVEL = 'street' |
|||
AND a.PID = #{agencyId} |
|||
</if> |
|||
<if test="level == 'city'"> |
|||
AND a.LEVEL = 'district' |
|||
AND a.PID = #{agencyId} |
|||
</if> |
|||
<if test="level == 'province'"> |
|||
AND a.LEVEL = 'city' |
|||
AND a.PID = #{agencyId} |
|||
</if> |
|||
<if test="startTime != null and startTime != ''"> |
|||
AND DATE_FORMAT( a.DATE_ID, '%Y-%m-%d' ) >= DATE_FORMAT( #{startTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
<if test="endTime != null and endTime != ''"> |
|||
AND DATE_FORMAT( a.DATE_ID, '%Y-%m-%d' ) <= DATE_FORMAT( #{endTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
GROUP BY |
|||
a.AGENCY_ID |
|||
</select> |
|||
|
|||
<select id="getTotal" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
d.AGENCY_NAME AS AGENCY_NAME, |
|||
sum( NEIGHBOURHOODS_COUNT ) AS NEIGHBOURHOODS_COUNT, |
|||
sum( HOUSE_COUNT ) AS HOUSE_COUNT, |
|||
sum( HOUSE_SELF_COUNT ) AS HOUSE_SELF_COUNT, |
|||
sum( HOUSE_LEASE_COUNT ) AS HOUSE_LEASE_COUNT, |
|||
sum( HOUSE_IDLE_COUNT ) AS HOUSE_IDLE_COUNT, |
|||
sum( USER_COUNT ) AS USER_COUNT, |
|||
sum( USER_RESI_COUNT ) AS USER_RESI_COUNT, |
|||
sum( USER_FLOAT_COUNT ) AS USER_FLOAT_COUNT, |
|||
sum( HOUSE_INCR ) AS HOUSE_INCR, |
|||
sum( HOUSE_MODIFY ) AS HOUSE_MODIFY, |
|||
sum( USER_INCR ) AS USER_INCR, |
|||
sum( USER_MODIFY ) AS USER_MODIFY |
|||
FROM |
|||
fact_agency_user_house_daily a |
|||
LEFT JOIN dim_agency d ON d.id = a.AGENCY_ID |
|||
WHERE |
|||
d.DEL_FLAG = '0' |
|||
<if test="customerId != null and customerId != ''"> |
|||
AND a.CUSTOMER_ID = #{customerId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
<if test="agencyId != null and agencyId != ''"> |
|||
AND a.AGENCY_ID = #{agencyId} |
|||
</if> |
|||
<if test="dateId != null and dateId != ''"> |
|||
AND a.DATE_ID = #{dateId} |
|||
</if> |
|||
<if test="startTime != null and startTime != ''"> |
|||
AND DATE_FORMAT( a.DATE_ID, '%Y-%m-%d' ) >= DATE_FORMAT( #{startTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
<if test="endTime != null and endTime != ''"> |
|||
AND DATE_FORMAT( a.DATE_ID, '%Y-%m-%d' ) <= DATE_FORMAT( #{endTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
GROUP BY |
|||
a.DATE_ID |
|||
ORDER BY |
|||
a.DATE_ID ASC |
|||
</select> |
|||
|
|||
<delete id="deleteByDateId"> |
|||
DELETE |
|||
FROM |
|||
fact_agency_user_house_daily |
|||
WHERE |
|||
DATE_ID = #{dateId} |
|||
AND CUSTOMER_ID = #{customerId} |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,237 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.epmet.dao.stats.FactGridUserHouseDailyDao"> |
|||
|
|||
<resultMap type="com.epmet.entity.stats.FactGridUserHouseDailyEntity" id="factGridUserHouseDailyMap"> |
|||
<result property="id" column="ID"/> |
|||
<result property="customerId" column="CUSTOMER_ID"/> |
|||
<result property="dateId" column="DATE_ID"/> |
|||
<result property="gridId" column="GRID_ID"/> |
|||
<result property="pid" column="PID"/> |
|||
<result property="pids" column="PIDS"/> |
|||
<result property="neighbourhoodsCount" column="NEIGHBOURHOODS_COUNT"/> |
|||
<result property="houseCount" column="HOUSE_COUNT"/> |
|||
<result property="houseSelfCount" column="HOUSE_SELF_COUNT"/> |
|||
<result property="houseLeaseCount" column="HOUSE_LEASE_COUNT"/> |
|||
<result property="houseIdleCount" column="HOUSE_IDLE_COUNT"/> |
|||
<result property="userCount" column="USER_COUNT"/> |
|||
<result property="userResiCount" column="USER_RESI_COUNT"/> |
|||
<result property="userFloatCount" column="USER_FLOAT_COUNT"/> |
|||
<result property="houseIncr" column="HOUSE_INCR"/> |
|||
<result property="houseModify" column="HOUSE_MODIFY"/> |
|||
<result property="userIncr" column="USER_INCR"/> |
|||
<result property="userModify" column="USER_MODIFY"/> |
|||
<result property="delFlag" column="DEL_FLAG"/> |
|||
<result property="revision" column="REVISION"/> |
|||
<result property="createdBy" column="CREATED_BY"/> |
|||
<result property="createdTime" column="CREATED_TIME"/> |
|||
<result property="updatedBy" column="UPDATED_BY"/> |
|||
<result property="updatedTime" column="UPDATED_TIME"/> |
|||
</resultMap> |
|||
|
|||
<select id="listPage" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
g.GRID_NAME AS AGENCY_NAME, |
|||
max( NEIGHBOURHOODS_COUNT ) AS NEIGHBOURHOODS_COUNT, |
|||
max( HOUSE_COUNT ) AS HOUSE_COUNT, |
|||
max( HOUSE_SELF_COUNT ) AS HOUSE_SELF_COUNT, |
|||
max( HOUSE_LEASE_COUNT ) AS HOUSE_LEASE_COUNT, |
|||
max( HOUSE_IDLE_COUNT ) AS HOUSE_IDLE_COUNT, |
|||
max( USER_COUNT ) AS USER_COUNT, |
|||
max( USER_RESI_COUNT ) AS USER_RESI_COUNT, |
|||
max( USER_FLOAT_COUNT ) AS USER_FLOAT_COUNT, |
|||
max( HOUSE_INCR ) AS HOUSE_INCR, |
|||
max( HOUSE_MODIFY ) AS HOUSE_MODIFY, |
|||
max( USER_INCR ) AS USER_INCR, |
|||
max( USER_MODIFY ) AS USER_MODIFY |
|||
FROM |
|||
fact_grid_user_house_daily d |
|||
LEFT JOIN dim_grid g ON g.id = d.GRID_ID |
|||
WHERE |
|||
g.DEL_FLAG = '0' |
|||
<if test="customerId != null and customerId != ''"> |
|||
AND g.CUSTOMER_ID = #{customerId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
<if test="level == 'grid'"> |
|||
AND d.GRID_ID = #{agencyId} |
|||
</if> |
|||
<if test="level == 'community'"> |
|||
AND d.PID = #{agencyId} |
|||
</if> |
|||
<if test="dateId != null and dateId != ''"> |
|||
AND d.DATE_ID = #{dateId} |
|||
</if> |
|||
<if test="startTime != null and startTime != ''"> |
|||
AND DATE_FORMAT( d.DATE_ID, '%Y-%m-%d' ) >= DATE_FORMAT( #{startTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
<if test="endTime != null and endTime != ''"> |
|||
AND DATE_FORMAT( d.DATE_ID, '%Y-%m-%d' ) <= DATE_FORMAT( #{endTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
GROUP BY |
|||
GRID_ID |
|||
</select> |
|||
|
|||
<select id="getTotal" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
g.GRID_NAME AS AGENCY_NAME, |
|||
sum( NEIGHBOURHOODS_COUNT ) AS NEIGHBOURHOODS_COUNT, |
|||
sum( HOUSE_COUNT ) AS HOUSE_COUNT, |
|||
sum( HOUSE_SELF_COUNT ) AS HOUSE_SELF_COUNT, |
|||
sum( HOUSE_LEASE_COUNT ) AS HOUSE_LEASE_COUNT, |
|||
sum( HOUSE_IDLE_COUNT ) AS HOUSE_IDLE_COUNT, |
|||
sum( USER_COUNT ) AS USER_COUNT, |
|||
sum( USER_RESI_COUNT ) AS USER_RESI_COUNT, |
|||
sum( USER_FLOAT_COUNT ) AS USER_FLOAT_COUNT, |
|||
sum( HOUSE_INCR ) AS HOUSE_INCR, |
|||
sum( HOUSE_MODIFY ) AS HOUSE_MODIFY, |
|||
sum( USER_INCR ) AS USER_INCR, |
|||
sum( USER_MODIFY ) AS USER_MODIFY |
|||
FROM |
|||
fact_grid_user_house_daily d |
|||
LEFT JOIN dim_grid g ON g.id = d.GRID_ID |
|||
LEFT JOIN dim_agency a ON a.id = d.PID |
|||
WHERE |
|||
g.DEL_FLAG = '0' |
|||
<if test="customerId != null and customerId != ''"> |
|||
AND g.CUSTOMER_ID = #{customerId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
</if> |
|||
<if test="agencyId != null and agencyId != ''"> |
|||
AND d.GRID_ID = #{agencyId} |
|||
</if> |
|||
<if test="dateId != null and dateId != ''"> |
|||
AND d.DATE_ID = #{dateId} |
|||
</if> |
|||
<if test="startTime != null and startTime != ''"> |
|||
AND DATE_FORMAT( d.DATE_ID, '%Y-%m-%d' ) >= DATE_FORMAT( #{startTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
<if test="endTime != null and endTime != ''"> |
|||
AND DATE_FORMAT( d.DATE_ID, '%Y-%m-%d' ) <= DATE_FORMAT( #{endTime}, '%Y-%m-%d' ) |
|||
</if> |
|||
GROUP BY |
|||
d.DATE_ID |
|||
ORDER BY |
|||
d.DATE_ID ASC |
|||
</select> |
|||
|
|||
<select id="statAgency" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
t.*, |
|||
ag.id AS AGENCY_ID, |
|||
ag.CUSTOMER_ID, |
|||
ag.`LEVEL`, |
|||
ag.PID, |
|||
ag.PIDS |
|||
FROM |
|||
dim_agency ag |
|||
LEFT JOIN ( |
|||
SELECT |
|||
<if test="level == 'community'"> |
|||
c.id AS AGENCY, |
|||
</if> |
|||
<if test="level == 'street'"> |
|||
s.id AS AGENCY, |
|||
</if> |
|||
<if test="level == 'district'"> |
|||
di.id AS AGENCY, |
|||
</if> |
|||
<if test="level == 'city'"> |
|||
ci.id AS AGENCY, |
|||
</if> |
|||
<if test="level == 'province'"> |
|||
p.id AS AGENCY, |
|||
</if> |
|||
sum( NEIGHBOURHOODS_COUNT ) AS NEIGHBOURHOODS_COUNT, |
|||
sum( HOUSE_COUNT ) AS HOUSE_COUNT, |
|||
sum( HOUSE_SELF_COUNT ) AS HOUSE_SELF_COUNT, |
|||
sum( HOUSE_LEASE_COUNT ) AS HOUSE_LEASE_COUNT, |
|||
sum( HOUSE_IDLE_COUNT ) AS HOUSE_IDLE_COUNT, |
|||
sum( USER_COUNT ) AS USER_COUNT, |
|||
sum( USER_RESI_COUNT ) AS USER_RESI_COUNT, |
|||
sum( USER_FLOAT_COUNT ) AS USER_FLOAT_COUNT, |
|||
sum( HOUSE_INCR ) AS HOUSE_INCR, |
|||
sum( HOUSE_MODIFY ) AS HOUSE_MODIFY, |
|||
sum( USER_INCR ) AS USER_INCR, |
|||
sum( USER_MODIFY ) AS USER_MODIFY |
|||
FROM |
|||
fact_grid_user_house_daily d |
|||
INNER JOIN dim_grid g ON g.id = d.GRID_ID |
|||
INNER JOIN dim_agency c ON c.id = g.AGENCY_ID |
|||
<if test="level == 'community'"> |
|||
WHERE |
|||
d.DATE_ID = #{dateId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
GROUP BY |
|||
c.id |
|||
</if> |
|||
<if test="level == 'street'"> |
|||
INNER JOIN dim_agency s ON s.id = c.pid |
|||
WHERE |
|||
d.DATE_ID = #{dateId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
GROUP BY |
|||
s.id |
|||
</if> |
|||
<if test="level == 'district'"> |
|||
INNER JOIN dim_agency s ON s.id = c.pid |
|||
INNER JOIN dim_agency di ON di.id = s.pid |
|||
WHERE |
|||
d.DATE_ID = #{dateId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
GROUP BY |
|||
di.id |
|||
</if> |
|||
<if test="level == 'city'"> |
|||
INNER JOIN dim_agency s ON s.id = c.pid |
|||
INNER JOIN dim_agency di ON di.id = s.pid |
|||
INNER JOIN dim_agency ci ON ci.id = di.pid |
|||
INNER JOIN dim_agency p ON p.id = ci.pid |
|||
WHERE |
|||
d.DATE_ID = #{dateId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
GROUP BY |
|||
ci.id |
|||
</if> |
|||
<if test="level == 'province'"> |
|||
INNER JOIN dim_agency s ON s.id = c.pid |
|||
INNER JOIN dim_agency di ON di.id = s.pid |
|||
INNER JOIN dim_agency ci ON ci.id = di.pid |
|||
INNER JOIN dim_agency p ON p.id = ci.pid |
|||
WHERE |
|||
d.DATE_ID = #{dateId} |
|||
AND d.CUSTOMER_ID = #{customerId} |
|||
GROUP BY |
|||
p.id |
|||
</if> |
|||
) t ON t.AGENCY = ag.id |
|||
WHERE |
|||
ag.CUSTOMER_ID = #{customerId} |
|||
AND ag.AGENCY_DIM_TYPE = 'all' |
|||
<if test="level == 'community'"> |
|||
AND ag.`LEVEL` = 'community' |
|||
</if> |
|||
<if test="level == 'street'"> |
|||
AND ag.`LEVEL` = 'street' |
|||
</if> |
|||
<if test="level == 'district'"> |
|||
AND ag.`LEVEL` = 'district' |
|||
</if> |
|||
<if test="level == 'city'"> |
|||
AND ag.`LEVEL` = 'city' |
|||
</if> |
|||
<if test="level == 'province'"> |
|||
AND ag.`LEVEL` = 'province' |
|||
</if> |
|||
</select> |
|||
|
|||
<delete id="deleteByDateId"> |
|||
DELETE |
|||
FROM |
|||
fact_grid_user_house_daily |
|||
WHERE |
|||
DATE_ID = #{dateId} |
|||
AND CUSTOMER_ID = #{customerId} |
|||
</delete> |
|||
</mapper> |
@ -0,0 +1,23 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.epmet.dao.user.IcResiUserDao"> |
|||
|
|||
<select id="userStat" resultType="com.epmet.dto.stats.result.FactUserHouseResultDTO"> |
|||
SELECT |
|||
CUSTOMER_ID, |
|||
GRID_ID, |
|||
sum( CASE WHEN IS_FLOATING = '0' THEN 1 ELSE 0 END ) AS userResiCount, |
|||
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 |
|||
FROM |
|||
ic_resi_user |
|||
WHERE |
|||
del_flag = '0' |
|||
AND CREATED_TIME <= DATE_ADD( DATE_FORMAT(#{dateId},'%Y-%m-%d'), INTERVAL 1 DAY ) |
|||
GROUP BY |
|||
CUSTOMER_ID, |
|||
AGENCY_ID |
|||
</select> |
|||
|
|||
</mapper> |
@ -0,0 +1,27 @@ |
|||
package com.epmet.service; |
|||
|
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
|
|||
public interface StatsUserHouseService { |
|||
|
|||
/** |
|||
* 人房信息统计 |
|||
* |
|||
* @param formDTO |
|||
* @return com.epmet.commons.tools.utils.Result |
|||
* @author zhy |
|||
* @date 2022/5/30 10:25 |
|||
*/ |
|||
Result execUserHouseGridStatistical(FactUserHouseFormDTO formDTO); |
|||
|
|||
/** |
|||
* 人房信息统计 |
|||
* |
|||
* @param formDTO |
|||
* @return com.epmet.commons.tools.utils.Result |
|||
* @author zhy |
|||
* @date 2022/5/30 10:25 |
|||
*/ |
|||
Result execUserHouseAgencyStatistical(FactUserHouseFormDTO formDTO); |
|||
} |
@ -0,0 +1,30 @@ |
|||
package com.epmet.service.impl; |
|||
|
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.feign.DataStatisticalOpenFeignClient; |
|||
import com.epmet.service.StatsUserHouseService; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
|
|||
@Service |
|||
public class StatsUserHouseServiceImpl implements StatsUserHouseService { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; |
|||
|
|||
@Override |
|||
public Result execUserHouseGridStatistical(FactUserHouseFormDTO formDTO) { |
|||
return dataStatisticalOpenFeignClient.userHouseStatGrid(formDTO); |
|||
} |
|||
|
|||
@Override |
|||
public Result execUserHouseAgencyStatistical(FactUserHouseFormDTO formDTO) { |
|||
return dataStatisticalOpenFeignClient.userHouseStatAgency(formDTO); |
|||
} |
|||
} |
@ -0,0 +1,48 @@ |
|||
package com.epmet.task; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.dto.stats.form.FactUserHouseFormDTO; |
|||
import com.epmet.service.StatsUserHouseService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
/** |
|||
* 人房 |
|||
* |
|||
* @author zhy |
|||
* @date 2022/5/30 10:23 |
|||
*/ |
|||
@Component("statsUserHouseTask") |
|||
public class StatsUserHouseTask implements ITask { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private StatsUserHouseService statsUserHouseService; |
|||
|
|||
@Override |
|||
public void run(String params) { |
|||
logger.info("StatsUserHouseTask定时任务正在执行,参数为:{}", params); |
|||
FactUserHouseFormDTO formDTO = new FactUserHouseFormDTO(); |
|||
if (StringUtils.isNotBlank(params)) { |
|||
formDTO = JSON.parseObject(params, FactUserHouseFormDTO.class); |
|||
} |
|||
Result result = statsUserHouseService.execUserHouseGridStatistical(formDTO); |
|||
if (result.success()) { |
|||
logger.info("StatsUserHouseTask-grid定时任务执行成功"); |
|||
} else { |
|||
logger.error("StatsUserHouseTask-grid定时任务执行失败:" + result.getMsg()); |
|||
} |
|||
|
|||
result = statsUserHouseService.execUserHouseAgencyStatistical(formDTO); |
|||
if (result.success()) { |
|||
logger.info("StatsUserHouseTask-agency定时任务执行成功"); |
|||
} else { |
|||
logger.error("StatsUserHouseTask-agency定时任务执行失败:" + result.getMsg()); |
|||
} |
|||
} |
|||
} |
Loading…
Reference in new issue