From 1319a1d65bd91d319aa66364d90d886c5d28dc3b Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 18 Jan 2022 17:27:09 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BA=BA=E5=91=98=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E6=98=8E=E7=BB=86=E8=A1=A8=E5=A2=9E=E5=8A=A0pids=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcUserChangeDetailedDTO.java | 5 +++++ .../epmet/entity/IcUserChangeDetailedEntity.java | 5 +++++ .../service/impl/IcResiUserServiceImpl.java | 7 +++++++ .../impl/IcUserTransferRecordServiceImpl.java | 16 ++++++++++++++++ .../migration/V0.0.24__alter_change_detailed.sql | 3 +++ 5 files changed, 36 insertions(+) create mode 100644 epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.24__alter_change_detailed.sql diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcUserChangeDetailedDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcUserChangeDetailedDTO.java index 2220f907f5..cc4ed1a405 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcUserChangeDetailedDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcUserChangeDetailedDTO.java @@ -49,6 +49,11 @@ public class IcUserChangeDetailedDTO implements Serializable { */ private String icUserChangeRecordId; + /** + * 组织的所有上级Id + */ + private String pids; + /** * 组织Id */ diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcUserChangeDetailedEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcUserChangeDetailedEntity.java index 35608feae9..f60a5d1e36 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcUserChangeDetailedEntity.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcUserChangeDetailedEntity.java @@ -46,6 +46,11 @@ public class IcUserChangeDetailedEntity extends BaseEpmetEntity { */ private String icUserChangeRecordId; + /** + * 组织的所有上级Id + */ + private String pids; + /** * 组织Id */ diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index fdd4137135..28036d3a59 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -40,6 +40,7 @@ import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.redis.common.CustomerOrgRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis; +import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.redis.common.bean.GridInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; @@ -254,6 +255,10 @@ public class IcResiUserServiceImpl extends BaseServiceImpl list = new ArrayList<>(); IcUserChangeDetailedEntity outEntity = null; IcUserChangeDetailedEntity inEntity = null; + AgencyInfoCache oldAgencyInfo = CustomerOrgRedis.getAgencyInfo(resiUserDTO.getAgencyId()); + if (null == oldAgencyInfo) { + throw new EpmetException(String.format("查询组织信息失败%s", resiUserDTO.getAgencyId())); + } + AgencyInfoCache newAgencyInfo = new AgencyInfoCache(); + if ("in".equals(formDTO.getType())) { + newAgencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getNewAgencyId()); + if (null == newAgencyInfo) { + throw new EpmetException(String.format("查询组织信息失败%s", formDTO.getNewAgencyId())); + } + } for (IcResiCategoryWarnConfigDTO cf : configList) { if ("1".equals(map.get(cf.getColumnName()))) { //迁出 outEntity = new IcUserChangeDetailedEntity(); outEntity.setCustomerId(formDTO.getCustomerId()); outEntity.setIcUserChangeRecordId(icUserChangeRecordId); + outEntity.setPids(oldAgencyInfo.getPids()); outEntity.setAgencyId(resiUserDTO.getAgencyId()); outEntity.setGridId(resiUserDTO.getGridId()); outEntity.setNeighborHoodId(resiUserDTO.getVillageId()); @@ -254,6 +269,7 @@ public class IcUserTransferRecordServiceImpl extends BaseServiceImpl Date: Tue, 18 Jan 2022 17:52:17 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=95=B0=E5=AD=97=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E9=83=A8=E7=BD=B2=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=20=E6=8B=86?= =?UTF-8?q?=E5=88=862=E4=B8=AA=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/DataStatisticalOpenFeignClient.java | 5 +-- ...ataStatisticalOpenFeignClientFallBack.java | 4 +-- .../controller/ShiBeiICJobController.java | 31 ++++++++++-------- ...=> IcPrivateDeploySupportProjectTask.java} | 11 ++++--- .../IcPrivateDeploySupportUserPointTask.java | 32 +++++++++++++++++++ 5 files changed, 61 insertions(+), 22 deletions(-) rename epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/{IcPrivateDeploySupportTask.java => IcPrivateDeploySupportProjectTask.java} (67%) create mode 100644 epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java index 69feca31d5..dde180c1ca 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java @@ -23,6 +23,7 @@ import com.epmet.dto.user.result.MidPatrolDetailResult; import com.epmet.dto.user.result.MidPatrolRecordResult; import com.epmet.feign.impl.DataStatisticalOpenFeignClientFallBackFactory; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -362,6 +363,6 @@ public interface DataStatisticalOpenFeignClient { * @author LiuJanJun * @date 2022/1/18 4:37 下午 */ - @PostMapping("/data/stats/shibeiICJob/userPointAndProjectStatus") - Result userPointAndProjectStatus(@RequestBody ExtractOriginFormDTO formDTO); + @PostMapping("/data/stats/shibeiICJob/userPointAndProjectStatus/{bizType}") + Result userPointAndProjectStatus(@PathVariable("bizType") String biztype,@RequestBody ExtractOriginFormDTO formDTO); } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java index 5ace88fac3..ad48c01c34 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java @@ -341,7 +341,7 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp } @Override - public Result userPointAndProjectStatus(ExtractOriginFormDTO formDTO) { - return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "userPointAndProjectStatus", formDTO); + public Result userPointAndProjectStatus(String biztype,ExtractOriginFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "userPointAndProjectStatus", biztype,formDTO); } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java index 3963c5f579..b16ba886eb 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java @@ -2,6 +2,7 @@ package com.epmet.controller; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; +import com.epmet.commons.tools.enums.BizTypeEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.redis.RedisUtils; @@ -15,10 +16,7 @@ import com.epmet.service.evaluationindex.extract.toscreen.ScreenGrassrootsGovern import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; 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; +import org.springframework.web.bind.annotation.*; import java.util.LinkedHashSet; import java.util.List; @@ -38,8 +36,8 @@ public class ShiBeiICJobController { @Autowired private RedisUtils redisUtils; - @PostMapping("userPointAndProjectStatus") - public Result userPointAndProjectStatus(@RequestBody ExtractOriginFormDTO formDTO) { + @PostMapping("userPointAndProjectStatus/{bizType}") + public Result userPointAndProjectStatus(@PathVariable("bizType") String bizType, @RequestBody ExtractOriginFormDTO formDTO) { if (StringUtils.isBlank(formDTO.getCustomerId())){ return new Result().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"参数错误cid不能为空"); } @@ -48,23 +46,30 @@ public class ShiBeiICJobController { if (StringUtils.isNotBlank(formDTO.getStartDate()) && StringUtils.isNotBlank(formDTO.getEndDate())) { List daysBetween = DateUtils.getDaysBetween(formDTO.getStartDate(), formDTO.getEndDate()); daysBetween.forEach(d -> { - this.extractUserPointData(formDTO.getCustomerId(), d); - this.agencyProjectStats(formDTO.getCustomerId(), formDTO.getDateId()); + executeMethod(bizType, formDTO.getCustomerId(), d); result.add(d); - redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus"), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); + redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus-"+bizType), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); }); } else { if (StringUtils.isBlank(formDTO.getDateId())){ formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); } - this.extractUserPointData(formDTO.getCustomerId(), formDTO.getDateId()); - this.agencyProjectStats(formDTO.getCustomerId(), formDTO.getDateId()); + executeMethod(bizType, formDTO.getCustomerId(), formDTO.getDateId()); result.add(formDTO.getDateId()); - redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus"), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); + redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus-"+bizType), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); } long end = System.currentTimeMillis(); long l = (end - start) / 1000; - return new Result().ok("userPointAndProjectStatus耗时" + l + "s"); + return new Result().ok("userPointAndProjectStatus耗时-"+bizType + l + "s"); + } + + private void executeMethod(String bizType, String customerId, String d) { + if (bizType.equals(BizTypeEnum.PROJECT.getType())){ + this.extractUserPointData(customerId, d); + } + if (bizType.equals(BizTypeEnum.USER.getType())) { + this.agencyProjectStats(customerId, d); + } } /** diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java similarity index 67% rename from epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java rename to epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java index 80dc22febb..fcf2372ff6 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java @@ -2,6 +2,7 @@ package com.epmet.task; import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.enums.BizTypeEnum; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.feign.DataStatisticalOpenFeignClient; @@ -11,11 +12,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** - * desc:数字社区私有化部署 任务之一还有【autoEvaluateDemandTask,statsDemandTask,dailyStatisticalVoteTask】 + * desc:数字社区私有化部署 任务之一还有【autoEvaluateDemandTask,statsDemandTask,dailyStatisticalVoteTask,IcPrivateDeploySupportUserPointTask】 */ @Slf4j -@Component("icPrivateDeploySupportTask") -public class IcPrivateDeploySupportTask implements ITask { +@Component("icPrivateDeploySupportProjectTask") +public class IcPrivateDeploySupportProjectTask implements ITask { @Autowired private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; @@ -25,7 +26,7 @@ public class IcPrivateDeploySupportTask implements ITask { if (StringUtils.isNotBlank(params)) { formDTO = JSON.parseObject(params, ExtractOriginFormDTO.class); } - Result result = dataStatisticalOpenFeignClient.userPointAndProjectStatus(formDTO); - log.info("IcPrivateDeploySupportTask excute end,param:{},result:{}",params,result); + Result result = dataStatisticalOpenFeignClient.userPointAndProjectStatus(BizTypeEnum.PROJECT.getType(), formDTO); + log.info("icPrivateDeploySupportProjectTask excute end,param:{},result:{}",params,result); } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java new file mode 100644 index 0000000000..c8080e3e76 --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java @@ -0,0 +1,32 @@ +package com.epmet.task; + + +import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.enums.BizTypeEnum; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.extract.form.ExtractOriginFormDTO; +import com.epmet.feign.DataStatisticalOpenFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * desc:数字社区私有化部署 任务之一还有【autoEvaluateDemandTask,statsDemandTask,dailyStatisticalVoteTask,icPrivateDeploySupportProjectTask】 + */ +@Slf4j +@Component("icPrivateDeploySupportUserPointTask") +public class IcPrivateDeploySupportUserPointTask implements ITask { + @Autowired + private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; + + @Override + public void run(String params) { + ExtractOriginFormDTO formDTO = new ExtractOriginFormDTO(); + if (StringUtils.isNotBlank(params)) { + formDTO = JSON.parseObject(params, ExtractOriginFormDTO.class); + } + Result result = dataStatisticalOpenFeignClient.userPointAndProjectStatus(BizTypeEnum.USER.getType(), formDTO); + log.info("icPrivateDeploySupportUserPointTask excute end,param:{},result:{}",params,result); + } +} From 9db1ab0b6050135cfa554cfac6e94b9fb28a7fe0 Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 18:07:58 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=95=B0=E5=AD=97=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E9=83=A8=E7=BD=B2=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=20=E6=8B=86?= =?UTF-8?q?=E5=88=862=E4=B8=AA=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/controller/ShiBeiICJobController.java | 4 ++-- .../task/{ => ic}/IcPrivateDeploySupportProjectTask.java | 3 ++- .../task/{ => ic}/IcPrivateDeploySupportUserPointTask.java | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) rename epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/{ => ic}/IcPrivateDeploySupportProjectTask.java (95%) rename epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/{ => ic}/IcPrivateDeploySupportUserPointTask.java (95%) diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java index b16ba886eb..5e29d9a6b2 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java @@ -64,10 +64,10 @@ public class ShiBeiICJobController { } private void executeMethod(String bizType, String customerId, String d) { - if (bizType.equals(BizTypeEnum.PROJECT.getType())){ + if (bizType.equals(BizTypeEnum.USER.getType())){ this.extractUserPointData(customerId, d); } - if (bizType.equals(BizTypeEnum.USER.getType())) { + if (bizType.equals(BizTypeEnum.PROJECT.getType())) { this.agencyProjectStats(customerId, d); } } diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportProjectTask.java similarity index 95% rename from epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java rename to epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportProjectTask.java index fcf2372ff6..bf3a1b3ac3 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportProjectTask.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportProjectTask.java @@ -1,4 +1,4 @@ -package com.epmet.task; +package com.epmet.task.ic; import com.alibaba.fastjson.JSON; @@ -6,6 +6,7 @@ import com.epmet.commons.tools.enums.BizTypeEnum; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.feign.DataStatisticalOpenFeignClient; +import com.epmet.task.ITask; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportUserPointTask.java similarity index 95% rename from epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java rename to epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportUserPointTask.java index c8080e3e76..3f9b9f2d9d 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportUserPointTask.java +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ic/IcPrivateDeploySupportUserPointTask.java @@ -1,4 +1,4 @@ -package com.epmet.task; +package com.epmet.task.ic; import com.alibaba.fastjson.JSON; @@ -6,6 +6,7 @@ import com.epmet.commons.tools.enums.BizTypeEnum; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.extract.form.ExtractOriginFormDTO; import com.epmet.feign.DataStatisticalOpenFeignClient; +import com.epmet.task.ITask; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired;