From c6bbaeec320d734987c3dbe70f78d28a88c5803c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 6 Jul 2021 16:30:24 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0sync=5Fflag,0:=E4=B8=8D?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=88=B0=E6=8C=87=E6=A0=87=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/db/migration/V0.0.5__add_sync_flag.sql | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql new file mode 100644 index 0000000000..f4133fe7ee --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql @@ -0,0 +1,3 @@ +alter table customer_agency add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前组织是否同步到统计库和指标库' AFTER AREA_CODE; +alter table customer_department add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前部门是否同步到统计库和指标库' AFTER AREA_CODE; +alter table customer_grid add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前网格是否同步到统计库和指标库' AFTER AREA_CODE; \ No newline at end of file From 37767d0dff0ff963add35c84299b53782028746b Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 7 Jul 2021 09:38:54 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=91=98=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E4=B8=8A=E6=8A=A5=E6=8E=A5=E5=8F=A3=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/OpenStaffDetailFormDTO.java | 29 +++++++ .../result/OpenStaffDetailResultDTO.java | 28 +++++++ .../controller/EpmetUserController.java | 13 +++ .../dao/epmetuser/CustomerStaffDao.java | 9 ++- .../dao/govorg/CustomerStaffAgencyDao.java | 6 ++ .../service/epmetuser/EpmetUserService.java | 13 ++- .../epmetuser/impl/EpmetUserServiceImpl.java | 36 +++++++++ .../service/govorg/GovOrgService.java | 7 ++ .../govorg/impl/GovOrgServiceImpl.java | 10 +++ .../mapper/epmetuser/CustomerStaffDao.xml | 12 +++ .../mapper/govorg/CustomerStaffAgencyDao.xml | 14 ++++ .../dto/stats/form/GmUploadDataFormDTO.java | 81 +++++++++++++++++++ .../dto/stats/form/GmUploadEventFormDTO.java | 65 +++++++++++++++ .../epmet/controller/StatsUserController.java | 27 +++++++ .../com/epmet/service/StatsUserService.java | 16 ++++ .../service/impl/StatsUserServiceImpl.java | 24 ++++++ 16 files changed, 385 insertions(+), 5 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/OpenStaffDetailFormDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/OpenStaffDetailResultDTO.java create mode 100644 epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadDataFormDTO.java create mode 100644 epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadEventFormDTO.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/OpenStaffDetailFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/OpenStaffDetailFormDTO.java new file mode 100644 index 0000000000..4d3d81aebe --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/OpenStaffDetailFormDTO.java @@ -0,0 +1,29 @@ +package com.epmet.dataaggre.dto.epmetuser.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 对外接口--查询工作人员基本信息-接口入参 + * @Auth sun + */ +@Data +public class OpenStaffDetailFormDTO implements Serializable { + + private static final long serialVersionUID = -3381286960911634231L; + /** + * 客户Id + */ + @NotBlank(message = "客户Id不能为空", groups = OpenStaffDetailFormDTO.Open.class) + private String customerId; + /** + * 手机号 + */ + @NotBlank(message = "手机号不能为空", groups = OpenStaffDetailFormDTO.Open.class) + private String mobile; + public interface Open extends CustomerClientShowGroup {} + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/OpenStaffDetailResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/OpenStaffDetailResultDTO.java new file mode 100644 index 0000000000..9707a14f67 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/OpenStaffDetailResultDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dataaggre.dto.epmetuser.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 对外接口--查询工作人员基本信息-接口返参 + * @Auth sun + */ +@Data +public class OpenStaffDetailResultDTO implements Serializable { + private static final long serialVersionUID = 7129564173128153335L; + + //工作人员用户id + private String staffId = ""; + //工作人员姓名 + private String staffName = ""; + //手机号 + private String mobile = ""; + //用户所属组织id + private String agencyId = ""; + //用户所属组织全路径名称 + private String agencyAllName = ""; + //客户Id + private String customerId = ""; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java index bd535ae77c..96c3c20c02 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java @@ -7,9 +7,11 @@ import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dataaggre.dto.epmetuser.form.OpenStaffDetailFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.PatrolDateListFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.PatrolRecordListFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.StaffListFormDTO; +import com.epmet.dataaggre.dto.epmetuser.result.OpenStaffDetailResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.PatrolDateListResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.PatrolRecordListResultDTO; import com.epmet.dataaggre.dto.epmetuser.result.StaffListResultDTO; @@ -79,5 +81,16 @@ public class EpmetUserController { return new Result().ok(epmetUserService.patrolDateList(formDTO)); } + /** + * @Param formDTO + * @Description 对外接口--查询工作人员基本信息 + * @author sun + */ + @PostMapping("open-staffdetail") + public Result openStaffDetail(@RequestBody OpenStaffDetailFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, OpenStaffDetailFormDTO.Open.class); + return new Result().ok(epmetUserService.openStaffDetail(formDTO)); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/CustomerStaffDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/CustomerStaffDao.java index 9d3004c815..b3ca304972 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/CustomerStaffDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/CustomerStaffDao.java @@ -18,8 +18,10 @@ package com.epmet.dataaggre.dao.epmetuser; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dataaggre.dto.epmetuser.CustomerStaffDTO; import com.epmet.dataaggre.entity.epmetuser.CustomerStaffEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 政府工作人员表 @@ -29,5 +31,10 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface CustomerStaffDao extends BaseDao { - + + /** + * @Description 按staffId查询基础信息 + * @author sun + */ + CustomerStaffDTO selectByMobile(@Param("customerId") String customerId, @Param("mobile") String mobile); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java index f8b58c698b..445e796c61 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java @@ -18,6 +18,7 @@ package com.epmet.dataaggre.dao.govorg; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerStaffAgencyDTO; import com.epmet.dataaggre.entity.govorg.CustomerStaffAgencyEntity; import org.apache.ibatis.annotations.Mapper; @@ -38,4 +39,9 @@ public interface CustomerStaffAgencyDao extends BaseDao staffGridRole(List forms, String staffName); + /** + * @Param formDTO + * @Description 对外接口--查询工作人员基本信息 + * @author sun + */ + OpenStaffDetailResultDTO openStaffDetail(OpenStaffDetailFormDTO formDTO); + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index 175525d16d..2a5225832f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -4,15 +4,19 @@ import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.dataaggre.constant.DataSourceConstant; +import com.epmet.dataaggre.dao.epmetuser.CustomerStaffDao; import com.epmet.dataaggre.dao.epmetuser.StaffPatrolRecordDao; import com.epmet.dataaggre.dao.epmetuser.StaffRoleDao; import com.epmet.dataaggre.dao.epmetuser.UserBaseInfoDao; +import com.epmet.dataaggre.dto.epmetuser.CustomerStaffDTO; import com.epmet.dataaggre.dto.epmetuser.StaffPatrolDetailDTO; import com.epmet.dataaggre.dto.epmetuser.StaffPatrolRecordDTO; +import com.epmet.dataaggre.dto.epmetuser.form.OpenStaffDetailFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.PatrolDateListFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.PatrolRecordListFormDTO; import com.epmet.dataaggre.dto.epmetuser.form.StaffListFormDTO; import com.epmet.dataaggre.dto.epmetuser.result.*; +import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO; import com.epmet.dataaggre.service.epmetuser.EpmetUserService; @@ -49,6 +53,8 @@ public class EpmetUserServiceImpl implements EpmetUserService { private StaffPatrolRecordService staffPatrolRecordService; @Resource private StaffRoleDao staffRoleDao; + @Resource + private CustomerStaffDao customerStaffDao; /** * @Description 根据UserIds查询 @@ -247,5 +253,35 @@ public class EpmetUserServiceImpl implements EpmetUserService { return result; } + /** + * @Param formDTO + * @Description 对外接口--查询工作人员基本信息 + * @author sun + */ + @Override + public OpenStaffDetailResultDTO openStaffDetail(OpenStaffDetailFormDTO formDTO) { + OpenStaffDetailResultDTO resultDTO = new OpenStaffDetailResultDTO(); + //1.按staffId查询基础信息 + CustomerStaffDTO staffDTO = customerStaffDao.selectByMobile(formDTO.getCustomerId(), formDTO.getMobile()); + if (null == staffDTO) { + return resultDTO; + } + + //2.查询工作人员所属组织信息 + CustomerAgencyDTO agencyDTO = govOrgService.gridByAgencyId(formDTO.getCustomerId(), staffDTO.getUserId()); + + //3.封装数据并返回 + resultDTO.setCustomerId(formDTO.getCustomerId()); + if (null != agencyDTO) { + resultDTO.setAgencyId(agencyDTO.getId()); + resultDTO.setAgencyAllName(agencyDTO.getAllParentName()); + } + resultDTO.setStaffId(staffDTO.getUserId()); + resultDTO.setStaffName(staffDTO.getRealName()); + resultDTO.setMobile(formDTO.getMobile()); + + return resultDTO; + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java index 8008242d5f..caa795dc8f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java @@ -1,5 +1,6 @@ package com.epmet.dataaggre.service.govorg; +import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.form.NextAreaCodeFormDTO; import com.epmet.dataaggre.dto.govorg.result.*; @@ -59,4 +60,10 @@ public interface GovOrgService { * @author sun */ List selectGridStaffByGridIds(List gridIds, String staffName); + + /** + * @Description 查询工作人员所属组织信息 + * @author sun + */ + CustomerAgencyDTO gridByAgencyId(String customerId, String staffId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index 29ed9208cf..41e4133c83 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -11,6 +11,7 @@ import com.epmet.dataaggre.dao.govorg.CustomerAgencyDao; import com.epmet.dataaggre.dao.govorg.CustomerGridDao; import com.epmet.dataaggre.dao.govorg.CustomerStaffAgencyDao; import com.epmet.dataaggre.dao.govorg.CustomerStaffGridDao; +import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.CustomerStaffAgencyDTO; import com.epmet.dataaggre.dto.govorg.form.NextAreaCodeFormDTO; @@ -264,4 +265,13 @@ public class GovOrgServiceImpl implements GovOrgService { return result; } + /** + * @Description 查询工作人员所属组织信息 + * @author sun + */ + @Override + public CustomerAgencyDTO gridByAgencyId(String customerId, String staffId) { + return customerStaffAgencyDao.selectAgencyByStaffId(customerId, staffId); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/CustomerStaffDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/CustomerStaffDao.xml index 43e15095e4..3b1b0c9db3 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/CustomerStaffDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/CustomerStaffDao.xml @@ -3,4 +3,16 @@ + + \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml index 50269ca116..763c06694b 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml @@ -16,4 +16,18 @@ AND user_id = #{userId} + + \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadDataFormDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadDataFormDTO.java new file mode 100644 index 0000000000..7f6671dd83 --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadDataFormDTO.java @@ -0,0 +1,81 @@ +package com.epmet.dto.stats.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * @Description 数据上报--网格员事件总数上报-接口入参 + * @Auth sun + */ +@Data +public class GmUploadDataFormDTO implements Serializable { + private static final long serialVersionUID = -9178779369245037701L; + /** + * 为true时需要删除历史数据 + */ + private Boolean isFirst; + //客户Id + private String customerId; + //日维度Id + private String dateId; + //数据集合对象 + @NotEmpty(message = "数据集合对象不能为空",groups = AgencyProjectForm.class) + private List dataList; + public interface AgencyProjectForm extends CustomerClientShowGroup {} + + @Data + public static class DataList{ + //客户Id 【dim_customer.id】 + private String customerId; + //机关Id 【dim_agency.id】 + private String agencyId; + //日维度Id 【dim_date.id】 + private String dateId; + //月维度Id 【dim_month.id】 + private String monthId; + //年维度Id 【dim_year.id】 + private String yearId; + //网格id + private String gridId; + //上级ID(网格所属Agency的上级组织Id) + private String pid; + //所有agencyId的上级组织ID(包含agencyId) + private String pids; + //工作人员id + private String staffId; + //工作人员姓名 + private String staffName; + //项目立项数,截止到当前dateId的总数 + private Integer projectCount; + //议题转项目数,截止到当前dateId的总数 + private Integer issueToProjectCount; + //议题关闭数,截止到当前dateId的总数 + private Integer closedIssueCount; + //项目响应数,截止到当前dateId的总数 + private Integer projectResponseCount; + //项目吹哨数,截止到当前dateId的总数 + private Integer projectTransferCount; + //项目结案数,dateId这一天的增量 + private Integer projectClosedCount; + //项目立项数,dateId这一天的增量 + private Integer projectIncr; + //议题转项目数,dateId这一天的增量 + private Integer issueToProjectIncr; + //议题关闭数,dateId这一天的增量 + private Integer closedIssueIncr; + //项目响应数,dateId这一天的增量 + private Integer projectResponseIncr; + //项目吹哨数,dateId这一天的增量 + private Integer projectTransferIncr; + //项目结案数,截止到当前dateId的总数 + private Integer projectClosedIncr; + + } + +} diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadEventFormDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadEventFormDTO.java new file mode 100644 index 0000000000..56eb2c059c --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/stats/form/GmUploadEventFormDTO.java @@ -0,0 +1,65 @@ +package com.epmet.dto.stats.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * @Description 数据上报--网格员事件总数上报-接口入参 + * @Auth sun + */ +@Data +public class GmUploadEventFormDTO implements Serializable { + private static final long serialVersionUID = -9178779369245037701L; + //为true时需要删除历史数据 + private Boolean isFirst; + //客户Id + private String customerId; + //日维度Id + private String dateId; + //数据集合对象 + @NotEmpty(message = "数据集合对象不能为空",groups = AgencyProjectForm.class) + private List dataList; + public interface AgencyProjectForm extends CustomerClientShowGroup {} + + @Data + public static class DataList{ + //客户Id 【dim_customer.id】 + private String customerId; + //机关Id 【dim_agency.id】 + private String agencyId; + //日维度Id 【dim_date.id】 + private String dateId; + //周维度Id 【dim_week.id】 + private String weekId; + //月维度Id 【dim_month.id】 + private String monthId; + //季ID + private String quarterId; + //年维度Id 【dim_year.id】 + private String yearId; + //网格id + private String gridId; + //网格所有上级id + private String gridPids; + //产品这边工作人员用户id + private String staffId; + //巡查次数 + private Integer patrolTotal = 0; + //巡查时长 单位:秒 + private Integer totalTime = 0; + //事件数【立项项目数】 + private Integer reportProjectCount = 0; + //最新的巡查开始时间 + private String latestPatrolTime; + //最新的巡查状态 正在巡查中:patrolling;结束:end + private String latestPatrolStatus = "end"; + + } + +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java index 9c521b770a..c46c98f64c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/StatsUserController.java @@ -1,9 +1,13 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.StatsFormDTO; +import com.epmet.dto.stats.form.GmUploadDataFormDTO; +import com.epmet.dto.stats.form.GmUploadEventFormDTO; import com.epmet.service.StatsUserService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -32,4 +36,27 @@ public class StatsUserController { statsUserService.partition(formDTO); return new Result(); } + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + @PostMapping("gm-uploadevent") + public Result gmUploadEvent(@RequestBody GmUploadEventFormDTO formDTO) { + statsUserService.gmUploadEvent(formDTO); + return new Result(); + } + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + @PostMapping("gm-uploaddata") + public Result gmUploadData(@RequestBody GmUploadDataFormDTO formDTO) { + statsUserService.gmUploadData(formDTO); + return new Result(); + } + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java index db22288094..0e71cbd62f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/StatsUserService.java @@ -1,6 +1,8 @@ package com.epmet.service; import com.epmet.dto.StatsFormDTO; +import com.epmet.dto.stats.form.GmUploadDataFormDTO; +import com.epmet.dto.stats.form.GmUploadEventFormDTO; /** * @author wangc @@ -17,4 +19,18 @@ public interface StatsUserService { * @date 2020.06.28 14:38 **/ void partition(StatsFormDTO formDTO); + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + void gmUploadEvent(GmUploadEventFormDTO formDTO); + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + void gmUploadData(GmUploadDataFormDTO formDTO); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java index 0d35eede37..e9155fcaad 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/StatsUserServiceImpl.java @@ -7,6 +7,8 @@ import com.epmet.commons.tools.utils.DateUtils; import com.epmet.constant.ProjectConstant; import com.epmet.dto.AgencySubTreeDto; import com.epmet.dto.StatsFormDTO; +import com.epmet.dto.stats.form.GmUploadDataFormDTO; +import com.epmet.dto.stats.form.GmUploadEventFormDTO; import com.epmet.dto.stats.user.result.UserStatisticalData; import com.epmet.service.StatsUserService; import com.epmet.service.stats.DimAgencyService; @@ -130,4 +132,26 @@ public class StatsUserServiceImpl implements StatsUserService { log.error(String.format(ProjectConstant.STATS_FAILED_PREFIX, ModuleConstant.EXCEPTION_DING_INTERCEPTOR_PREFIX_GRID_USER_STATISTICAL, customerId, new Date().toString(), e.getMessage())); } } + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + @Override + public void gmUploadEvent(GmUploadEventFormDTO formDTO) { + + } + + /** + * @Param formDTO + * @Description 数据上报--网格员事件总数上报 + * @author sun + */ + @Override + public void gmUploadData(GmUploadDataFormDTO formDTO) { + + } + + } From b097ef4ece563b32aef983cfeb7f0f5cdd04ecd4 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 7 Jul 2021 10:28:57 +0800 Subject: [PATCH 3/4] =?UTF-8?q?CUSTOMER=5FDEPARTMENT=E4=B8=8D=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/db/migration/V0.0.5__add_sync_flag.sql | 1 - 1 file changed, 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql index f4133fe7ee..1f511e8a14 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.5__add_sync_flag.sql @@ -1,3 +1,2 @@ alter table customer_agency add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前组织是否同步到统计库和指标库' AFTER AREA_CODE; -alter table customer_department add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前部门是否同步到统计库和指标库' AFTER AREA_CODE; alter table customer_grid add column SYNC_FLAG VARCHAR(1) not null default '1' comment '当前网格是否同步到统计库和指标库' AFTER AREA_CODE; \ No newline at end of file From 064406760a682d594f4bfbee141de2c7b3834e00 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 7 Jul 2021 10:53:55 +0800 Subject: [PATCH 4/4] =?UTF-8?q?dim=E3=80=81screen=5Fagency=E7=BB=B4?= =?UTF-8?q?=E5=BA=A6=E6=B7=BB=E5=8A=A0SYNC=5FFLAG=3D'1';"syncorginfo"?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/extract/form/SyncOrgInfoFormDTO.java | 21 +++ .../com/epmet/controller/DemoController.java | 22 +++ .../screen/ScreenCustomerAgencyDao.java | 7 +- .../screen/ScreenCustomerGridDao.java | 2 + .../epmet/dao/org/StatsCustomerAgencyDao.java | 2 + .../entity/org/CustomerAgencyEntity.java | 5 + .../epmet/entity/org/CustomerGridEntity.java | 5 + .../screen/ScreenCustomerAgencyService.java | 23 ++- .../screen/ScreenCustomerGridService.java | 2 + .../impl/ScreenCustomerAgencyServiceImpl.java | 27 +++ .../impl/ScreenCustomerGridServiceImpl.java | 5 + .../service/org/CustomerAgencyService.java | 10 ++ .../service/org/CustomerGridService.java | 3 +- .../org/impl/CustomerAgencyServiceImpl.java | 156 ++++++++++++++++++ .../org/impl/CustomerGridServiceImpl.java | 17 +- .../screen/ScreenCustomerAgencyDao.xml | 33 ++++ .../screen/ScreenCustomerGridDao.xml | 15 ++ .../resources/mapper/org/CustomerGridDao.xml | 4 +- .../mapper/org/StatsCustomerAgencyDao.xml | 15 +- 19 files changed, 357 insertions(+), 17 deletions(-) create mode 100644 epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/SyncOrgInfoFormDTO.java diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/SyncOrgInfoFormDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/SyncOrgInfoFormDTO.java new file mode 100644 index 0000000000..bd1e2034f9 --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/SyncOrgInfoFormDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.extract.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 描述一下 + * + * @author yinzuomei@elink-cn.com + * @date 2021/7/6 16:37 + */ +@Data +public class SyncOrgInfoFormDTO implements Serializable { + private static final long serialVersionUID = -3533276226280926966L; + @NotBlank(message = "孔村or榆山or锦水客户id不能为空") + private String fromCustomerId; + @NotBlank(message = "平阴客户id不能为空") + private String toCustomerId; +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java index a5317f5ba2..bfb8bdc42d 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java @@ -6,6 +6,7 @@ import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constant.DataSourceConstant; import com.epmet.constant.IndexCalConstant; import com.epmet.dao.evaluationindex.indexcoll.FactIndexGovrnAblityGridMonthlyDao; @@ -22,6 +23,7 @@ import com.epmet.dto.StatsFormDTO; import com.epmet.dto.extract.form.ExtractFactGridGovernDailyFromDTO; import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.dto.extract.form.ExtractScreenFormDTO; +import com.epmet.dto.extract.form.SyncOrgInfoFormDTO; import com.epmet.dto.indexcal.CalculateCommonFormDTO; import com.epmet.dto.screen.form.ScreenCentralZoneDataFormDTO; import com.epmet.dto.stats.form.CustomerIdAndDateIdFormDTO; @@ -42,6 +44,8 @@ import com.epmet.service.evaluationindex.extract.todata.*; import com.epmet.service.evaluationindex.extract.toscreen.*; import com.epmet.service.evaluationindex.indexcal.*; import com.epmet.service.evaluationindex.screen.*; +import com.epmet.service.org.CustomerAgencyService; +import com.epmet.service.org.CustomerGridService; import com.epmet.service.stats.DimAgencyService; import com.epmet.service.stats.DimCustomerPartymemberService; import lombok.extern.slf4j.Slf4j; @@ -936,4 +940,22 @@ public class DemoController { return new Result(); } + @Autowired + private CustomerAgencyService customerAgencyService; + @Autowired + private CustomerGridService customerGridService; + + + /** + * 将孔村、榆山、锦水3个街道的网格、组织插入到gov-org库的customer_grid、customer_agency + * + * @param formDTO + * @return Result + */ + @PostMapping("syncorginfo") + public Result syncOrgInfo(@RequestBody SyncOrgInfoFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + customerAgencyService.sysAgencyInfo(formDTO.getFromCustomerId(), formDTO.getToCustomerId()); + return new Result(); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java index b0dedb0db5..ebe3ff3783 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java @@ -34,7 +34,6 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Map; /** * 组织机构信息 @@ -231,4 +230,10 @@ public interface ScreenCustomerAgencyDao extends BaseDao selectByPid(@Param("customerId") String customerId, @Param("parentAgencyId")String parentAgencyId); + + List selectKcCommunity(String customerId); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerGridDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerGridDao.java index 6aa2aacc1c..90875a233a 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerGridDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenCustomerGridDao.java @@ -216,4 +216,6 @@ public interface ScreenCustomerGridDao extends BaseDao * @date 2021/6/10 10:45 上午 */ List selectGridInfoList(@Param("customerId") String customerId, @Param("pids") String pids); + + List selectEntityByAgencyId(@Param("customerId") String customerId, @Param("parentAgencyId") String parentAgencyId); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/StatsCustomerAgencyDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/StatsCustomerAgencyDao.java index fc575d3024..5745ff7cca 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/StatsCustomerAgencyDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/org/StatsCustomerAgencyDao.java @@ -69,4 +69,6 @@ public interface StatsCustomerAgencyDao extends BaseDao { * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity */ CustomerAgencyEntity selectByDeptId(String deptId); + + CustomerAgencyEntity selecByAreaCode(@Param("customerId")String customerId, @Param("areaCode")String areaCode); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerAgencyEntity.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerAgencyEntity.java index 4fbb9bfb83..f521f0aa60 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerAgencyEntity.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerAgencyEntity.java @@ -108,4 +108,9 @@ public class CustomerAgencyEntity extends BaseEpmetEntity { * 社区 */ private String community; + + /** + * 是否同步到统计库和指标库,1同步。0不同步 + */ + private String syncFlag; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerGridEntity.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerGridEntity.java index 6c01df7df8..dc760a4b5e 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerGridEntity.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/org/CustomerGridEntity.java @@ -79,4 +79,9 @@ public class CustomerGridEntity extends BaseEpmetEntity { * 所有上级组织ID */ private String pids; + + /** + * 是否同步到统计库和指标库,1同步。0不同步 + */ + private String syncFlag; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerAgencyService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerAgencyService.java index 86fbe9e336..5c303466aa 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerAgencyService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerAgencyService.java @@ -21,13 +21,11 @@ import com.epmet.dto.extract.form.PartyBaseInfoFormDTO; import com.epmet.dto.extract.form.ScreenPartyBranchDataFormDTO; import com.epmet.dto.extract.form.ScreenPartyLinkMassesDataFormDTO; import com.epmet.dto.extract.result.CustomerAgencyInfoResultDTO; - -import java.util.List; - import com.epmet.dto.extract.result.OrgNameResultDTO; import com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity; import com.epmet.entity.org.CustomerAgencyEntity; +import java.util.List; import java.util.Map; /** @@ -114,4 +112,23 @@ public interface ScreenCustomerAgencyService{ * @date 2021/5/24 9:42 上午 */ ScreenCustomerAgencyEntity selectTopAgency(String customerId); + + /** + * 获取当前客户下的跟组织 + * + * @param customerId + * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity + */ + ScreenCustomerAgencyEntity getRootAgency(String customerId); + + List getByPid(String customerId, String parentAgencyId); + + /** + * 查询出孔村的社区 + * + * @param customerId + * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity + */ + List selectKcCommunity(String customerId); + } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerGridService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerGridService.java index f2a40b11c0..358b102ea6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerGridService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenCustomerGridService.java @@ -109,4 +109,6 @@ public interface ScreenCustomerGridService extends BaseService selectGridInfoByCustomerId(String customerId); List selectGridInfoList(String customerId, String pids); + + List selectEntityByAgencyId(String customerId, String parentAgencyId); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerAgencyServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerAgencyServiceImpl.java index 96019615ea..17b22866c6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerAgencyServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerAgencyServiceImpl.java @@ -267,5 +267,32 @@ public class ScreenCustomerAgencyServiceImpl implements ScreenCustomerAgencyServ return screenCustomerAgencyDao.selectTopAgency(customerId); } + /** + * 获取当前客户下的跟组织 + * + * @param customerId + * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity + */ + @Override + public ScreenCustomerAgencyEntity getRootAgency(String customerId) { + return screenCustomerAgencyDao.selectRootAgency(customerId); + } + + @Override + public List getByPid(String customerId, String parentAgencyId) { + return screenCustomerAgencyDao.selectByPid(customerId,parentAgencyId); + } + + /** + * 查询出孔村的社区 + * + * @param customerId + * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity + */ + @Override + public List selectKcCommunity(String customerId) { + return screenCustomerAgencyDao.selectKcCommunity(customerId); + } + } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerGridServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerGridServiceImpl.java index b012accfe0..11aa43e27b 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerGridServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenCustomerGridServiceImpl.java @@ -210,4 +210,9 @@ public class ScreenCustomerGridServiceImpl extends BaseServiceImpl selectGridInfoList(String customerId, String pids) { return baseDao.selectGridInfoList(customerId,pids); } + + @Override + public List selectEntityByAgencyId(String customerId, String parentAgencyId) { + return baseDao.selectEntityByAgencyId(customerId,parentAgencyId); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerAgencyService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerAgencyService.java index 0eb247471e..60991b69bf 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerAgencyService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerAgencyService.java @@ -48,4 +48,14 @@ public interface CustomerAgencyService { * @return com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity */ CustomerAgencyEntity getAgencyByDeptId(String deptId); + + /** + * 将孔村、榆山、锦水3个街道的组织插入到gov-org库的customer_agency + * + * @param fromCustomerId + * @param toCustomerId + * @return Result + */ + void sysAgencyInfo(String fromCustomerId, String toCustomerId); + } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerGridService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerGridService.java index 2cdee8ccad..7ba6178809 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerGridService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/CustomerGridService.java @@ -1,5 +1,6 @@ package com.epmet.service.org; +import com.epmet.commons.mybatis.service.BaseService; import com.epmet.dto.group.AgencyDTO; import com.epmet.dto.group.result.AgencyGridTotalCountResultDTO; import com.epmet.dto.group.result.GridIdListByCustomerResultDTO; @@ -9,7 +10,7 @@ import com.epmet.entity.org.CustomerGridEntity; import java.util.Date; import java.util.List; -public interface CustomerGridService { +public interface CustomerGridService extends BaseService { /** * 根据创建时间,截取时间段内的网格 * @param start diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerAgencyServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerAgencyServiceImpl.java index d603b6781c..a917038b1c 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerAgencyServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerAgencyServiceImpl.java @@ -1,15 +1,24 @@ package com.epmet.service.org.impl; import com.epmet.commons.dynamic.datasource.annotation.DataSource; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.StrConstant; import com.epmet.constant.DataSourceConstant; import com.epmet.dao.org.StatsCustomerAgencyDao; import com.epmet.dto.org.result.CustomerAreaCodeResultDTO; import com.epmet.dto.org.result.OrgStaffDTO; +import com.epmet.entity.evaluationindex.screen.ScreenCustomerAgencyEntity; +import com.epmet.entity.evaluationindex.screen.ScreenCustomerGridEntity; import com.epmet.entity.org.CustomerAgencyEntity; +import com.epmet.entity.org.CustomerGridEntity; +import com.epmet.service.evaluationindex.screen.ScreenCustomerAgencyService; +import com.epmet.service.evaluationindex.screen.ScreenCustomerGridService; import com.epmet.service.org.CustomerAgencyService; +import com.epmet.service.org.CustomerGridService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.Date; @@ -21,6 +30,12 @@ public class CustomerAgencyServiceImpl implements CustomerAgencyService { @Autowired private StatsCustomerAgencyDao customerAgencyDao; + @Autowired + private ScreenCustomerAgencyService screenCustomerAgencyService; + @Autowired + private ScreenCustomerGridService screenCustomerGridService; + @Autowired + private CustomerGridService customerGridService; @Override public List listAgenciesByCreateTime(Date statsStartTime, Date statsEndTime) { @@ -103,4 +118,145 @@ public class CustomerAgencyServiceImpl implements CustomerAgencyService { public CustomerAgencyEntity getAgencyByDeptId(String deptId) { return customerAgencyDao.selectByDeptId(deptId); } + + /** + * 将孔村、榆山、锦水3个街道的组织插入到gov-org库的customer_agency + * + * @param fromCustomerId + * @param toCustomerId + * @return Result + */ + @Override + public void sysAgencyInfo(String fromCustomerId, String toCustomerId) { + // 1、查询出平阴县组织信息 + CustomerAgencyEntity pingYin = customerAgencyDao.selecByAreaCode(toCustomerId, "370124"); + // 2、查询出街道 + ScreenCustomerAgencyEntity street = screenCustomerAgencyService.getRootAgency(fromCustomerId); + CustomerAgencyEntity insertStreetEntity = new CustomerAgencyEntity(); + insertStreetEntity.setCustomerId(pingYin.getCustomerId()); + insertStreetEntity.setPid(pingYin.getId()); + if(!StringUtils.isEmpty(pingYin.getPids())){ + insertStreetEntity.setPids(pingYin.getPids().concat(StrConstant.COLON).concat(pingYin.getId())); + }else{ + insertStreetEntity.setPids(pingYin.getId()); + } + insertStreetEntity.setAllParentName(pingYin.getOrganizationName()); + insertStreetEntity.setOrganizationName(street.getAgencyName()); + insertStreetEntity.setLevel("street"); + insertStreetEntity.setAreaCode(street.getAreaCode()); + insertStreetEntity.setSyncFlag("0"); + insertStreetEntity.setTotalUser(0); + insertStreetEntity.setProvince("山东省"); + insertStreetEntity.setCity("济南市"); + insertStreetEntity.setDistrict(pingYin.getOrganizationName()); + insertStreetEntity.setStreet(street.getAgencyName()); + insertStreetEntity.setCommunity(StrConstant.EPMETY_STR); + insertStreetEntity.setParentAreaCode(pingYin.getAreaCode()); + insertStreetEntity.setId(street.getAgencyId()); + // 3、插入街道 + if (null == customerAgencyDao.selectById(insertStreetEntity.getId())) { + customerAgencyDao.insert(insertStreetEntity); + } else { + customerAgencyDao.updateById(insertStreetEntity); + } + // 3.1、街道的直属网格 + this.insertCustomerGrid(street.getCustomerId(),street.getAgencyId(),insertStreetEntity); + + if ("2fe0065f70ca0e23ce4c26fca5f1d933".equals(fromCustomerId)) { + List kcCommunityList = screenCustomerAgencyService.selectKcCommunity(fromCustomerId); + for(ScreenCustomerAgencyEntity kcCommunity:kcCommunityList){ + CustomerAgencyEntity insertCommunityEntity = new CustomerAgencyEntity(); + insertCommunityEntity.setCustomerId(pingYin.getCustomerId()); + insertCommunityEntity.setPid(insertStreetEntity.getId()); + insertCommunityEntity.setPids(insertStreetEntity.getPids().concat(StrConstant.COLON).concat(insertStreetEntity.getId())); + insertCommunityEntity.setAllParentName(insertStreetEntity.getAllParentName().concat(StrConstant.HYPHEN).concat(insertStreetEntity.getOrganizationName())); + insertCommunityEntity.setOrganizationName(kcCommunity.getAgencyName()); + insertCommunityEntity.setLevel("community"); + insertCommunityEntity.setAreaCode(kcCommunity.getAreaCode()); + insertCommunityEntity.setSyncFlag(NumConstant.ZERO_STR); + insertCommunityEntity.setTotalUser(NumConstant.ZERO); + insertCommunityEntity.setProvince("山东省"); + insertCommunityEntity.setCity("济南市"); + insertCommunityEntity.setDistrict(pingYin.getOrganizationName()); + insertCommunityEntity.setStreet(insertStreetEntity.getOrganizationName()); + insertCommunityEntity.setCommunity(kcCommunity.getAgencyName()); + insertCommunityEntity.setParentAreaCode(insertStreetEntity.getAreaCode()); + insertCommunityEntity.setId(kcCommunity.getAgencyId()); + CustomerAgencyEntity customerAgencyEntity=customerAgencyDao.selectById(insertCommunityEntity.getId()); + if(null==customerAgencyEntity){ + // 4、插入社区 + customerAgencyDao.insert(insertCommunityEntity); + }else{ + customerAgencyDao.updateById(insertCommunityEntity); + } + // 4.1插入社区下的直属网格 + this.insertCustomerGrid(kcCommunity.getCustomerId(),kcCommunity.getAgencyId(),insertCommunityEntity); + } + } else { + // 4、查询出社区 + List communityList = screenCustomerAgencyService.getByPid(fromCustomerId,street.getAgencyId()); + for(ScreenCustomerAgencyEntity community:communityList){ + CustomerAgencyEntity insertCommunityEntity = new CustomerAgencyEntity(); + insertCommunityEntity.setCustomerId(pingYin.getCustomerId()); + insertCommunityEntity.setPid(insertStreetEntity.getId()); + insertCommunityEntity.setPids(insertStreetEntity.getPids().concat(StrConstant.COLON).concat(insertStreetEntity.getId())); + insertCommunityEntity.setAllParentName(insertStreetEntity.getAllParentName().concat(StrConstant.HYPHEN).concat(insertStreetEntity.getOrganizationName())); + insertCommunityEntity.setOrganizationName(community.getAgencyName()); + insertCommunityEntity.setLevel("community"); + insertCommunityEntity.setAreaCode(community.getAreaCode()); + insertCommunityEntity.setSyncFlag(NumConstant.ZERO_STR); + insertCommunityEntity.setTotalUser(NumConstant.ZERO); + insertCommunityEntity.setProvince("山东省"); + insertCommunityEntity.setCity("济南市"); + insertCommunityEntity.setDistrict(pingYin.getOrganizationName()); + insertCommunityEntity.setStreet(insertStreetEntity.getOrganizationName()); + insertCommunityEntity.setCommunity(community.getAgencyName()); + insertCommunityEntity.setParentAreaCode(insertStreetEntity.getAreaCode()); + insertCommunityEntity.setId(community.getAgencyId()); + CustomerAgencyEntity customerAgencyEntity=customerAgencyDao.selectById(insertCommunityEntity.getId()); + if(null==customerAgencyEntity){ + customerAgencyDao.insert(insertCommunityEntity); + }else{ + customerAgencyDao.updateById(insertCommunityEntity); + } + // 4.1插入社区下的直属网格 + this.insertCustomerGrid(community.getCustomerId(),community.getAgencyId(),insertCommunityEntity); + } + + } + } + + /** + * @return void + * @param customerId 孔村、榆山、锦水的客户id + * @param agencyId 孔村、榆山、锦水的组织id + * @param parentCustomerEntity 在平阴客户里,网格所属组织信息 + * @author yinzuomei + * @description 将3个街道的网格,插入到gov-org.customer_grid库 + * @Date 2021/7/7 9:54 + **/ + private void insertCustomerGrid(String customerId, String agencyId, CustomerAgencyEntity parentCustomerEntity) { + List gridEntityList = screenCustomerGridService.selectEntityByAgencyId(customerId, agencyId); + for (ScreenCustomerGridEntity gridEntity : gridEntityList) { + CustomerGridEntity insertGrid = new CustomerGridEntity(); + insertGrid.setId(gridEntity.getGridId()); + insertGrid.setCustomerId(parentCustomerEntity.getCustomerId()); + insertGrid.setGridName(gridEntity.getGridName()); + insertGrid.setAreaCode(gridEntity.getAreaCode()); + insertGrid.setSyncFlag(NumConstant.ZERO_STR); + insertGrid.setManageDistrict(gridEntity.getGridName()); + insertGrid.setTotalUser(NumConstant.ZERO); + insertGrid.setPid(gridEntity.getParentAgencyId()); + if(StringUtils.isEmpty(parentCustomerEntity.getPids())){ + insertGrid.setPids(insertGrid.getPid()); + }else{ + insertGrid.setPids(parentCustomerEntity.getPids().concat(StrConstant.COLON).concat(insertGrid.getPid())); + } + if (null == customerGridService.selectById(insertGrid.getId())) { + customerGridService.insert(insertGrid); + } else { + customerGridService.updateById(insertGrid); + } + } + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerGridServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerGridServiceImpl.java index fa8018e1e1..70e321f702 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerGridServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/org/impl/CustomerGridServiceImpl.java @@ -1,6 +1,7 @@ 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.constant.DataSourceConstant; import com.epmet.dao.org.CustomerGridDao; import com.epmet.dto.group.AgencyDTO; @@ -9,7 +10,6 @@ import com.epmet.dto.group.result.GridIdListByCustomerResultDTO; import com.epmet.dto.org.GridInfoDTO; import com.epmet.entity.org.CustomerGridEntity; import com.epmet.service.org.CustomerGridService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; @@ -17,14 +17,11 @@ import java.util.List; @Service @DataSource(DataSourceConstant.GOV_ORG) -public class CustomerGridServiceImpl implements CustomerGridService { - - @Autowired - private CustomerGridDao customerGridDao; +public class CustomerGridServiceImpl extends BaseServiceImpl implements CustomerGridService { @Override public List listGridsByCreateTime(Date start, Date end) { - return customerGridDao.listGridsByCreateTime(start, end); + return baseDao.listGridsByCreateTime(start, end); } /** @@ -34,7 +31,7 @@ public class CustomerGridServiceImpl implements CustomerGridService { */ @Override public List selectAgencyGridTotalCount(List community, String dateId) { - return customerGridDao.selectAgencyGridTotalCount(community,dateId); + return baseDao.selectAgencyGridTotalCount(community,dateId); } /** @@ -45,12 +42,12 @@ public class CustomerGridServiceImpl implements CustomerGridService { */ @Override public List getCustomerGridIdList(String customerId, String dateId) { - return customerGridDao.getCustomerGridIdList(customerId, dateId); + return baseDao.getCustomerGridIdList(customerId, dateId); } @Override public List listUpdatedGridsByUpdateTime(Date lastInitTime, Date now) { - return customerGridDao.listUpdatedGridsByUpdateTime(lastInitTime, now); + return baseDao.listUpdatedGridsByUpdateTime(lastInitTime, now); } /** @@ -62,6 +59,6 @@ public class CustomerGridServiceImpl implements CustomerGridService { **/ @Override public List queryGridInfoList(String customerId) { - return customerGridDao.selectListGridInfo(customerId); + return baseDao.selectListGridInfo(customerId); } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerAgencyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerAgencyDao.xml index b60f152f95..4640aeebe6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerAgencyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerAgencyDao.xml @@ -452,4 +452,37 @@ DEL_FLAG = 0 AND CUSTOMER_ID = #{customerId} + + + + + + diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerGridDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerGridDao.xml index 0fca6febf5..3838261c45 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerGridDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenCustomerGridDao.xml @@ -386,4 +386,19 @@ AND cg.ALL_PARENT_IDS like concat(#{pids},'%') + + diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml index 7aa2bf3422..a35631c893 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml @@ -9,6 +9,7 @@ FROM customer_grid DEL_FLAG = 0 + AND SYNC_FLAG='1' AND CREATED_TIME >= #{start} @@ -65,7 +66,8 @@ pid, pids FROM customer_grid - WHERE UPDATED_TIME >= #{startTime} + WHERE SYNC_FLAG='1' + AND UPDATED_TIME >= #{startTime} AND UPDATED_TIME #{endTime} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/StatsCustomerAgencyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/StatsCustomerAgencyDao.xml index cf3ce06acc..c0209242e6 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/StatsCustomerAgencyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/StatsCustomerAgencyDao.xml @@ -16,6 +16,7 @@ FROM customer_agency DEL_FLAG = 0 + AND SYNC_FLAG='1' AND CREATED_TIME >= #{statsStartTime} @@ -97,7 +98,8 @@ district, PARENT_AREA_CODE as parentAreaCode from customer_agency - where UPDATED_TIME >= #{startTime} + where SYNC_FLAG='1' + AND UPDATED_TIME >= #{startTime} and UPDATED_TIME #{endTime} @@ -191,4 +193,15 @@ AND cd.DEL_FLAG = '0' ) + +