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); + } +}